1. システム関連
1-1. バージョン確認
//AlmaLinux
$ cat /etc/almalinux-release
AlmaLinux release 9.1 (Lime Lynx)
//CentOS
$ cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
//redhat系
$ cat /etc/redhat-release
AlmaLinux release 8.9 (Midnight Oncilla)
$ ll /etc/redhat-release
lrwxrwxrwx. 1 root root 17 11月 16 2023 /etc/redhat-release -> almalinux-release
1-2. メモリ確認
$ free -h
total used free shared buff/cache available
Mem: 62G 3.0G 55G 658M 4.3G 58G
Swap: 127G 0B 127G
1-3. CPU情報
$ lscpu
アーキテクチャ: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
コアあたりのスレッド数:1
ソケットあたりのコア数:4
Socket(s): 1
NUMAノード: 1
ベンダーID: GenuineIntel
CPUファミリー: 6
:
:
2. ファイル操作関連
2-1. ディレクトリを再帰的に表示
$ ll -R
.:
合計 8
drwxrwxr-x 3 www www 4096 6月 20 2018 backup
drwxrwxr-x 2 www www 4096 4月 17 2018 bin
:
:
//ベタに出力したい場合
$ ll -d $(find `pwd`)
rwx------ 8 www www 4096 5月 25 12:27 /home/www
-rw------- 1 www www 17386 5月 25 01:46 /home/www/.bash_history
-rw-r--r-- 1 www www 18 9月 7 2017 /home/www/.bash_logout
:
:
2-2. diffでディレクトリ間を再帰的に比較
3. ユーザ/グループ操作関連
3-1. グループを管理
//グループ一覧
$ cat /etc/group
//指定グループの所属ユーザ
$ cat /etc/group | grep グループ
//指定ユーザの所属グループ
$ groups ユーザ名
//ユーザuserfugaをグループgrouphogeに追加する
# gpasswd -a userfuga grouphoge
//ユーザuserfugaをグループgrouphogeから削除する
# gpasswd -d userfuga grouphoge
- usermodコマンドでも変更できるけど、全所属グループを指定する必要があるのと、間違ってプライマリーグループを変更する可能性もあるのでgpasswdのがいいと思う。
- グループへの追加削除はrootが必要。
- グループの変更が反映されるのは次回ログインから。
4. その他
4-1. cron
$ crontab -l
05 01 01 * * /usr/bin/php /hoge/app/batch/logRotate.php
30 19 * * * /usr/bin/php /hoge/app/batch/backup.php
:
:
分 時 日 月 曜 コマンド
05 01 01 * * /usr/bin/php /hoge/app/batch/logRotate.php
パラメタ
分 : 0-59
時 : 0-23
日 : 1-31
月 : 1-12
曜 : 0-7 (0|7=日曜)
指定方法
リスト : 0,15,30,45(分で指定した場合、15分に一度処理実行)
範 囲 : 1-5(曜で指定した場合、月~金に処理実行)
4-2. ftp
//ファイルを1個だけ転送するサンプル
$ cat ftp1.sh
#!/bin/sh
ftp -n <<END
open -xxx.xxx.xxx.xxx-
user -user- -password-
binary
prompt
lcd $1
put $2
$ ftp1.sh -転送元ディレクトリ- -転送ファイル-
ftp -n
-nは自動ログインなし、ログインプロンプトの表示なし。
シェルスクリプトでftpするときの定番おまじない。
open -xxx.xxx.xxx.xxx-
リモートホストに接続。
close
openで接続したリモートホストから切断する。
quit/by/bye/exit
ftpを終了
binary
ファイル転送時に改行コード変換をしない。
対になるコマンドでascii(改行コード変換あり)がある。
今の時代、転送時に改行コードを変換はしない、binary一択。
ls -dir-
リモートホストのファイルを一覧する。
cd -dir-
リモートホストのディレクトリを移動する
lcd -dir-
ローカルマシンのディレクトリを移動する
pwd
リモートホストのカレントディレクトリを表示する。
mkdir
リモートホストにディレクトリを作成する
chmod
リモートホストのファイルやディレクトリのアクセス権を指定する。
!***
ローカルマシンで任意のコマンド(***)を実行する
get -rfile- [-lfile-]
リモートホストのファイルをローカルマシンへ受信する。-lfile-は省略可。
put -lfile- [-rfile-]
ローカルマシンのファイルをリモートホストへ送信する。-rfile-は省略可。
mget -rfiles-
リモートホストの複数ファイルをローカルマシンへ受信する。-rfiles-はワイルドカード使用可。
mput -lfiles-
ローカルマシンの複数ファイルをリモートホストへ送信する。-lfiles-はワイルドカード使用可。
user -user- -password-
指定ユーザ/パスワードでログイン。
prompt
mget/mputしたときのプロンプトを抑止する。
シェルスクリプトでftpするときの定番おまじない。