公司伺服器有一個系統碟40G,目前已經用掉了30%左右,老闆新購了一塊磁碟200G,讓我把之前資料遷移到新的磁碟上。遷移工作非常順利。這裡和大家分享下我是怎麼做的。
格式化
lsblk查看新的磁碟檔案名稱
首先我們要知道磁碟檔案用,用lsblk來查看,知道了新的磁碟檔案名稱/dev/vdb
分割區
# #我將200G的磁碟分了兩個區,大小分別為50G和100G,剩下50G留著以後看看怎麼用。# 分区的命令 fdisk /dev/vdb …… # 强制让内核重新找一次分区表 partprobe # 格式化分区 mkfs.xfs /dev/vdb1 mkfs.xfs /dev/vdb2
掛載
分割區及格式化後,就需要掛載分割區。 linux下分割區必須先掛載才能使用。 建立一個新的目錄/data,用來掛載/dev/vdb1。這個分區暫時保留,留著以後用。 網站資料都在/www 目錄下,這個目錄的資料我們是準備存放到新磁碟分割區上的。怎樣讓遷移工作量最小化呢? 我採用的方法是,將原始目錄/www 修改為 /wwwbak,然後重新建立空目錄 /www 。 /www目錄現在是空的了,所以可以掛在到新的磁碟分割區上,我們將100G的分割區掛載到/www目錄。然後將/wwwbak目錄的所有資料複製到/www目錄。至此,遷移工作就完成了。# 关闭nginx及mysql服务 killall nginx killall mysqld # 将原/www目录修改为/wwwbak mv /www /wwwbak # 创建空目录 mkdir /www /data # 挂载 mount /dev/vdb1 /data mount /dev/vdb2 /www
修改/etc/fstab檔案
#修改/etc/fstab 文件,讓開機自動掛載。# 查看分区的uuid blkid # 修改fstab文件内容 vim /etc/fstab ... # 重新挂载一遍看有没有错误 mount -a
遷移資料
遷移資料這個時候就非常簡單了。 cp一定要加選項-a,這樣檔案屬性不會改變。# 复制数据 cp -a /wwwbak/* /www # 开启ningx和mysql /etc/init.d/nginx start /etc/init.d/mysql start資料遷移後,/wwwbak目錄就可以刪除了,也可以留著,做一個備份。
以上是記一次伺服器網站資料遷移實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!