Linux服务器作为企业级应用的核心基础设施,其高效管理离不开命令行操作,相较于图形界面,命令行操作更轻量、灵活,能直接与系统内核交互,完成文件管理、系统监控、网络配置等复杂任务,本文将详细介绍Linux服务器常用命令,涵盖文件操作、系统管理、网络配置、进程控制等核心场景,帮助管理员提升实战能力。
文件操作:服务器数据管理的基础
文件管理是服务器日常维护中最频繁的操作,Linux通过简洁的命令实现高效处理。ls
命令用于列出目录内容,ls -la
可显示所有文件(含隐藏文件)的详细信息,包括权限、所有者、大小及修改时间,例如ls -la /home
能查看用户主目录的完整结构。cd
命令切换工作目录,cd ..
返回上级目录,cd ~
快速跳转至当前用户主目录,cd -
则可在上次目录间切换。pwd
命令始终显示当前所在路径,避免目录混淆。
创建文件或目录时,mkdir -p dir1/dir2
可递归创建多级目录,touch file.txt
能快速生成空文件或更新文件时间戳,复制操作中,cp -r src/ dst/
递归复制整个目录,cp -i file1 file2
会在覆盖前提示确认,防止误操作。mv
命令兼具移动和重命名功能,mv old.txt new.txt
实现文件重命名,mv file.txt /tmp/
将文件移动至/tmp目录,删除操作需谨慎,rm -f file.txt
强制删除不提示,rm -rf dir/
递归删除目录及其内容,建议先备份重要数据。
时,cat file.txt
直接输出全部内容,适合小文件;less file.txt
支持分页浏览,可通过上下箭头、空格键翻页,可搜索内容,q
退出,文本搜索是高频需求,grep "error" log.txt
能在日志文件中筛选含”error”的行,grep -i "Error" log.txt
忽略大小写,grep -n "error" log.txt
显示匹配行号,配合grep -v "warning" log.txt
可反向筛选(排除含”warning”的行)。
系统管理:保障服务器稳定运行
系统监控与维护是服务器管理的核心,top
命令实时显示进程资源占用,top -i
仅显示活跃进程(排除睡眠进程),top -p <PID>
可监控指定进程,按q
退出。ps
命令查看静态进程快照,ps -ef
显示所有进程的详细信息(含PID、父PID、启动命令),ps aux
按CPU和内存占用排序,便于定位高负载进程,终止进程时,kill <PID>
发送正常终止信号,kill -9 <PID>
强制终止(谨慎使用),killall nginx
则可终止所有同名进程。
磁盘和内存监控是性能优化的关键。df -h
以易读格式(KB/MB/GB)显示各文件系统磁盘空间,df -i
查看inode使用情况(避免因inode耗尽导致无法创建文件)。du -sh /var
显示/var目录总大小,du -h --max-depth=1 /
查看根目录下各子目录大小,快速定位大容量目录。free -h
展示内存及交换分区使用情况,-m
或-g
可指定单位为MB或GB。
用户与权限管理是安全的基础。useradd -m username
创建用户并自动生成主目录,passwd username
设置用户密码,usermod -aG groupname username
将用户加入附加组(-aG
确保不覆盖原有组),userdel -r username
删除用户及其主目录,权限修改通过chmod
和chown
实现,chmod 755 file.txt
设置文件所有者可读写执行、组用户和其他用户可读执行,chown owner:group file.txt
修改文件所有者和所属组,-R
选项可递归修改目录权限。
网络配置:排查与连接管理
网络问题排查常依赖基础命令。ifconfig
或ip addr
查看网络接口信息,ifconfig eth0 up/down
启用/禁用指定接口(新系统推荐ip link set eth0 up/down
)。ping -c 4 8.8.8.8
发送4个数据包测试与目标主机连通性,ping -i 2 192.168.1.1
可设置发送间隔为2秒。netstat -tuln
显示所有监听端口及协议,netstat -an
查看所有网络连接状态(含已连接和监听),ss -tuln
是netstat
的高效替代,默认显示TCP和UDP端口。
数据传输与测试中,curl -I https://www.baidu.com
获取HTTP响应头(用于检查服务状态),curl -O https://example.com/file.zip
下载文件并保持原文件名,wget -c https://example.com/file.zip
支持断点续传(适合大文件下载)。telnet 192.168.1.1 80
测试与目标IP的80端口是否连通(需安装telnet客户端),ssh username@192.168.1.1
通过SSH远程登录服务器,-p 2222
可指定非默认端口。
进程与服务管理:守护系统核心任务
服务控制是服务器运维的核心,systemctl
是现代Linux系统的标准工具。systemctl start nginx
启动nginx服务,systemctl stop nginx
停止服务,systemctl restart nginx
重启服务,systemctl status nginx
查看服务状态(含最近日志),systemctl enable nginx
设置开机自启(disable
取消自启)。journalctl -u nginx
查看nginx服务日志,journalctl -f
实时跟踪系统日志(类似tail -f
)。
后台进程管理需掌握nohup
和jobs
。nohup python script.py &
让脚本在后台运行且忽略挂断信号(输出默认写入nohup.out),disown -h %1
可将已提交后台的任务与终端解绑。jobs
查看当前终端的后台任务,jobs -l
显示任务PID,fg %1
将任务1调至前台,bg %1
让任务1继续后台运行。
文件压缩与解压:优化存储与传输
Linux支持多种压缩格式,tar
是最常用的打包工具。tar -czvf backup.tar.gz /etc
将/etc目录打包并gzip压缩,-c
创建包,-z
调用gzip,-v
显示过程,-f
指定文件名;解压时用tar -xzvf backup.tar.gz
,-x
表示解压,-C /tmp
可指定解压目录。gzip file.txt
将文件压缩为file.txt.gz,gzip -d file.txt.gz
解压;zip -r docs.zip docs/
压缩目录为zip格式,unzip docs.zip
解压(需安装unzip工具)。
常用Linux服务器命令速查表
命令 | 功能描述 | 常用选项 | 示例 |
---|---|---|---|
ls | 列出目录内容 | -la(显示所有文件及详细信息) | ls -la /home |
cp | 复制文件/目录 | -r(递归目录),-i(覆盖提示) | cp -r src/ dst/ |
grep | 文本搜索 | -i(忽略大小写),-n(显示行号) | grep "error" log.txt |
top | 实时进程监控 | -i(仅活跃进程),-p(指定PID) | top -i |
df | 磁盘空间查看 | -h(易读格式),-i(inode使用) | df -h |
systemctl | 服务管理 | start/stop/status/enable | systemctl restart nginx |
tar | 打包/解压 | -czvf(打包压缩),-xzvf(解压) | tar -czvf backup.tar.gz /etc |
curl | HTTP请求/文件下载 | -I(响应头),-O(下载文件) | curl -I https://www.baidu.com |
相关问答FAQs
问题1:如何查看Linux服务器中占用CPU最高的5个进程?
解答:可通过top
命令结合管道和sort
实现,具体命令为:top -bn1 | grep -v '^%Cpu' | grep -v '^$' | sort -nr -k 9 | head -n 5
,解释:top -bn1
以非交互模式输出一次结果,grep -v '^%Cpu'
过滤CPU统计行,sort -nr -k 9
按第9列(CPU占用率)降序排序,head -n 5
显示前5行,也可用ps aux --sort=-%cpu | head -n 6
(第一行为标题行)。
问题2:如何在Linux服务器中批量将.txt文件重命名为.md文件?
解答:推荐使用rename
命令(需安装prename
包)或for
循环,方法1(rename):rename 's/.txt$/.md/' *.txt
,通过正则替换文件后缀,方法2(for循环):for file in *.txt; do mv "$file" "${file%.txt}.md"; done
,遍历所有.txt文件,用变量${file%.txt}
去除.txt后缀并添加.md,操作前建议先备份文件,避免误修改。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/24329.html