以下是Linux系统基础命令的详细解析,涵盖常用选项、功能说明及典型示例。作为运维工程师,这些命令是日常系统管理、故障排查和自动化的核心工具。
1. 时间与日期
date: 显示或设置系统时间date # 显示当前时间 date +"%Y-%m-%d %H:%M:%S" # 自定义格式输出 date -s "2024-01-01 12:00:00" # 设置系统时间(需root)ntpdate: 同步网络时间(需安装ntpdate包)ntpdate ntp.aliyun.com # 从阿里云NTP服务器同步时间
2. 计划任务
crontab: 定时任务管理crontab -e # 编辑当前用户的任务 crontab -l # 列出任务 crontab -r # 删除所有任务示例任务:
0 2 * * * /backup.sh# 每天凌晨2点执行备份脚本
3. 文件同步与传输
rsync: 高效远程/本地同步rsync -avz /local/ user@remote:/remote/ # 同步目录(保留属性、压缩) rsync -avz --delete /src/ /backup/ # 同步并删除目标多余文件scp: 安全文件传输scp file.txt user@remote:/path/ # 上传文件 scp -P 2222 -r dir/ user@remote:/path/ # 指定端口+递归上传目录
4. 远程管理
ssh: 安全远程登录ssh user@host # 标准登录 ssh -p 2222 -i ~/.ssh/key.pem user@host # 指定端口+私钥
5. 后台进程管理
nohup: 退出终端后保持进程运行nohup ./script.sh & # 后台运行,输出到nohup.out nohup ./script.sh > output.log 2>&1 & # 重定向输出
6. Shell环境
sh/bash: 执行脚本sh script.sh # 使用Bourne shell执行 bash script.sh # 使用Bash执行(支持更多特性)source: 在当前Shell执行脚本(不启动子进程)source ~/.bashrc # 重新加载配置(等效于 `. ~/.bashrc`)
7. 主机名管理
hostname: 显示或临时设置主机名hostname # 显示当前主机名 hostname web01 # 临时修改(重启失效)hostnamectl: 永久修改主机名(Systemd系统)hostnamectl set-hostname web01 # 永久修改 hostnamectl status # 查看主机名信息
8. 资源限制
ulimit: 控制进程资源ulimit -a # 显示所有限制 ulimit -n 65535 # 设置最大打开文件数(临时)永久生效:修改
/etc/security/limits.conf
9. 环境变量
export: 设置环境变量(当前Shell及子进程)export PATH=$PATH:/usr/local/bin # 添加路径env: 查看或临时设置环境变量env # 显示所有环境变量 env VAR=value command # 临时变量执行命令set: 显示所有Shell变量(含环境变量和局部变量)set | grep PATH # 过滤查看变量declare: 声明变量类型(Bash特有)declare -i num=10 # 定义整数变量 declare -a arr=(1 2 3) # 定义数组
10. 单次任务调度
at: 指定时间执行一次性任务echo "reboot" | at 02:00 tomorrow # 明晨2点重启 atq # 查看待执行任务 atrm 1 # 删除ID为1的任务
11. 文件与目录
dir: 列出目录内容(类似ls -C)dir /path/ # 列目录(默认不显示隐藏文件)diff: 比较文件差异diff file1 file2 # 比较文件 diff -r dir1 dir2 # 递归比较目录
12. 高级工具
db_load: Berkeley DB数据库工具db_load -T -t hash -f data.txt passwd.db # 文本转DB文件dmsetup: LVM设备映射管理dmsetup ls # 列出所有设备映射 dmsetup remove /dev/mapper/vol01 # 删除映射
运维场景应用
- 数据备份:
rsync + crontab定时增量备份 - 服务监控:
nohup启动后台监控脚本 - 故障排查:
ulimit -n检查文件句柄泄露 - 安全加固:
ssh -i使用密钥登录替代密码
提示:使用man 命令(如man rsync)查看完整手册,或命令 --help获取快速帮助。
评论 (0)