デバイスファイル
sda | 第 1 ハードディスク |
sdb | 第 2 ハードディスク |
sda1 | 最初のハードディスクの最初のパーティション |
sdb7 | 2番目のハードディスクの7番目のパーティション |
sr0 | 第 1 CD-ROM |
sr1 | 第 1 CD-ROM |
・ブロックデバイス (block device):
データのまとまりごとに処理をするデバイス。ハードディスクやSSD等
lsblk:ブロックデバイスを一覧表示する
・キャラクタデバイス (character device):
ひとつの文字(単位)ごとに処理をするデバイス。キーボードやマウス等
パーティションの種類
・BIOSとMBRによる管理の場合
・基本パーティション:最大4個
・拡張パーティション:基本パーティション一つを拡張パーティションにすることが可能
・論理パーティション:拡張パーティション内に作られたパーティション。最大12個
作成済基本パーティションの数に関わらず/dev/sda5となる。
・パーティション分割のメリット
・システムに障害が発生した場合障害による被害を1つのパーティションに限定できる
・バックアップしやすい。
ルートファイルシステム
・Linuxのディレクトリはツリー状の階層構造になっている。
・ディレクトリツリーの頂点となるのが/ディレクトリ。
・ルートファイルシステム用の現実的な最小のディレクトリ
ディレクトリ | 説明 | パーティションの分離 |
/bin /sbin | システムに必要なコマンド、プログラム | 不可 |
/etc | システム設定ファイル | 不可 |
/lib | プログラム実行に使う共有ライブラリ | 不可 |
/dev | デバイス,I/O の実行に必要 | 不可 |
/usr | その他のユーティリティやアプリケーション | 可 |
/proc | proc ファイルシステムに必要なディレクトリ | 可 |
/mnt | 他のディスクを扱うためのマウントポイント | 可 |
パーティション管理コマンド
・fdisk [−l] デバイス名
操作コマンド | |
---|---|
l | パーティションタイプを一覧表示する。 |
n | パーティションを作成する。 |
d | パーティションを作成する。 |
p | パーティションテーブルを作成する。 |
t | パーティションタイプを変更する。 |
a | ブートフラグのオン/オフを切り替える |
w | パーティションテーブルの変更を保存して終了する。 |
q | パーティションテーブルの変更を保存しないで終了する。 |
m | ヘルプメニューを表示する。 |
・gdisk [−l] デバイス名: GPTに対応したパーティションを作成。
容量2TB以上。パーティション128個作成可能
・partedデバイス名 [−sサブコマンド]: 管理方式MBRとGPTの両方に対応。
mklabel [gpt | msdos] | 新しいパーティションテーブルを作成。 |
mkpart 種類 開始 終了 | 指定した種類のパーティションを作成 |
パーティション情報を表示する | |
quit | partedを終了する |
rm パーティション番号 | 指定した番号のパーティションを削除する |
help | 利用できるコマンドを表示する |
ファイルシステムの作成
・ファイルシステムの種類:
ファイルシステム | 説明 |
ext2 | Linuxの標準ファイルシステム |
ext3 | ext2にジャーナルリンク機能を加えたファイルシステム |
ext4 | ext3を機能拡張したファイルシステム |
XFS | SGI社が開発したジャーナルリンクファイルシステム |
JFS | IBM社が開発したジャーナルリンクファイルシステム |
Btrfs | 高度な機能を備えたファイルシステム |
iso9660 | CD-ROMのファイルシステム |
・mkfs [オプション] デバイス名: ファイルシステムを作成する
オプション | 意味 |
-t | ファイルシステムのタイプを指定。 指定しなかった場合は、ext2が用いられる。 |
-c | ファイルシステムを作成する前にデバイスに対して 不良ブロックの検査を行う。 |
・mkfs [オプション] デバイス名: ext2/ext3/ext4ファイルシステムを作成する
オプション | 意味 |
-t(ファイルシステムタイプ) ext2,ext3,ext4 | ファイルシステムのタイプを指定。 指定しなかった場合は、ext2が用いられる。 |
-j | ext3のファイルシステムを作成。 |
-c | 実行前に不良ブロックを検査する |
・mkswap [オプション] device/swapfile: スワップ(swap)領域を作成する
オプション | 意味 |
-c | スワップ領域を作る前に、デバイスに対して不良ブロックのチェックを行う。 不良ブロックが見つかった際は、そのカウント数を表示する。 |
-L label | ラベルを指定し、そのラベルで swapon できるようにする。 |
ファイルシステムの管理
・df [オプション] [ファイル]: ディスクの空き領域を表示する
オプション | 意味 |
---|---|
-h | サイズに応じて読みやすい単位で表示する |
-H | 読みやすい単位で表示する。1000単位の値を使用する |
-k | –block-size=1Kと同じ |
-i | ブロック使用量の代わりにiノード情報を表示する |
-a | ダミーファイルシステムを含めて表示する |
・du [オプション] ディレクトリ・ファイル: ファイルのディスク使用量を表示するコマンド
オプション名 | 説明 |
-a, –all | ディレクトリ以外にファイルについても表示する。 |
-l, –count-links | リンクを含めて集計する。 |
-c, –total | 全ての容量の合計を表示します。 |
-k, –kilobytes | キロバイト単位で表示します。 |
-m, –megabytes | メガバイト単位で表示します。 |
-s, –summarize | 指定したファイルやディレクトリのみに合計を表示します。 |
-S, –separate-dirs | サブディレクトリを含めて表示する。 |
-h, –human-readable | 容量を読みやすい単位で表示する |
・fsck [オプション]デバイス名: ファイルシステムを検査、修復するコマンド
オプション | 意味 |
---|---|
-t ファイルシステム名 | ファイルシステムの種類を指定する(無指定時は自動判定) |
-a | 自動的に修復を実行する |
-A | /etc/fstabにあるファイルシステムを全て検査する |
-r | 対話的に修復を実行する |
-N | 実際には処理を実行せず、何を行うかだけを表示する |
・e2fsck [オプション]デバイス名: ext2,ext3,ext4ファイルシステムを検査、修復するコマンド
-p | 問い合せなしで自動的にファイルシステムの修復を行う |
-y | すべての問い合せにyesと応答する |
-n | ファイルシステムに変更を加えない(チェックのみ) |
・tune2fs [オプション]デバイス名: ext2、ext3、ext4ファイルシステムのパラメータを変更する
オプション | 意味 |
---|---|
-c 回数 | チェック無しでマウント出来る最大回数を指定する |
-i 間隔 | ファイルシステムを検査する間隔を整数で指定する |
-j | ext2ファイルシステムをext3ファイルシステムに変換する |
-L ラベル | ボリュームラベルを設定する |
・XFS: ext2、ext3、ext4ファイルシステムのパラメータを変更する
コマンド | 意味 |
---|---|
mkfs.xfs | XFSファイルシステムを作成する |
xfs_info | XFSファイルシステムの情報を表示する |
xsf_db | XFSファイルシステムのデバッグを行う |
xfs_check | XFSファイルシステムをチェックする |
xfs_admin | XFSファイルシステムのパラメータを変更する |
xfs_fsr | XFSファイルシステムのデフラグを行う |
xfs_repair | XFSファイルシステムを修復する |
ファイルシステムのマウントとアンマウント
・/etc/fstab: ファイルシステムの情報を保存しているファイル
項番 | フィールド | 設定内容 |
① | マウントするデバイスファイル名 | マウントするデバイスファイル名またはボリュームラベルを指定 |
② | マウントポイント | マウントポイントとなるディレクトリの絶対パスを指定 |
③ | ファイルシステムの種類 | ①のファイルシステムの指定。下表1を参照。 |
④ | マウントオプション | ①のマウントオプションの指定。下表2を参照。 |
⑤ | dump | dumpコマンドによるバックアップ対象となるかどうかを指定 0 : バックアップする必要がない 1 : バックアップする必要がある |
⑥ | fsck | システム起動時にfsckコマンドでチェックを行う時の順序を指定 0 : fsckコマンドでファイルシステムをチェックしない 1 : ルートファイルシステム ( / ) に指定する数値 2以上 : その他のファイルシステムに指定する数値 |
ファイルシステム | 説明 |
ext2 | Linuxの標準ファイルシステム |
ext3 | ext2の機能拡張版 ( 現在の主流 ) |
ext4 | ext2の機能拡張版 ( 現在の主流 ) |
reiserfs | 高速なジャーナリングファイルシステム |
xfs | SGI 開発によるジャーナリングファイルシステム |
jfs | IBM 開発によるジャーナリングファイルシステム |
iso9660 | CD-ROMのファイルシステム |
msdos | MS-DOSのファイルシステム |
オプション | 説明 |
async | ファイルシステムの入出力を非同期で実行 |
auto | mount -a コマンドの実行時にマウントする |
noauto | mount -a コマンドの実行時にマウントしない |
defaults | デフォルトのオプションを設定 ( async、auto、dev、exec、nouser、rw、suid ) |
exec | バイナリの実行を許可 |
noexec | バイナリの実行を禁止 |
ro | 読み取り専用モードでマウント |
rw | 読み書き可能モードでマウント |
unhide | 隠しファイルも表示 |
suid | SUIDとSGIDの有効化 |
user | 一般ユーザーにマウントを許可する |
users | マウントを実行していないユーザにもアンマウントを許可 |
nouser | 一般ユーザーのマウントを許可しない |
・mount [オプション] デバイス [マウントポイント]: ファイルシステムをマウントする
-a | /etc/fstabに記載されているファイルシステムを全てマウント。 |
-t ファイルタイプ | ファイルタイプを指定します。 |
-o マウントオプション | マウントする際のオプション(読み込み専用など)を指定。 |
・umount [オプション] デバイス名またはマウントポイント: ファイルシステムをアンマウントする
-a | /etc/fstabに記載されているファイルシステムを全てアンマウント。 |
-t ファイルタイプ | 指定した種類のファイルシステムのみアンマウント。 |
FHS(Filesystem Hierarchy Standard)
/ (ルートディレクトリ)
├── bin : 基本的なコマンドファイル
├── boot : 初期起動時に必要な処理の設定ファイル
├── dev : デバイスファイル
├── etc : システムに関わる設定ファイル
├── home : 各ユーザーのディレクトリ
├── lib : 共有ライブラリファイル
├── media : リムーバブル媒体のマウントポイント
├── mnt : 一時的なマウントポイント
├── opt : ソフトウェアやパッケージなどのプログラムが
├── proc : カーネルやプロセス情報にアクセスできる仮想的なファイルシステム
├── root : スーパーユーザーである「root」のホームディレクトリ
├── run : 動作させた時に実行される一時的なデータ
├── sbin : システムに関するコマンドファイル
├── tmp : テンポラリファイル(一時的に作成されるファイル)
├── usr : ユーザー共有のコマンドやライブラリ
└── var : ログファイルやスプールファイル
・find [パス] [検索条件]: ファイルを検索するコマンド
-maxdepth レベル | 指定したパスから数えて、最大何段階下まで検索するかを指定。 |
-mindepth レベル | 指定したパスから数えて、何段階下まで検索しないかを指定。 |
-mount | マウントしている他のファイルシステムを検索対象から除外。 |
-name 文字列 | 指定した文字列のファイルやディレクトリ。 |
-atime n | ファイルの最終アクセス日時がn日前。 |
-mtime n | ファイルの最終修正日時がn日前。 |
-perm モード | 指定したモードにマッチするファイル。 |
-size サイズ | 指定したサイズより大きい。 |
-type ファイルタイプ | ファイルタイプを指定。 b ブロックファイル / c キャラクタファイル / d ディレクトリ f ファイル / l シンボリックリンク / s ソケット |
-user ユーザー | ファイルの所有者で検索。 |
フルパスのファイル名を標準出力に表示。 | |
-exec コマンド ; | 見つけたファイルを引数にコマンドを実行する |
・updatedb [オプション] : あらかじめ作成されたファイル名データベースに基づいて、
指定されたパターンにマッチするファイルを検索
-eパス | データベースに取り込まないパスを指定する |
・which [オプション] コマンド名 : 実行コマンドのフルパスを表示する
オプション | 意味 |
---|---|
-a | 環境変数PATHにある全ての実行ファイルを表示する |
-i | 標準入力からエイリアスを読み込み、合致したものを表示する |
・whereis [オプション] コマンド : コマンド本体と関連ファイルを検索する
オプション | 意味 |
---|---|
-b | バイナリファイル(コマンド本体やライブラリなど)だけを探す |
-m | マニュアルファイルだけを探す |
-s | ソースファイルだけを探す |
・type [オプション] コマンド名 : シェルがどのコマンドを起動しているかを知る