よく使用するコマンド
ファイル操作系コマンド
カレントディレクトリのパスを表示
pwd
アクセス権限付与
chmod 644 filePath
chown -R sampleuser:samplegroup filePath
詳細は『【Linux】ファイルのパーミッションと所有者の変更方法』を参照。
ファイル一覧を表示
ll [-a]
llはls -lの略。
-a:隠しファイルも表示
-l:詳細表示。ショートカットがあれば参照先も表示してくれる
ファイル編集
vi filePath
詳細は『viコマンド備忘録』を参照。
ファイル閲覧
less filePath //上下移動して閲覧できる。プロンプトに履歴が残らない。
cat filePath //プロンプトに履歴が残る。
以下のように、grepでつなぐと、file内の特定の文字列を検索できる
cat access.log -n | grep Apple
access.log というファイルからAppleという文字列を 検索(検索ワードにスペースが含まれる場合はダブルクォーテーションで囲う)。
n:行番号を表示
検索語を見つけた位置から表示する
※-pオプションはfilePathより前で指定しないと機能しないので注意すること
less -p [word] [filePath]
ファイル検索
gerp [word]
詳細は『grepコマンド備忘録』を参照。
ファイル・ディレクトリ削除
rm -rf filePath
-r:再帰的に削除 ※配下のファイルも削除。ディレクトリ削除の際には必須
ファイルコピー
cp -r (コピー元) (コピー先)
ファイル移動・リネーム
mv -r (移動ファイルパス) (移動先パス)
リネームの場合は、パスのファイル名部分のみを変更して指定する
おまけ:文字列検索
lessやviなど、モードに入る系のコマンドは、そこからさらに『?』を打ち込むことで、文字列検索ができる。
『?』の後に入力した文字列はハイライトされる。
汎用系コマンド
画面クリア
Ctrl+l
rootユーザーに昇格
sudo su-
- sudo:スーパーユーザ(root)として実行
- su:ユーザ切り替え。 引数としてユーザ名を指定しない場合はroot (管理者)ユー ザになる
- – : 切り替え後のユーザのホームディレクトリに移動
操作の履歴を確認する
history
時刻も表示する場合は先に以下を実行してからhistoryを実行する。
HISTTIMEFORMAT='%F %T'
空き要領確認
df -h dirPath
-h : 単位をつける
ログ系コマンド
リアルタイムでログを表示する
tail -200f sample.log
- -200:最新の200行を表示
- -f:リアルタイムで表示
ユーザー・パスワード系コマンド
ユーザー一覧を確認する
cat /etc/passwd
ユーザーのロック状態を確認する
passwd -S [ユーザ名]
ロックを解除する
faillock --user [ユーザ名] --reset
パスワードリセット
passwd [ユーザ名]
パスワードの期限を確認する
chage--list [ユーザ名]
パッケージ・リポジトリ関連コマンド
パッケージのアップデート
yum list installed | grep packageName //パッケージがインストールされているか、バージョンがいくつか確認
yum list updates | grep packageName //パッケージに適用できるアップデートがあるか確認
yum update packageName //パッケージをアップデート
アップデート時エラー
Existing lock/var/run/yum.pid: another copy is running as pid 20502.
Another app is currently holding the yum lock; waiting for it to exit....
kernel アップデート中にネットが落ちた。 再接続するとyum lockがかかっている。以下、対応方法
- 実行中のpidをキルする : kill [pid]
- 排他制御しているファイルを削除: rm -f /run/yum.pid
- yum キャッシュクリア:yum cleán all
パッケージの有無を確認
rpm -qa | grep packageName
または
rpm -V packageName
パッケージが無ければ “package is not installed” 。 何も出 なければOK
コマンドがあるか確認
which commandName
リポジトリ情報を確認
yum repolist-C
yum repolist -v
DNS情報を確認
cat /etc/resolv.conf
nmcli
サーバー系コマンド
サーバー系コマンドは主に systemctl コマンドで実行する。
サービスの一覧を確認
systemctl list-units --type=service | grep oracle
上記はoracle サービス有無の確認例。tomcatなどでも同じように確認ができる。
サービスがあれば、systemctlを使用しなくても、 service tomcat stop でtomcatの停止、といった具合に、serviceコマンドを使用して楽に操作が行える。
OSの確認
cat /etc/os-release
DNSキャッシュクリア
sudo systemctl restart rhnsd
よく使用するオプション
- -r:再帰的に実行 ※ディレクトリに対してコマンド実行する際、配下のディレクトリも対象とする
- -f:『削除しますか?』の確認メッセージを表示しない
Appendix
パイプ構文
処理を記載したあとに『|』で連結することで、処理に対してさらに処理を追加することができる。
使用例
ll | grep tomcat
llで表示されたフォルダ、ファイルからtomcatという文字列を含む行を検索
cat access.log | grep "Apple" | grep -v " "
access.logというファイルから “Apple”という文字列を検索。半角スペースを含む行は除外
コメント