1012345678910111213141516171819202122232425262728293012

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
【 --/--/-- (--) 】 スポンサー広告 | TB(-) | CM(-)

sarコマンドのマニュアル

とある依頼でLinuxマシンの性能監視を行う必要があったので、sarをいろいろ使いまくった。

sarはディストリビューションによっては標準で入れられてない場合もあるので、topやvmstatに比べたらなかなか知られてないとは思うけど、非常に便利なコマンド。
で、知られてないついでに、Linux JM Projectに日本語manページも存在しない。


なので、日本語に訳してみた。正式のJMプロジェクトのマニュアルみたいにレビューを通してないので、用語や表現の統一もしてなければ、自分が得意な分野以外の単語が訳として適切かもわからないけど、自分用の訳が他の人でも多少なりとも参考になればという感覚。

たぶんBSD、Linux、その他環境によって多少使えるオプションが違うけど、おおまかに言って似てるはず。私が参考にしたのは、Linux (SuSE)のsar。


sar(1)




名前


sar - システムのアクティビティについての情報を収集、保存、出力する。

書式


sar [ -A ] [ -b ] [ -B ] [ -C ] [ -d ] [ -i interval ] [ -p ] [ -q ] [ -r ] [ -R ] [ -S ] [ -t ] [ -u [ ALL ] ] [ -v ] [ -V ] [ -w ] [ -W ] [ -y ] [ -I { irq | SUM | ALL | XALL } ] [ -P { cpu | ALL } ] [ -o [ filename ] | -f [ filename ] ] [ -s [ hh:mm:ss ] ] [ -e [ hh:mm:ss ] ] [ interval [ count ] ]

説明


sarコマンドは、選択したOSのアクティビティ・カウンターの累積値を標準出力に出力する。指定した回数・間隔パラメータの値に基づき、アカウンティングシステムがシステム情報を指定した秒間隔で指定した回数表示する。間隔パラメータがゼロの場合は、sarコマンドはシステム開始後からの平均値を出力する。回数パラメータの指定なしに間隔パラメータのみ指定された場合は、レポートを出力し続ける。

収集されたデータは、標準出力に加え、-o filename フラグで指定したファイルに保存する事ができる。ファイル名の指定がない場合は、sarは標準のシステム活動日次ファイル /var/log/sa/sadd (ddは現在日付)に記録する。デフォルトではカーネルから得られる全ての情報が当データファイルへ記録される。



sarコマンドは-fオプションによって指定されたファイル、もしくはデフォルトの日次システムアクティビティ・データファイルから、過去に保存された結果をファイルから読み取り、標準出力に出力できる。



-Pオプションなしに実行すると、sarコマンドは、システム全体(全プロセッサの合計)の数値をパーセント表示のものについては平均値、それ以外は合計値として出力する。-Pフラグが指定された場合は、sarコマンドは指定されたひとつもしくは複数のプロセッサについての情報を出力する。-P ALLとして指定された場合は、sarコマンドは全プロセッサの個別情報と合計値の両方を出力する。



フラグを使用する事で、特定のシステムアクティビティを選んで出力できる。フラグを指定しない場合は、CPUアクティビティのみ出力する。-Aフラグを指定する事は、-bBdqrRSvmWy -I SUM -I XALL -n ALL -u ALL -P ALLを意味する。



デフォルトのsarコマンド出力(CPU利用状況レポート)は、重要なシステム資源であるため、システムアクティビティの調査にあたって最初に見るべきもののひとつである。CPU利用状況が100%に近い場合(user + nice + system値)、ワークロードはCPUがボトルネックになっている。



複数のサンプル値やレポートが必要な場合は、sarコマンドで出力ファイルを指定するのが便利である。sarコマンドをバックグラウンドで実行するシンタックスは、

sar -o datafile interval count >/dev/null 2>&1 &

である。



全てのデータはバイナリ形式で計測され、ファイルへ保存される。sarコマンドに-fコマンドを指定する事により、ファイルを選んで出力する事ができる。間隔と回数を指定して保存した結果から取得できる。回数パラメータが指定されない場合は、ファイル内に保存された全ての結果が選択される。このような方法によるデータ取得は、システム利用のピーク時間帯を判定するのに有用である。



注意:sarコマンドはローカルなアクティビティのみ出力する。


オプション



-A
このオプションを指定する事は、-bBdqrRSuvwWy -I SUM -I XALL -n ALL -u ALL -P ALLを指定する事と同等である。

-b
I/O転送レートについての統計を出力する。下記の値が表示される:

tps
物理デバイスに対し発行された1秒あたり総転送数。転送とは、物理デバイスに対してのi/Oリクエストの事である。複数の論理リクエストは単一のI/Oリクエストとして結合される場合がある。各転送のサイズは不定である。

rtps
物理デバイスに対し発行された1秒あたり総読み取りリクエスト数。

wtps
物理デバイスに対し発行された1秒あたり総書き込みリクエスト数。

bread/s
デバイスから1秒間に読み取られた総ブロック数。ブロックはカーネル2.4以降ではセクタと同じであり、512バイトの大きさである。それより古いカーネルについては、ブロックのサイズは不定である。

bwrtn/s
デバイスに対し1秒間に書き込まれた総ブロック数。


-B
ページングに関する統計を出力する。下記の指標のうちいくつかはカーネル2.5以降にのみ存在する。下記の値が表示される:

pgpin/s
システムがディスクからページインした、1秒あたり総キロバイト数。注意:古いカーネル(2.2.x)では、1秒あたりブロック数(キロバイトではない)である。

pgpout/s
システムがディスクへページアウトした、1秒あたり総キロバイト数。注意:古いカーネル(2.2.x)では、1秒あたりブロック数(キロバイトではない)である。

fault/s
1秒あたりのページフォールト数(メジャー、マイナーの合計)。一部のページフォールトはI/Oなしに解決可能であるため、これはI/Oが発生したページフォールト数ではない。

majflt/s
システムに発生した、ディスクからメモリページのロードが必要な1秒あたりのメジャーフォールト数。

pgfree/s
システムがフリーリストへ登録した1秒あたりのページ数。

pgscank/s
kswapdデーモンによりスキャンされた1秒あたりのページ数。

pgscand/s
直接スキャンされた1秒あたりのページ数。

pgsteal/s
メモリ要求を満たすためキャッシュ(ページキャッシュおよびスワップキャッシュ)から回収したページ数。

%vmeff
pgsteal / pgscanとして計算された数で、ページ回収の効率性を示す。100%に近い場合、ほぼ全ての非活動リストの末尾から来るページが回収された事を意味する。低すぎる場合(30%以下)、仮想メモリは何らかの問題を有している。出力対象の期間の間にページのスキャンが行われない場合は、このフィールドはゼロを示す。


-C
ファイルから読んで実行している場合、sadcにより挿入されたコメントsarに出力するよう指示する。

-d
各ブロックデバイスのアクティビティを出力する(カーネル2.4以降のみ)。出力時には、デバイス名にm-nの書式が使われる(DEVカラム)。mはデバイスのメジャー番号である。最近のカーネル(2.5以降)では、nはデバイスのマイナー番号であるが、2.5より前のカーネルでは、順番に番号が振られるのみである。-pオプションデバイス名を整形する事も可能である(下記参照)。Avgqu-sz、 await、 svctm、および%utilの値は2.4カーネルの一部では意味をなさないため0.00となっている。

tps
デバイスに対し行われた1秒あたりの転送数。複数の論理リクエストは結合してデバイスに対して1つのリクエストとして発行される場合がある。各転送のサイズは不定である。

rd_sec/s
デバイスから読み取ったセクタ数。セクタのサイズは512バイトである。

wr_sec/s
デバイスに書き込んだセクタ数。セクタのサイズは512バイトである。

avgrq-sq
デバイスに対し発行されたデバイスの平均サイズ(セクタ数)。

await
デバイスに対し発行されたI/Oリクエストの平均所要時間(ミリ秒)。この数値はリクエストがキュー上にある時間と処理を実行している時間を含む。

svctm
デバイスに対し発行されたI/Oリクエストが実際に処理する平均時間(ミリ秒)。

%util
CPU時間のうち、デバイスに対するI/O処理に使われた時間(デバイスの帯域利用)。この値が100%に近づくと、デバイスの飽和が発生している。


-e [ hh:mm:ss ]
レポートの終了時間を指定する。デフォルトの終了時間は18:00:00である。時間は24時間表記で指定する必要がある。このオプションはデータがファイルから読まれる際、もしくは書き込む際に使用できる(-fもしくは-oオプション)。

-f [ filename ]
(-o filenameフラグで作成したファイルについて)指定したファイル名のファイルからレコードを取得する。Filenameパラメータのデフォルト値は、当日の日次ファイル/var/log/sa/saddファイルである。-fオプションと-oオプションは排他的である。

-I { irq | SUM | ALL | XALL }
指定した割り込みに対する統計を出力する。パラメータirqは割り込み番号である。複数の割り込み番号を指定した場合、それら複数の割り込みを個別に参照する。SUMキーワードは1秒あたり受信割り込み数を表示する要指定する。ALLキーワードは最初の16の割り込みについての統計を表示し、XALLキーワードはAPIC割り込みの発生源を含め、全ての割り込みの統計を表示する。

-n { DEV | EDEV | NFS | NFSD | SOCK | ALL }
ネットワーク統計を出力する。

DEVキーワードは、ネットワークデバイスから得られる下記の統計を出力する。

IFACE
統計を出力するネットワークインターフェース名。

rxpck/s
1秒あたり総受信パケット数。

txpck/s
1秒あたり総送信パケット数。

rxkB/s
1秒あたり総受信キロバイト数。

txkB/s
1秒あたり総送信キロバイト数。

rxcmp/s
1秒あたり総受信圧縮パケット数(cslip等)。

txcmp/s
1秒あたり総送信圧縮パケット数(cslip等)。

rxmcst/s
1秒あたり総受信マルチキャストパケット数。


EDEVキーワードは、ネットワークデバイスから得られる失敗(エラー)に関する下記の統計を出力する。

IFACE
統計を出力するネットワークインターフェース名。

rxerr/s
1秒あたり総受信不良パケット数。

txerr/s
パケット送信時に発生した1秒あたりエラー発生数。

coll/s
パケット送信時に発生した1秒あたりパケット衝突数。

rxdrop/s
Linuxバッファ上の領域不足によって発生した、1秒あたりの受信パケットのドロップ数。

txdrop/s
Linuxバッファ上の領域不足によって発生した、1秒あたりの送信パケットのドロップ数。

txcarr/s
パケット送信時に発生した1秒あたりのキャリアエラー数。

rxfram/s
パケット受信時に発生した、1秒あたりフレーム・アラインメント・エラー数

rxfifo/s
1秒あたりの受信パケットのFIFOオーバーラン・エラー数

txfifo/s
1秒あたりの送信パケットのFIFOオーバーラン・エラー数


NFSキーワードは、下記のNFSクライアント・アクティビティについて出力する。

call/s
1秒あたりのRPCリクエスト数。

retrans/s
1秒あたりの(サーバータイムアウト等による)再送信が必要であったRPCリクエスト数。

read/s
1秒間に発生した'read'RPCコール数。

write/s
1秒間に発生した'write'RPCコール数。

access/s
1秒間に発生した'access'RPCコール数。

getatt/s
1秒間に発生した'getattr'RPCコール数。


NFSDキーワードは、下記のNFSサーバー・アクティビティについて出力する。

scall/s
1秒あたりの受信RPCリクエスト数。

badcall/s
1秒あたりの処理時にエラーが発生した不良RPCリクエスト数。

packet/s
1秒あたりの受信パケット数。

udp/s
1秒あたりの受信UDPパケット数。

tcp/s
1秒あたりの受信TCPパケット数。

hit/s
1秒あたりの応答キャッシュ・ヒット数。

miss/s
1秒あたりの応答キャッシュ・ミス数。

sread/s
1秒あたりの受信'read' RPCコール数。

swrite/s
1秒あたりの受信'write' RPCコール数。

saccess/s
1秒あたりの受信'access' RPCコール数。

sgetatt/s
1秒あたりの受信'getattr' RPCコール数。


SOCKキーワードは、下記の使用ソケットについての統計を出力する。

totsck
システムが使用した総ソケット数。

tcpsck
現在使用中のTCPソケット数。

udpsck
現在使用中のUDPソケット数。

rawsck
現在使用中のRAWソケット数。

ip-frag
現在使用中のIPフラグメント数。

tcp-tw
TIME_WAITステータスにあるTCPソケット数。


ALLキーワードは上記全てを指定するのと同等で、ネットワーク・アクティビティの全てを出力する。

-o [ filename ]
バイナリ形式で読み取り内容をファイルに保存する。各読み取りは別個のレコードになる。Filenameパラメータのデフォルト値は当日の日次データファイル/var/log/sa/saddである。-oオプションと-fオプションは互いに排他的である。

-P { cpu | ALL }
指定した単体のプロセッサ、もしくは複数のプロセッサ別の出力をする。ALLキーワードを指定した場合は、全プロセッサについて個別の統計を出力する。プロセッサ0が一つ目のプロセッサである事に注意。

-p
デバイス名を整形して表示する。-dオプションと共に使用する。デフォルトではデバイス名はdev m-n形式で表示されるが、当オプションを使用する事により、/dev下に表示されるのと同じ名前で表示されるようになる。名前のマッピング情報は、/etc/sys-stat/sysstat.ioconfによって管理されている。

-q
キューの長さとロードアベレージを出力する。

runq-sz
実行キューの長さ(実行時間待ちのタスク数)。

plist-sz
タスクリスト中のタスク数。

ldavg-1
直前1分間のシステムのロードアベレージ。ロードアベレージは、指定期間中の実行可能、実行中(ステート=R)、および割り込み不可のスリープ状態(ステート=D)のプロセス数として計算される。

ldavg-5
直前5分間のシステムのロードアベレージ。

ldavg-15
直前15分間のシステムのロードアベレージ。


-r
メモリ利用状況について下記の統計を出力。

kbmemfree
キロバイト単位での空きメモリ容量。

kbmemused
キロバイト単位での使用中メモリ容量。カーネル自身によって使用されるメモリについては対象外。

%memused
メモリの使用率。

kbbuffers
カーネルによってバッファとして使用されたメモリ容量(キロバイト)。

kbcached
カーネルによってデータをキャッシュするために使用されたメモリ容量(キロバイト)。

kbcommit
現在のワークロードに必要なメモリ容量(キロバイト)。メモリ不足が発生しない事を保証するために必要なRAM/スワップの量の見積である。

%commit
総メモリ容量(RAM+スワップ)に対する、現在のワークロードに必要なメモリ容量(キロバイト)。通常カーネルはメモリをオーバーコミットするため、この数値は100%を超える場合がある。


-R
メモリに関する下記の統計を出力する。

frmpg/s
システムにより解放された1秒あたりのメモリページ数。負の数はシステムにより確保されたページ数を示す。ページサイズはマシン・アーキテクチャにより、4KBか8KBのいずれかである事に注意。

bufpg/s
システムによりバッファとして使用された1秒あたりの追加メモリページ数。負の数はシステムがより少ないページ数をバッファとして使用している事を意味する。

campg/s
システムによりキャッシュされた1秒あたりの追加メモリページ数。負の数はシステムがより少ないページ数をキャッシュしている事を意味する。


-s [ hh:mm:ss ]
データの開始時間を指定し、sarコマンドに指定時間以降のレポートのみ出力させる。デフォルトの開始時間は08:00:00である。時間は24時間表記で指定する必要がある。このオプションはデータがファイルから読まれる際に使用できる(-fオプション)。

-S
スワップスペース利用状況について、下記の統計を出力する。

kbswpfree
空きスワップスペース容量(キロバイト)。

kbswpused
使用中のスワップスペース容量(キロバイト)。

%swpused
使用中のスワップスペースの割合。

kbswpcad
キャッシュされたスワップメモリの容量(キロバイト)。この数値は一度スワップアウトされたメモリのうち、スワップインしたがスワップエリアに残っているメモリである(メモリが必要な際に、既にスワップエリアにあるため再度スワップアウトする必要がなくなり、I/Oを減らせられる。)

%swpcad
使用されたスワップスペースに対する、キャッシュされたスワップメモリの割合。


-t
日次データファイルからデータを読む際、sarに元のデータファイル作成時のロケールに応じたタイムスタンプを表示させる。このオプションがない場合、現ユーザーのロケール時間に応じた出力がされる。

-u [ ALL ]
CPUの利用状況を出力する。ALLキーワードは全てのCPUに関する情報の出力を行うよう指定する。下記の情報が出力される。

%user
ユーザーレベル(アプリケーション)の実行によるCPU利用の割合。
このフィールドは仮想プロセッサ上で実行された時間も含む事に注意。

%usr
ユーザーレベル(アプリケーション)の実行によるCPU利用時間の割合。
このフィールドは仮想プロセッサで実行された時間を含まない事に注意。

%nice
Niceプライオリティで実行された、ユーザーレベルのCPU利用時間の割合。

%system
システムレベル(カーネル)の実行によるCPU利用時間の割合。
このフィールドは割り込みやソフト割り込みの処理に使われた時間も含まれる事に注意。

%sys
システムレベル(カーネル)の実行によるCPU利用時間の割合。
このフィールドは割り込みやソフト割り込みの処理に使われた時間を含まない事に注意。

%iowait
システムがI/Oリクエストの処理のためCPUがアイドルになった時間の割合。

%steal
ハイパーバイザーが他の仮想プロセッサを処理している間の仮想CPUの非自発的な待ち時間の割合。

%irq
割り込みを処理するために使われたCPU時間の割合。

%soft
ソフト割り込みを処理するために使われたCPU時間の割合。

%guest
仮想プロセッサを実行するのに使われたCPU時間の割合

%idle
CPUがアイドルで、かつI/Oリクエストの処理完了を待っていない時間の割合。

注意:SMPマシンでは、アクティビティの全く発生していない(全項目が0.00)プロセッサは、無効化されたプロセッサである。

-v
inode、ファイルやその他カーネルテーブルの状態を出力する。下記の情報が出力される。

dentunusd
ディクショナリー・キャッシュのうち未使用のキャッシュ・エントリーの数。

file-nr
システムにより使用されているファイルハンドルの数。

inode-nr
システムにより使用されているinodeハンドルの数。

pty-nr
システムにより使用されている疑似端末の数。


-V
バージョン番号を表示して終了する。

-w
タスクの生成とシステム切り替えのアクティビティについて出力する。

proc/s
1秒あたり生成されたタスクの数。

cswch/s
1秒あたり実行されたコンテキスト・スイッチの回数。


-W
スワッピングに関する統計の出力。下記の情報が出力される。

pswpin/s
1秒あたりにシステムが取り込んだスワップページ数。

pswpout/s
1秒あたりにシステムが書き出したスワップページ数。


-y
TTYデバイスのアクティビティについて出力。下記の値が表示される。

rcvin/s
現在のシリアル・ラインについて、1秒間に受け取った割り込みの数。シリアル・ラインの番号はTTYカラムに与えられる。

xmtin/s
現在のシリアル・ラインに対して、1秒間に発生した送信割り込み。

framerr/s
現在のシリアル・ラインに対して、1秒間に発生したフレームエラー。

prtyerr/s
現在のシリアル・ラインに対して、1秒間に発生したパリティエラー。

brk/s
現在のシリアル・ラインに対して、1秒間に発生したブレーク数。

ovrun/s
現在のシリアル・ラインに対して、1秒間に発生したオーバーランエラー数。

カーネル2.6では、これら統計はrootのみ取得可能である。


環境変数


sarコマンドは下記の環境変数を実行時に使用する。

S_TIME_FORMAT
この環境変数が存在し、かつ値がISOである場合は、日付をレポートのヘッダに出力する際に現在のロケールは無視される。sarコマンドは代わりにISO 8601フォーマット(YYYY-MM-DD)を使用する。

S_TIME_DEF_TIME
この環境変数が存在し、かつ値がUTCである場合は、sarはデータをUTC時間で保存する(出力は変わらずローカル時のまま)。sarは/var/log/saディレクトリから日次ファイルを選ぶ際にもUTC時間を使用する。この変数は複数のタイムゾーンにユーザがいるようなシステムで有用である。





sar -u 2 5
2秒ごとのCPU利用状況のレポートを出力する。5行出力される。

sar -I 14 -o int14.file 2 10
IRQ 14についての2秒ごとの統計を出力する。10行出力される。データはint14.fileという名前でファイルに保存される。

sar -r -n DEV -f /var/log/sa/sa16
sa16という日次ファイルに保存されたメモリとネットワークに関しての統計を出力する。

sar -A
日次データファイルに保存された統計の全てを出力する。


バグ


sarコマンドが機能するためには、/procファイルシステムがマウントされている必要がある。

カーネルのバージョンによっては、全ての統計値が提供されるわけではない。

ファイル



/var/log/sa/sadd
ddパラメータが当月の日付を意味する、日次データファイル。


/procはシステム統計値のための様々なファイルを有する。

著者


Sebastien Godard (sysstat orange.fr)

参照


sadc(8), sa1(8), sa2(8), sadf(10< isag(1), pidstat(1), mpstat(1), iostat(1), vmstat(8)

 
スポンサーサイト
【 2014/05/22 (Thu) 】 OS Linuxコマンド(管理用) | TB(0) | CM(0)

強制的にシステム時間をntpで同期--ntpdate

ntpが動いているはずなのに、システムの時計が大幅にずれたままという事がたまにある。
というか、この仮想マシンの場合、5日も遅れた状態のままになっている。w

調べたら、強制的に同期させる方法があるので、それをやってみた。


[root@localhost etc]# ntpdate -b 0.centos.pool.ntp.org
7 Feb 18:31:45 ntpdate[1482]: step time server 198.55.111.5 offset 468213.495521 sec
[root@localhost etc]# date
Wed Feb 7 18:31:54 PST 2014


一発で直った。
...ただ、PostgreSQLのサーバープロセスを止めるのを忘れてた。何もおかしな事になってなければいいが。
(特に何の処理も動かしてない、というか、ログインすらしてないので問題ないとは思うが...)

【 2014/02/08 (Sat) 】 OS Linuxコマンド(管理用) | TB(0) | CM(0)

ディスクへのファイルシステムの作成--fdisk, mkfs

データ領域用に追加した仮想ハードウェア、2GBのディスク2本を、OSから認識できるよう設定する。

まず最初に、fdiskコマンドを使い、追加した仮想ディスクにパーティションを作成し、Linuxから参照できるようにする。
次に、mkfsコマンドを使い、追加したパーティションにファイルシステムを作成。Windowsでいうフォーマットのようなものか。
最後に、ブートしたら自動的に接続されるよう、設定ファイル/etc/fstabファイルを編集。


fdiskで追加したディスクにパーティション作成



今回はディスクを丸ごと使うつもりなので、特に面倒な設定は一切せず、基本パーティションで最初から最後のセクターまで全て使用する。

ホストOSの方で追加したディスク2本は、それぞれSCSI ハードディスク 0:1, 0:2として作ったので、これらはゲストOSのLinuxからは、/dev/sdb, /dev/sdcとして認識されている。
まずは、/dev/sdbにパーティションを1個作成。


新しい設定を「w」コマンドで書き込んだら、設定変更が完了する。それまではどれだけいじっても何も変わらないので、安心して「q」で抜けられる。
迷ったら、迷わず「m」でヘルプを参照。


[root@localhost ~]# ls /dev | grep sd #ディスクが/dev/sd?として認識できてるか確認
sda
sda1
sda2
sdb
sdc
[root@localhost ~]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x0f6dec7a.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').

Command (m for help): p #「p」=パーティション情報の表示

Disk /dev/sdb: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0f6dec7a

Device Boot Start End Blocks Id System

Command (m for help): n #「n」=新規パーティション作成
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-261, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-261, default 261):
Using default value 261

Command (m for help): p #sdb1パーティションができてる事を確認

Disk /dev/sdb: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0f6dec7a

Device Boot Start End Blocks Id System
/dev/sdb1 1 261 2096451 83 Linux

Command (m for help): w #設定変更の反映
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@localhost ~]# ls /dev | grep sd #sdbにsdb1パーティションができてる
sda
sda1
sda2
sdb
sdb1
sdc



mkfsで新規パーティションにファイルシステム作成



fdiskを終了したら、mkfsでファイルシステムを作成する。
「-V」オプションを出力メッセージを詳しくするために指定。
「-t ext4」で、今Linuxで標準的に使用されるファイルシステムext4を使ってフォーマットするよう指定。何も指定しないと、デフォルトでext2が選ばれる。
Linuxファイルシステム間の性能比較のページを見ると、ext2からext4の間で読み込み性能は大きく変わらないようだが、書き込み性能はext2がダントツで遅いようだ。
ゲストOSそのものもext4でインストールされているので、データベース領域もext4で作ることにする。


[root@localhost ~]# mkfs -V -t ext4 /dev/sdb1
mkfs (util-linux-ng 2.17.2)
mkfs.ext4 /dev/sdb1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 524112 blocks
26205 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.



ディスクの自動マウント設定--/etc/fstab



Linuxの数ある設定ファイルのうち、マウントするディスクの場所と種類を定義するファイル、/etc/fstab。
これに追加したディスクの定義も加えてやる。
3分クッキング方式で、もう一つのディスク/dev/sdcに対するfdisk, mkfsは省略することにしよう。


定義ファイルの内容は、左から、デバイス名、マウント場所、ファイルシステムの種類、マウントオプション、ダンプオプション、ファイルシステムチェック順序、という順番で記述されている。

日本語Linuxマニュアル翻訳プロジェクト、JMのページが参考になる。
Linuxのコマンド(セクション1)だけでなく、システムコール(2)、Cのライブラリ関数(3)、設定ファイルの定義(5)など、いろいろな情報が取得できるのは助かる。


[root@localhost opt]# mkdir /data
[root@localhost opt]# cd /data
[root@localhost data]# mkdir disk1
[root@localhost data]# mkdir disk2
[root@localhost data]# ls -l
total 8
drwxrwxrwx. 2 root root 4096 Jan 29 03:52 disk1
drwxrwxrwx. 2 root root 4096 Jan 29 03:52 disk2

[root@localhost ~]# cat /etc/fstab #/dev/sdb1と/dev/sdc1の行が追加部分。

#
# /etc/fstab
# Created by anaconda on Sat Jan 11 08:31:16 2014
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/VolGroup-lv_root / ext4 defaults 1 1
UUID=03207906-2bf9-403f-a08e-b84fc0102116 /boot ext4 defaults 1 2
/dev/sdb1 /data/disk1 ext4 defaults 1 1
/dev/sdc1 /data/disk2 ext4 defaults 1 1
/dev/mapper/VolGroup-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0



【 2014/02/05 (Wed) 】 OS Linuxコマンド(管理用) | TB(0) | CM(0)

Red Hat系Linuxのパッケージ管理--yum

Red Hat系Linuxのパッケージはrpm形式で配布される。それらパッケージのインストール・アンインストール等に、昔はrpmコマンドを使っていたが、今はyumというコマンドを使う。
・依存関係の解決などを簡単にこなしてくれる。
・yumはrpmコマンドのラッパースクリプト。Pythonで書かれている。
てな点が変更点。

Minimum Installで選んだのに、なんでそこそこ大きなPython言語パッケージがインストールされたのか不思議だったけど、yumコマンドで使われるファイル群の中身を読んだら納得。


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



yum install <package_name>

ライブラリなど依存パッケージも調べてくれ、足りなければ一緒にインストール対象に含めてくれる。


パッケージの一覧表示



yum list

レポジトリ(大抵はネットワーク上)の全パッケージの一覧表示。自分の環境にインストールしてあるかどうか関係なく全て表示。

yum list installed

自環境にインストール済みのパッケージのみ表示。


パッケージの内容照会



yum search <string>

指定したキーワードで、パッケージ説明を検索する。

yum info <package>

指定したパッケージの詳細情報を表示。

yum provides <file>

指定したファイル、もしくは機能を有するパッケージを表示。


パッケージの更新



yum update <package name>

指定したパッケージと、依存するパッケージを、新しいバージョンがあれば更新する。

yum update

インストール済みの全パッケージを、新しいバージョンがあれば更新する。


パッケージの削除



yum remove <package>

指定したパッケージを削除。yum eraseとしても同じ。


ヘルプの表示



yum help

使い方全般

yum help <command>

指定したコマンドの詳細


【 2014/01/26 (Sun) 】 OS Linuxコマンド(管理用) | TB(0) | CM(0)
プロフィール

Ed U Song

Author:Ed U Song
社内ノマドなエンジニア。
仕事で触れる機会のないものを自宅環境作って実験。

スポンサーリンク
最新コメント
最新トラックバック
検索フォーム


                                         
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。