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

システム関連/UNIX関連/コマンド

Last-modified: 2022-05-05 (木) 09:23:36

date

日付の表示と設定

  • Solaris
    使用法: date [-u] mmddHHMM[[cc]yy][.SS]
            date [-u] [+format]
            date -a [-]sss[.fff]
    と出るので
    時間を合わせる場合は以下の様な感じで
    # date 04231745
    2007年04月23日 (月) 17時45分00秒 JST

df

  • ディスクの使用率を表示する。
    df -k
  • i-nodeを表示
    df -i
    df -oi(Solaris) 

groupadd

グループを追加する

# groupadd グループ名
  • GIDを指定するには
    # groupadd -g 指定したいGID グループ名

iconv

文字コードを変換する。

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

kill

kill [-s signal] pid ...
  • プロセスおよびジョブを終了させる。終了の方法はシグナルによって決まる。
    使用できるシグナルは以下の通り。
    通常,よく使うのはSIGHUP(終了して再起動),SIGKILL(強制終了)など。
    シグナルの指定には数値か,シグナル名(先頭の SIGを除いたもの)が使用できる。
    (kill -9 1234 とか kill -HUP 1234)
よく使うシグナル
1SIGHUPハングアップconfの再読み込みとかによく使う
2SIGINT割り込み
3SIGQUIT停止
9SIGKILL強制終了やむなく-9
15SIGTERM終了デフォルト値

mail

ログインした時に”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

テキストファイルの中身を表示する

コマンド
spaceキーページ送り
returnキー行送り
qmoreを終了
hヘルプを表示

netstat

稼働中のサービスを調べる。

netstat -ntpl

稼働中のサービスを調べる。(ローカル側のポート番号を紐付くサービス名で表示)

netstat -tpl

State

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

ps

  • 標準的な書式を使ってシステム上の全てのプロセスを表示
    ps -ef
  • BSD 書式を使ってシステム上の全てのプロセスを表示
    ps aux
linuxでよく使うオプション
aすべてのユーザーのプロセスを表示
uユーザー名、開始時刻等を詳細に表示
x制御端末のないプロセスも表示
w1行追加して表示を拡大(表示結果が途中で切れない様に)
mスレッドも表示する
  • fオプションで表示される項目
    UIDユーザーID
    PIDプロセスID
    PPID親プロセスID
    CCPU使用率
    STIMEプロセスを起動した時間
    TTYプロセスを起動した端末
    TIMEプロセスが利用したCPU時間
    CMDプロセスを起動したコマンド
  • uオプションで表示される項目
    USERユーザーID
    PIDプロセスID
    %CPUCPU使用率
    %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

ユーザを追加する

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

usermod

登録してあるユーザ情報を変更する。

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

sar

  • ある日の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

n先頭の数字や記号("+" , "-" , "." など)を数値とみなして,ソートする。先頭の空白は無視する
kソート・キーの場所を設定する。ただし,先頭は1となる
r逆順(降順)にソート
ps aux | sort -nk 3
(psの結果を%CPUの項目でソート)

top

リアルタイムでプロセスの状態を表示する。

  • 抜けるには[q]キー
  • 表示項目の追加削除を行うには[f]キー
  • ヘルプの表示は[h]キー
  • 一定間隔でtopの状態を取得する。
    top -bd 60 > /tmp/top.log
    • bはバッチモードのオプション
    • dは実行間隔の指定(秒)
    • 止める時は[Ctrl]+[c]で

zip

zip -r 圧縮ファイル名 圧縮したいファイル 

tar と zip の違い

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