一、查询服务器端口使用情况:
- ss -tulnp | grep :端口号
- lsof -i :端口号
二、查询软件依赖包
yum provides `which xxx`
三、启动虚拟机作为路由
添加配置:net.ipv4.ip_forward = 1 > /etc/sysctl.conf
启用:sysctl -p
四、函数相关
函数递归需要设定结束的条件防止死循环
local 函数内定义的本地变量,只在函数中生效
return 设定返回值并且可以提前结束函数
五、间接变量引用高级例子
var函数 :
local var本地位置变量为$1 三次引用结果为 1 ,2, 3
${!var}为间接引用 ,所以:
第一次引用结果为$1 ="$1"=1
第二次引用结果为$1 =“$2”=a
第三次引用结果为$1 =“$3”=b
六、系统平均负载
uptime 负载查询
load average: 0.00, 0.00, 0.00
分别为1分钟、5分钟、15分钟系统平均负载
一般不超过1,超过5建议警报
七、性能工具
进程:ps; pstree;prtstat
CPU:top;mpstat
内存:free;pmap;vmstat
磁盘IO:iotop ;dstat
网络IO:iftop;nload;nethogs
综合监控:glances
八、信号管理
kill:
- 1, SIGHUP 无须关闭进程而让其重读配置文件
- 2,SIGINT 中止正在运行的进程;相当于Ctrl+c
- 3,SIGQUIT 相当于ctrl+\
- 9, SIGKILL 强制杀死正在运行的进程,可能会导致数据丢失,慎用!
- 15, SIGTERM 终止正在运行的进程,默认信号
- 18, SIGCONT 继续运行
- 19, SIGSTOP 后台休眠
九、作业管理
jobs:查看当前终端所有作业
bg:前台切换到后台运行
fg:后台切换到前台运行
cmd &:后台并行处理
十、任务计划
at :一次性任务
crontab :周期性任务
*(分) *(小时) *(天) *(月) *(星期) cmd 如果不是内部命令注意写路径或加载PATH变量
十一、开机启动文件
Centos6及以下版本
Cento7及以上版本 、Ubuntu
/usr/lib/systemd/system # 每个服务最主要的启动脚本设置,类似于之前的 /etc/init.d//lib/systemd/system #ubutun 的对应目录 , 兼容于 CentOS7,8 和 Ubuntu/run/systemd/system # 系统执行过程中所产生的服务脚本,比上面目录优先运行/etc/systemd/system # 管理员建立的执行脚本,类似于 /etc/rcN.d/Sxx 的功能,比上面目录优先运行
十二、设置内核参数
编写文件 /etc/sysctl.conf
在里面设置内核参数
例如:“net.ipv4.ip_forward =1”