元のルート/が6GBパーティションにマウントされた50GBディスクがありました。このパーティションには空き容量がなく、残りの空き容量(44GB)を使用して2番目のパーティションを作成しました。もともとこんな感じでした。
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 50G 0 disk
└─xvda1 202:1 0 6G 0 part /
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 6.0G 6.0G 20K 100% /
devtmpfs 30G 0 30G 0% /dev
tmpfs 30G 0 30G 0% /dev/shm
tmpfs 30G 121M 30G 1% /run
tmpfs 30G 0 30G 0% /sys/fs/cgroup
ルートファイルシステムには3.4 GBのスペースを使用し、ほとんどの作業を実行するディレクトリ/ optがあるため、/ optは大きくなり続けます。すべてのファイルをバックアップした後、2番目のパーティションを/ optにマウントしました。
mount /dev/xvda2 /opt
これを実行した後、新しい/ optは0 GBで、パーティション1はまだ6 GBなので、元の/ optにあった3.4 GBにアクセスできません。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 6.0G 6.0G 20K 100% /
devtmpfs 30G 6.1G 24G 21% /dev
tmpfs 30G 0 30G 0% /dev/shm
tmpfs 30G 129M 30G 1% /run
tmpfs 30G 0 30G 0% /sys/fs/cgroup
/dev/xvda2 44G 0 44G 0% /opt
バックアップからファイルを復元しましたが、パーティション1で未使用の3.4 GBのスペースをどのように削除しますか?後で参照できるように、現在別のパーティション内にあるディレクトリに新しいパーティションをマウントする正しい方法は何ですか?
ベストアンサー1
に別のファイルシステムをマウントすると、そのパスを介して以前の/opt
コンテンツにアクセスできなくなりますが、/opt
消えません。 Linuxではmount --bind
。
mkdir /whole-root
mount --bind / /whole-root
mv /whole-root/opt/* /opt/
umount /whole-root
もちろん代替案もあります。新しいパーティションを空のディレクトリ/mnt
に一時的にマウントし(従来はこの目的で使用されています:一時マウントポイント)、ファイルを移動し、新しいパーティションをアンマウントして最後の場所にマウントします。