Linux系统高级指令

su root切换到root用户权限下

1. hostname 操作服务器的主机名(读取,设置)
语法1: hostname 输出完整的主机名
语法2: hostname -f 表示当前电脑的FQDN(全限定域名)
2. id 指令
作用:查看一个用户的基本信息(包含用户id , 用户组id, 附加组id),不指定则默认为当前用户
uid gid 组
id 用户名 显示指定用户的基本信息
验证信息是否正确,验证用户信息,通过/etc/passwd;
验证用户组信息,通过/etc/group

3. whoami 显示当前登陆的用户名,一般用于shell脚本,用于获取当前操作的用户名,为了方便记录日志
日志收集通过shell脚本去收集
4. ps -ef(重点)
指令:ps
作用:主要是查看服务器的进程信息(在Windows系统中通过任务管理器进行查看)
选项含义:-e 等价于‘-A’,显示全部的进程信息
-f 显示全部的列(显示全字段)

Linux系统高级指令
UID: 该进程执行的用户ID;
PID : 进程ID;
PPID:该进程的父级进程,如果一个程序的父级进程找不到的话,这个进程就是僵尸进程(zombie 僵尸)。
C: CPU的占有率,其形式是百分数;
STIME: 进程的启动时间;
TTY:终端设备,发起该进程的设备识别符号,如果显示问号,则代表该进程不是由终端设备发起;
TIME:该进程的执行时间
CMD:该进程对应的名称,或者应有的路径

例子:在ps的结果中,过滤出想要查看的进程状态
指令: ps -ef | grep 进行名称

5. top 查看服务器进程占的资源
作用: 查看服务器进程占的资源
语法: 进入命令 top (动态显示) 退出命令 q
Linux系统高级指令
表头含义:
PID:进程ID;
PR:优先级,优先级越大,进程排队的时候,就会往前面排;
VIRT: 虚拟内存;
RES; 常驻内存;
SHR:共享内存;
计算一个进程实际使用的内存 = 常驻内存RES - 共享内存 SHR
S:表示进行的状态(sleeping,其中S表示睡眠,R表示运行)
%CPU: 表示CPU的占用百分比
%MEM:表示内存占用的百分比
TIME+ : 执行时间
COMMAND: 进程的名称或者路径

比如Google chrome 运行时,
虚拟内存: 向服务器申请了500MB内存, 实际使用了320MB, 此时虚拟内存就是500MB
常驻内存: 向服务器申请了500MB内存, 实际使用了320MB, 此时常驻内存就是320MB
共享内存: 向服务器申请了500MB内存, 实际使用了320MB, 但是其中还包含对其他进程的调用开销则需要扣除。

运行top时的方便快捷键:
M:表示将结果按照内存(MEM)从高到低进行降序排列
P:表示将结果按照CPU占有率从高到底进行降序排列
1:当服务器拥有多个CPU核心时,可以使用1快捷键来切换是否展示显示各个CPU的详细信息

6. du -sh 查看目录的真实大小
选项含义: -s : summaries 只显示汇总的大小
-h : 表示以高可读的形式进行显示
7. find 用于查找文件
语法: find 路径范围 选项 选项的值
选项: - name :按照文档名字进行搜索(支持模糊搜索)
- type: 按照文档的类型进行搜索
文档类型:“-"表示文件(在使用find的时候需要用f来替换),‘d’表示文件夹
everything.exe Windows系统下的搜索小工具

搜索/etc 文件夹下面 以.conf为后缀的文件有多少个
Linux系统高级指令
**8. service **
作用: 用于控制一些软件的服务/启动/停止/重启
语法; service 服务名 start/stop/restart
通过 ps -ef | grep 服务名 来检测服务有无启动

9. kill 杀死进程
kill 进程PID 需要配合ps 使用
killall 进程名称

10. ifconfig 获取网卡信息
Linux系统高级指令
上图有两块网卡的信息,lo (loop 本地回环网卡,其IP地址一般都为127.0.0.1)是一个网卡名称;Eth0是Linux中的一个网卡,virbr0是其名称。
本机想访问本机就用127,如果其他电脑想访问就用192的
不在同一个网段访问不了,可以用NAT,或者改成桥接。

11. reboot 重启计算机
reboot -w 模拟重启,但是不重启 (用于只写关机与开机的日志,做测试用)

12. shutdown 作用:关机,慎用
在window系统上面大家有时候觉得网络不行,就会把一个网卡禁用掉在开启,但是这种操作不能用到服务器上。
语法1 : shutdown -h now “关机提示” 或者 shutdown -h 15:25
语法2: shutdown -c centOS7.0版本之后取消关机
ctrl + c 7.0版本之前取消关机
#init 0
#halt
#poweroff

也都可以关机

13. uptime 输出计算机从开机到现在的运行时间
Linux系统高级指令
load average,代表负载情况,负载越大,计算机压力越大
top 看负载,这个命令主要看up之后的内容

14. uname 获取操作系统的相关信息
uname -a 完整的操作系统的信息(类型,全部主机名,内核版本,发布时间,开源计划)
Linux系统高级指令
里面清晰显示了系统的内核版本,以及加入了GNU计划,表明该系统开源

15. netstat -tnlp 查看网络连接状态
Linux系统高级指令
选项说明:
-t 表示指列出tcp 协议的连接
-n 表示将地址从字母组合转化为ip地址,将协议转换成端口号来显示
-l 表示过滤出"state (状态)" 列出其值为LISTEN(监听)的连接。
-p 显示对应的发起连接的进程pid和进程名称。

16. man mannual,Linux中的全部操作手册
recursive 递归的

补充:如何在命令行删除光标前/后的内容,前:ctrl+u 后:ctrl + k
如何删除/tmp 下所有A开头的内容 rm -f /tmp/A*
如何删除/tmp下面的所有文件 rm -rf /tmp/* (注意,-r 代表递归删除,只删除/tmp下面的文件,不删除其本身,所以要加星号)
如何重备份/etc/passwd到/tmp目录下 cp /etc/passwd /tmp/passwd
或者 cp/etc/passwd /tmp/
如何查看系统最后创建的三个用户? tail -3 /etc/passwd 用户信息在/etc/passwd
如何统计当前系统中一共有多少个账户? wc -l /etc/passwd 或者 cat /etc/passwd | wc -l
如何一次性的创建目录/text/1/2/3? mkdimar -p /text/1/2/3 -p是代表没有父目录,然后依次建立其目录结构
如何查看/etc 所占的磁盘空间? du -sh /etc