トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS   ログイン

システム関連/UNIX関連/コマンド の変更点


#author("2018-05-19T10:04:49+09:00","default:hrmz","hrmz")
#contents
**date [#m6fc2bb0]
日付の表示と設定
-Solaris
 使用法: date [-u] mmddHHMM[[cc]yy][.SS]
         date [-u] [+format]
         date -a [-]sss[.fff]
と出るので~
時間を合わせる場合は以下の様な感じで
 # date 04231745
 2007年04月23日 (月) 17時45分00秒 JST

**df [#a3ae998b]
-ディスクの使用率を表示する。
 df -k
-i-nodeを表示
 df -i
 df -oi(Solaris) 

**groupadd [#cedbb232]
グループを追加する
 # groupadd グループ名
-GIDを指定するには
 # groupadd -g 指定したいGID グループ名

**iconv [#m1fb25e2]
文字コードを変換する。
-変換可能な文字コードの一覧を出す。
 # iconv -l
-文字コードを変換する
 # iconv -f EUC-JP -t SHIFT_JIS < infile.txt > outfile.txt
 -f 入力ファイルの文字コード
 -t 出力ファイルの文字コード

**kill [#d61b2926]
 kill [-s signal] pid ...
-プロセスおよびジョブを終了させる。終了の方法はシグナルによって決まる。&br;
使用できるシグナルは以下の通り。&br;
通常,よく使うのはSIGHUP(終了して再起動),SIGKILL(強制終了)など。&br;
シグナルの指定には数値か,シグナル名(先頭の SIGを除いたもの)が使用できる。&br;
(kill -9 1234 とか kill -HUP 1234)

|>|>|>|よく使うシグナル|
|1|SIGHUP|ハングアップ|confの再読み込みとかによく使う|
|2|SIGINT|割り込み||
|3|SIGQUIT|停止||
|9|SIGKILL|強制終了|やむなく-9|
|15|SIGTERM|終了|デフォルト値|

**mail [#lfb3bb5f]
ログインした時に”You have new mail.”と出たら
-mailコマンドをオプションとかなしで起動
-「 h 」で一覧を出して
-出てきた番号を入力してそのメールを読む
-読み終わったら 「d メッセージ番号」で消すこともできる
-抜ける時は「 q 」 


 Solarisのmailコマンド
 ?               print this help message
 #               display message number #
 -               print previous
 +               next (no delete)
 ! cmd           execute cmd
 <CR>            next (no delete)
 a               position at and read newly arrived mail
 d [#]           delete message # (default current message)
 dp              delete current message and print the next
 dq              delete current message and exit
 h a             display all headers
 h d             display headers of letters scheduled for deletion
 h [#]           display headers around # (default current message)
 m user          mail (and delete) current message to user
 n               next (no delete)
 p               print (override any warnings of binary content)
 P               override default 'brief' mode and display ALL header lines
 q, ^D           quit
 r [args]        reply to (and delete) current letter via mail [args]
 s [files]       save (and delete) current message (default mbox)
 u [#]           undelete message # (default current message)
 w [files]       save (and delete) current message without header
 x               exit without changing mail
 y [files]       save (and delete) current message (default mbox)


**more [#y5fcdc1f]
テキストファイルの中身を表示する
|>|コマンド|
|spaceキー|ページ送り|
|returnキー|行送り|
|q|moreを終了|
|h|ヘルプを表示|


**netstat [#daed6ee1]
稼働中のサービスを調べる。
 netstat -ntpl
稼働中のサービスを調べる。(ローカル側のポート番号を紐付くサービス名で表示)
 netstat -tpl

***State [#n3c38abf]
|ESTABLISHED|ソケット接続が確立した状態|
|FIN_WAIT_2|接続はクローズされ、ソケットはリモートからの切断を待っている状態|
|TIME_WAIT|ソケットはクローズ後にリモートからの切断が再送されるのを待っている状態|
|CLOSE_WAIT|リモート側はすでに切断され、ソケットがクローズされるのを待っている状態|
|LISTEN|ソケットが接続待ち|

**ps [#x6bc7814]
-標準的な書式を使ってシステム上の全てのプロセスを表示
 ps -ef
-BSD 書式を使ってシステム上の全てのプロセスを表示
 ps aux

|>|linuxでよく使うオプション|
|a|すべてのユーザーのプロセスを表示|
|u|ユーザー名、開始時刻等を詳細に表示|
|x|制御端末のないプロセスも表示|
|w|1行追加して表示を拡大(表示結果が途中で切れない様に)|
|m|スレッドも表示する|

--fオプションで表示される項目
|UID|ユーザーID|
|PID|プロセスID|
|PPID|親プロセスID|
|C|CPU使用率|
|STIME|プロセスを起動した時間|
|TTY|プロセスを起動した端末|
|TIME|プロセスが利用したCPU時間|
|CMD|プロセスを起動したコマンド|

--uオプションで表示される項目
|USER|ユーザーID|
|PID|プロセスID|
|%CPU|CPU使用率|
|%MEM|メモリ使用率|
|VSZ|プロセスの仮想メモリー量|
|RSS|プロセスが使用中の物理メモリー量|
|TTY|プロセスを起動した端末|
|STAT|プロセスの状態|
|START|プロセスを起動した時間|
|TIME|プロセスが利用したCPU時間|
|COMMAND|プロセスを起動したコマンド|

---STATについて
|D|割り込み不可能なスリープ状態 (通常 IO 中)|
|R|実行中または実行可能状態 (実行キューにある)|
|S|割り込み可能なスリープ状態 (イベントの完了を待っている)|
|T|ジョブ制御シグナルまたはトレースされているために停止中の状態|
|W|ページング状態 (2.6.xx カーネルからは無効)|
|X|死んだ状態 (見えるべきではない)|
|Z|終了したが、親プロセスによって回収されなかった、消滅した (ゾンビ) プロセス|
|>|BSD 形式で stat キーワードが用いられたときは、以下の添付文字が表示されることがある。|
|<|優先度の高いプロセス (他のユーザーに対して良くない)|
|N|優先度の低いプロセス (他のユーザーに対して良い)|
|L|実メモリのページをロックして利用している (リアルタイム処理やカスタム IO 向け)|
|s|セッションリーダ|
|l|マルチスレッド化されている (NPTL pthreads が行うように、CLONE_THREAD が使われている)|
|+|フォアグラウンドのプロセスグループに含まれている|

**useradd [#r8021292]
ユーザを追加する
 # useradd -g グループ名 ユーザ名
-NFSで同じファイルを別のサーバから参照する時はUIDを合わせておいた方が良さげ
-UIDの採番は/etc/passwdの中で一番大きい数字+1みたいなので一般ユーザに割り当てられた100番以上でどのサーバでも使わなさそうな番号を指定する。(通常100~60000の間 99以下はシステム管理用)
 # useradd -u 指定したいUID -g グループ名 ユーザ名

**usermod [#p6390f9a]
登録してあるユーザ情報を変更する。
-ホームディレクトリを変更する
 # usermod -d 変更したいディレクトリ名 -m ユーザ名
 (mをつけると現在のホームディレクトリの内容が移行される)
-UIDを変更する
 # usermod -u 変更したいUID ユーザ名
 (ホームディレクトリ以外のUIDは自動では変更されないので手動で変更する必要がある。)
-GIDを変更する
 # usermod -g 変更したいGID ユーザ名


**sar [#tcdf7782]
-ある日のCPU負荷状況のチェック
 sar -f 読み込むファイル名
 RHEL:/var/log/sa/saDD(日付)
 Solaris:/var/adm/sa/saDD(日付)
-ある日のメモリ使用状況のチェック
 sar -r -f 読み込むファイル名
 RHEL:/var/log/sa/saDD(日付)
 Solaris:/var/adm/sa/saDD(日付)
-当日のsarの統計状況のチェック
 sar -f
 (fオプションに指定日のファイルを指定しなければ当日になる)
-PIDを指定してCPU使用率をチェック
 sar -x PID 間隔 回数
-sarの統計間隔等の設定
--/etc/cron.d/sysstat
 # run system activity accounting tool every 10 minutes
 */10 * * * * root /usr/lib/sa/sa1 1 1
 # generate a daily summary of process accounting at 23:53
 53 23 * * * root /usr/lib/sa/sa2 -A

**sort [#mda6c724]
|n|先頭の数字や記号("+" , "-" , "." など)を数値とみなして,ソートする。先頭の空白は無視する|
|k|ソート・キーの場所を設定する。ただし,先頭は1となる|
|r|逆順(降順)にソート|

 ps aux | sort -nk 3
 (psの結果を%CPUの項目でソート)

**top [#i01e76c2]
リアルタイムでプロセスの状態を表示する。
--抜けるには[q]キー
--表示項目の追加削除を行うには[f]キー
--ヘルプの表示は[h]キー

-一定間隔でtopの状態を取得する。
 top -bd 60 > /tmp/top.log
--bはバッチモードのオプション
--dは実行間隔の指定(秒)
--止める時は[Ctrl]+[c]で

**zip [#x37d1aa4]
 zip -r 圧縮ファイル名 圧縮したいファイル 

***tar と zip の違い [#w72fe131]
tarはアーカイブ時にシンボリックリンクをそのままアーカイブするが、zipはリンク先をアーカイブしようとするので~
同じ様な動きにするには zip コマンドに -y オプションをつけてやる必要がある。