たとえば、これは私の最初の行です/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
(またはls -l /dev/disk/by-uuid
) によって報告される UUID は で使用されるものと同じであるはずです/etc/fstab
。
答え1
UUID を使用する利点は、オペレーティング システムがハード ディスクに付与する実際のデバイス番号とは独立していることです。
システムに別のハードディスクを追加し、何らかの理由で OS がsdb
ではなく古いディスクを新しいディスクとして認識したとしますsda
。
デバイス名を指している場合は、ブート プロセスが台無しになりますfstab
。ただし、UUID の場合は問題ありません。
UUIDに関するより詳しい情報はブログ記事でもご覧いただけます。「UUID と Linux: 知っておくべきことすべて」
答え2
その場合、/etc/fstab を次のように変更できますか?
あなたできるそしてそれはおそらく問題ありませんが、UUID を残しておく方が良いでしょう。
UUIDこの場合、ブロック デバイス上のパーティションを識別するために使用される任意の文字列です。パーティション自体に保存され、必要に応じて別の文字列を割り当てることができます (MAC アドレスのようなもの)。
UUIDを使用する利点は、それが間違いのないものであることです/dev/vda
。できた起動時に別のドライブになることもありますが、これは完全に理論上のことかもしれません (たとえば、特定のタイプのドライブが 1 つしかない場合など)。
デバイス名の使用が問題を引き起こす可能性があるもう1つのより微妙な例としては、最近一部のシステムでデバイス名を使用するように切り替えられたことが挙げられます。一貫したネットワークデバイス名アップグレード時にこれが発生し、ネットワーク スクリプトのどこかでハードコードされたデバイス名を使用した場合、動作が中断されます。ブロック デバイスに関する類似の例として、命名スキームを変更するカーネルまたは udev のアップグレードが挙げられます。
UUIDの1つの目的は、このようなことを簡単に実現できるようにすることです。できるデバイス名を使用すると、利点はありませんない限り(例)異なるドライブを交換するシステムがある場合。言い換えれば、そうする正当な理由がない場合は、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