メモリー開放
[root@falcon21 ~]# echo 1 > /proc/sys/vm/drop_caches
[root@falcon21 ~]# echo 2 > /proc/sys/vm/drop_caches
[root@falcon21 ~]# echo 3 > /proc/sys/vm/drop_caches
スワップキャッシュ解放
[root@falcon21 ~]# swapoff -a && swapon -a
----------------------------------------------
メモリキャッシュ解放の自動化
clear_memory_cache.作成
[root@falcon21 ~]# vi clear_memory_cache.sh
#!/bin/bash
# Note, I'm using "echo 1", because using "echo 3" is not recommended in production.
echo 1 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf '\n%s\n' 'RAM-cache and Swap were cleared.'
------------------------------
手動で実行
[root@falcon21 ~]# bash clear_memory_cache.sh
swapoff: /dev/dm-1: swapoff が失敗しました: メモリを確保できません
スクリプトファイルのパーミッションを設定
[root@falcon21 ~]# chmod 755 clear_memory_cache.sh
Cronの設定
[root@falcon21 ~]# crontab -e
0 3 * * * bash ~/clear_memory_cache.sh
**********************************************************
killコマンドによるプロセスの停止
コマンドで一覧を確認
[root@falcon21 ~]# kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
プロセスIDを指定して停止
プロセスIDを確認
[root@falcon21 ~]# ps aux | grep tail
root 1333 0.0 0.0 63184 1736 ? Ds 13:54 0:00 /bin/swatch --config-file /etc/swatch/maillog.conf --tail-file /var/log/maillog --script-dir=/tmp --awk-field-syntax --use-cpan-file-tail --daemon --pid-file /var/run/swatch_1.pid
root 1368 0.0 0.0 63292 2612 ? Ds 13:54 0:00 /bin/swatch --config-file /etc/swatch/secure.conf --tail-file /var/log/secure --script-dir=/tmp --awk-field-syntax --use-cpan-file-tail --daemon --pid-file /var/run/swatch_2.pid
root 3039 0.0 0.0 10280 120 pts/0 D+ 14:09 0:00 grep --color=auto tail
----------------------
#SIGTERMでkillする(シグナルを指定しないとデフォルトのSIGTERMになる)
$ kill 6385
[1] Terminated tail -f /dev/null
#SIGINTでkillする(シグナル名で指定)
$ kill -SIGINT 6386
[2]- 割り込み tail -f /dev/null
#SIGKILLでkillする(シグナル番号で指定)
$ kill -9 6387
[3]+ 強制終了 tail -f /dev/null
プロセス名を指定して停止する
[root@falcon21 ~]# pkill tail
[root@falcon21 ~]# ps aux | grep tail
root 1333 0.0 0.0 63184 6048 ? Ss 13:54 0:01 /bin/swatch --config-file /etc/swatch/maillog.conf --tail-file /var/log/maillog --script-dir=/tmp --awk-field-syntax --use-cpan-file-tail --daemon --pid-file /var/run/swatch_1.pid
root 1368 0.0 0.0 63292 5268 ? Ss 13:54 0:01 /bin/swatch --config-file /etc/swatch/secure.conf --tail-file /var/log/secure --script-dir=/tmp --awk-field-syntax --use-cpan-file-tail --daemon --pid-file /var/run/swatch_2.pid
root 3443 0.0 0.0 10280 996 pts/0 S+ 14:28 0:00 grep --color=auto tail
****************************************************************************
swatch を停止
[root@falcon21 ~]# systemctl stop swatch
[root@falcon21 ~]# systemctl status swatch
● swatch.service - SYSV: swatch start/stop script
Loaded: loaded (/etc/rc.d/init.d/swatch; generated)
Active: inactive (dead) since Sun 2020-11-22 14:32:48 JST; 15s ago
Docs: man:systemd-sysv-generator(8)
Process: 3484 ExecStop=/etc/rc.d/init.d/swatch stop (code=exited, status=0/SUCCESS)
Process: 883 ExecStart=/etc/rc.d/init.d/swatch start (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 48971)
Memory: 9.7M
CGroup: /system.slice/swatch.service
11月 22 13:53:53 falcon21.space systemd[1]: Starting SYSV: swatch start/stop script...
11月 22 13:54:07 falcon21.space swatch[883]: Starting swatch
11月 22 13:54:07 falcon21.space systemd[1]: Started SYSV: swatch start/stop script.
11月 22 14:19:15 falcon21.space sendmail[3342]: 0AM5JFtC003342: from=root, size=483, class=0, nrcpts=1, msgid=<202011220519.0AM5JFtC003342@falcon21.space>, relay=root@localhost
11月 22 14:19:15 falcon21.space sendmail[3342]: STARTTLS=client, relay=[127.0.0.1], version=TLSv1.3, verify=FAIL, cipher=TLS_AES_256_GCM_SHA384, bits=256/256
11月 22 14:19:15 falcon21.space sendmail[3342]: 0AM5JFtC003342: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30483, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (Ok: queued as 4E23F313307)
11月 22 14:32:47 falcon21.space systemd[1]: Stopping SYSV: swatch start/stop script...
11月 22 14:32:48 falcon21.space swatch[3484]: Shutting down swatch
11月 22 14:32:48 falcon21.space systemd[1]: Stopped SYSV: swatch start/stop script.
-------------- watch停止で、メモリー消費が減少 ---------------
**************************************************************************
バックグラウンドジョブを停止
# バックグラウンドジョブの確認
$ jobs
[1] 実行中 tail -f /dev/null &
[2]- 実行中 tail -f /dev/null &
[3]+ 実行中 tail -f /dev/null &
#バックグラウンドジョブを一つkillする
$ kill -SIGTERM %1
#複数のバックグラウンドジョブをkillする
$ kill %2 %3
プロセスの一時停止/再開
#jobの確認
[root@falcon21 ~]# jobs
$ jobs
[4]- 実行中 tail -f /dev/null &
[5]+ 実行中 tail -f /dev/null &
#停止
$ kill -SIGSTOP %4
#確認
$ jobs
[4]+ 停止 tail -f /dev/null
[5]- 実行中 tail -f /dev/null &
再開
$ kill -SIGCONT %4
$ jobs
[4]+ 実行中 tail -f /dev/null &
[5]- 実行中 tail -f /dev/null &
投票数:1
平均点:10.00