会社のサーバーには 40G のシステムディスクがあり、それが約 30% 使用されています。上司は 200G の新しいディスクを購入し、以前のデータを新しいディスクに移行するように依頼しました。移行は非常にスムーズに進みました。ここでは私がどのようにやったかを共有します。
フォーマット
lsblk で新しいディスク ファイル名を表示します
まず、ディスク ファイル名を知る必要があります。表示するには lsblk を使用します。新しいディスク ファイル名は /dev/ であることがわかります。 vdb
パーティション
200G のディスクを、それぞれ 50G と 100G のサイズの 2 つのパーティションに分割しました。残りの 50G は、後で使用する方法を確認するために保持します。
# 分区的命令 fdisk /dev/vdb …… # 强制让内核重新找一次分区表 partprobe # 格式化分区 mkfs.xfs /dev/vdb1 mkfs.xfs /dev/vdb2
パーティションをマウントしてフォーマットした後、パーティションをマウントする必要があります。 Linux でのパーティションは、使用する前にマウントする必要があります。
/dev/vdb1 をマウントするための新しいディレクトリ /data を作成します。このパーティションは将来の使用のために一時的に予約されています。
Web サイトのデータはすべて /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 ディレクトリは削除することも、バックアップとして保存することもできます。
以上がサーバー Web サイトのデータ移行の例を思い出してください。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。