/var を別のディスク/パーティションに移動

/var を別のディスク/パーティションに移動

/varディレクトリを新しいディスク/パーティションに移動しましたが、その部分は正しく機能しましたが、古いパスを削除/移動することを忘れていましたが、まだ/var/ルート)パーティションのスペースを使用しています。/varすべてのプロセスを再実行せずに古いアイテムをどのように削除できますか?どんなアイデアがありますか?

これまで私がしたことは次のとおりです。

fdisk -l
mount /dev/sdb /mnt/newvar/
df -h /mnt/newvar/
rsync -aqxP /var/* /mnt/newvar/
umount /mnt/newvar/  /mnt/var/
umount /mnt/newvar/
umount /disk2/
umount /mnt/newvar/
ls -la /mnt/newvar/
df -h
vim /etc/fstab

fstabの内容:

UUID=c7c73822-b6e8-4aa4-a4b2-41a70c29568f /boot ext2 defaults 0 2
/dev/mapper/zabbix--vg-swap_1 none swap sw 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0       0
UUID="3195ad53-3aaa-418c-bdc0-d341e33d76d3" /var ext3 defaults 0 2

上記のコマンドの結果は次のとおりです。

df -P / /var

Filesystem                  1024-blocks     Used Available Capacity Mounted on
/dev/mapper/zabbix--vg-root    11758232 10103908   1033988      91% /
/dev/sdb                       25671996  8720916  15640360      36% /var

答え1

バインドマウントを使用してRAWデバイスにアクセスできます。これは、新しい/ varが別のパーティションにあると仮定します。

mountpoint /var   # confirm that /var is mounted on a different partition. If not, STOP NOW
mkdir /mnt/root
mount --bind / /mnt/root
ls -lid /var /mnt/root/var    # these will be different inodes
ls /var /mnt/root/var   # different file contents if you've updated /var
rm -rf /mnt/root/var
mkdir /mnt/root/var
umount /mnt/root
rmdir /mnt/root

通常推奨されるように、新しい設定で推奨されているようにこれを試す前に、すべてをバックアップしてください。あなたは何も間違っていませんでしたが、私はあなたのやり方ではありません。

最初の提案:/ dev / sdbにパーティションを作成し、/ dev / sdb1にファイルシステムを作成する必要があります。賢いかもしれませんが、ファイルシステムにディスクボリュームを使用するのは好きではありません。過去にこれに問題がありました。

次に、/dev/sdb1にPVボリュームを作成し、それを/dev/mapper/zabbixに追加してボリュームを拡張できます。これにより、LVMパーティション全体が2つのディスクに配置されるため、ディスクが破損した場合にデータが失われる可能性が高くなりますが、データを移動する必要はありません。ただし、設定でディスクに障害が発生すると、とにかくフラッシュされます。これはバックアップの目的です。

関連情報