Skip to content

系统管理常用命令

网络管理

网络状态查看工具

  • ifconfig 1745135653538

网络故障排除命令

主机相关

  • ping 检测到目标主机是否畅通
  • traceroute 检测当前主机和目标主机的状况, 追求服务器的每一跳的状况
  • mtr 检测当前主机和目标主机的状况, 检查当前主机和目标主机中间是否有数据包丢失(比traceroute 全面, 建议使用这个)
  • nslookup 查看域名对应ip 1745135663790

端口相关

  • telnet 检查端口连接状态
  • tcpdump 分析数据包, 抓包工具
tcpdump -i any -n host 192.168.0.1 and port 80 -w /tmp/filea.txt
表示抓取192.168.0.1:80来的任意的包并保存到filea
  • netstat
netstat -ntpl
n表示显示ip而不是域名
t表示只显示tcp
p表示显示对应的进程
l表示tcp的监听状态

17451356963541745135700121

网络管理和配置文件

1745135704200 网络配置文件

  • ifcfe-eth0
  • /etc/hosts

软件安装

rpm包以及rpm命令

1745135774258

相关命令:
rpm命令常用参数:
-q 查询
-i 安装
-e 卸载

示例:
rpm -qa | more 查看所有安装的软件包, 管道符+more表示分页显示
rpm -q xxx 查看具体的软件包
rpm -e xx1 xx2 卸载多个软件包

yum仓库

rpm包的问题:

  • 需要自己解决依赖问题
  • 软件包来源不可靠

centOs yum源 http://mirror.centos.org/

国内镜像 https://developer.aliyun.com/mirror/http://mirrors.aliyun.com/centos/

更改yum源为国内镜像:(参照 https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11n2Cev4)
1.备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2. 下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/           
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
3. 运行 yum makecache 生成缓存
4. 使用 yum repolist查看源信息

1745135805057

yum常用命令:
删除软件:yum remove AAA-x.x.x.rpm或者yum erase foo-x.x.x.rpm
升级软件:yum upgrade AAA或者yum update AAA
查询信息:yum info AAA
搜索软件(以包含foo字段为例):yum search AAA
显示软件包依赖关系:yum deplist AAA
 
   -q 静默执行 
   -t 忽略错误
  -R[分钟] 设置等待时间
  -y 自动应答yes
  --skip-broken 忽略依赖问题
  --nogpgcheck 忽略GPG验证
 
  check-update 检查可更新的包
  clean all    清除全部[缓存]
  clean packages 清除临时包文件(/var/cache/yum 下文件)
  clean headers  清除rpm头文件
  clean oldheaders 清除旧的rpm头文件
  deplist 列出包的依赖
  list 可安装和可更新的RPM包
  list installed 已安装的包
  list extras 已安装且不在资源库的包
  info 可安装和可更新的RPM包 信息
  info installed 已安装包的信息(-qa 参数相似)
  install[RPM包] 安装包
  localinstall 安装本地的 RPM包
  update[RPM包] 更新包
  upgrade 升级系统
  search[关键词] 搜索包
  provides[关键词] 搜索特定包文件名
  reinstall[RPM包] 重新安装包
  repolist 显示资源库的配置
  resolvedep 指定依赖
  remove[RPM包] 卸载包
    makecache  生成缓存

源代码编译安装

1745135824971

进程管理

进程的概念与进程查看

1745135842434 查看命令

ps
pstree
top

1745135854824

守护进程和系统日志

nohup命令

使进程忽略hangup(挂起)信号,此时关闭终端进程会依然在后台运行, 进程输出会写到nohup.out中见下图

示例:
nohup tail -f /var/log/messages &

1745135875785

screen工具

在终端操作时,可以先进入screen执行命令,万一网络终端并不影响screen中命令的执行, 下次再连接终端可以通过命令再进入screen

安装screen:
yum install screen
进入screen:
screen
进入screen:
ctrl+a 按d退出
查询现有的screen会话:
screen -ls
恢复screen:
screen -r sessionId

系统日志

/var/log/下的日志文件需要重点关注的有以下 messages--系统的常规日志 dmesg--系统内核运行相关信息 secure--系统安全日志 cron--周期性任务的执行信息

服务管理工具systemctl

服务集中管理工具有service和systemctl, systemctl命令更加清晰,service都逐步升级为systemctl了 service脚本的位置在/etc/init.d/下 systemctl脚本的位置在/usr/lib/systemd/system/下 1745135933510

补充:比如添加一个a.service, 要求在此服务之前启动, 脚本如下: 1745135940900


内存和磁盘管理

查看内存

top命令, 略

free命令

如下图单位转换时会把小数位干掉, 因此若系统只有几G内存, 建议用free -m 其中available是指buff/cache全部释放掉, 还有多少内存可以用, 所以判断内存够不够用,直接看available 1745135973239

查看磁盘

查看磁盘

fdisk -l
parted -l
df -h 这个用的多

1745135994618