LinuxコマンドK-O
LinuxコマンドK-O:記事リスト
LinuxコマンドK-Oのカテゴリーには以下の記事がリストされています。
CentOS7のネットワーク管理
CentOS7のネットワーク管理はNetworkManagerを利用して行います。
CentOS6系では、Network Administration Toolに含まれる
system-config-networkを使用した管理、管理ファイルを直接編集する
運用が一般的でしたが、CentOS7では、NetworkManagerを使用した
管理が推奨されています。
従来のNetworkManagerは、すべてのネットワーク機能を制御できなかった為、
直接ファイルを編集し、サービスの起動や停止を行っていましたが、
CentOS7のNetworkManagerでは、ネットワーク関連の操作が大幅に強化され、
設定ファイルを直接編集しなくても、コマンドラインやGUIツールで設定ファイルを
生成することが可能になっています。
また、NIC(Network Interface Card)に付与されるインタフェース名の命名管理も
これまでのCentOS6系とは全く異なる仕様となっています。
CentOS7では、ネットワークインタフェース名に永続的に変わらない名前が付与がされます。
この永続的な命名をConsistent Network Device Namingと言い、一般的なx86サーバーに
搭載されているオンボードのNICでは、eno1、eno2、拡張カードスロットに装着するNICでは
ens1、ens2、またはens7f0、ens7f1などの名前が付与されます。
■nmcliコマンド
nmcli(Network Manager Command Line Interface)コマンドは、
CentOS7のネットワーク設定を行なうNetworkManager基本コマンドになります。
nmcliコマンドには、下記パラメーターが用意されています。
・connection:接続の設定
・device:デバイス管理
・general:ホスト名設定、ロギング、権限操作、状態の表示
・networking:コネクティビティのチェック、有効化、無効化管理
・radio:ワイヤレスネットワークの設定有効化、無効化管理
■インタフェースの接続状態確認
[root@Tiger ~]# nmcli connection
名前 UUID タイプ デバイス
eno1 4a181dd8-0bac-43c5-8d4f-9e89c31e14b1 802-3-ethernet eno1
上記の例では、NICのインタフェース名がeno1として割当られています。
デバイスの項目にインタフェース名が表示されている場合は
ネットワークに接続されていることを表します。
■インタフェースの接続と切断
「nmcli connection」でupやdownを指定すると、
インタフェースの接続、切断を制御できます。
下記例ではインタフェースeno1を切断しています。
[root@Tiger ~]# nmcli connection down eno1
[root@Tiger ~]# nmcli connection
名前 UUID タイプ デバイス
eno1 4a181dd8-0bac-43c5-8d4f-9e89c31e14b1 802-3-ethernet --
デバイスの項目gが「--」になり、切断されていることが分かります。
再度接続するには、下記コマンドを実行します。
[root@Tiger ~]# nmcli connection up eno1
■デバイス名とデバイスの状態確認
インタフェースのデバイス名とその状態を確認するには「device」を指定します。
[root@Tiger ~]# nmcli device
デバイス タイプ 状態 接続
eno1 ethernet 接続済み eno1
lo loopback 管理無し --
物理NICが1ポートあるサーバーで、デバイス名がeno1と割り当てられています。
またループバックデバイスとしてloが認識されています。状態と接続からeno1が
ネットワークに接続されていることが分かります。
■詳細なデバイス情報を表示
デイバイスのMACアドレス、IPアドレス、MTUなどの詳細を確認するには、
「nmcli device」に「show」を付けて実行します。
[root@Tiger ~]# nmcli device show
GENERAL.デバイス: eno1
GENERAL.タイプ: ethernet
GENERAL.ハードウェアアドレス: 00:0C:29:37:80:B6
GENERAL.MTU: 1500
GENERAL.状態: 100 (接続済み)
GENERAL.接続: eno1
GENERAL.CON パス: /org/freedesktop/NetworkManager/ActiveConnection/0
WIRED-PROPERTIES.キャリア: オン
IP4.アドレス[1]: 192.168.0.36/24
IP4.ゲートウェイ: 192.168.0.1
IP4.DNS[1]: 192.168.0.1
IP6.アドレス[1]: fe80::20c:29ff:fe37:80b6/64
IP6.ゲートウェイ:
GENERAL.デバイス: lo
GENERAL.タイプ: loopback
GENERAL.ハードウェアアドレス: 00:00:00:00:00:00
GENERAL.MTU: 65536
GENERAL.状態: 10 (管理無し)
GENERAL.接続: --
GENERAL.CON パス: --
IP4.アドレス[1]: 127.0.0.1/8
IP4.ゲートウェイ:
IP6.アドレス[1]: ::1/128
IP6.ゲートウェイ:
「nmcli device show」だけでは複数のNICが存在した場合、
そのすべての状態を表示してしまいます。
しかし、インタフェース名を指定することで出力を絞ることができます。
[root@Tiger ~]# nmcli device show eno1
GENERAL.デバイス: eno1
GENERAL.タイプ: ethernet
GENERAL.ハードウェアアドレス: 00:0C:29:37:80:B6
GENERAL.MTU: 1500
GENERAL.状態: 100 (接続済み)
GENERAL.接続: eno1
GENERAL.CON パス: /org/freedesktop/NetworkManager/ActiveConnection/0
WIRED-PROPERTIES.キャリア: オン
IP4.アドレス[1]: 192.168.0.36/24
IP4.ゲートウェイ: 192.168.0.1
IP4.DNS[1]: 192.168.0.1
IP6.アドレス[1]: fe80::20c:29ff:fe37:80b6/64
IP6.ゲートウェイ:
■接続情報の変更
・IPアドレス・ゲートウェイの変更
インタフェースに割り当てたIPアドレスやゲートウェイを変更するには、
「nmcli connection」に「modify」を指定します。
下記例では、IPアドレス192.168.0.36/24、ゲートウェイが192.168.0.1が
割り当てられている環境で、eno1のIPアドレスを192.168.0.20/24、
ゲートウェイを192.168.0.254に変更しています。
[root@Tiger ~]# nmcli connection modify eno1 ipv4.addresses "192.168.0.20/24 192.168.0.254"
[root@Tiger ~]# nmcli connection down eno1 && nmcli connection up eno1
「nmcli connection down eno1」が従来のifdown、
「nmcli connection up eno1」がifupに相当し、eno1を再起動しています。
・DNS・静的ルーティング変更
DNSサーバーと静的ルーティングを変更するには「ipv4.dns」、「ipv4.routes」を指定します。
下記の例では、eno1のDNSサーバーのIPアドレスを「8.8.8.8」、「4.4.4.4」を指定しています。
[root@Tiger ~]# nmcli connection modify eno1 ipv4.dns "8.8.8.8 4.4.4.4"
[root@Tiger ~]# nmcli connection down eno1 && nmcli connection up eno1
下記の例では、静的ルーティングとして、「10.0.0.0/24」のネットワークアドレスで
ルーターのIPアドレス「10.0.0.1」を指定しています。
[root@Tiger ~]# nmcli connection modify eno1 ipv4.routes "10.0.0.0/24 10.0.0.1"
[root@Tiger ~]# nmcli connection down eno1 && nmcli connection up eno1
CentOS7でのロケール、キーボード設定
CentOS7でロケールとキーボードの設定変更するには、localectlコマンドを使用します。
<<ロケール設定>>
■ロケール状態の確認
現在のロケールの状態を確認します。
-----------------------------------------------------------------
[root@Tiger system]# localectl
System Locale: LANG=ja_JP.UTF-8
VC Keymap: jp
X11 Layout: jp
-----------------------------------------------------------------
■ロケールを日本語に設定
-----------------------------------------------------------------
[root@Tiger system]# localectl set-locale LANG=ja_JP.utf8
[root@Tiger system]# localectl
Syststrongm Locale: LANstrong=ja_JP.utf8
VC Keymap: jp
X11 Layout: jp
-----------------------------------------------------------------
■ロケールの設定ファイル
ロケールの設定ファイルは、「/etc/locale.conf」になります。
-----------------------------------------------------------------
[root@Tiger system]# ls -l /etc/locale.conf
-rw-r--r-- 1 root root 16 1月 14 13:28 /etc/locale.conf
[root@Tiger system]# cat /etc/locale.conf
LANG=ja_JP.utf8
-----------------------------------------------------------------
ja_JP.utf8に設定ファイルが変更されています。
<<キーボード設定>>
■キーマップの表示
利用可能なキーマップを表示します。
-----------------------------------------------------------------
[root@Tiger system]# localectl list-keymaps
ANSI-dvorak
amiga-de
amiga-us
applkey
〜中略〜
it-us
it2
jp
jp-OADG109A
jp-dvorak
jp-kana86
jp106
-----------------------------------------------------------------
■キーボードの設定
日本語のキーマップはjp106になるので、キーボード設定を日本語106キーボードに設定します。
-----------------------------------------------------------------
[root@Tiger system]# localectl set-keymap jp106
[root@Tiger system]# localectl
System Locale: LANG=ja_JP.utf8
VC Keymap: jp106
X11 Layout: jp
X11 Model: jp106
X11 Options: terminate:ctrl_alt_bksp
-----------------------------------------------------------------
■キーマップ設定ファイル
キーマップの設定ファイルは、「etc/vconsole.conf」になります。
-----------------------------------------------------------------
[root@Tiger system]# cat /etc/vconsole.conf
KEYMAP=jp106
FONT=latarcyrheb-sun16
-----------------------------------------------------------------
last
ログイン、ログアウトの履歴を表示する
■-- 文法 --■
例)
last
ログイン、ログアウトの履歴を表示する
※▲はスペースを表してます。
■ 説明
lastコマンドは、システムにログインした履歴を表示するコマンドです。
Linuxのようなサーバー利用されいるOSは、たくさんのユーザがログインし利用します。誰がいつ、どのくらいの頻度でアクセスしたのかなどを確認する場合に使用します。
また、ユーザ名に自分のアカウントを指定することで、自分のログイン履歴を確認できます。これにより、自分が知らないログイン履歴がないか、確認することもでき、ユーザアカウントが不正利用されていないかの確認ができます。
また、別のユーザ名を指定することで、指定したユーザのログイン履歴を確認することができます。
killall
コマンド単位でプロセスを強制終了
■-- 文法 --■
例)
killall
コマンド単位でプロセスを強制終了
※▲はスペースを表してます。
■ 説明
killallコマンドは、ジョブとして実行されているコマンドを指定してプロセスを強制終了します。コマンドを実行する際には、引数として
ジョブ名を指定して強制的に終了させます。
ntpdate
サーバーの時刻を合わせる
■-- 文法 --■
例)
ntpdate eric.nc.u-tokyo.ac.jp
サーバーの時刻を合わせる
※▲はスペースを表してます。
■ 説明
ntpdateコマンドは、インターネットに存在するタイムサーバー(以下 NTPサーバー)へ接続し、自身の時刻を修正するコマンドです。サーバーの時刻がずれてしまうと、ファイルの更新日やメールの配信日時、バッチ処理などで、様々な問題が生じます。このような問題をさけるために、ntpdateコマンドを定期的に実行し、常に時刻を正確に保つことができます。このコマンドはスーパーユーザ権限で実行する必要があります。
lpr
プリンタで印刷する
■-- 文法 --■
例)
lprm
プリンタで印刷する
※▲はスペースを表してます。
■ 説明
lprコマンドは、印刷を実行するコマンドです。実行の際には、引数のファイル名に印刷を実行したいファイル名を指定します。スペースで区切ることで、複数のファイルを指定することもできます。
このlprコマンドは実行させると、データを「/var/spool/lpd」に一時ファイルとして保存し、その後プリントキューとして登録します。
lpq
プリンターの印刷状況を表示する
■-- 文法 --■
例)
lprm
プリンターの印刷状況を表示する
※▲はスペースを表してます。
■ 説明
lpqコマンドはプリンターの印刷状態を表示するコマンドです。このコマンドを使用することで、印刷するデータがどれだけ残っているかを知ることができます。また複数のコンピュータが接続されたネットワーク共有状態で使用されているプリンターなどでは、自分が印刷を実行したデータがどのような状態になっているか、ユーザ名を指定して実行することで確認することができます。
lprm
印刷を中止する
■-- 文法 --■
例)
lprm
印刷を中止する
※▲はスペースを表してます。
■ 説明
lprmコマンドは印刷を中止するコマンドです。lprコマンドで印刷を実行しても、実際に印刷するまでには時間がかかるため、印刷を中止する場合に使用します。lprmコマンドはスーパーユーザではすべての印刷を中止することがでいますが、一般ユーザだった場合には、自分が実行した印刷ジョブのみ削除することが出来ます。
man
コマンドのオンラインマニュアルを表示する
■-- 文法 --■
例)
unalias rm
コマンドのオンラインマニュアルを表示する
※▲はスペースを表してます。
■ 説明
manコマンドは、引数で指定したコマンドのオンラインマニュアルを表示します。LinuxやUNIXの多くのマニュアルは紙に印刷するよりも、電子的なファイルで配布されています。手元にコマンドリファレンスがなくてもコマンド名さえ知っていれば、このmanコマンドでコマンドの確認を行うことができます。
logout
ログアウトする
■-- 文法 --■
logout
例)
logout
ログアウトする
※▲はスペースを表してます。
■ 説明
logoutコマンドはシステムからログアウトするためのコマンドです。
実行する際には引数などの指定はありません。
実行するとログアウトが実行され、ログインプロンプトが表示されます。
mtools
MS-DOSフォーマットフロッピーを操作する
■-- 文法 --■
mtools
■ 説明
mtoolsは、MS-DOSフォーマットのフロッピーディスクを操作するためのコマンドを集めたツールです。「mtools」と入力するすると、mtoolsコマンド集が表示されます。
mount
ファイルシステムを利用する
■-- 文法 --■
mount (オプション) デバイス
例)
mount▲-t▲iso9660▲-r ▲/dev/scd0▲/mnt/cdrom
ファイルシステムを利用する
※▲はスペースを表してます。
■ 説明
mountコマンドは、CDやDVD、フロッピーディスクを使用する際に実行するコマンドです。UNIXシステムではデバイスを使用する際に必ずルートディレクトリにマウントする必要があります。そこで、マウントされていないデバイスを使用する際にこのmountコマンドを実行します。
make
ソースコードのメイクとインストール
■-- 文法 --■
例)
make
ソースコードのメイクとインストール
※▲はスペースを表してます。
■ 説明
makeコマンドは、コンパイラを起動させてプログラムのソースコードをコンパイル・リンクさせる処理を行います。
UNIXシステムで使用される多くのプログラムは「Makefile」と呼ばれるコンパイルとリンクを行行わせるファイルと、システム環境の情報収集を行う「configure」というファイルを含むかたちで提供されるため、ソースコードでプログラムをインストールする際、必要になるコマンドです。
インストールを実行するにはスーパーユーザ権限が必要になります。
nkf
■-- 文法 --■
nkf (オプション) (ファイル名)
例)
nkf▲-canna
文字コード変換する
※▲はスペースを表してます。
■ 説明
日本語には、複数の文字コードが存在するため、利用環境によって用いられる
文字コードが違います。異なる環境間でファイルのやりとりを行う場合、
そのままでは、文字化けしてしまい、読めない事があります。
そのような時に文字コードを変換を行うのがnkfコマンドです。
※nkf=Network Kanjicode conversion Filter
nkfコマンドが対応している文字コードは、JIS、Shift-JIS、EUCになり、
それぞれの文字コード間の変換が行えます。
kinput2
■-- 文法 --■
kinput2 (オプション)
例)
kinput2▲-canna
日本語入力を起動する
※▲はスペースを表してます。
■ 説明
kinput2コマンドは、X Window System標準の日本語入力システムです。
kinput2を起動することで、キーボードから入力した内容を日本語に変換できます。
kinput2コマンドは、以下のかな漢字変換サーバーに対応しています。
漢字変換サーバーは、起動時のオプションで切り替えが行えます。
kinput2の対応する漢字変換サーバー
・Wnn(jserver)
・Canna(Cannaサーバー)
・Sj3
また、以下のX windowのクライアントアプリケーションとの
各種通信プロトコルに対応しており、これらのプロトコルをサポートしている
アプリケーションでkinput2を使用した日本語入力が可能です。
kinput2のサポートする変換プロトコル
・kinput
・kinput2
・jinput
・xlc
・XIMP
・XIM
nice
ジョブの優先順位を変更する
■-- 文法 --■
例)
nice
ジョブの優先順位を変更する
※▲はスペースを表してます。
■ 説明
niceコマンドは、指定したコマンドの優先度を指定して実行する際に使用します。
実行するコマンドの優先度、重要度によってコマンド処理の優劣を指定し、
効率よくコンピュータ資源を使用するためのコマンドです。
たとえば、緊急度の高いコマンドを優先的に処理することができます。
LinuxはTSS(Time Sharing System)と呼ばれる「時分割処理」でCPUを使用しています。
このシステムは、一つしかないCPUを使って、複数の処理を同時に実行するために
考えられたシステム(マルチタスクと呼びます)です。
優先度を指定しないでコマンドを実行した場合、
すべてのコマンドが同じ優先度で実行されます。
niceコマンドで指定できる優先度を「nice値」と呼びます。
nice値を指定せずにコマンドを実行した場合、nice値は「10」になります。
root(スーパーユーザ)は、より高い優先度を指定できますが、
一般ユーザーは優先度を下げて実行することしかできません。
また、nice値の範囲は「+19」から「-20」まで指定できます。
マイナス値になればなるほど、優先度は高くなります
kill
ジョブを強制終了する
■-- 文法 --■
例)
kill▲-9▲4269
ジョブを強制終了する
※▲はスペースを表してます。
■ 説明
killコマンドは、実行中のプロセスを強制的に終了させる場合に使用します。
実行した処理を途中で中止する場合や、不要に残ってしまったプロセスを
終了させる場合にも使用します。
コマンドを使用する際には、引数としてプロセスID、
またはジョブ番号を指定します。
Killコマンドには「killシグナル」というものがあります。
これは強制終了以外にもジョブを制御するために存在するものです。
■ Killコマンドのシグナル番号
1 回線を切断する
2 処理を中断する
9 プロセスを強制終了する
15 プロセスを終了する
18 シグナル「19」で中断したプロセスをバックグラウンドプロセスとして再開する
19 プロセスを中断する。シグナル「18」で再開する
lynx
■-- 文法 --■
lynx (オプション) パス、又はURLアドレス
例)
lynx▲URLアドレス
テキストベースでWEBページを表示する
※▲はスペースを表してます。
■ 説明
lynxコマンドは、テキストベースのWebブラウザです。
internet explorerやfirefox、Google chromeとは違い、GIFやJPGなどのグラフィカルな
表示はできませんが、コンソールのようなテキストしか表示出来ない環境でも、
Webページを表示することができます。
引数を指定せずにlynxコマンドを実行すると、デフォルトで設定されているホームページを
表示します。(CentOS6.3の場合は、CentOSのホームページを表示)
lynxコマンドを実行後に、lynxの操作コマンド「o」を入力すると、
ブラウザのオプションの設定画面を呼び出せます。
netstat
ネットワーク情報を表示する
■-- 文法 --■
netstat (オプション) インターフェース
例)
netstat▲-a
ネットワークに関するすべての情報を表示する
※▲はスペースを表してます。
■説明
netstatコマンドは、ネットワークの使用状況を表示させる際に使用するコマンドです。
オプションなしで実行した場合は、コマンド実行時に使用可能なソケットと呼ばれる
ネットワークアドレスを表示します。
また、オプションを指定することで、ルーティングテーブルや詳細情報を表示することができます。
メールを送受信する
■-- 文法 --■
mail (オプション) 送信先アドレス
例)
mail▲pakira
ユーザpakiraへメールを送信する
※▲はスペースを表してます。
■ 説明
mailコマンドは、メーラーを使用しないで指定したメールアドレスへメールを送信します。通常のメーラーから比べれば、機能は劣りますがコマンドラインからメールを送信するすることが可能なので、メールの配信テストや、シェルスクリプトなどに組み込むことで利用されることが多いです。このコマンドを使用するには、Linuxのサービス設定で「SMTP」を有効する必要があります。
less
ファイルの内容を画面ずつ表示する
■-- 文法 --■
less (オプション) ファイル名
例)
less▲new_file.txt
「new_file.txt」のファイル内容を画面ずつ表示する
※▲はスペースを表してます。
more
ファイルの内容を画面ずつ表示する
■-- 文法 --■
more (オプション) ファイル名
例)
more▲new_file.txt
「new_file.txt」のファイル内容を画面ずつ表示する
※▲はスペースを表してます。
mkdir
ディレクトリを作成する
■-- 文法 --■
mkdir (オプション) ディレクトリ名
例)
mkdir▲/home/pakira/dir
ディレクトリを作成します
※▲はスペースを表してます。
■ オプション
-p 存在しないディレクトリを指定しても強制的に作成される
「/home/pakira」というディレクトリ階層のみの下位階層がない場合で「/home/pakira/test/new_dir」という階層ディレクトリを作成したい場合オプションとして使用する
ln
ファイルに別名をつける(別名でもそのファイルにアクセスできる。名前を複数作成する)
■-- 文法 --■
ln (オプション) 元ファイル名 別名ファイル名
例)
ln▲ -s▲pakira.dat▲pakira2.txt
シンボリックリンクで別名をつける
※▲はスペースを表してます。
mv
ファイルを移動する、ファイル名を変更する
■-- 文法 --■
mv (オプション) 「移動元」 「移動先」
例)
mv▲ -f▲test.txt▲/home/pakira/tmp/test.txt
「test.txt」ファイルを「/home/pakira/tmp」ディレクトリへ移動する。
既に同じファイルがある場合は上書きする。
※ ▲はスペースを表してます。
mvコマンドは、指定されたファイルを指定されたディレクトリに移動します。
実行する際は移動元と異動先は必ず指定しなければなりません。
また、移動先に指定する際、ファイル名も別のものを指定した場合には
ファイル名も変更されます。また、同じディレクトリないで指定した場合は
単純にファイル名の変更を行うことができます。
ls
lsコマンドとは
lsコマンドは、ディレクトリ内に保存されているファイルやディレクトリを表示します。lsコマンドには様々なオプションが用意されており、ファイルやディレクトリの情報を
色々な形式で表示させる事ができます。
自分がアクセスしているディリクトリ(カレントディレクトリ)に
どのようなファイルやディリクトリがあるか確認したい場合などに使用します。
lsコマンドの書式
ls▲<オプション>▲<パス>※▲は半角スペースを表してます。
※<>の物は省略可
lsコマンドのオプション
| オプション | 意味 |
| -l | ファイルの詳細情報を表示する |
| -t | タイムスタンプ順にソート表示する |
| -a | 隠しファイル(ピリオドから「.」始まるファイル)も表示する |
| -A | 隠しファイル(ピリオドから「.」始まるファイル)も表示するが、カレントディレクトリ、親ディレクトリは表示しない |
| -1 | 1列で表示する |
| -t | タイムスタンプ順にソート(昇順)して表示する |
| -r | 降順で表示する |
| -d | 引数がディレクトリの場合、ディレクトリ内に保存されているファイルではなく、ディレクトリ自体の情報を表示する |
| -S | サイズが大きい順並べて表示する |
| -X | 拡張子ごとに並べて表示する |
| -m | ファイルをカンマ区切で表示する |
| -h | ファイルサイズを分かりやすい単位で表示する |
| -u | ファイルの最終アクセス日時を表示する |
| -R | ディレクトリ内を再帰的に表示する |
| -F | タイプ識別子を付けて表示する タイプ識別子は、次のとおりです。 ・ディレクトリ 「/」 ・シンボリックリンク 「@」 ・実行可能ファイル 「*」 |
| -i | iノード番号を表示する |
| -s | ファイルのブロック数を表示する |
| -Q | ファイルをダブルクオートで囲む |
| -X | 拡張子のアルファベット順にソートする |
