LinuxまたはUnixコマンドの中から、Linuxシステム管理者が日常生活でよく使う便利なものをいくつか見ていきます。
これは完全ではありませんが、必要なときに参照するためのコマンドのコンパクトなリストです。それでは、どのようにしてそれらのコマンドを使用するか、例を挙げながら一つずつ始めましょう。
1. Uptimeコマンド
Linuxでは、uptimeコマンドはシステムが稼働している時間と現在ログインしているユーザー数、さらにはシステムの平均負荷を1、5、15分間隔で表示します。
# uptime 08:16:26 up 22 min, 1 user, load average: 0.00, 0.03, 0.22
Uptimeバージョンを確認
Uptimeコマンドには、uptimeとversion以外のオプションはありません。それは、時間:分:秒での情報を1日未満の場合にのみ提供します。
# uptime -V procps version 3.2.8
2. Wコマンド
wコマンドは現在ログインしているユーザーとそのプロセスを表示し、ロード平均、ログイン名、tty名、リモートホスト、ログイン時間、アイドル時間、JCPU、PCPU、コマンド、およびプロセスを表示します。
# w 08:27:44 up 34 min, 1 user, load average: 0.00, 0.00, 0.08 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT tecmint pts/0 192.168.50.1 07:59 0.00s 0.29s 0.09s w
利用可能なオプション
- -h:ヘッダエントリを表示しません。
- -s:JCPUとPCPUを表示しません。
- -f:フィールドから削除します。
- -V:(大文字) – バージョンを表示します。
3. ユーザーコマンド
ユーザーコマンドは現在ログインしているユーザーを表示します。このコマンドにはヘルプとバージョン以外のパラメータはありません。
# users tecmint
4. Whoコマンド
whoコマンドは単純にユーザー名、日付、時間、およびホスト情報を返します。whoコマンドはwコマンドと似ていますが、wコマンドと異なり、whoはユーザーが何をしているかを印刷しません。 whoとwコマンドの違いを示してみましょう。
# who tecmint pts/0 2012-09-18 07:59 (192.168.50.1)
# w 08:43:58 up 50 min, 1 user, load average: 0.64, 0.18, 0.06 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT tecmint pts/0 192.168.50.1 07:59 0.00s 0.43s 0.10s w
Whoコマンドオプション
- -b:最後のシステム再起動の日付と時間を表示します。
- -r: 現在のランレットを表示します。
- -a, –all: すべての情報を累積的に表示します。
5. whoamiコマンド
Linuxでは、whoamiコマンドを使用して、Linuxシステムに現在ログインしているユーザー名を印刷します。 sudoコマンドを使用してルートとしてログインしている場合、“whoami”コマンドは現在のユーザーとしてrootを返します。
# whoami tecmint
6. lsコマンド
lsコマンドは、人間が読める形式でファイルのリストを表示します。
# ls -l total 114 dr-xr-xr-x. 2 root root 4096 Sep 18 08:46 bin dr-xr-xr-x. 5 root root 1024 Sep 8 15:49 boot
最終変更時間に従ってファイルをソートします。
# ls -ltr total 40 -rw-r--r--. 1 root root 6546 Sep 17 18:42 install.log.syslog -rw-r--r--. 1 root root 22435 Sep 17 18:45 install.log -rw-------. 1 root root 1003 Sep 17 18:45 anaconda-ks.cfg
詳細については、lsコマンドの例については、以下の記事をご覧ください。
7. Crontabコマンド
ユーザーのスケジュールされたジョブをcrontabコマンドと-l
オプションで表示します。
# crontab -l 00 10 * * * /bin/ls >/ls.txt
crontabを-e
オプションで編集します。以下の例では、スケジュールされたジョブをVIエディタで開きます。必要な変更を行い、:wq
キーを押して終了すると、設定が自動的に保存されます。
# crontab -e
Linux Cronコマンドの詳細な例については、以前の記事を参照してください:
8. Lessコマンド
lessコマンドは、ファイルを迅速に表示するために使用されます。ページアップとページダウンが可能です。lessウィンドウから抜けるには、‘q
‘を押してください。
# less install.log Installing setup-2.8.14-10.el6.noarch warning: setup-2.8.14-10.el6.noarch: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY Installing filesystem-2.4.30-2.1.el6.i686 Installing ca-certificates-2010.63-3.el6.noarch Installing xml-common-0.6.3-32.el6.noarch Installing tzdata-2010l-1.el6.noarch Installing iso-codes-3.16-2.el6.noarch
9. Moreコマンド
moreコマンドは、ファイルを迅速に表示し、パーセンテージで詳細を示すために使用されます。ページアップとページダウンが可能です。moreウィンドウから抜けるには、‘q
‘を押してください。
# more install.log Installing setup-2.8.14-10.el6.noarch warning: setup-2.8.14-10.el6.noarch: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY Installing filesystem-2.4.30-2.1.el6.i686 Installing ca-certificates-2010.63-3.el6.noarch Installing xml-common-0.6.3-32.el6.noarch Installing tzdata-2010l-1.el6.noarch Installing iso-codes-3.16-2.el6.noarch --More--(10%)
[興味を持たれた方は、ファイルナビゲーションにおいて‘less’が‘more’コマンドよりも高速である理由を学ぶをお読みください]
10. CPコマンド
A cp command copies file from source to destination preserving the same mode.
# cp -p fileA fileB
ファイルを上書きする前にプロンプトが表示されます。
# cp -i fileA fileB
[ あなたも好きかもしれません: コンフィルメントなしで上書きする方法 ]
11. MVコマンド
mvコマンドはfileAをfileBに名前を変更し、-iオプションを使用して、上書きする前に確認を求めます。既に存在する場合は確認を求めます。
# mv -i fileA fileB
12. Catコマンド
catコマンドは、同時に複数のファイルを表示するために使用されます。
# cat fileA fileB
moreおよびlessコマンドをcatコマンドと組み合わせて、単一の画面/ページに収まらない場合のファイルの内容を表示します。
# cat install.log | less # cat install.log | more
Linuxのcatコマンドの詳細な例については、Linuxでの13の基本的なCatコマンドの例に関する記事をお読みください。
13. cdコマンド (ディレクトリの変更)
cdコマンド (ディレクトリの変更またはディレクトリの切り替え)は、fileAディレクトリに移動します。
# cd /fileA
14. pwdコマンド (印刷作業ディレクトリ)
A pwd command return with the present working directory.
# pwd /root
15. ソートコマンド
sort コマンドは、テキストファイルの行を昇順で並べ替えるために使用されます。-r
オプションを使用すると降順でソートされます。
# sort fileA.txt # sort -r fileA.txt
16. VIコマンド
Viは、ほとんどのUNIX互換OSで利用可能な最も人気のあるテキストエディタです。以下の例は、-R
オプションで読み取り専用でファイルを開きます。Viウィンドウから抜けるには、‘:q
‘を押してください。
# vi -R /etc/shadows
viエディタについてさらに学びたい場合は、以下の記事を読んでください。
17. SSHコマンド(セキュアシェル)
SSHコマンドは、リモートホストにログインするために使用されます。例えば、以下のsshコマンドは、ユーザーとしてNaradでリモートホスト(192.168.50.2)に接続します。
# ssh [email protected]
sshのバージョンを確認するには、-V
(大文字)オプションを使用してsshのバージョンを表示します。
# ssh -V OpenSSH_8.2p1 Ubuntu-4ubuntu0.3, OpenSSL 1.1.1f 31 Mar 2020
SSHについてさらに学びたい方は、以下の記事をお読みください。
18. Ftpまたはsftpコマンド
ftp または sftp コマンドは、リモートのftpホストに接続するために使用されます。ftpは (ファイル転送プロトコル) であり、sftpは (セキュアファイル転送プロトコル) です。例えば、以下のコマンドは (192.168.50.2) のftpホストに接続します。
# ftp 192.168.50.2 # sftp 192.168.50.2
リモートホストに複数のファイルを置くには mput を使用し、同様に mget を使用してリモートホストから複数のファイルをダウンロードできます。
# ftp > mput *.txt # ftp > mget *.txt
19. Systemctlコマンド
Systemctlコマンドは、サービスを管理し、実行状態を確認し、サービスを開始および有効化し、設定ファイルと連携するために使用されるsystemd管理ツールです。
# systemctl start httpd.service # systemctl enable httpd.service # systemctl status httpd.service
20. Freeコマンド
freeコマンドは、空き、合計、およびスワップメモリの情報をバイト単位で表示します。
# free total used free shared buffers cached Mem: 1030800 735944 294856 0 51648 547696 -/+ buffers/cache: 136600 894200 Swap: 2064376 0 2064376
オプション-t
を使用してfreeを実行すると、使用されている合計メモリと使用可能なメモリがバイト単位で表示されます。
# free -t total used free shared buffers cached Mem: 1030800 736096 294704 0 51720 547704 -/+ buffers/cache: 136672 894128 Swap: 2064376 0 2064376 Total: 3095176 736096 2359080
21. Topコマンド
topコマンドは、システムのプロセッサアクティビティを表示し、カーネルによって管理されるタスクをリアルタイムで表示します。プロセッサとメモリの使用状況が表示されます。
オプションu
を使用してtopコマンドを実行すると、以下に示すように特定のユーザーのプロセスの詳細が表示されます。「O
」(大文字の文字)を押して、希望の順序でソートします。「q
」を押してtop画面から抜けます。
# top -u tecmint top - 11:13:11 up 3:19, 2 users, load average: 0.00, 0.00, 0.00 Tasks: 116 total, 1 running, 115 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 1030800k total, 736188k used, 294612k free, 51760k buffers Swap: 2064376k total, 0k used, 2064376k free, 547704k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1889 tecmint 20 0 11468 1648 920 S 0.0 0.2 0:00.59 sshd 1890 tecmint 20 0 5124 1668 1416 S 0.0 0.2 0:00.44 bash 6698 tecmint 20 0 11600 1668 924 S 0.0 0.2 0:01.19 sshd 6699 tecmint 20 0 5124 1596 1352 S 0.0 0.2 0:00.11 bash
topコマンドについてさらに詳しく知りたい場合は、Linuxの12 TOPコマンド例のリストを既に作成しています。
22. Tarコマンド
tarコマンドは、Linuxでファイルやフォルダを圧縮するために使用されます。たとえば、次のコマンドは、/home ディレクトリのアーカイブを archive-name.tar というファイル名で作成します。
# tar -cvf archive-name.tar /home
tarアーカイブファイルを抽出するには、次のオプションを使用します。
# tar -xvf archive-name.tar
tarコマンドについてさらに理解するために、tarコマンドの完全な方法ガイドを18 Tar Command Examples in Linuxで作成しました。
23. Grepコマンド
grepコマンドは、ファイル内の指定された文字列を検索します。tecmintユーザーだけが/etc/passwdファイルから表示されます。-i
オプションを使用して、大文字と小文字の区別を無視することができます。
# grep tecmint /etc/passwd tecmint:x:500:500::/home/tecmint:/bin/bash
24. Findコマンド
Findコマンドは、ファイル、文字列、ディレクトリを検索するために使用されます。次のfindコマンドの例は、tecmintという単語を’ / ‘パーティションで検索し、出力を返します。
# find / -name tecmint /var/spool/mail/tecmint /home/tecmint /root/home/tecmint
Linuxのfindコマンドの例についての完全なガイドは、Linux findコマンドの例で35 Practical Examples of Linux Find Commandで見つけることができます。
25. lsofコマンド
lsofは、すべてのオープンファイルのリストを意味します。以下のlsofは、ユーザーtecmintによって開かれたすべてのファイルのコマンドリストです。
# lsof -u tecmint COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 1889 tecmint cwd DIR 253,0 4096 2 / sshd 1889 tecmint txt REG 253,0 532336 298069 /usr/sbin/sshd sshd 1889 tecmint DEL REG 253,0 412940 /lib/libcom_err.so.2.1 sshd 1889 tecmint DEL REG 253,0 393156 /lib/ld-2.12.so sshd 1889 tecmint DEL REG 253,0 298643 /usr/lib/libcrypto.so.1.0.0 sshd 1889 tecmint DEL REG 253,0 393173 /lib/libnsl-2.12.so sshd 1889 tecmint DEL REG 253,0 412937 /lib/libkrb5support.so.0.1 sshd 1889 tecmint DEL REG 253,0 412961 /lib/libplc4.so
詳細については、lsofコマンドの例を参照してくださいLinuxの10のlsofコマンドの例。
26. lastコマンド
lastコマンドを使用すると、システム内のユーザーのアクティビティを監視できます。このコマンドは通常のユーザーも実行できます。端末、時間、日付、システム再起動またはブート、カーネルバージョンなど、完全なユーザー情報を表示します。トラブルシューティングに役立つコマンドです。
# last tecmint pts/1 192.168.50.1 Tue Sep 18 08:50 still logged in tecmint pts/0 192.168.50.1 Tue Sep 18 07:59 still logged in reboot system boot 2.6.32-279.el6.i Tue Sep 18 07:54 - 11:38 (03:43) root pts/1 192.168.50.1 Sun Sep 16 10:40 - down (03:53) root pts/0 :0.0 Sun Sep 16 10:36 - 13:09 (02:32) root tty1 :0 Sun Sep 16 10:07 - down (04:26) reboot system boot 2.6.32-279.el6.i Sun Sep 16 09:57 - 14:33 (04:35) narad pts/2 192.168.50.1 Thu Sep 13 08:07 - down (01:15)
次のように、lastを使用して、ユーザー名で特定のユーザーのアクティビティを知ることができます。
# last tecmint tecmint pts/1 192.168.50.1 Tue Sep 18 08:50 still logged in tecmint pts/0 192.168.50.1 Tue Sep 18 07:59 still logged in tecmint pts/1 192.168.50.1 Thu Sep 13 08:07 - down (01:15) tecmint pts/4 192.168.50.1 Wed Sep 12 10:12 - 12:29 (02:17)
27. psコマンド
psコマンドは、システム内で実行されているプロセスを表示します。以下の例は、initのみをプロセスとして表示します。
# ps -ef | grep init root 1 0 0 07:53 ? 00:00:04 /sbin/init root 7508 6825 0 11:48 pts/1 00:00:00 grep init
28. killコマンド
killコマンドを使用して、プロセスを終了させます。まず、以下に示すようにidでプロセスを見つけpsコマンドを使用し、kill -9コマンドでプロセスをキルします。
# ps -ef | grep init root 1 0 0 07:53 ? 00:00:04 /sbin/init root 7508 6825 0 11:48 pts/1 00:00:00 grep init # kill- 9 7508
29. rmコマンド
rmコマンドは、確認プロンプトなしでファイルを削除または削除するために使用されます。
# rm filename
ファイルを削除する前に確認を取得するには、-iオプションを使用してください。オプション‘-r‘と‘-f‘を使用すると、確認なしでファイルを強制的に削除できます。
# rm -i test.txt rm: remove regular file `test.txt'?
30. mkdirコマンドの例。
mkdirコマンドは、Linuxの下にディレクトリを作成するために使用されます。
# mkdir directoryname
これは、Linux/Unixライクなオペレーティングシステムで日常的に使用される基本的なコマンドです。私たちが見逃している場合は、コメントボックスを通じて共有してください。
Source:
https://www.tecmint.com/useful-linux-commands-for-system-administrators/