xfce4-Buster-Debianをインストールし、インストール中に手動パーティショニングを選択し、いくつかのファイルを含むドライブを特定の場所にマウントすることを選択しました。このドライブでは、当然ドライブをフォーマットしないことにしました。別のパーティションにDebianをインストールしてOSで起動した後、インストールディレクトリにファイルは表示されません。ディレクトリは私が期待した場所に表示されますが、CDを入力するとls -la
その中に何もありません。しかし、GPartedによると、データはスペースを占めています。
LiveCDで起動しましたが、ファイルがそこに表示されました。
この動作の考えられる理由は何ですか?
編集:次の出力を提供します。
$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=ff57c2c0-e962-4578-be1b-0500f82bceb3 /home/go ext4 defaults,noatime 0 2
UUID=16DB-7490 /boot/efi vfat defaults,noatime 0 2
UUID=6ff37539-9538-40d4-b3bf-094f44e8410f / ext4 defaults,noatime 0 1
UUID=5fb9e868-f3c7-47a5-96da-7ccf13bfd998 /home ext4 defaults,noatime 0 2
UUID=25a379fc-3db3-4f58-813b-a914d147e7c2 swap swap defaults,noatime 0 2
$ lsblk -f
NAME FSTYPE LABEL UUID FSAVAIL FSUSE% MOUNTPOINT
sda iso9660 d-live nf 10.6.0 xf amd64 2020-09-26-13-15-55-00
├─sda1 iso9660 d-live nf 10.6.0 xf amd64 2020-09-26-13-15-55-00 0 100% /media/marius/d-live nf 10.6.0
└─sda2 vfat d-live nf 10.6.0 xf amd64 DEB0-0001
sdb
└─sdb1 vfat F802-75AF 27,9G 3% /media/marius/F802-75AF
mmcblk0
└─mmcblk0p1 ext4 ff57c2c0-e962-4578-be1b-0500f82bceb3 53,8G 1% /home/go
nvme0n1
├─nvme0n1p1 ext4 6ff37539-9538-40d4-b3bf-094f44e8410f 58,5G 18% /
├─nvme0n1p2 ext4 5fb9e868-f3c7-47a5-96da-7ccf13bfd998 101,4G 15% /home
├─nvme0n1p3 swap 25a379fc-3db3-4f58-813b-a914d147e7c2 [SWAP]
└─nvme0n1p4 vfat 16DB-7490 294,3M 2% /boot/efi
デバイスは次mmcblk0p1
のとおりです。取付点は以下の通りです。/home/go
編集2:
$ stat -c '%n - %i' / /home /home/go
/ - 2
/home - 2
/home/go - 2
答え1
stat -f -c '%n - %i' / /home /home/go
もともと、ディレクトリの下にあるファイルシステムのデバイス識別子を提供する出力を要求しようとしました。 (すべて異なる場合は異なるファイルシステムであることがわかります。)しかし、stat -c '%n - %i' / /home /home/go
私が提供したコマンドの出力は私たちの目的には十分です。これは、3つのディレクトリすべてのルートinodeが同じであることを示しています。 2です。これはまた、異なるファイルシステムでなければならないことを意味します。
LiveCDではこれらのファイルを表示できますが、実際の起動環境では表示できないため、ファイルを開いたままにしてマウントする/
ときは、そのファイルがあるディレクトリをマスクすることをお勧めします。/home
/home/go
以下のようにrootとしてファイルを見つけます。
mkdir /mnt/root # Create temporary directory mountpoint
mount --bind / /mnt/root # Make /mnt/root identical to /
ls /mnt/root/home # List area hidden by /home
ls /mnt/root/home/go # List area hidden by /home/go
2つのコマンドのいずれかがファイルを生成した場合、そのファイルにはls
ファイルが表示されません。ただし、コマンドがファイルを表示してもコマンドがファイルを表示しない場合にのみ、これらのいずれかまたは両方を使用できます。セグメントをファイルが正しい場所に移動します。ls /home
ls /home/go
ls
/mnt/home/...
/home/...
マスクされたファイルのすべてのファイルを/home/go
物理ファイルに移動します/home/go
。
(
shopt -s dotglob
cp -au /mnt/root/home/go/. /home/go && rm -rf /mnt/root/home/go/*
)
マスクされたファイルのすべてのファイルを/home
物理ファイルに移動します/home
。
(
shopt -s dotglob
cp -au /mnt/root/home/. /home && rm -rf /mnt/root/home/*
)
マージプロセス中にコマンドが失敗したくないので、cp && rm
notを使用しました。mv
このcp -u
フラグは、古いファイルが新しいファイルを上書きするのを防ぎます。
答え2
/home
/home/userx
isは、すべてのユーザーが次のホームディレクトリを持つように設計されたext4パーティション(またはその一部)のマウントポイントです。
/home/go
ただし、これを2番目のパーティション(別のデバイスで!)のマウントポイントとしても使用しようとしています。 「go」パーティションを他の場所にマウントすることをお勧めします/mnt/go
。これにより、データがマウントポイントと混同されないようになります。
たとえば、ビデオファイル専用の大きなパーティションがあります。これはいいえにインストールされましたが、/home/video
にインストールされました/mnt/video
。
私のGUIファイルマネージャはこの配列に非常に満足しています。