**记录学习,记录成长
2.4 高级指令
1.hostname 指令
作用:操作服务器的主机名 【读取,设置】
语法1:#hostname 【输出完整的主机名】
语法2:#hostname -f 【输出当前主机名的FQDN,全限定域名】
语法3:#hostname newname 【将主机名临时重命名为newname,重启后会复原】
2.id 指令
作用:用于查看用户的基本信息 【包含了用户id,用户组id,附加组id等】
语法1:#id 【默认显示当前执行该用户命令的基本信息】
语法2:#id 用户名 【显示指定用户的基本信息】
3.whoami 指令
作用:显示当前登录的用户名。 【用于获取当前操作的用户名,方便记录日志。】
语法:#whoami
4.ps -ef 指令 (重点)
指令:ps
作用:主要用于查看服务器的进程信息
选项含义:
-e:表示列出全部进程
-f :表示显示全部的列 【即全字段显示】
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 03:47 ? 00:00:03 /sbin/init
root 2 0 0 03:47 ? 00:00:00 [kthreadd]
说明:
UID:用户ID PID: 进程ID PPID:父级进程ID C:CPU占用率,形式是百分比
STIME: 进程启动时间
TTY :终端设备,发起该进程的设备识别符号,如果显示问号,则进程并不是由终端设备发起。
TIME:进程执行时间
CMD:该进程名称或者对应的路径
如果一个程序的父级进程找不到,该程序的进程成之为僵尸进程 【可以使用kill沙雕】
结合 grep 命令可找出想要查看的进程状态。
#ps -ef | grep 进程名称 【至少会找到一个,想想为啥?】
因为 grep 也是相关进程
5.top指令
作用:查看服务器的进程所占资源
语法;
进入命令 :#top 【实时刷新,动态显示】
退出命令 :按下 q键
PID:进程ID USER:该进程所对应的用户 PR:priority 优先级
NI:nice 用户进程空间内改变过优先级所占CPU百分比(即优化之后的百分比)
VIRT:虚拟内存 RES:常驻内存 SHR:共享内存。
S:表示进行的状态(sleeping,其中s表示睡眠,R表示运行)
%CPU:表示CPU占用百分比 %MEM:表示内存占用百分比
TIME+:执行时间 COMMAND:进程的名称或者路径
计算一个进程实际使用的内存=常驻内存(RES)-共享内存(SHR)
在运行top的时候,可以使用的快捷键:
M 按照内存占用开始降序排序
P 按照CPU使用率按照降序排序
1 当服务器拥有多个CPU时,可以使用1 快捷键来切换是否展开显示各个CPU的详细信息。
(本机只有一个,所以按下前后差别不太大)
6.du -sh 指令
作用:查看目录的真实大小
语法:#du -sh 目录路径
选项含义:
-s 只显示汇总大小 (summaries)
-h 表示以较高可读性形式进行显示
[root@user Desktop]# du -s /home
29764 /home
[root@user Desktop]# du -h /home
4.0K /home/ckantian/Music
4.0K /home/ckantian/Videos
...
...
[root@user Desktop]# du -sh /home
30M /home
7.find 指令
作用:用于查找文件 【参数很多,记住常用的就好】
语法1:#find 路径范围 选项 选项值
选项:
-name 按照文档名称进行搜索,支持模糊搜索
-type 按照文档类型进行搜索
文档类型:“f”表示文件,“d”表示文件夹
[root@user Desktop]# find /home -name *c 【* 表示通配符】
/home/ckantian/Music
/home/ckantian/.config/enchant/en_US.dic
...
[root@user Desktop]# find /home -type f
/home/ckantian/.gnupg/gpg.conf
/home/ckantian/.gnupg/trustdb.gpg
...
注:可以搜索出隐藏文件 隐藏目录 【但只能搜索自己权限之内的东西,root可】
8.service 指令 (重点)
作用:用于控制一些软件的服务。启动、停止、重启
语法:#service 服务名 start/stop/restart
可用 ps 命令查看是否启动成功
#ps -ef | grep httpd
9、kill指令(重点)
作用:表示杀死进程 【当遇到僵尸进程或者想要关闭某些进程时】
语法 #kill 进程PID 【 需要配合 ps 使用】
killall指令
语法:#killall 进程名称
[root@user Desktop]# service httpd start 【启动httpd服务】
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using ::1 for ServerName
[ OK ]
[root@user Desktop]# ps -ef |grep httpd 【查看启动后的进程】
root 3678 1 0 21:15 ? 00:00:00 /usr/sbin/httpd
apache 3681 3678 0 21:15 ? 00:00:00 /usr/sbin/httpd
apache 3682 3678 0 21:15 ? 00:00:00 /usr/sbin/httpd
apache 3683 3678 0 21:15 ? 00:00:00 /usr/sbin/httpd
...
[root@user Desktop]# kill 3678 【杀死3678进程】
[root@user Desktop]# ps -ef | grep httpd 【查看杀死之后的结果】
root 3693 3474 0 21:16 pts/0 00:00:00 grep httpd
[root@user Desktop]# service httpd start 【启动httpd服务】
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using ::1 for ServerName
[ OK ]
[root@user Desktop]# killall httpd 【杀死httpd集成】
[root@user Desktop]# ps -ef |grep httpd 【查看杀死进程结果】
root 3724 3474 0 21:17 pts/0 00:00:00 grep httpd
10、ifconfig指令 (重点)
简单语法:#ifconfig (获取网卡信息)
11.reboot 指令
作用:重新启动计算机
语法1:#reboot
语法2:#reboot -w 模拟重启,但是不重启。【会记录关机与开机的日志信息,一般用于测试】
12.shutdown 指令
作用:关机 【服务器要小心,慎用!!】
语法:shutdown -h now “关机提示” 或者 shutdown -h 15:25 【 定时关机】
设置linux系统关机时间在 10:00
#shutdown -h 10:00 “系统将在12:00关机,请保存好你的文档”
取消关机计划:
centos 7.x之前的版本,ctrl+c 取消
centos7.x(包括)之后的版本 #shutdown -c
注:除了shutdown命令,还有 #init 0 #halt #poweroff
13.uptime指令
作用:输出计算机的持续在线时间【计算机从开机以来,到现在运行的时间】
#uptime
14.uname指令
作用:获取计算机系统的相关信息
语法1:#uname 用于获取操作系统的类型
语法2:#uname -a all 表示获取全部的系统信息
【类型,全部主机名,内核版本(主要看内核版本),发布时间,开源计划】
15、netstat -tnlp指令
作用:查看网络的连接状态
语法:#netstat -tnlp
选项说明
-t 表示只列出 tcp 协议连接
-n 表示将地址从字母组合转化成ip地址,将协议转化成端口号来显示 【显示得更美观】
-l 表示过滤出 “state(状态)” 列中其值为 “listen”(监听)的
-p 表示显示发起连接的进程pid和进程名称
[root@user Desktop]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 2094/rpcbind
tcp 0 0 0.0.0.0:54738 0.0.0.0:* LISTEN 2151/rpc.statd
....
16.man指令
作用:manual 手册 【包含了linux中全部命令手册】
#man 命令 【按q退出】
例如:#man cp