CPU信息
more /proc/cpuinfo
内存及交换分区的使用情况
free -h
清理内存
echo 1 > /proc/sys/vm/drop_caches
::freemem.sh
#!/bin/bash
used=`free -m | awk 'NR==2' | awk '{print $3}'`
free=`free -m | awk 'NR==2' | awk '{print $4}'`
echo "================================================" >> /var/log/mem.log
date >> /var/log/mem.log
echo "Memory usage | [Use: ${used}MB][Free: ${free}MB]" >> /var/log/mem.log
if [ $free -le 100 ]; then
sync && echo 1 > /proc/sys/vm/drop_caches
sync && echo 2 > /proc/sys/vm/drop_caches
sync && echo 3 > /proc/sys/vm/drop_caches
echo "OK" >> /var/log/mem.log
else
echo "Not required" >> /var/log/mem.log
fi
将脚本添加到crond任务,定时执行。
echo "*/30 * * * * root /dir/freemem.sh" >> /etc/crondtab
一般情况下,应用在系统上稳定运行了,free值也会保持在一个稳定值的,虽然看上去可能比较小。
生产环境下的服务器可以不考虑手工释放内存,这样会带来更多的问题。内存是拿来用的,不是拿来看的;不像windows。
如果常常swap用很多,可能你就要考虑加物理内存了,这也是linux看内存是否够用的标准。
磁盘的使用情况
df -h
IP及网卡信息
ifconfig
ip a s // 所有网卡信息
ip -s link show e***
网络连接服务及端口
netstat -h
netstat -nulp // UDP
netstat -ntlp // TCP
动态查看进程信息
指令 | 参数 | 备注 |
---|---|---|
top | -d 1 | 界面刷新 |
-p pid | 直接查看指定进程 | |
P | cpu排序 | |
M | 内存排序 | |
1 | 多核cpu情况 | |
c | 显示整个命令行 | |
x | 当前排序列 | |
b | 加亮效果 | |
根据进程名称模糊查找进程信息
ps -ef|grep ***.dll
显示单个进程状态
top -p [pid]
记录1分钟内的服务器运行状态
top -b -d 1 -n 60 >/home/cpu.txt
消耗最大内存的进程信息
ps -eo pid,ppid,%mem,%cpu,comm --sort=-%mem | head
杀死进程
kill -9 pid
编译安装libgdiplus
Linux build
./autogen.sh --prefix=/usr
make
下载安装包
http://download.mono-project.com/sources/libgdiplus/libgdiplus0-6.0.5.tar.gz
permission denied
chmod a+x autogen.sh
缺少依赖文件
yum install libgif-dev autoconf libtool automake build-essential gettext libglib2.0-dev libcairo2-dev libtiff-dev libexif-dev
退出系统
exit
创建多级目录并赋权限
mkdir -m 777 test -p test/test1
删除文件及目录
rm -f 1.jpg // 默认删除文件
rm -ir test // 确认删除文件夹
rm -rf test // 直接删除文件夹
查看服务
查看指定服务(比如SSH)是否安装及运行情况
rpm -qa | grep ssh // 查看安装包
ps -ef | grep ssh // 查看是否安装成功
service sshd start // 开启服务
grep Port /etc/ssh/sshd_config // 服务端口号
防火墙操作
firewall-cmd --state // 查看默认防火墙状态(running开启)
firewall-cmd --zone=public --add-port=3306/tcp --permanent // 为3306端口添加例外
firewall-cmd --reload // 重启
firewall-cmd --list-all // 查看
systemctl restart firewalld // 重启
systemctl stop firewalld // 关闭
systemctl enable firewalld // 设置开机启动
systemctl disable firewalld // 禁止开机启动
/etc/init.d/iptables stop // 禁用防火墙配置
解压文件
tar xzf XXX.tar.gz