LPIC-1 101試験(LPI Level1 Exam 101) 試験範囲 1/3

LPIC-1 101試験(LPI Level1 Exam 101) 試験範囲 1/3

LPIC-1 101試験(LPI Level1 Exam 101) 試験範囲 1/3

LPICに関するページです。




2009年頃の情報です。


備考

・tabで文字補完可能


・シングルクォーテーション内は全て文字列として認識


・cd - 前のカレントディレクトリへ移動。



FHS

Filesystem Hierarchy Standardの略。
ファイルシステム階層標準といいます。


/   ルートディレクトリ
├ /bin 基本コマンド
├ /boot 起動に必要なファイル
├ /dev デバイスファイル
├ /etc 設定ファイル
├ /home(オプション) ユーザーのホームディレクトリ
├ /lib 共有ライブラリ
├ /lib(オプション)  
├ /mnt 一時的なマウントポイント
├ /opt 追加アプリケーション
├ /proc(Linux固有) プロセス情報、カーネルが認識しているデバイス情報
├ /root(オプション) root用ホームディレクトリ
├ /sbin システム管理用コマンドなど
├ /tmp 一時的なファイル
├ /usr 各種プログラムなど
└ /var 変更されるデータ



起動について


起動順序

→BIOS
→ブートローダー(LILO,GRUB)
→カーネル(カーネルイメージのメモリーロード)
→rootファイルシステムのマウント
→initプロセス



MBR(マスターブートレコード)

・ハードディスクの先頭に置かれている。


・ブートローダの情報などが格納されている。



GRUBのインストールコマンド

grub-install /dev/sda



GRUBのインストール先

MBR、/bootパーテーション先頭など。



GRUBの設定ファイルと内容

/boot/grub/grub.conf←CeonOS5_2の場合はこちら
/boot/grub/menu.lst


# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,0)
# kernel /boot/vmlinuz-version ro root=/dev/hda1
# initrd /boot/initrd-version.img
#boot=/dev/hda
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-92.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-92.el5 ro root=LABEL=/
initrd /boot/initrd-2.6.18-92.el5.img


boot
GRUBを格納しているデバイス(boot=/dev/sdaなどと指定する。
GRUBメニュー、grub edit時のroot=/dev/sda2/等と混同しないこと。)


default
デフォルトで起動するカーネル標識の番号


timeout
プロンプトの表示時間(秒単位)


title
メニューに表示されるエントリ名


root
カーネルのルートパーテーションとして
マウントするデバイスを指定
root (hd0,0)は、/dev/sda1を表す。
root (hd1,1)は、/dev/sdb2を表す。


kernel
/boot内に格納されている起動したいカーネルを指定


initrd
起動時にロードする初期RAMディスクイメージを指定



GRUBメニューを編集しブート動作変更

grub edit> kernel /vmlinuz-2.6.18 ro root=/dev/sda2
参照サイト
http://docs.sun.com/app/docs/doc/819-0378/fwbme?l=ja&a=view


@GRUB メインメニューで矢印キーを使用して編集対象のブートエントリを選択


Aeと入力しGRUB編集メニューにアクセス


B矢印キーを使用して kernel 行またはkernel$ 行を選択します。


Ceと入力しブート引数をその行に追加


D指定する追加のブート引数を入力


EReturnキーを押して変更を保存



GRUBプロンプト

mem=2G
メモリ使用量を2GBに指定




カーネルとは

OSの基本機能を実装したソフトウェア。
OSの中核部分として、アプリケーションソフトや
周辺機器の監視、ディスクやメモリなどの資源の管理、
割りこみ処理、プロセス間通信など、OSとしての基本機能を
提供する。
追加機能や周辺機器の制御ソフトウェア(ドライバ)などを
モジュール化して、後から追加できるようになっている。


参照サイト
http://e-words.jp/w/E382ABE383BCE3838DE383AB.html



初期RAMディスク(initrd/initramfs)とは、
Linuxの起動時において、本番用ルートファイルシステムが
使用可能となるまでの間、暫定的に利用する仮の
ルートファイルシステム、およびディバイスドライバの
ロードスクリプト(linuxrc)の総称である。


参照サイト
http://kwkw.wiki.fc2.com/wiki/Linux%E3%81%AE%E5%88%9D%E6%9C%9FRAM%E3%83%87%E3%82%A3%E3%82%B9%E3%82%AF


LILOの操作


シングルユーザモードで起動

linux 1及びlinux single
ランレベル3で起動する場合は linux 3



LILO(Linux Loader)の設定ファイルと内容

/etc/lilo.conf
カーネルイメージはイメージ行に記述する。


append ="mem=256MB"
256MBで起動する


LILOをインストールするコマンド

/sbin/lilo




ファイル/ディレクトリ名(コマンドでセットで覚えるものはコマンドも含む)


/etc/inittab

カーネルが最初に実行するプロセスである/sbin/initは
/etc/inittabファイルのエントリを参照しながら、
各ランレベルで実行するプログラムを決定している。



/etc/fstab

プログラムがファイルシステムのマウント状況を
確認するために利用するファイルです。
また、/etc/fstab に記述しておくことで、
mountコマンドの引数を省略できる。


fstabの内容の見方
@tmpfs A/dev/shm Btmpfs Cdefaults D0 E0


@マウントラベル、ディスクデバイス名、
 リモートファイルシステムを指定。


Aマウントポイントを指定。


Bファイルシステムの種類を指定。


Cどうマウントするか指定。マウントオプション。


defaults
usrquota
grpquota
user


users
suid
noauto
rw
ro


など。
詳細は
http://www.linux.or.jp/JM/html/util-linux/man8/mount.8.html


D1→dumpコマンドでのバックアップ対象となる。
ext2,ext3の場合は1、その他は0を指定する


Eブート時にfsckがチェックする順番。
0→チェックしない。


usersオプション
一般ユーザーでもマウントできて、
全ての一般ユーザーがアンマウントできるオプション。



/etc/mtab

現在マウントされているファイルシステム情報を格納。
mountコマンドやumountコマンドが使用する。
ファイルのマウント、アンマウント時に
自動的にエントリが記述される。



共有ライブラリ

ldd
実行ファイルが必要としている共有ライブラリを調べるコマンド


ldd -v
バージョン情報を含めた詳細を出力。
実際にコマンドを確認すると
通常表示で表示後にVersion information:
から以下のような行が出力される。
libdl.so.2 (GLIBC_2.1) => /lib/libdl.so.2



共有ライブラリの検索パスを変更するには


@/etc/ld.so.confを編集する、環境変数LD_LIBRARY_PATHに
追加する、のどちらかは未理解。
多分全ユーザーに向けて反映させるには/etc/ld.so.confを編集、
各ユーザー固有なら環境変数LD_LIBRARY_PATHに追加する、
だと思う。


Aldconfig を実行する。すると、/etc/ld.so.cache に反映される。
※共有ライブラリを必要とするプログラムが実行されると、
/etc/ld.so.cacheファイルを参照し共有ライブラリが格納
されているディレクトリのパスを取得する。



/var/log/messages

システム起動時+動作時の全イベントログ



/var/log/boot.log

システム起動時のソフトウェアのログ



/var/log/secure

セキュリティに関するログ



/var/log/lastlog

最終ログインのログ。
lastlogコマンドで表示可能。



/dev/null

書き込まれたデータが全て消えるスペシャルファイル。
「command >/dev/null 2>&1」は実行結果を出力しない。
=標準出力/標準エラー出力ともに/dev/nullに捨てる。



^/.bash_historyファイル

historyで閲覧可能。
bashで実行したコマンドの履歴がデフォルトで
保存される。



^/.bash_profileファイル

多分、umaskが設定されている。←CentOS5.2では確認できなかった。
PATHなどが有った。一般ユーザーで編集可能。



/usr/bin/man、/usr/share/man、/usr/local/man

オンラインマニュアルの格納先



/etc/rc3.dディレクトリ

/rc3.dの3はランレベル。
「Kと2桁の数字」で始まるファイルはKill、実行されないスクリプト。
「Sと2桁の数字」で始まるファイルはStart、実行されるスクリプト。
。KやSに続く数字は、数字の小さいスクリプトから順に実行されるという優先順位。



/etc/rc.d/init.dディレクトリ



ランレベルについて

変更コマンドはinitかtelinit。telinitはランレベルを移行するまで
の時間指定も可能。
init Sやinit 6と指定する。
即座に反映される=モードが変わる。
デフォルトのランレベルが
変更された訳ではないことに注意。



runlevelコマンド

現在のランレベルを表示。
デフォルトのランレベルの変更は
/etc/inittabファイルを編集する。
init Qを実行すると、再起動せずに、
/etc/inittabファイルの変更を即座に
反映させる事が可能です。


ランレベル

0 シャットダウン(システムの停止)


1及びS及びs シングルユーザーモード(rootのみ)


2 ネットワークなしのマルチユーザーモード


3 通常のマルチユーザーモード(テキストログイン)


4 未使用


5 グラフィカルログインによるマルチユーザーモード


6 システムの再起動



シグナルについて


kill

kill→PIDで指定。killall→プロセス名で指定。
kill シグナル番号か名前


1 HUP 再起動


2 INT(SIGINT) 割込み。プロセスの中断。ctrl+Cと同じ。


9 KILL 強制終了


15 TERM 正常終了(デフォルト)



パッケージ管理について

・debian系
dpkg
apt-get 依存関係考慮
aptitude より高度


・Red hat系
rpm
yum 依存関係考慮



debianパッケージのインストール。

dpkgはそのままdebian packageの略。


/etc/dpkg/dpkg.cfg
dpkgコマンドの設定ファイル
dpkg -i
インストール


dpkg -C(--audit)
パッケージのインストール状態を検査する。
インストールが完了していないパッケージをチェックする等。


dpkg -c
パッケージに含まれるファイルの一覧表示。-lと混同しない。


dpkg -l(--list)
インストール済みのパッケージを一覧表示。-cと混同しない。
唯一オプションの後にパッケージ名を入力しないコマンド。


dpkg -L
指定したパッケージによってインストールされたファイルを表示。


dpkg -r(--remove)
設定ファイルを残してパッケージを削除。


dpkg -P(--purge)
設定ファイルも含めてパッケージを削除。


dpkg -S
指定したファイルがどのパッケージに含まれているかを表示する。


dpkg-reconfigureコマンド
既にインストール済みのパッケージを再度設定する。


apt-get

/etc/apt/sources.listファイル
※lstでは無くlist
パッケージをダウンロードするサイトを定義する。
-d
ファイルダウンロードのみ。インストールしない。


-s
動作をシュミレート。システムは変更しない。


-u
アップグレードするパッケージの一覧を表示


apt-get install samba
インストールまたはアップグレード


apt-get update
最新のパッケージリストだけを取得・更新
パッケージ情報のキャッシュを更新と
解説しているところも有る。


apt-get upgrade
インストール済みのパッケージそのものを更新。


apt-get dist-upgrade
システムを最新にアップグレードする
(Debianのバージョンをアップグレード)


apt-get remove
パッケージをアンインストールする


apt-get clean
過去に取得して保存中のパッケージを削除する
(アンインストールはされません)


apt-get autoclean
過去に取得した古いパッケージを削除する
(アンインストールはされません)



apt-cacheコマンド

パッケージ情報の検索や照会をする


apt-cache serch <キーワード>
指定したキーワードを含むパッケージを検索する。


apt-cache show <パッケージ名>
指定したパッケージ情報を表示する。


apt-cache showpkg <パッケージ名>
指定したパッケージに依存しているパッケージ一覧を表示。


apt-cache depends <パッケージ名>
dependsの綴りを間違えないこと、
apt-cacheにおいて--が付くサブコマンドは無い。
指定したパッケージが依存しているパッケージ一覧を表示。



aptitude

apt-get等より強力なパッケージ管理機能がある。
高機能検索、対話的にソフトウェア追加/削除可能など。