尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Linux命令行操作与系统管理实战指南

Linux命令行操作与系统管理实战指南 1. Linux系统环境概述第一次接触Linux的人常会被它的命令行界面吓到但真正用过后你会发现这套诞生于1991年的操作系统远比想象中友好。我在运维岗位工作8年从CentOS到Ubuntu都用过最深的体会是掌握Linux环境就像学骑自行车开始可能摇摇晃晃一旦上手就再也回不去了。现代Linux系统主要由三部分组成内核管理硬件资源、Shell命令解释器和文件系统。与Windows不同Linux一切皆文件——硬件设备是文件进程信息是文件就连网络连接也是文件。这种设计哲学让所有操作都能通过命令完成比如插上U盘后你会看到它被映射为/dev/sdb1这样的设备文件。新手常见误区总想找图形化工具。其实命令行效率更高按Tab键能自动补全方向键↑可调出历史命令熟练后操作速度比鼠标快3倍不止。2. 终端操作基础2.1 Shell环境初探打开终端看到usernamehostname:~$这个提示符时你已经进入了Bash Shell最常用的Shell类型。这里的~代表用户家目录相当于Windows的C:\Users\YourName。试试这几个基础命令pwd # 显示当前路径Print Working Directory ls # 列出文件相当于dir cd /tmp # 切换目录Change Directory我习惯用ls -lht组合参数-l显示详细信息-h人类可读的文件大小自动换算KB/MB-t按修改时间排序2.2 文件操作四件套# 创建/删除 mkdir project touch project/test.txt # 表示前一条成功才执行后一条 rm -r project # -r参数递归删除目录 # 复制/移动 cp file1 file2 # 复制 mv file1 new_name # 重命名或移动危险命令预警rm -rf /会删除整个系统建议在~/.bashrc里添加alias rmrm -i让rm命令总是询问确认。3. 系统管理核心命令3.1 进程管理三板斧ps aux | grep nginx # 查看进程a所有用户u详细信息x无终端进程 top # 动态监控类似任务管理器 kill -9 1234 # 强制结束PID为1234的进程我常用的组合技# 查找并杀死所有Python进程 pgrep python | xargs kill -93.2 网络配置实战ifconfig # 查看IP新系统用ip addr ping baidu.com # 测试连通性 netstat -tulnp # 查看监听端口-tTCP -uUDP -l监听 -n数字显示 -p进程遇到网络问题时我的排查顺序ping 网关IP查内网ping 8.8.8.8测外网nslookup baidu.com验DNS4. 文本处理神器4.1 grep/sed/awk三剑客grep error /var/log/syslog # 过滤含error的行 sed -i s/old/new/g file.txt # 替换文本-i直接修改文件 awk {print $1} data.log # 提取第一列真实案例统计Nginx日志中每个IP的访问量awk {print $1} access.log | sort | uniq -c | sort -nr4.2 文件查看技巧cat -n file.txt # 显示行号 less file.log # 分页查看/搜索 n下一个 tail -f /var/log/nginx/access.log # 实时追踪日志5. 权限与用户管理5.1 权限体系解析Linux权限用10个字符表示比如-rwxr-xr--第1位文件类型-普通文件 d目录 l链接2-4位所有者权限5-7位组权限8-10位其他用户权限修改权限的两种方式chmod 755 script.sh # 数字法7rwx 5r-x chmod ux,g-w,or file # 字母法u用户 g组 o其他5.2 用户管理实操sudo useradd -m devuser # -m创建家目录 passwd devuser # 设置密码 usermod -aG sudo devuser # 加入sudo组生产环境建议禁用root远程登录改用sudo用户SSH密钥认证。6. 软件包管理对比不同发行版的包管理工具发行版安装命令更新命令Ubuntusudo apt install nginxsudo apt update upgradeCentOSsudo yum install httpdsudo yum updateArchsudo pacman -S nginxsudo pacman -Syu我常用的清理命令# Ubuntu sudo apt autoremove # 删除无用包 # CentOS sudo yum clean all # 清理缓存7. 环境变量配置查看所有环境变量env临时添加PATH关闭终端失效export PATH$PATH:/new/path永久生效需要写入配置文件echo export PATH$PATH:/new/path ~/.bashrc source ~/.bashrc # 立即生效8. 定时任务管理crontab -e # 编辑定时任务经典格式* * * * * command | | | | | | | | | ----- 星期几 (0 - 6) (周日0) | | | ------- 月份 (1 - 12) | | --------- 日 (1 - 31) | ----------- 小时 (0 - 23) ------------- 分钟 (0 - 59)实例每天3点备份0 3 * * * /home/backup.sh9. 系统信息查询uname -a # 内核版本 lsb_release -a # 发行版信息 free -h # 内存使用-h人性化显示 df -h # 磁盘空间 lscpu # CPU信息10. 高效工作技巧10.1 命令组合技# 后台运行并输出日志 nohup command log.txt 21 # 批量重命名 for file in *.txt; do mv $file ${file%.txt}.log; done10.2 实用小工具history | grep ssh # 搜索历史命令 !! # 上一条命令 !$ # 上条命令的最后一个参数 ctrlr # 反向搜索历史命令最后分享我的.bashrc配置片段alias llls -alFh alias grepgrep --colorauto export PS1\[\033[01;32m\]\u\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$
返回列表