CentOS是一款基于RHEL(Red Hat Enterprise Linux)的开源操作系统,广泛应用于服务器领域。掌握一些基本的Linux命令对于日常管理和维护CentOS系统至关重要。本文将介绍几个常用的CentOS命令,以及相关的问题、使用技巧和避免错误的方法。
ls
:列出目录内容ls
命令用于显示当前目录的内容。常见的选项有-l
(长格式)、-a
(显示隐藏文件)和-h
(以人类可读的格式显示文件大小)。
ls
不会显示以.
开头的隐藏文件。ls -lah # 列出所有文件,包括隐藏文件,以长格式并人性化显示大小
cd
:切换目录cd
命令用于切换工作目录。
cd
命令会失败。cd .. # 回到上一级目录
cd ~ # 回到用户主目录
mkdir
:创建目录mkdir
用于创建新的目录。
mkdir -p my/new/directory # 一次性创建多级目录
rm
:删除文件或目录rm
命令用于删除文件或目录。-rf
选项强制删除,即使文件被锁定或目录非空。
rm
操作不可逆,删除的文件无法恢复。rm -i file.txt # 删除前确认
rm -rf directory # 强制删除目录,但请谨慎使用
grep
:搜索文本grep
用于在文件或输出中查找匹配的文本。
grep
区分大小写。grep "pattern" file.txt # 在file.txt中搜索模式
grep -i "pattern" file.txt # 忽略大小写
find
:查找文件find
命令在指定目录及其子目录下查找符合特定条件的文件。
find
可能会遍历整个文件系统,耗时较长。find /path/to/start -name "filename" # 查找名为filename的文件
find /path/to/start -mtime +7 # 查找7天前修改过的文件
sudo
:以管理员权限执行命令sudo
用于以超级用户(root)权限运行命令。
sudo
:执行需要管理员权限的命令时,可能会导致权限不足。sudo command # 以管理员权限运行command
vi/vim
:文本编辑器vi
或vim
是Linux中的一个强大文本编辑器。虽然初学者可能觉得它不太直观,但一旦掌握,它将成为你的得力工具。
vi
而感到困惑。vi
有插入模式和命令模式,不熟悉切换会导致操作困难。vim filename.txt # 打开或创建文件
i
。:wq
。:q!
。cp
和mv
:复制和移动文件/目录cp
用于复制文件或目录,mv
则用于移动或重命名文件/目录。
-i
选项,cp
和mv
会直接覆盖目标位置的同名文件。cp -i source destination # 复制文件或目录,提示确认覆盖
mv -i source destination # 移动或重命名文件/目录,提示确认覆盖
du
和df
:磁盘空间使用情况du
用于查看文件和目录占用的磁盘空间,df
显示磁盘总空间和剩余空间。
du
默认以KB为单位,有时可能会误导用户。du -sh * # 显示当前目录中所有文件和目录的大小,以人类可读的单位
df -h # 以人类可读的单位显示磁盘空间信息
history
:命令历史history
命令显示最近执行过的命令记录。
history | grep command # 查找历史中包含特定命令的记录
!n # 重新执行历史记录中的第n条命令
top
与htop
:监控系统性能top
是一个实时显示系统中各个进程资源占用状况的动态视图工具,而htop
是top
的一个增强版,提供了更友好的界面和交互方式。
top
或htop
后,可以通过按键进行排序、筛选和搜索进程。htop
中,可以直接使用方向键选择进程,然后按k
键发送信号(如SIGKILL)结束进程。ps
:查看进程状态ps
命令用于报告当前系统的进程状态。通过不同的选项,可以获取不同格式和详细程度的进程信息。
ps
可能会返回大量无关信息。ps aux # 显示所有用户的进程信息,包括没有控制终端的进程
ps -ef | grep process_name # 查找特定名称的进程
netstat
与ss
:网络连接状态netstat
和ss
命令用于显示网络连接、路由表、网络接口统计等网络相关信息。ss
是netstat
的现代替代,提供了更多的功能和更好的性能。
netstat
可能已被标记为已废弃,推荐使用ss
。ss -tuln # 显示监听中的TCP和UDP端口
ss -tp # 显示所有TCP连接及其PID/进程名
yum
与dnf
:包管理yum
(Yellowdog Updater, Modified)和dnf
(Dandified Yum)是CentOS中用于安装、更新、卸载软件包的工具。CentOS 8及以后版本推荐使用dnf
。
yum install package_name # 安装软件包
dnf update # 更新系统上的所有软件包
yum remove package_name # 卸载软件包
ssh
:远程登录与管理ssh
(Secure Shell)是一种网络协议,用于安全地远程登录和管理服务器。在CentOS中,ssh
命令用于连接到远程主机。
ssh user@remote_host # 连接到远程主机
ssh-copy-id user@remote_host # 将本地公钥复制到远程主机,实现无密码登录
iptables
:防火墙规则管理iptables
是Linux内核中的包过滤系统,用于设置和管理网络防火墙规则。
iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 允许SSH连接
iptables-save > /etc/sysconfig/iptables # 保存规则
systemctl restart iptables # 重启iptables服务应用新规则
journalctl
:日志查看journalctl
是systemd日志管理系统的一部分,用于查看和分析系统日志。
journalctl -u service_name # 查看指定服务的日志
journalctl -b -1 # 查看上一次启动以来的日志
journalctl --since "yesterday" # 查看昨天以来的日志
crontab
:定时任务crontab
用于设置周期性被执行的任务,是Linux中的定时任务管理工具。
crontab
语法可能导致任务无法执行。crontab -e # 编辑当前用户的cron任务
# 例如,每分钟执行一次命令
* * * * * command_to_run
systemctl
:系统和服务管理systemctl
是systemd系统和服务管理工具,用于启动、停止、重启服务,查看服务状态等。
systemctl
的状态输出。systemctl start service_name # 启动服务
systemctl stop service_name # 停止服务
systemctl status service_name # 查看服务状态
systemctl enable service_name # 设置服务开机启动
先分享这么多吧,通过掌握这些命令,你将具备处理CentOS系统日常维护任务的基本能力。但记住,Linux世界广阔无垠,不断学习和实践是提升技能的关键。随着经验的积累,你会发现更多高效、实用的工具和技巧。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有