ウェブサイト検索

知っておくべき37の重要なLinuxコマンド


重要なポイント

  • エイリアスを使用して、よく使うコマンドのショートカットを作成してください。これにより、キー操作を節約でき、異なるシステム間のナビゲーションが容易になります。
  • cd、mkdir、lsは、ターミナルを通して任意のLinuxオペレーティングシステムを使用するために不可欠であり、これらの使い方を覚える努力をすべきです。
  • 「man」コマンドは、特定のコマンドの使い方を忘れたときに役立つ優れた組み込みリソースです。

Linuxに不慣れですか、それとも少し忘れてしまいましたか?ここに必要なコマンドがすべて揃っています。これはLinuxターミナルの基本的なリファレンスと考えてください。macOSのコマンドラインにも適用されます。

ファイルの名前を変更するには、それを新しい名前の新しいファイルに「移動」します。

mv Apache.pdf The_Shadows_Apache.pdf

ファイルの移動と名前の変更のアクションは、1つのステップで達成できたかもしれません。

mv ~/Documents/Ukulele/Apache.pdf ./The_Shadows_Apache.pdf

25. パスワード

passwd コマンドはユーザーのパスワードを変更することができます。自分のパスワードを変更するには、ただ passwd と入力してください。

別のユーザーアカウントのパスワードも変更できますが、sudoを使用する必要があります。新しいパスワードを二回入力するように求められます。

sudo passwd mary

26. ピング

ping コマンドを使用すると、他のネットワークデバイスとのネットワーク接続を確認できます。これは、ネットワークの問題をトラブルシュートするのに一般的に使用されます。ping を使用するには、他のデバイスのIPアドレスまたはマシン名を指定してください。

ping 192.168.4.18

ping コマンドは、Ctrl+C で停止するまで実行されます。

ここで何が起こっているかは次の通りです:

  • IPアドレス192.168.4.18のデバイスは、私たちのping要求に応答しており、64バイトのパケットを返送しています。
  • インターネット制御メッセージプロトコル(ICMP)のシーケンス番号付けにより、欠落した応答(パケットロス)を確認することができます。
  • TTLの数値は、パケットの「生存時間」を示します。パケットがルーターを通過するたびに、それは(本来は)1ずつ減少します。もしそれがゼロに達すると、パケットは廃棄されます。これは、ネットワークのループバック問題がネットワークを洪水のように襲うのを防ぐことを目的としています。
  • 時間値は、あなたのコンピュータからデバイスへの往復の所要時間です。要するに、この時間が短いほど良いということです。

特定のping試行回数を指定してpingを実行させるには、-c(カウント)オプションを使用します。

ping -c 5 192.168.4.18

音を聞くには、-a(可聴)オプションを使用してください。

ping -a 192.168.4.18

27. ps

ps コマンドは実行中のプロセスをリスト表示します。オプションなしで ps を使用すると、現在のシェルで実行中のプロセスがリストされます。

ps

特定のユーザーに関連するすべてのプロセスを見るには、-u(ユーザー)オプションを使用します。これは長いリストになる可能性があるので、便利のためにlessを通して表示してください。

ps -u dave | less

実行中のすべてのプロセスを見るには、-e(すべてのプロセス)オプションを使用します。

ps -e | less

28. pwd

シンプルで分かりやすいように、pwd コマンドはルート/ディレクトリから現在の作業ディレクトリ(カレントディレクトリ)を表示します。

pwd

29. シャットダウン

シャットダウンコマンドを使用すると、Linuxシステムをシャットダウンまたは再起動することができます。

パラメータなしでshutdownを使用すると、コンピュータが1分後にシャットダウンします。

シャットダウン

即座にシャットダウンするには、nowパラメータを使用してください。

shutdown now

シャットダウンをスケジュールし、ログインしているユーザーに保留中のシャットダウンを通知することもできます。shutdownコマンドにシャットダウンの希望時間を伝えるためには、時刻を指定する必要があります。これは、例えば+90のように今から設定された分数であったり、23:00のように正確な時刻であったりします。提供されたテキストメッセージは、ログインしているユーザーにブロードキャストされます。

shutdown 23:00 Shutdown tonight at 23:00, save your work and log out before then!

シャットダウンをキャンセルするには、-c(キャンセル)オプションを使用します。ここでは、今から15分後にシャットダウンをスケジュールしましたが、気が変わりました。

shutdown +15 Shutting down in 15 minutes!
shutdown -c

30. SSH

sshコマンドを使用して、リモートLinuxコンピューターに接続し、自分のアカウントにログインします。接続を確立するには、ユーザー名とリモートコンピューターのIPアドレスまたはドメイン名を指定する必要があります。この例では、ユーザーのメアリーが192.168.4.23のコンピューターにログインしています。接続が確立されると、彼女にパスワードが求められます。

ssh mary@192.168.4.23

彼女のユーザー名とパスワードは確認され、受け入れられ、ログインしました。彼女のプロンプトが「Nostromo」から「howtogeek」に変更されたことに注意してください。

メアリーは、"howtogeek"システム上の現在のユーザーをリストするためにwコマンドを発行します。彼女はpts/1から接続されていると表示されており、これは擬似端末スレーブです。つまり、それはコンピュータに直接接続されている端末ではありません。

セッションを終了するために、メアリーは exit とタイプし、「ノストロモ」コンピュータのシェルに戻ります。

w
exit

31. sudo

sudo コマンドは、他のユーザーのパスワードを変更するなど、ルートまたはスーパーユーザーの権限を必要とするアクションを実行する際に必要です。

sudo passwd mary

32. 尾

tailコマンドはファイルの最後の10行の一覧を表示します。より少ない行や多くの行を見たい場合は、-n(数字)オプションを使用します。この例では、tailをデフォルトの10行で使用します。その後、5行だけを要求してコマンドを繰り返します。

tail core.c
tail -n 5 core.c

33. タール

tar コマンドを使用すると、多くの他のファイルを含むことができるアーカイブファイル(tarballとも呼ばれる)を作成できます。これにより、ファイルのコレクションを配布するのが非常に便利になります。また、tarを使用してアーカイブファイルからファイルを抽出することもできます。アーカイブを圧縮するようにtarに依頼するのが一般的です。圧縮を要求しない場合、アーカイブファイルは圧縮されずに作成されます。

アーカイブファイルを作成するには、どのファイルをアーカイブに含めるかと、アーカイブファイルに付けたい名前をtarに指示する必要があります。

この例では、ユーザーは現在のディレクトリ内にあるウクレレディレクトリのすべてのファイルをアーカイブしようとしています。

彼らは -c (作成) オプションと -v (詳細) オプションを使用しました。詳細オプションは、ファイルがアーカイブに追加されるときにターミナルウィンドウにリストを表示することで視覚的フィードバックを提供します。 -f (ファイル名) オプションの後には、アーカイブの望ましい名前が続きます。この場合、それは songs.tar です。

tar -cvf songs.tar Ukulele/

ファイルはアーカイブファイルに追加されると、ターミナルウィンドウにリスト表示されます。

アーカイブファイルを圧縮するようにtarに指示する方法は2つあります。1つ目は-z(gzip)オプションを使うことです。これにより、tarはアーカイブを作成した後にgzipユーティリティを使用してアーカイブを圧縮するよう指示します。

この種類のアーカイブには、通常「.gz」というサフィックスを追加します。これにより、ファイルを抽出する人は、ファイルを正しく取得するためにtarに渡すべきコマンドを知ることができます。

tar -cvzf songs.tar.gz Ukulele/

ファイルは以前と同様にアーカイブファイルに追加されると、ターミナルウィンドウにリストされますが、圧縮に必要な時間のため、アーカイブの作成には少し長くかかります。

より優れた圧縮アルゴリズムを使用して、より小さなアーカイブファイルを作成するには、-j(bzip2)オプションを使用して圧縮されたアーカイブファイルを作成します。

tar -cvjf songs.tar.bz2 Ukulele/

再び、ファイルはアーカイブが作成されるときにリストされます。-jオプションは-zオプションよりも明らかに遅いです。

大量のファイルをアーカイブする場合、適度な圧縮と合理的な速度のための -z オプションと、より良い圧縮と遅い速度のための -j オプションのいずれかを選択しなければなりません。

以下のスクリーンショットに示されているように、".tar"ファイルが最も大きく、".tar.gz"が小さく、".tar.bz2"がアーカイブの中で最も小さいです。

アーカイブファイルからファイルを抽出するには、-x(抽出)オプションを使用します。-v(詳細)および-f(ファイル名)オプションは、アーカイブを作成するときと同様に動作します。lsを使用して、ファイルを抽出するアーカイブの種類を確認し、その後、次のコマンドを実行します。

ls
tar -xvf songs.tar

ファイルは抽出された通りにリストされています。ウクレレディレクトリも再作成されることに注意してください。

.tar.gz アーカイブからファイルを抽出するには、-z (gzip)オプションを使用します。

tar -xvzf songs.tar.gz

最後に、「.tar.bz2」アーカイブからファイルを抽出するには、-z(gzip)オプションの代わりに-jオプションを使用してください。

tar -xvjf songs.tar.bz2

34. トップ

top コマンドは、Linux マシンに関連するデータのリアルタイム表示を示します。画面の上部にはステータスの概要が表示されています。

最初の行には、時間とコンピュータがどれくらいの時間動作しているか、ログインしているユーザーの数、そして過去1分、5分、15分の負荷の平均が表示されます。

2行目にはタスクの数とその状態(実行中、停止中、スリープ中、ゾンビ)が表示されます。

三行目にはCPU情報が表示されています。各フィールドの意味は次の通りです。

  • ユーザー: 値は、CPU が「ユーザー空間」でプロセスを実行するために費やす CPU 時間です。
  • sy: 値は「カーネルスペース」プロセスを実行するために費やされた CPU 時間です
  • ni: 値は手動で設定されたナイス値を持つプロセスの実行にかかったCPU時間です。
  • id: CPUアイドル時間の量です
  • wa: 値はCPUがI/Oの完了を待つために費やす時間です。
  • こんにちは: ハードウェア割り込みを処理するのに費やされたCPU時間
  • ソフトウェア割り込みに対応するために費やされたCPU時間
  • 仮想マシンを実行することによって失われたCPU時間(「スティールタイム」)

4行目には、物理メモリの総量と、どれだけが空いているか、使用中か、バッファリングまたはキャッシュされているかが示されています。

5行目は、スワップメモリの総量、自由、使用中、および利用可能なメモリの量(キャッシュから回収可能と見込まれるメモリを考慮に入れて)を示しています。

ユーザーは、バイトを表す長い整数の代わりに、より人間が消化しやすい数値に表示を変更するためにEキーを押しました。

メインディスプレイの列は次のように構成されています:

  • PID: プロセスID
  • プロセスの所有者の名前
  • PR: プロセスの優先度
  • NI:プロセスのニice値
  • VIRT: プロセスによって使用される仮想メモリ
  • RES: プロセスによって使用される常駐メモリ
  • SHR: プロセスによって使用される共有メモリ
  • S: プロセスのステータス。このフィールドが取ることのできる値のリストを以下に示します。
  • %CPU: 最後の更新以来、プロセスが使用したCPU時間の割合
  • %MEM: 使用中の物理メモリの割合
  • TIME+: タスクによって使用されたCPUの総時間(百分の一秒単位)
  • コマンド: コマンド名またはコマンドライン(名前 + オプション)

(コマンド列はスクリーンショットに収まりませんでした。)

プロセスの状態は次のいずれかです:

  • D: 中断できない睡眠
  • R: ランニング
  • S: 眠っている
  • T: トレース(停止)
  • Z: ゾンビ

topから退出するにはQキーを押してください。

35. uname

あなたが作業しているLinuxコンピュータに関するシステム情報をunameコマンドを使って取得できます。

  • -a (すべて) オプションを使用して、すべてを表示します。
  • -s(カーネル名)オプションを使用して、カーネルのタイプを確認してください。
  • カーネルリリースを見るには、-r(カーネルリリース)オプションを使用してください。
  • カーネルバージョンを見るには、-v(カーネルバージョン)オプションを使用してください。
uname -a
uname -s
uname -r
uname -v

36. w

wコマンドは、現在ログインしているユーザーのリストを表示します。

w

37. 私は誰?

whoamiを使用して、ログインしているユーザーや無人のLinuxターミナルにログインしているユーザーを確認してください。

whoami

それがあなたのツールキットです

Linuxを学ぶことは、他の何かを学ぶことと同じです。これらのコマンドに慣れる前に、いくつかの練習が必要です。一度これらのコマンドを手の指先で使えるようになると、あなたは習熟への道を順調に進んでいることでしょう。

古いジョークがあります。それは、おそらくUnix自体と同じくらい古いもので、知っておくべき唯一のコマンドはmanコマンドだと言っています。それにはほんの少しの真実がありますが、いくつかのマニュアルページは導入なしでは理解しにくいです。このチュートリアルでは、必要な導入を提供するはずです。

Linuxコマンド

ファイル

t

プロセス

A

ネットワーキング

netstat・ping・traceroute・ip・ss・whois・fail2ban・bmon・dig・finger・nmap・ftp・curl・wget・who・whoami・w・iptables・ssh-keygen・ufw・arping・firewalld

関連記事: