たとえば、これは私の最初の行です/etc/fstab
。
UUID=050e1e34-39e6-4072-a03e-ae0bf90ba13a / ext4 errors=remount-ro 0 1
以下はコマンドの出力ですdf -h
(使用可能なディスク領域の報告)。
honey@bunny:~$ df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/vda ext4 30832636 4884200 24359188 17% /
none tmpfs 4 0 4 0% /sys/fs/cgroup
udev devtmpfs 498172 12 498160 1% /dev
tmpfs tmpfs 101796 320 101476 1% /run
none tmpfs 5120 0 5120 0% /run/lock
none tmpfs 508972 0 508972 0% /run/shm
none tmpfs 102400 0 102400 0% /run/user
最初の列が次のような場合、これら2つの列から表現を推論できますか
UUID=050e1e34-39e6-4072-a03e-ae0bf90ba13a
?/dev/vda
fstab
<file system>
/etc/fstab
では、このように修正しても大丈夫でしょうか?/dev/vda / ext4 errors=remount-ro 0 1
編集する:それでは、(上記の質問について)
sudo blkid
コマンドが別のUUIDを表示するのはなぜですか/dev/vda
?$ sudo blkid /dev/vda: LABEL="DOROOT" UUID="6f469437-4935-44c5-8ac6-53eb54a9af26" TYPE="ext4"
私がここで何を見逃しているのでしょうか?
答え:私の結論は(3)が私のホスティングクラウドのバグであるということです。はい。
blkid
(または)報告されたUUIDls -l /dev/disk/by-uuid
は/etc/fstab
。
答え1
UUIDを使用する利点は、ハードドライブにオペレーティングシステムが提供する実際のデバイス番号とは無関係です。
システムに別のハードドライブを追加しましたが、何らかの理由でオペレーティングシステムが既存のディスクをsdb
代わりに使用することにしたと想像してくださいsda
。
fstab
デバイス名を指すと、起動プロセスが混乱します。ただし、UUIDの場合は問題になりません。
UUIDの詳細については、ブログ投稿でも確認できます。「UUIDとLinux:あなたが知っておくべきこと」
答え2
では、/etc/fstabをこれで修正できますか?
あなたできるそうだろうおそらく問題ありません。しかし、UUIDを維持する方が良いでしょう。
UUIDこの場合、ブロックデバイスのパーティションを識別する任意の文字列はパーティション自体と共に保存され、必要に応じて他のパーティションを割り当てることができます(MACアドレスと同様)。
UUIDを使用するとあいまいではないという利点がありますが、その逆は真では/dev/vda
ありません。できる起動時に別のドライブになることがあります。しかし、これは文脈上完全に理論的なものかもしれません(たとえば、特定の種類のドライブしかないため)。
デバイス名を使用すると問題が発生する可能性があるもう1つの微妙な例は、最近一部のシステムでデバイス名を使用するように切り替えました。一貫したネットワークデバイス名。アップグレードでこれが発生し、一部のネットワークスクリプトでハードコードされたデバイス名を使用すると、競合が発生します。 WRTブロックデバイスの並列例は、名前付けスキームを変更するカーネルまたはudevアップグレードです。
UUIDの利点は、これらのことが可能で簡単にできることです。だからあなたはできるデバイス名を使用すると、何の利点もありません。〜しない限り(例)他のドライブを交換できるシステムがあります。つまり、そうする正当な理由がなければ、UUIDに固執する。
答え3
man fstab
ファイルの内容と意味をかなり簡潔に読むことができます/etc/fstab
。私のx86(非常に最近のArch Linuxサーバー)は、man fstab
以下を提供します。
The second field ... describes the mount point for the filesystem.
はい。どちらのデバイスも「/」にインストールされているように見えるため、/dev/vda
一部のデバイスの多くの名前の1つであるようです。UUID=050e1e34-39e6-4072-a03e-ae0bf90ba13a
そのディレクトリを見ると、/dev/disk/by-uuid/
私のサーバーの/dev/sda1
ようなものを指すシンボリックリンクを見ることができます。/dev/sdb1
これは仮説をテストする別の方法です。同じデバイスの代替名として表示されるサブディレクトリが/dev/disk
あります。by-id
by-path
by-uuid