genfstab

提供: ArchWiki
2023年11月24日 (金) 06:46時点におけるKgx (トーク | 投稿記録)による版 (→‎インストール: リンクを修正)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

関連記事

genfstab は、指定されたマウントポイントの下にあるすべてのマウントを自動的に検出するために使用される Bash スクリプトで、その出力は通常 /etc/fstab にリダイレクトされるファイルにリダイレクトできます。

インストール

これは、Arch のインストールメディアにデフォルトで存在し、既にインストールされたシステム上で arch-install-scripts パッケージの一部として インストール できます。

他のディストリビューションでも使用できる、このツールのスタンドアロンのフォークもあります。こちら で見つけることができます。

使い方

以下を使用して、現在のマウントのリストを取得できます。

$ genfstab /

このスクリプトは、カーネルディスクリプタ、デバイス/パーティションラベル、またはデバイス/パーティション UUID によってマウントを見つけることをサポートしています。デフォルトでは kernel descriptor を出力します(カーネルディスクリプタは /dev/xxx)、ファイルシステムラベル、GPT パーティションラベル、ファイルシステム UUID、または GPT パーティション UUID の場合、それぞれ -L-t PARTLABEL-U、または -t PARTUUID を使用できます。

警告: ブロックデバイスのカーネル名ディスクリプタ永続的ではなく、それぞれのブートで変更される可能性があるため、設定ファイル(/etc/fstab を含む)で使用するべきではありません。

より一般的な使用シナリオは、chroot のための fstab を取得することです。これを行うためには、以下のような操作を行います。

# mount /dev/sda3 /mnt
# mount --mkdir /dev/sda1 /mnt/efi
$ genfstab -U /mnt
# /dev/sda3
UUID=185aebd2-ce76-47dd-baf4-5ad0a80fa963       /               ext4            rw,noatime      0 1

# /dev/sda1
UUID=E5C7-6DD7          /efi       vfat             rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro   0 2

この場合、genfstab はマウントポイント /mnt の下の両方のマウントを表示し、デバイスの UUID でリストします。

ヒント: デバイス sda3/mnt にマウントしましたが、genfstab はそれをメインのルートマウントポイント / として表示します。これは、与えられたマウントポイントをルートマウントとして扱うためです。

通常、出力をファイルにリダイレクトしたいと思うでしょう。これは以下のように実現できます。

# genfstab -U /mnt >> /mnt/etc/fstab
警告:
  • 既存の fstab を上書きする前に、バックアップを作成してください。
  • fstab ファイルを保存する場所に注意してください。例えば、chroot のためにそれを作成したい場合、メインのインストール上のものを上書きしたくないでしょう。