Linux系统管理
一、进程管理
有计划的重启服务器,是维护服务器的基本原则。
1、kill -l
#查看可用的进程信号
其中有两个信息
信号代号 信号名称 说明1
SIGHUP
关闭读取配置文件后重启9 SIGKILL
强制停止
平滑重启服务:
正常修改完配置文件后,需要重启服务,但是用普通的restart
来重启会提出正在使用的用户,造成不好的用户体验。而平滑重启是重启服务配置,保留正在使用的用户。 命令: kill -HUP(或-1)
进程号
kill
一次只能杀死一个进程。但是一个服务经常会开启很多进程(比如httpd
,每登陆一个用户就会增加一个进程),因此一个个进程关闭太麻烦,可能就要用到killall
或者 pkill
可以批量杀死同一类型的进程
2、killall
命令:
killall
[选项] [信号]进程名
按照进程名杀死进程,可以批量杀死同一类型的进程
选项:
--> -i:交互式,询问是否要杀死某个进程
--> -I:大小的i,忽略进程名的大小写
3、pkill
命令
pkill [选项] [信号] 进程名
按照进程名终止进程,可以批量杀死同一类型的进程
选项:
--> -t
终端号:按照终端号踢出用户
案例: 踢出登录用户
w #查看当前登陆用户的用户 TTY列为终端号 按照终端号杀死进程 pkill -9 -t tty1 只有超级用户才能剔除用户
二、工作管理
2.1 工作管理方法
2.1.1 把进程放入后台
tar -zcf etc.tar.gz /etc & #在命令后加个&,把命令放在后台执行 top #ctrl+z放在后台暂停
2.1.2 查看后台的工作
jobs [-l] -l:显示工作的PID +代表最后一个放入的进程 -代表倒二个放入的进程
2.1.3 fg %
工作号 #把后台暂停的工作回复到前台执行
2.1.4 bg %
工作号 #把后台暂停的工作回复到后台执行
注1:%
可以省略,但要注意工作号和PID
的区别。
注2:后台恢复执行的命令,是不能和前台有交互的,否则不能恢复到后台执行
top、vi
之类放在后台也是暂停的,因为一个需要用户来查看进程健康状态,一个需要用户写入
压缩、解压缩、cp、mv、find
之类可以放在后台
所以,想要让这个命令在后台运行,首先,不能与用户有交互。其次,它要运行一段时间。
2.2 后台命令脱离终端运行
背景:把命令放入后台执行,只能在当前登录的终端执行,一旦用户退出当前终端 后台程序就会停止
相当于:后台执行的命令和当前终端绑定了
当用户logout
时,会向该用户终端下所有 进程发送SIGHUP
信号
(守护进程
damon进程开机运行,某一个用户退出终端不影响该程序的运行
)
后台命令脱离登陆终端执行的方法(不随登录终端的退出而终止)
・第一种方法:把需要后台执行的命令加入 `/etc/rc.local`文件(开机自动执行) ・第二种方法:使用系统定时任务,让系统在指定的时间执行某个后台命令 ・第三种方法:使用`nohup`命令
nohup 命令 &
示例
nohup /root/for.sh &
#用绝对路径
三、系统资源查看
3.1 vmstat
命令监控系统资源
vmstat
[刷新延时 刷新次数]
例:vmstat 1 3
3.2 dmesg
开机时内核检测信息
dmesg | grep cpu
3.3 free
命令查看内存使用状态
free [-m][-g] -m :以MB为单位显示 -g :以GB为单位显示(不满1g时显示精度丢失)
3.4 查看cpu信息
cat/proc/cpuinfo
3.5 uptime与w命令
-#显示系统的系统时间,平均负载,当前登录用户数
,即top
命令的第一行(top
命令耗费资源)w
命令侧重用户信息的显示,显示了终端号ip
,平均负载等
3.6 查看系统与内核相关信息
uname
[选项]
选项:
-a :查看系统所有相关信息
-r :查看内核版本
-s :查看内核名称
小技巧:如何判断系统是32位还是64位
file /bin/ls
注:64
位cpu
仍可以安装32
位系统,不能通过cpu
位数来判断
3.7 查看发行版信息
rpm -q centos-release
3.8 列出进程打开或使用的文件信息
lsof [选项]
选项:
-c 字符串 :只列出以字符串开头的进程打开文件
-u 用户名 :只列出某个用户的进程打开的文件
-p pid : 列出某个pid进程打开的文件