CentOS 常见命令指南
CentOS(Community ENTerprise Operating System)作为一个基于Red Hat Enterprise Linux(RHEL)的开源操作系统,广泛应用于服务器领域。掌握CentOS的常用命令对于运维开发工程师而言至关重要,它能够帮助我们高效地管理系统、部署服务、排查问题。本文将概述一些CentOS中最常用的命令,包括文件操作、系统管理、网络配置、软件安装与更新等方面,旨在为初学者和经验丰富的工程师提供一份实用的参考指南。
一、文件与目录操作
1. 切换目录
cd [目录]:切换当前工作目录到指定目录。cd ~或cd:回到用户主目录。
2. 查看当前目录
pwd:显示当前工作目录的完整路径。
3. 列出目录内容
ls:列出当前目录的内容。ls -l:以长格式列出,包含文件权限、大小、修改日期等信息。ls -a:显示所有文件,包括隐藏文件(以.开头的文件)。
4. 创建与删除目录
mkdir [-p] 目录名:创建一个或多个目录。使用-p参数可以递归创建多级目录。rmdir 目录名:删除空目录。rm [-rf] 文件/目录:删除文件或目录。使用-r递归删除,-f强制删除,不提示确认。
5. 复制与移动文件/目录
cp [-r] 源 目标:复制文件或目录。使用-r递归复制目录。mv 源 目标:移动或重命名文件/目录。
二、文件查看与编辑
6. 查看文件内容
cat 文件名:显示整个文件内容。less 文件名:分页查看文件内容,支持前后翻页。head [-n 数量] 文件名:显示文件的前几行,默认10行。tail [-n 数量] 文件名:显示文件的后几行,默认10行,常用于监控日志文件。
7. 文本编辑器
vi/vim 文件名:强大的文本编辑器,分为命令模式、插入模式和底线命令模式。- 命令模式:打开文件后默认在此模式,可输入
:wq保存并退出,:q!不保存退出。 - 插入模式:按下
i键进入,可编辑文件内容。 - 底线命令模式:在命令模式下输入冒号(
:)进入,进行文件保存、查找替换等操作。
- 命令模式:打开文件后默认在此模式,可输入
三、系统信息与管理
8. 查看系统信息
uname -a:显示内核名称、主机名、内核版本等详细信息。hostname:显示或设置主机名。top或htop(需安装):实时显示系统资源占用情况,包括CPU、内存使用情况及各进程信息。
9. 系统状态监控
free -m:查看内存使用情况,以MB为单位。df -h:查看磁盘空间使用情况,-h参数表示以易读格式显示。du -sh 目录:估算指定目录所占磁盘空间大小。
10. 用户与权限管理
useradd 用户名:添加新用户。passwd 用户名:为用户设置或更改密码。sudo:允许特定用户以超级用户权限执行命令。chmod 权限 文件/目录:修改文件或目录权限。chown 用户:组 文件/目录:改变文件或目录的所有者和所属组。
四、软件包管理
11. YUM(Yellowdog Updater Modified)
YUM是CentOS中常用的包管理工具,用于安装、更新、卸载软件包。
yum install 软件包名:安装软件包。yum update:更新系统中的所有软件包。yum remove 软件包名:卸载软件包。yum search 关键词:搜索相关的软件包。
12. DNF(Dandified Yum)
DNF是CentOS 8及以上版本中替代YUM的新一代包管理器,用法与YUM相似但更加强大。
- 替换上述YUM命令中的
yum为dnf即可,如dnf install 软件包名。
五、网络配置与管理
13. 查看网络状态
ip addr或ifconfig(需安装):显示网络接口的IP地址、子网掩码等信息。ping 目标地址:测试与目标地址的网络连接。
14. 配置网络
- 编辑网络配置文件,如
/etc/sysconfig/network-scripts/ifcfg-eth0(以太网接口示例),然后重启网络服务:systemctl restart network
或在较新版本中使用NetworkManager:
nmcli connection modify "连接名" ipv4.addresses "IP/子网掩码" ipv4.gateway "网关IP"
nmcli connection up "连接名"
六、进程管理
15. 查看与管理进程
ps aux:显示所有正在运行的进程。kill [信号] 进程ID:发送信号给进程,常用来终止进程。默认信号为SIGTERM,可使用-9发送SIGKILL强制终止。nohup 命令 &:使命令在后台运行,并在用户退出终端后继续运行。jobs:查看后台作业。fg %job编号:将后台作业调至前台运行。
七、计划任务
16. cron定时任务
- 编辑用户的crontab文件:
crontab -e
例如,每天凌晨1点执行备份脚本:分 时 日 月 周 命令0 1 * * * /path/to/backup_script.sh
结语
CentOS提供了丰富而强大的命令行工具,熟练掌握这些命令是运维开发工程师的基本功。本文覆盖了从基本的文件操作到系统管理、网络配置、软件包管理等多个方面,希望能够作为您日常运维工作的得力助手。随着实践的深入,不断探索和学习更多高级功能和技巧,将进一步提升您的工作效率和系统管理能力。