Linux 服务器运维常用命令大全
Linux 服务器运维常用命令大全
目录
- Linux 服务器运维常用命令大全
- 1. 基础命令
- 1.1 文件与目录操作
- 2. 用户管理
- 3. 权限管理
- 4. 进程管理
- 5. 网络管理
- 6. 磁盘管理
- 7. 服务管理(Systemd)
- 8. 日志管理
- 9. 软件管理(基于不同发行版)
- Debian/Ubuntu 系列(APT)
- CentOS/RedHat 系列(YUM/DNF)
- 10. 任务调度(crontab)
- 11. 远程管理
- 12. 防火墙管理(iptables & firewalld)
- iptables
- firewalld(CentOS 7+)
- 13. SELinux 管理
- 14. 系统性能监控
- 15. 其他实用命令
- 结语
1. 基础命令
1.1 文件与目录操作
ls -l
:列出文件详细信息ls -a
:显示隐藏文件cd /path/to/directory
:切换目录pwd
:显示当前目录路径mkdir dirname
:创建目录rm -rf dirname
:删除目录及其内容cp -r source destination
:复制文件或目录mv source destination
:移动或重命名文件find / -name filename
:查找文件du -sh dirname
:查看目录大小df -h
:查看磁盘空间
2. 用户管理
whoami
:显示当前用户who
:列出所有登录用户id username
:显示用户UID和GIDuseradd username
:创建用户passwd username
:修改用户密码usermod -aG groupname username
:将用户添加到组userdel -r username
:删除用户及其主目录groupadd groupname
:创建用户组groupdel groupname
:删除用户组
3. 权限管理
chmod 755 filename
:修改文件权限chown user:group filename
:更改文件所属用户和组umask 022
:设置默认权限ls -l
:查看文件权限
4. 进程管理
ps aux
:查看所有进程top
/htop
:实时监控进程kill PID
:终止进程killall processname
:杀死所有同名进程pkill processname
:按名称终止进程nice -n 10 command
:设置进程优先级
5. 网络管理
ip a
:查看网络接口ifconfig
:查看IP地址(已过时,推荐使用ip a
)ping -c 4 hostname
:测试网络连通性netstat -tulnp
:查看网络端口使用情况ss -tulnp
:替代netstat
的命令,查看端口信息traceroute hostname
:跟踪网络路由nslookup domain
:查询域名解析dig domain
:查询域名信息
6. 磁盘管理
fdisk -l
:列出磁盘信息mkfs.ext4 /dev/sdX
:格式化磁盘mount /dev/sdX /mnt
:挂载磁盘umount /mnt
:卸载磁盘fsck /dev/sdX
:检查磁盘错误
7. 服务管理(Systemd)
systemctl start service
:启动服务systemctl stop service
:停止服务systemctl restart service
:重启服务systemctl enable service
:设置开机启动systemctl disable service
:禁用开机启动journalctl -xe
:查看服务日志
8. 日志管理
cat /var/log/syslog
:查看系统日志cat /var/log/auth.log
:查看认证日志dmesg | tail
:查看内核日志tail -f /var/log/messages
:实时监控日志
9. 软件管理(基于不同发行版)
Debian/Ubuntu 系列(APT)
apt update
:更新软件源apt upgrade
:升级所有软件包apt install package
:安装软件apt remove package
:卸载软件dpkg -i package.deb
:安装.deb
包
CentOS/RedHat 系列(YUM/DNF)
yum update
或dnf update
:更新软件包yum install package
或dnf install package
:安装软件yum remove package
或dnf remove package
:卸载软件
10. 任务调度(crontab)
crontab -e
:编辑定时任务crontab -l
:列出所有定时任务crontab -r
:删除所有定时任务*/5 * * * * command
:每 5 分钟执行一次命令
11. 远程管理
ssh user@host
:连接远程服务器scp file user@host:/path
:上传文件scp user@host:/path/file .
:下载文件rsync -avz source destination
:同步文件ssh-keygen
:生成SSH密钥ssh-copy-id user@host
:复制SSH密钥
12. 防火墙管理(iptables & firewalld)
iptables
iptables -L -n
:查看规则iptables -A INPUT -p tcp --dport 80 -j ACCEPT
:允许80端口iptables -D INPUT 1
:删除第一条规则service iptables save
:保存规则
firewalld(CentOS 7+)
firewall-cmd --list-all
:查看所有规则firewall-cmd --add-port=80/tcp --permanent
:开放80端口firewall-cmd --reload
:重新加载防火墙配置
13. SELinux 管理
getenforce
:查看SELinux状态setenforce 0
:临时关闭SELinuxvi /etc/selinux/config
:永久关闭(修改SELINUX=disabled
)
14. 系统性能监控
uptime
:查看系统运行时间free -m
:查看内存使用情况vmstat 2
:每2秒刷新一次系统状态iostat -x 2
:查看CPU和磁盘I/Osar -u 2 5
:每2秒查看5次CPU使用情况
15. 其他实用命令
alias ll='ls -lh'
:创建命令别名history | grep command
:搜索历史命令echo $PATH
:查看环境变量export PATH=$PATH:/new/path
:临时添加环境变量tar -czvf archive.tar.gz directory
:压缩目录tar -xzvf archive.tar.gz
:解压文件zip -r archive.zip directory
:压缩为ZIPunzip archive.zip
:解压ZIP
结语
掌握以上Linux命令后,你可以更高效地管理服务器,提高运维能力。在实际工作中,也需要不断学习新技术,优化系统性能,并根据具体需求调整配置。