CentOS7

コマンド

使用しているシェルが利用している言語を確認

[root@localhost ~]# echo $LANG

環境変数LANGを「ja_JP.utf8」に変更

[root@localhost ~]# export LANG=ja_JP.utf8

ホスト名の確認

[root@localhost ~]# less /etc/sysconfig/network

OSのバージョン確認

[root@localhost ~]# less /etc/redhat-release

カーネルバージョンの確認

[root@localhost ~]# uname -a

CPUの確認

[root@localhost ~]# less /proc/cpuinfo

メモリの確認

[root@localhost ~]# less /proc/meminfo

内臓ハードディスクの確認

[root@localhost ~]# fdisk -l

RAID確認

[root@localhost ~]# ls -al /dev/md0

ディスクパーティション確認

[root@localhost ~]# less /proc/partitions

GRUBローダのインストール先確認

[root@localhost ~]# less /etc/grub.conf

MBRのFilesystemのマウントポイント /boot

[root@localhost ~]# df /boot

タイムゾーンの確認

[root@localhost ~]# less /etc/sysconfig/clock

NIC(eth0)設定確認

[root@localhost ~]# less /etc/sysconfig/network-scripts/ifcfg-eth0

ホスト名前解決の確認

[root@localhost ~]# less /etc/resolv.conf

名前解決の順序指定

[root@localhost ~]# less /etc/nsswitch.conf

kdump OS起動時の動作確認

[root@localhost ~]# chkconfig kdump --list

ntpd OS起動時の動作確認

[root@localhost ~]# chkconfig ntpd --list

ローカルタイムソースを確認

[root@localhost ~]# less /etc/sysconfig/clock

ssh

リモートログイン

[root@localhost ~]# ssh <サーバーIPアドレス> -l <ユーザー名> -p 22 -i /home/<ユーザー名>/key_file

SSHファイル転送 (ローカル→リモート)

[root@localhost ~]# scp -P 22 index.html username@xxx.xxx.xxx.xxx:/home/username/

SSHファイル転送 (リモート→ローカル)

[root@localhost ~]# scp -P 22 username@xxx.xxx.xxx.xxx:/home/username/index.html .

ディレクトリ毎

[root@localhost ~]# scp -P 22 -rq htdocs/ username@xxx.xxx.xxx.xxx:/home/username/

Slabの内訳表示

[root@localhost ~]# slabtop --once --sort=c | head -n 12

sar

sarコマンドに-vオプションを付けると「ディレクトリ・キャッシュ内の未使用キャッシュ・エントリの数」であるdentunusdが確認できる。dentunusdがnegative dentryの数になる。

[root@localhost ~]# sar -v 0
12:00:00 AM dentunusd file-nr inode-nr pty-nr
12:00:00 AM 8637647 768 40414 1

slabキャッシュ解放

ページキャッシュの解放

[root@localhost ~]# sync; echo 1 > /proc/sys/vm/drop_caches

slabオブジェクト(dentryとinodeを含む)の解放

[root@localhost ~]# sync; echo 2 > /proc/sys/vm/drop_caches

slabオブジェクトとページキャッシュの解放

[root@localhost ~]# sync; echo 3 > /proc/sys/vm/drop_caches

systemctl (systemd)

[root@localhost ~]# systemctl start
[root@localhost ~]# systemctl stop
[root@localhost ~]# systemctl reload
[root@localhost ~]# systemctl status
[root@localhost ~]# systemctl enable
[root@localhost ~]# systemctl disable

現在起動しているサービスの一覧を表示 (--all を付けると全サービスがリストされる)

[root@dlp ~]# systemctl -t service

サービスの起動設定の一覧を表示

[root@localhost ~]# systemctl list-unit-files -t service

nmcli

NetworkManager を参照

yum

[root@localhost ~]# yum installパッケージのインストール
[root@localhost ~]# yum updateパッケージのアップデート
[root@localhost ~]# yum removeパッケージのアンインストール
[root@localhost ~]# yum list installedインストール済パッケージ
[root@localhost ~]# yum list updatesアップデート可能なパッケージ
[root@localhost ~]# yum list available利用可能なパッケージ
[root@localhost ~]# yum list extras利用できないパッケージ
[root@localhost ~]# yum search --enablerepo=remi,remi-php73 php | grep php73-php-xmlrpcパッケージの検索

rpm

[root@localhost ~]# rpm -qa | grep php

インストールされているパッケージの確認

[root@localhost ~]# rpm -qa <パッケージ名>

vi

x1文字削除
dd1行削除(1行カット)
yy1行コピー
pペースト
1G文頭
G文末
0行頭
$行末
/前方検索
?後方検索
n次の候補
N前の候補

find

[root@localhost ~]# find /etc -name php.ini
[root@localhost ~]# find /etc -name \*.dat
[root@localhost ~]# find ./etc/ *.dat

今日アクセスしたファイル

[root@localhost ~]# find ./etc/ -atime 0

3日以内にアクセスされたファイルやディレクトリ

[root@localhost ~]# find ./etc/ -atime -3

ファイル容量が0の物を検索

[root@localhost ~]# find / -empty

ファイル名に「01」が含まれるファイルのみを検索

[root@localhost ~]# find /*01* -type f

ファイル名に「01」が含まれるディレクトリのみを検索

[root@localhost ~]# find /*01* -type d

nc(netcat)コマンド:ポートスキャン

[root@localhost ~]# nc -z -v ホスト名 0-1024

lsof

リッスンしているサービスやポートを表示

[root@localhost ~]# lsof -i -n -P

オプション -i でIPアドレスとバインドされているプロセスを表示できます。-n はIPアドレスの名前解決(逆引き)をしない、-P はポート番号の変換をしない、という意味です。

ssh は *:22 と表示されていますが、これは全てのNICインタフェースのIPアドレスでLISTENする、という意味です。

例えば2つのNICがあり、1つはWebサービス用IP(10.1.1.1/24)、もう1つは管理用IP(192.168.10.1/24)がアサインされていた場合、本来であれば SSH アクセスは管理用IPのみで LISTEN すればよいところを、色々なクライアントがアクセス可能な Webサービス用IP(10.1.1.1) でもSSHが許可されてしまいます。

ss

「ss」コマンドは、ネットワーク通信で利用する「ソケット」についての情報などを出力するコマンドです ※1。従来はnetstatコマンドが使用されていましたが、現在はssコマンドへの移行が進んでいます。

[root@localhost ~]# ss [オプション] [フィルター]
[root@localhost ~]# ss -natu

ssの主なオプション(表示対象関係)

短いオプション長いオプション意味
-fソケット--family ソケット表示するソケットの種類(ファミリー)をunix、inet、inet6、link、netlinkから指定する
-x--unixUNIXドメインソケットを表示(-f unix相当)
-4--ipv4IPv4のソケットだけを表示(-f inet相当)
-6--ipv6IPv6のソケットだけを表示(-f inet6相当)
-0--packetパケットソケットを表示(-f link相当)
-t--tcpTCPソケットを表示
-u--udpUDPソケットを表示
-d--dccpDCCPソケットを表示
-w--rawRAWソケットを表示
-a--all接続待ち状態(LISTEN)のソケットと接続待ち状態にないソケットの両方を表示する
-l--listening接続待ち状態のソケットだけを表示する
-Nネームスペース--net=ネームスペース 指定したネームスペースに切り替える
-Aクエリ--query=クエリ, --socket=クエリ 対象をカンマ区切りで指定する(all、inet、tcp、udp、raw、unix、packet、netlink、unix_dgram、unix_stream、unix_seqpacket、packet_raw、packet_dgramから選択)
-Fファイル名--filter=ファイル名 フィルターの指定をファイルから読み込む

ssの主なオプション(表示内容関係)

短いオプション長いオプション意味
-n--numericサービス名の名前解決を行わない(ポート番号を表示)
-r--resolve名前解決を行う
-e--extended詳細情報を表示
-o--optionsタイマー情報も表示する
-m--memory各ソケットのメモリの使用量も表示する
-p--processesソケットを使用しているプロセスも表示する
-Z--context-pオプションに加えてセキュリティコンテキストも表示(SELinux)
-z--contexts-Zオプションに加えてソケットコンテキストも表示(SELinux)
-i--info内部TCPの情報も表示する
-s--summaryソケットの種類ごとに本数を表示する
-Dファイル名--diag=ファイル名 RAW情報をファイルに出力する(画面には何も出力しない)

sudo

ユーザーをwheelグループに追加

[root@localhost ~]# usermod -G wheel <username>

visudo/etc/sudoersを開き、下記の行のコメントアウトを外す。

[root@localhost ~]# visudo
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL

sudoの実行をパスワードなしで許可する場合は、下記のほうのコメントアウトを外す。

[root@localhost ~]# visudo
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) NOPASSWD:ALL

特定のユーザーのみsudoを許可する

[root@localhost ~]# visudo
<username> ALL=(ALL) NOPASSWD: ALL

route

ルーティングテーブルの内容を表示する

[root@localhost ~]# route ←IPv4のルーティングテーブルを表示
[root@localhost ~]# route -6 ←IPv6のルーティングテーブルを表示

経路を追加する

[root@localhost ~]# route add -net 192.168.1.0/24 gw 192.168.2.1 eth0 ←インタフェースを指定して経路を追加する
[root@localhost ~]# route add -net 192.168.1.0/24 gw 192.168.2.1 ←経路を追加する

経路を削除する

[root@localhost ~]# route del -net 192.168.1.0/24 gw 192.168.2.1 eth0 ←インタフェースを指定して経路を削除する
[root@localhost ~]# route del -net 192.168.1.0/24 gw 192.168.2.1 ←経路を削除する

拒否経路を追加する

[root@localhost ~]# route add -net 192.168.1.0/24 gw 192.168.2.1 eth0 reject ←インタフェースを指定して拒否経路を追加する
[root@localhost ~]# route add -net 192.168.1.0/24 gw 192.168.2.1 reject ←拒否経路を追加する

拒否経路を削除する

[root@localhost ~]# route del -net 192.168.1.0/24 gw 192.168.2.1 eth0 reject ←インタフェースを指定して拒否経路を削除する
[root@localhost ~]# route del -net 192.168.1.0/24 gw 192.168.2.1 reject ←拒否経路を削除する

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS