本記事ではLPIC1(Ver4.0)101試験に合格するため『主題104:デバイス、Linuxファイルシステム、ファイルシステム階層標準』について自分が勉強したことをまとめました。
LPIC1(Ver4.0)101試験の出題範囲はLPICのサイト(101試験範囲)に掲示されており、以下の様になっています。
目次
目次
事前準備
1.Linuxの環境を用意する
LPICを勉強する上でLinuxの環境で実際に動かしてみるとよいです。Windows上でも仮想Linux環境を構築すれば簡単にLinuxを動かすことができます。以下に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コマンド
補足
・swaponコマンド:スワップの使用開始
・swapoffコマンド:スワップの使用停止
mkfsコマンド(ファイルシステムを構築)
ファイルシステムを構築するコマンド
コマンド詳細
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コマンド(ドライブの使用量を表示)
ディスク・ドライブの使用量を表示するコマンド
オプション
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230742/
duコマンド(ファイル容量を表示)
ディレクトリ内のファイル容量を表示するコマンド
オプション
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230748/
ファイルシステムの修復(簡易)
各操作と対応するコマンドは以下
ディスクをチェックし、必要あれば修復する
・fsckコマンド
ディスクの修復はファイルシステムをアンマウントした状態で行うこと
・e2fsckコマンド
ext2,ext3,ext4用のチェック修復のコマンド
ディスクの修復はファイルシステムをアンマウントした状態で行うこと
fsckコマンド(ディスクをチェック)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230781/
補足
・「fsck.ext3コマンド」のように.でファイルタイプを指定できる
※「mkfs.ext3コマンド」と同様
e2fsckコマンド(ext*のディスクをチェック)
補足
・-yオプション,-nオプション:確認について全面yes/no
・-rオプション:検知したエラーに対して対話型でyes/noを確認する
ファイルシステムのパラメータ設定
各操作と対応するコマンドは以下
ファイルシステムのパラメータ設定
・tune2fsコマンド
調整はファイルシステムをアンマウントした状態で行うこと
ファイルシステムのパラメータ表示
・dumpe2fsコマンド
tune2fsコマンド(ファイルシステムのパラメータ設定)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140428/553562/
補足
・-iオプション:ファイルシステムのチェック間隔を指定
・-j:ジャーナル機能を追加(ext2→ext3に変更)
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コマンド(ファイルシステムをマウント)
ファイルシステムをマウントするコマンド
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230839/
補足
・現在のマウント情報を表示させるにはオプションなしのmountコマンド実行
・また、dfコマンドでも現在のマウント情報を表示させることができる
・現在マウントされているファイルシステムは/proc/mountsファイル、/proc/self/mountsファイルに格納されている。
umountコマンド(ファイルシステムをアンマウント)
ファイルシステムをアンマウントするコマンド
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230839/
補足
/etc/mtabファイルにはマウントされているファイルシステムの情報が格納されている。
(104.4)ディスククォータの管理
クォータとは
ユーザごとやグループごとにディスク容量の制限をかけられる仕組み
クォータ管理用のコマンド
・quotaはパーティションに対しての使用制限
→ディレクトリに関しての使用制限ではないので注意
・各操作とコマンドについては以下
quotaコマンド(クォータの状況表示)
ディスクの使用量とクォータの状況表示
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20071205/288859/
quotacheckコマンド(ディスクの使用量チェック)
ディスクの使用量のチェック
クォータの設定ファイルを作成することもできる。
オプション
・-uオプション:ユーザのみチェック
・-gオプション:グループのみチェック
・-vオプション:チェック内容を詳細に表示する
補足
・チェック結果はデータベースファイルに保存
・クォータの設定ファイルはaquota.user、aquota.groupで規定されている。
・クォータの設定ファイルにはメモリ容量とiノードそれぞれに対してソフトリミットとハードリミットを指定する。
quotaonコマンド(クォータの有効化)
クォータの有効化
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140212/536126/
quotaoffコマンド(クォータの無効化)
クォータの無効化
edquotaコマンド(クォータの設定)
クォータの設定
setquotaコマンド(クォータの設定)
クォータの設定
オプション
-a:/etc/mtabで指定されているすべてのファイルシステム
-u:指定したユーザについてクォータの設定
-g:指定したグループについてクォータの設定
ソフトリミット1とハードリミット1
ブロック使用量の制限値
ソフトリミット2とハードリミット2
iノード使用量の制限値
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コマンド(アクセス権の変更)
コマンド詳細
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コマンド(デフォルトのアクセス権設定)
マスク値
デフォルトパーティションは
ファイル:「-rw-rw-rw-」
ディレクトリ:「drwxrwxrwx」
これに対して、マスク値をかけてデフォルトのパーティションを指定する。
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230913/
補足
・アクセス権はマスク値を引いた値であることに注意
・例えば、ユーザrw、グループr、その他はなしのファイルとなるようにしたいときは「umask 026」となる。
(ユーザはマスクする必要なしのため0,グループはwのみ防ぐ必要があるので2,その他はrwを防ぐ必要があるので6)
所有者管理に関するコマンド
chownコマンド(所有者を変更)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230729/
補足
・グループ名を指定すると同時にグループ名を変更することができる
・-Rオプション:サブディレクトリまで再帰的に所有者、グループが変更される。
chgrpコマンド(グループを変更)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230727/
補足
・groupsコマンド:自分の所属するグループを表示する
・idコマンド:ログインしているユーザ情報(ユーザ名、グループ)
・-Rオプション:サブディレクトリまで再帰的に所有者、グループが変更される。
(104.6)ハードリンクとシンボリックリンクの作成・変更
リンクの種類
ハードウェアリンク
・iノード(ファイルの情報)が同じのファイルができる
・ハードウェアリンクのファイルを変更すると、リンク元のすべてのファイルが変更される
・リンク元と異なるファイルシステム上にハードウェアリンクを張ることはできない
・ディレクトリのハードウェアリンクは作成できない
シンボリックリンク
・ファイルのリンク元へのポインタを示す
・リンク元と異なるファイルシステム上にシンボリックリンクを張ることができる
・ディレクトリのシンボリックリンクは作成できる
・パーミッションは「lrwxrwxrwx」だが、リンク元のパーミッションが適用される。
リンクに関するコマンド
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コマンド(ファイルやディレクトリを検索する)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230777/
補足
・-maxdepth:検索対象の階層数を指定できる
locateコマンド(ファイルを高速検索する)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230813/
補足
・findコマンドより高速に検索することができる
updatedbコマンド(locate用DBの更新)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230924/
補足
・-eオプション:指定ディレクトリを検索対象から外す
・/etc/updatedb.confファイルを直接編集することで-eオプションと同様のことができる
コマンド検索に関するコマンド
whichコマンド(コマンドを探す)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/230996/
補足
・検索対象は環境変数PATHに基づいて検索する
whereisコマンド(コマンド詳細を探す)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140212/536211/
補足
・コマンドに関するバイナリやマニュアルの絶対パスを表示する
typeコマンド(コマンド情報を表示)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230909/
関連するページ
LPIC-1 試験対策のまとめページ
(次の章) 【LPIC1対策(5)】主題105:シェル、スクリプト、およびデータ管理
(前の章) 【LPIC1対策(3-2)】主題103:GNUとUnixのコマンド(103.4-103.8)
以上!!!