Linux fstabファイルとは何ですか?どのように機能しますか?

公開: 2022-01-29

Linuxを実行している場合は、ファイルシステムのいくつかのオプションを変更する必要がある可能性があります。 fstabに精通すると、プロセス全体がはるかに簡単になり、思ったよりもはるかに簡単になります。

Fstabとは何ですか?

Fstabは、オペレーティングシステムのファイルシステムテーブルです。 ファイルシステムのレビューが必要な場合は、他の記事「HTGの説明:どのLinuxファイルシステムを選択する必要がありますか?」を確認してください。 昔は、システムがファイルを自動的にマウントする主な方法でした。 現在、あらゆる種類のUSBドライブを接続でき、WindowsやMac OSの場合と同じように、Nautilusにポップアップ表示されますが、かつては、「マウント」コマンド。 これは、DVD、CD、さらにはフロッピーにも当てはまりました(覚えていますか?)。

当時、あなたの唯一の選択肢は、特定のデバイスが接続されたときはいつでも、それが特定の場所に自動的にマウントされるべきであることをコンピューターに伝えることでした。 ここでfstabが登場し、素晴らしかったです。 IDEまたはSCSIコントローラのハードディスクを交換したとします。 コンピュータはファイルシステムを異なる順序でロードし、混乱を招く可能性があります。 Fstabは、特定のファイルシステムを検索し、それらを必要な方法で毎回自動的にマウントするように構成されており、無数の災害の発生を防ぎます。

Fstabファイル

fstabファイルは次の場所にあります。

/ etc / fstab

私のfstabファイルを見てみましょう。

fstabファイル

間違いなく違いがわかりますが、独自のfstabを実行したい場合は、次のコマンドをターミナルにポップしてください。

sudoなしのコマンド

広告

nanoに慣れていない場合は、geditを使用することもできます。

明らかなオプション

すべてのエントリがUUIDで始まることに気付くでしょう。 これは、以前の記事の1つであるLinux PCのパーティションスキームを選択する方法で見たことを覚えているかもしれませんが、とにかくもう一度説明します。 各ファイルシステムは、フォーマット中に、Universally Unique Identifierを割り当てられ、それが墓に運ばれます。 変更できないため、特に重要なファイルシステムをマウントするためのファイルシステムを選択するのに理想的な方法です。 / homeパーティションが2番目のハードドライブにあり、最終的に外付けハードドライブに移動するとします。 fstabは引き続きそのパーティションを見つけて正しくマウントし、起動の失敗を回避します。 デバイス識別子を使用してパーティションを選択する古い方法(つまり、/ dev / sda1)に切り替える(または使用し続ける)場合、ハードドライブとパーティションはコントローラーによってカウントされるため、この利点はなくなり、変更される可能性があります。

編集:fstabファイルでUUIDを使用することは、ほとんどのホームユーザーにとっては便利ですが、いくつかの大きな注意点があります。 これは、「組み立てられた」または「ネットワークベースの」デバイスなどを使用する場合は機能しません。 上級ユーザーの場合、または将来的にソフトウェアRAIDなどを使用する予定の場合は、UUIDを使用しない方がよいでしょう。

fstabの次のセクションは、後続のすべてのセクションと同様に、スペースまたはタブ、あるいはそれらの組み合わせで区切られます。 ここに、マウントポイントがあります。 ご覧のとおり、ルート(/)マウントポイント、スワップ、および共有ネットワークストレージドライブ用に手動で追加した2つがあります。 fstabにエントリを追加する場合は、コンピュータを再起動する前に手動でマウントポイントを作成する必要があります(変更が有効になります)。

次は、パーティション上のファイルシステムのタイプを識別するセクションです。 ext2 / 3/4、ReiserFS、jFSなどの多くは、Linuxによってネイティブに読み取られます。 特定のシステムで読み書きできるようにするには、特定のパッケージをインストールする必要がある場合があります。 完璧な例は私のNTFSパーティションです。 ntfs-3gドライバーを使用してアクセスしていることがわかります。

怖いもの

次のいくつかのセクションは、通常、新参者を怖がらせるものですが、実際にはそれほど複雑ではありません。 利用可能なオプションのセットはたくさんありますが、非常に一般的なものがいくつかあります。 それらを見てみましょう。 (デフォルトのオプションが最初で、その後に代替オプションが続きますが、Linuxディストリビューションは大きく異なる可能性があるため、マイレージは異なる場合があります。)

  • auto / noauto:パーティションを起動時に自動的にマウントするかどうかを指定します。 「noauto」を使用すると、起動時に特定のパーティションがマウントされないようにブロックできます。
  • exec / noexec:パーティションがバイナリを実行できるかどうかを指定します。 コンパイルするスクラッチパーティションがある場合、これは便利です。または、別のファイルシステムに/ homeがある場合もあります。 セキュリティが気になる場合は、これを「noexec」に変更してください。
  • ro / rw:「ro」は読み取り専用で、「rw」は読み取り/書き込みです。 rootとしてではなくユーザーとしてファイルシステムに書き込めるようにする場合は、「rw」を指定する必要があります。
  • sync / async:これは興味深いものです。 「sync」は、コマンドの実行直後に書き込みを強制します。これは、フロッピー(オタクはどれくらいですか?)やUSBドライブには理想的ですが、内蔵ハードディスクには完全に必要というわけではありません。 「非同期」が行うことは、おそらくユーザーアクティビティが停止したときなど、経過した期間にわたってコマンドを実行できるようにすることです。 「ドライブに変更が書き込まれるまでお待ちください」というメッセージが表示されたことはありませんか。 これが通常の理由です。
  • nouser / user:これにより、ユーザーはマウントおよびアンマウントの権限を持つことができます。 重要な注意点として、「user」は自動的に「noexec」を意味するため、バイナリを実行してユーザーとしてマウントする必要がある場合は、オプションとして「exec」を明示的に使用してください。
広告

これらのオプションはコンマで区切られ、スペースはありません。任意の順序で配置できます。 デフォルトがわからない場合は、オプションを明示的に指定してもかまいません。 一時的な場所(USBなど)からマウントされたものは、fstabで(UUIDによって)エントリを作成しない限り、この基本パターンに従いません。 通常のサムドライブなどは影響を受けないため、外付けハードドライブを常に特定の方法でマウントする場合に便利です。

2つのストレージドライブでユーザーマウント権限が有効になっていて、読み取り/書き込みアクセスが有効になっていて、自動マウントがオンになっていることがわかります。 私はあまりソフトウェアをコンパイルしませんが、コンパイルするときは、リストの最後に「exec」オプションを追加します。

ダンプとFscking

次のオプションは、「ダンプ」のバイナリ値(falseの場合は「0」、trueの場合は「1」)です。 これは、システムがダウンした場合のバックアップのかなり古い方法です。 これは「0」のままにしておく必要があります。

最後のオプションは「合格」の数値です。 これにより、fsck(好きなように発音)またはファイルシステムチェックを実行する順序がシステムに通知されます。 ディスクに「0」のオプションがある場合、NTFSフォーマットのストレージドライブのように、ディスクはスキップされます。 ルートファイルシステムは常に「1」である必要があり、他のファイルシステムは後で使用できます。 これは、ext3 / 4やReiserFSなどのジャーナリングファイルシステムに最適です。 FAT16 / 32やext2などの古いファイルシステムは時間がかかる場合があるため、fsckingをオフにして、定期的に自分で行うことをお勧めします。


自分が何をしているのかがわかったので、自動マウントなどに夢中になることができます。 管理する必要のあるパーティションが大量にある場合に非常に便利です。 何か問題が発生した場合に備えて、常にバックアップを作成することを忘れないでください。ただし、楽しんでください。また、コメントに経験を残してください。

関連:開発者と愛好家のための最高のLinuxラップトップ