【初心者向け】Linuxコマンド入門

概要

LinuxカーネルのOSを始めて使う人向けに、インフラエンジニア目線でよく使うコマンド・便利なコマンドをまとめました。

よく使うコマンドたち

以下、自分がよく使うコマンド・便利なコマンドのまとめです。この次の章から特に使うコマンドに関する注意を書きたいと思います。

ファイル・ディレクトリ操作関連

cdディレクトリ移動
ls指定したディレクトリ内のファイルを表示
pwd現在いるディレクトリのパスを表示
mkdir新規ディレクトリ作成
rmファイル・ディレクトリの削除
cpファイル・ディレクトリのコピー
mvファイル・ディレクトリの移動、リネームにも使用

上記のコマンドたちは、特にLinuxカーネルのOSを使ってるとよく使うコマンドたちです。
ディレクトリ移動や、カレントディレクトリ・特定のディレクトリ内にどんなファイルが有るかなどで何回も使うので慣れておきましょう。

ファイル閲覧・編集関連

catファイルの内容をすべて表示
lessページ送り形式でファイルの内容を表示
headファイルの先頭から指定した行数分表示する。デフォルトでは先頭から10行表示
tailファイルの末尾から指定した行数分表示する。デフォルトでは末尾から10行表示
vi/vimファイル編集
diff指定したファイル同士の差分を表示

ファイルの内容を表示したり編集する際に使用するコマンドたちです。数千行のファイルを開く場合はcatを使うと見づらいのでlessを使ったり、先頭や末尾から数行見たいのであればheadやtailを使います。vi/vimはLinuxカーネルのOSに標準的に入ってるエディタです。

特に、diffコマンドはめちゃくちゃ重要です!ミドルウェアの設定ファイルを編集前にコピーでとっておき、編集後にコピーしたファイルと現在のファイルの差分をdiffで確認。想定通りの編集ができているかの確認だったり、作業の証跡としてお客さんに提出したりなどでよく使います。

権限・ユーザ関連

chmodファイル・ディレクトリの権限を変更
chownファイル・ディレクトリの所有者・所有グループを変更
whoami現在のユーザ名を表示
sudosudo 以下に指定したコマンドを管理者権限で実行

特にchmod、chownによって権限を適切に設定することは大切です。例えば、もし削除してはいけないあるファイルの権限がどのユーザからでも操作できた場合、誤ったコマンドによって該当のファイルが削除されてしまう可能性があります。
管理者しか削除・編集できないようにしておくと、一般ユーザが誤って削除してしまう可能性はかなり低くなるため、適切な権限を設定しておくようにしましょう。

プロセス・システム関連

psコマンド実行時点で実行中のプロセスを表示
top実行中のプロセスや各プロセスが使用しているCPU使用率、メモリ使用率をリアルタイムに表示
kill指定したプロセスの終了
uptime連続稼働時間の表示
dfディスク容量の確認
freeメモリ使用量の確認

インフラエンジニアでは、上記のコマンド群をよく使います。特に運用・監視をしている場合、サービス障害が発生したりすると、まずpsコマンドで該当のプロセスが動いているか確認し、動いてなければ起動、動いてるけど動作が不安定そうであれば再起動などをします。topコマンドでどのプロセスが負荷をかけてるかもわかるので、こちらも重宝しますね。

ネットワーク関連

pingICMPプロトコルを使った機器との疎通確認
curlHTTP、HTTPSプロトコルなどを用いて、サーバからの応答を確認
ifconfig/ipIPアドレスの確認
netstat使用しているポートやポート応答の確認

pingやcurlは監視を実現するためによく使われます。特定のURLからの応答がcurlを使って指定時間毎(5分間隔等)で確認して、指定された応答が帰ってこなければ障害状態と判定したり、ping応答がなくなったら障害状態と判定したり、という使われ方をします(もちろん他の用途でも)。

まとめ

今回はインフラエンジニア目線でよく使うコマンドを紹介しました。LinuxカーネルのOSをCLIで初めて使う場合は、コマンドから覚えないといけないのでなかなか大変です。しかし慣れてくると、逆にGUIで作業するのがめんどくさくなってきたりするので不思議なものです・・・・

今回の記事が、LinuxカーネルのOSを初めて使う・経験が浅い人の助けになれば幸いです。