【LPIC1対策(4)】主題104:デバイス、Linuxファイルシステム、ファイルシステム階層標準

スポンサーリンク


本記事ではLPIC1(Ver4.0)101試験に合格するため『主題104:デバイス、Linuxファイルシステム、ファイルシステム階層標準』について自分が勉強したことをまとめました。

LPIC1(Ver4.0)101試験の出題範囲はLPICのサイト(101試験範囲)に掲示されており、以下の様になっています。




目次

目次



事前準備

1.Linuxの環境を用意する


LPICを勉強する上でLinuxの環境で実際に動かしてみるとよいです。Windows上でも仮想Linux環境を構築すれば簡単にLinuxを動かすことができます。以下にWindows上でubuntuを構築する方法をまとめました。参考にしてください。


Windows上でubuntuを構築する方法

2.テキストを購入する


Linux教科書 LPICレベル1 Version4.0対応』を参考にしながら勉強しました。このテキストにそって重要なところのみピックアップしてまとめているので大元はこちらのテキストを参照してください。



(104.1)パーティションとファイルシステムの作成



デバイスファイル名

・ハードディスク
/dev/sda,/dev/sdb,・・・(SCSI/SATA系)
/dev/hda,/dev/hdb,・・・(IDE/ATA系)
・CD/DVDドライブ
/dev/sr0,/dev/sr1,・・・
・テープドライブ
/dev/st0,/dev/st1,・・・



3種類のパーティション

1.基本パーティション
MBR(マスターブートコード)方式では最大4個
GPT(GUIDパーティションテーブル)方式では最大128個

2.拡張パーティション
基本パーティションを拡張パーティションにすることで論理パーティションを作成できる
1つしか指定できない

3.論理パーティション
拡張パーティション内に作成されたパーティション
/dev/sda5以降から始まる



パーティション管理するコマンド

各操作と対応するコマンドは以下

MBRパーティションの作成、削除、変更、情報表示
・fdiskコマンド
対話形式でパーティションを作成することができる
-lオプションでパーティションテーブルの状態を表示

GPTパーティションの作成、削除、変更、情報表示
・gdiskコマンド
 対話形式でパーティションを作成することができる
 MBRとGPTともに対応している

MBR/GPTパーティションの作成、削除、変更、情報表示
・partedコマンド
 対話形式でパーティションを作成することができる
 -sオプションで対話形式で使われるパラメータを引数で指定することができる
 MBRとGPTともに対応している
 スワップパーティション:パーティションタイプ82
 データパーティション:パーティションタイプ83



代表的なファイルシステム

代表的なファイルシステムは以下

補足
・CD-ROMのファイルシステムは「iso9660」
・ext3からジャーナル機能が追加された。
(ジャーナル機能はファイルシステムのデータ更新記録する機能)
・ext2,ext3,ext4はファイルシステム初期化時にはiノードの個数を指定できる。
・Linuxのルートファイルシステムに利用できるのはext3とxfs



ファイルシステムを作成するコマンド

各操作と対応するコマンドは以下

パーティション上にファイルシステム作成
・mkfsコマンド
-tオプション(ファイルシステムのタイプ指定)がないと、ext2で作成される
-jオプション(ジャーナル機能追加)するとext3となる
コマンドの詳細は後述

パーティション上にスワップ領域作成
・mkswapコマンド

【スワップ領域作成】
> mkswap [デバイス名]

補足
・swaponコマンド:スワップの使用開始
・swapoffコマンド:スワップの使用停止



mkfsコマンド(ファイルシステムを構築)

ファイルシステムを構築するコマンド

【ファイルシステムを構築】
> mkfs [-t ファイルシステムタイプ] [オプション] [デバイス名]

ファイルシステムタイプ
代表的なのものは以下

オプション

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230832/

補足
・-tオプション(ファイルシステムのタイプ指定)がないと、ext2で作成される
・-jオプション(ジャーナル機能追加)するとext3となる
・e2,e3,e4用のコマンドとして「mke2fsコマンド」がある
・スーパーユーザ向けにファイルシステム全体の5%のメモリ領域が予約領域として確保される。
・「mkfs.ext3コマンド」のように.でファイルタイプを指定できる
※「fsck.ext3コマンド」と同様



(104.2)ファイルシステムの整合性の保守



ディスクの利用状況の確認する方法

各操作とコマンドは以下

ファイルシステムの空き容量確認
・dfコマンド
ファイルシステムの使用状況確認
詳細は後述

ファイルシステムの占有容量確認
・duコマンド
ファイル,ディレクトリの使用状況確認
詳細は後述



iノードについて

ファイルシステムはファイルを保存するとき「ファイルの中身」(データ)と「ファイルの属性や管理情報」(iノード)を別々で保持する。
iノードの数はファイルシステム作成時に設定され、あとから変更できないため枯渇しないように注意が必要。



dfコマンド(ドライブの使用量を表示)

ディスク・ドライブの使用量を表示するコマンド

【ドライブの使用量を表示】
> df [オプション] [デバイス名/ディレクトリ名]

オプション


コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230742/



duコマンド(ファイル容量を表示)

ディレクトリ内のファイル容量を表示するコマンド

【ファイル容量を表示】
> du [オプション] [ファイル名/ディレクトリ名]

オプション


コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230748/



ファイルシステムの修復(簡易)

各操作と対応するコマンドは以下

ディスクをチェックし、必要あれば修復する
・fsckコマンド
ディスクの修復はファイルシステムをアンマウントした状態で行うこと

・e2fsckコマンド
ext2,ext3,ext4用のチェック修復のコマンド
ディスクの修復はファイルシステムをアンマウントした状態で行うこと

fsckコマンド(ディスクをチェック)

【ディスクをチェック】
> fsck [オプション] [デバイス名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230781/

補足
・「fsck.ext3コマンド」のように.でファイルタイプを指定できる
※「mkfs.ext3コマンド」と同様

e2fsckコマンド(ext*のディスクをチェック)

【ext*のディスクをチェック】
> e2fsck [オプション] [デバイス名]

補足
・-yオプション,-nオプション:確認について全面yes/no
・-rオプション:検知したエラーに対して対話型でyes/noを確認する



ファイルシステムのパラメータ設定

各操作と対応するコマンドは以下

ファイルシステムのパラメータ設定
・tune2fsコマンド
調整はファイルシステムをアンマウントした状態で行うこと



ファイルシステムのパラメータ表示
・dumpe2fsコマンド

tune2fsコマンド(ファイルシステムのパラメータ設定)

【ファイルシステムのパラメータ設定】
> tune2fs [オプション] [デバイス名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140428/553562/

補足
・-iオプション:ファイルシステムのチェック間隔を指定
・-j:ジャーナル機能を追加(ext2→ext3に変更)

dumpe2fsコマンド(ファイルシステムのパラメータ表示)

【ファイルシステムのパラメータ表示】
> dumpe2fs [オプション] [デバイス名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140421/551883/



XFS ツール

各操作と対応するコマンドは以下

XFSファイルシステムの情報を表示
・xfs_info

XFSファイルシステムのチェック
・xfs_check

XFSファイルシステムのメタデータをファイルにコピー
・xfs_metadump

XFSファイルシステムへのアクセス中断、再開
・xfs_freeze



(104.3)ファイルシステムのマウントとアンマウントの制御



ファイルシステムの情報 /etc/fstabファイル

ファイルシステムの情報は「/etc/fstabファイル」に記載される。

書式は以下

それぞれについては以下
デバイスファイル名
デバイスファイル名の指定

マウントポイント
ファイルシステムのマウント先ディレクトリ

ファイルシステムの種類

マウントオプション

dumpフラグ
1=dumpコマンドによるバックアップ対象

fsckチェック
起動時にfsckがチェックするかどうか
する場合は番号を指定
ルートファイルシステムは1である必要あり



mountコマンド(ファイルシステムをマウント)

ファイルシステムをマウントするコマンド

【ファイルシステムをマウント】
> mount [オプション]
> mount [オプション] [デバイス名] [マウントポイント]

オプション

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230839/

補足
・現在のマウント情報を表示させるにはオプションなしのmountコマンド実行
・また、dfコマンドでも現在のマウント情報を表示させることができる
・現在マウントされているファイルシステムは/proc/mountsファイル/proc/self/mountsファイルに格納されている。



umountコマンド(ファイルシステムをアンマウント)

ファイルシステムをアンマウントするコマンド

【ファイルシステムをアンマウント】
> umount [オプション]
> umount [オプション] [デバイス名/マウントポイント]

オプション

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230839/

補足
/etc/mtabファイルにはマウントされているファイルシステムの情報が格納されている。



(104.4)ディスククォータの管理



クォータとは

ユーザごとやグループごとにディスク容量の制限をかけられる仕組み



クォータ管理用のコマンド

・quotaはパーティションに対しての使用制限
→ディレクトリに関しての使用制限ではないので注意

・各操作とコマンドについては以下


quotaコマンド(クォータの状況表示)

ディスクの使用量とクォータの状況表示

【クォータの状況表示】
> quota -u [オプション] [ユーザ名]
> quota -g [オプション] [グループ名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20071205/288859/


quotacheckコマンド(ディスクの使用量チェック)

ディスクの使用量のチェック
クォータの設定ファイルを作成することもできる。

【ディスクの使用量チェック】
> quotacheck [オプション] [ファイルシステム名]

オプション
・-uオプション:ユーザのみチェック
・-gオプション:グループのみチェック
・-vオプション:チェック内容を詳細に表示する

補足
・チェック結果はデータベースファイルに保存
・クォータの設定ファイルはaquota.useraquota.groupで規定されている。
・クォータの設定ファイルにはメモリ容量とiノードそれぞれに対してソフトリミットとハードリミットを指定する。


quotaonコマンド(クォータの有効化)

クォータの有効化

【クォータの有効化】
> quotaon [オプション] [ファイルシステム名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140212/536126/


quotaoffコマンド(クォータの無効化)

クォータの無効化

【クォータの無効化】
> quotaoff [オプション] [ファイルシステム名]


edquotaコマンド(クォータの設定)

クォータの設定

【クォータの設定】
> edquota [オプション] [ユーザ名]


setquotaコマンド(クォータの設定)

クォータの設定

【クォータの設定】
> setquota [オプション] ユーザ名もしくはグループ名 ソフトリミット1 ハードリミット1 ソフトリミット2 ハードリミット2 -a

オプション
-a:/etc/mtabで指定されているすべてのファイルシステム
-u:指定したユーザについてクォータの設定
-g:指定したグループについてクォータの設定

ソフトリミット1とハードリミット1
ブロック使用量の制限値

ソフトリミット2とハードリミット2
iノード使用量の制限値


repquotaコマンド(クォータのレポート表示)

クォータのレポート表示

【クォータのレポート表示】
> repquota [オプション] [ファイルシステム名]

補足
・rootユーザのみ実行可能



(104.5)ファイルのパーミッションと所有者の管理



パーミッションについて


・アクセス権
r=読取権(*4**,**4*,***4)
w=書込権(*2**,**2*,***2)
x=実行権(*1**,**1*,***1)
s=SUID(4000),SGID(2000)
t=スティッキービット(1000)

・ファイル種別
-=ファイル
d=ディレクトリ
l=リンク



SUID/SGIDとスティッキービット

SUDI:ファイルの所有者の権限で実行する
SGID:ファイルのグループの権限で実行する
スティッキービット:権限があってもファイルの権限を持たないユーザがファイルを削除することができない

補足
・/tmpディレクトリはだれでもアクセスできてしまうため、一般的にスティッキービットを付与する。



アクセス権に関するコマンド

chmodコマンド(アクセス権の変更)

【アクセス権の変更】
> chmod [オプション] [アクセス権] [ファイル名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230728/?rt=nocnt

補足
・権限を数値と記号(+,-,=)で表現できること
 u+[rwe]:ユーザに権限付与、u-[rwe]:ユーザの権限剥奪
 g+[rwe]:グループに権限付与、g-[rwe]:グループの権限剥奪
 o+[rwe]:その他に権限付与、o-[rwe]:その他の権限剥奪
 a+[rwe]:すべてのユーザに権限付与、a-[rwe]:すべてのユーザの権限剥奪
・所有者およびrootユーザのみ実行可能


umaskコマンド(デフォルトのアクセス権設定)

【デフォルトのアクセス権設定】
> umask [マスク値]

マスク値
デフォルトパーティションは
ファイル:「-rw-rw-rw-」
ディレクトリ:「drwxrwxrwx」
これに対して、マスク値をかけてデフォルトのパーティションを指定する。

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230913/

補足
・アクセス権はマスク値を引いた値であることに注意
・例えば、ユーザrw、グループr、その他はなしのファイルとなるようにしたいときは「umask 026」となる。
(ユーザはマスクする必要なしのため0,グループはwのみ防ぐ必要があるので2,その他はrwを防ぐ必要があるので6)



所有者管理に関するコマンド

chownコマンド(所有者を変更)

【所有者を変更】
> chown [オプション] ユーザ名[:グループ名] ファイル名もしくはディレクトリ名

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230729/

補足
・グループ名を指定すると同時にグループ名を変更することができる
・-Rオプション:サブディレクトリまで再帰的に所有者、グループが変更される。


chgrpコマンド(グループを変更)

【グループを変更】
> chgrp [オプション] グループ名 ファイル名もしくはディレクトリ名

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230727/

補足
・groupsコマンド:自分の所属するグループを表示する
・idコマンド:ログインしているユーザ情報(ユーザ名、グループ)
・-Rオプション:サブディレクトリまで再帰的に所有者、グループが変更される。



(104.6)ハードリンクとシンボリックリンクの作成・変更



リンクの種類


ハードウェアリンク

・iノード(ファイルの情報)が同じのファイルができる
・ハードウェアリンクのファイルを変更すると、リンク元のすべてのファイルが変更される
・リンク元と異なるファイルシステム上にハードウェアリンクを張ることはできない
・ディレクトリのハードウェアリンクは作成できない


シンボリックリンク

・ファイルのリンク元へのポインタを示す
・リンク元と異なるファイルシステム上にシンボリックリンクを張ることができる
・ディレクトリのシンボリックリンクは作成できる
・パーミッションは「lrwxrwxrwx」だが、リンク元のパーミッションが適用される。



リンクに関するコマンド

lnコマンド(リンクを張る)

【リンクを張る】
> ln [オプション] [リンク元] [リンクファイル名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230812/

補足
オプションなしだと、ハードウェアリンクが作成される。



(104.7)システムファイルの確認と適切な位置へのファイルの配置



FHSのファイルシステムのレイアウト

FHS(Filesystem Hierarchy Standard;ファイルシステム階層標準)でファイルシステム内のレイアウトが標準化されている。


補足
・自分で作ったコマンドは/usr/localに置く
・後から増えそうなものは別々のパーティションにする(/usr,/home,/opt,/var,/tmpなど)



ファイル検索に関するコマンド


findコマンド(ファイルやディレクトリを検索する)

【ファイルやディレクトリを検索する】
> find [検索するディレクトリ] [検索式] [アクション]

検索式

アクション

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230777/

補足
・-maxdepth:検索対象の階層数を指定できる


locateコマンド(ファイルを高速検索する)

【ファイルを高速検索する】
> locate [検索パターン] [検索式]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230813/

補足
・findコマンドより高速に検索することができる


updatedbコマンド(locate用DBの更新)

【locate用DBの更新】
> updatedb [オプション]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230924/

補足
・-eオプション:指定ディレクトリを検索対象から外す
・/etc/updatedb.confファイルを直接編集することで-eオプションと同様のことができる



コマンド検索に関するコマンド


whichコマンド(コマンドを探す)

【コマンドを探す】
> which [コマンド名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/230996/

補足
・検索対象は環境変数PATHに基づいて検索する


whereisコマンド(コマンド詳細を探す)

【コマンド詳細を探す】
> whereis [オプション] [コマンド名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140212/536211/

補足
・コマンドに関するバイナリやマニュアルの絶対パスを表示する


typeコマンド(コマンド情報を表示)

【コマンド詳細を探す】
> type [コマンド名]

コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230909/



関連するページ


LPIC-1 試験対策のまとめページ

【LPIC1対策】LPIC-1試験対策 まとめ
LPICレベル1の出題範囲について自分が勉強したことをまとめました。


(次の章) 【LPIC1対策(5)】主題105:シェル、スクリプト、およびデータ管理

【LPIC1対策(5)】主題105:シェル、スクリプト、およびデータ管理
本記事ではLPIC1(Ver4.0)102試験に合格するため『主題105:シェル、スクリプト、およびデータ管理』について自分が勉強したことをまとめました。


(前の章) 【LPIC1対策(3-2)】主題103:GNUとUnixのコマンド(103.4-103.8)

【LPIC1対策(3-2)】主題103:GNUとUnixのコマンド(103.4-103.8)
LPIC1(Ver4.0)101試験に合格するため『主題103:GNUとUnixのコマンド』の(103.4-103.8)について自分が勉強したことをまとめました。







以上!!!

スポンサーリンク

フォローする

スポンサーリンク