当前位置: 首页 > news >正文

Ubuntu常用指令大全:系统管理与开发必备

1. Ubuntu 常用指令概述

作为一名Linux系统管理员,我整理了这份Ubuntu常用指令大全。这些指令都是我日常工作中高频使用的,涵盖了系统管理、文件操作、网络配置等核心场景。不同于网上那些零散的指令列表,我会结合实际操作经验,告诉你每个指令背后的使用逻辑和常见坑点。

Ubuntu作为最流行的Linux发行版之一,无论是服务器运维还是开发环境搭建都离不开命令行操作。掌握这些基础指令,能让你在终端里游刃有余。下面这些指令适用于Ubuntu 18.04及以上版本,部分指令在WSL环境下也同样适用。

2. 文件与目录操作指令

2.1 基础文件操作

# 列出目录内容(我最常用的参数组合) ls -alh
  • -a显示隐藏文件
  • -l长格式显示
  • -h人类可读的文件大小

注意:在含有大量文件的目录下,使用ls -l会比ls慢很多,这时建议直接用ls快速查看。

# 复制文件(保留原文件属性) cp -p source_file target_file

2.2 目录操作进阶技巧

# 创建多级目录(避免逐个创建) mkdir -p project/{src,test,doc}

这个指令会一次性创建project目录及其下的src、test、doc子目录。大括号扩展是bash的一个实用特性,可以节省大量重复输入。

# 查找文件(我最常用的三种方式) find /path -name "*.log" -mtime +7 # 查找7天前的日志文件 locate filename # 快速查找(需要先updatedb) whereis python # 查找二进制文件位置

3. 系统管理与监控指令

3.1 进程管理实战

# 查看进程(带完整命令行) ps -ef

我习惯用这个组合而不是简单的ps aux,因为-ef显示的COMMAND列更完整,可以看到带参数启动的进程。

# 动态监控系统资源 top -d 1 -u username
  • -d 1设置刷新间隔为1秒
  • -u username只查看指定用户的进程

实用技巧:在top界面按M按内存排序,按P按CPU排序,按c显示完整命令。

3.2 系统服务管理

# 查看服务状态(systemd系统) systemctl list-units --type=service

对于服务管理,我强烈建议使用systemctl而不是老旧的service命令。它能提供更详细的状态信息和控制选项。

# 设置开机自启 sudo systemctl enable nginx # 立即启动服务 sudo systemctl start nginx

4. 网络配置与调试

4.1 基础网络诊断

# 查看IP地址(推荐方式) ip addr show

比起老旧的ifconfig,ip命令提供了更强大的功能。特别是在配置多个IP或VLAN时更灵活。

# 持续ping测试(带时间戳) ping -O -D 8.8.8.8
  • -O显示超时信息
  • -D显示时间戳

4.2 高级网络工具

# 查看路由表 ip route show # 追踪路由路径 traceroute -n google.com # 查看端口监听情况 ss -tulnp

我更喜欢用ss而不是netstat,因为它速度更快,特别是在服务器有大量连接时。

5. 软件包管理技巧

5.1 apt使用进阶

# 更新软件源(先更新再升级是好习惯) sudo apt update && sudo apt upgrade

重要提示:生产环境升级前一定要先测试!我曾经因为盲目升级导致关键服务不可用。

# 查找软件包 apt search ^nginx # 查看软件包详情 apt show nginx

5.2 源码编译安装

# 典型编译安装流程 ./configure --prefix=/usr/local make -j$(nproc) sudo make install

-j$(nproc)参数会根据CPU核心数自动设置编译线程数,大幅提高编译速度。

6. 用户与权限管理

6.1 用户账户操作

# 添加用户并创建家目录 sudo useradd -m -s /bin/bash newuser # 设置密码 sudo passwd newuser

6.2 权限控制实战

# 递归修改目录权限 chmod -R 750 /path/to/dir # 修改文件属主 chown user:group file

安全提示:永远不要随意使用chmod 777,这是安全隐患的温床。应该精确设置所需的最小权限。

7. 文本处理三剑客

7.1 grep高效搜索

# 递归搜索内容(忽略大小写) grep -rni "keyword" /path
  • -r递归搜索
  • -n显示行号
  • -i忽略大小写

7.2 sed流编辑器

# 替换文件内容(直接修改文件) sed -i 's/old/new/g' file.txt

7.3 awk数据处理

# 提取特定列并计算 awk '{sum+=$3} END {print sum}' data.txt

8. 磁盘与存储管理

8.1 磁盘空间分析

# 查看磁盘使用情况(人类可读格式) df -h # 查找大文件 du -sh * | sort -h

8.2 挂载操作要点

# 查看挂载信息 mount | column -t # 永久挂载(编辑/etc/fstab) UUID=xxxx /mountpoint ext4 defaults 0 2

经验之谈:在fstab中使用UUID而不是设备名(如/dev/sda1),因为设备名可能会变。

9. 系统日志分析

9.1 常用日志文件

# 查看系统日志 journalctl -xe # 查看认证日志 tail -f /var/log/auth.log

9.2 日志分析技巧

# 统计错误日志出现次数 grep "ERROR" /var/log/syslog | awk '{print $5}' | sort | uniq -c | sort -nr

10. 实用快捷键与小技巧

10.1 终端快捷键

  • Ctrl + R反向搜索命令历史
  • Ctrl + A/E移动到行首/行尾
  • Alt + .插入上一个命令的最后一个参数

10.2 命令行效率工具

# 记录终端会话 script -a session.log # 批量重命名文件 rename 's/\.jpeg$/\.jpg/' *.jpeg

这些指令只是Ubuntu强大命令行功能的冰山一角。在实际使用中,我建议多用man命令查看指令手册,比如man grep会显示grep的所有选项和用法。记住,掌握命令行不是要背下所有指令,而是理解其逻辑,知道在什么场景下用什么工具。

http://www.jsqmd.com/news/1210389/

相关文章:

  • C#开源项目全景:从基础框架到前沿技术探索
  • 计算机专业术语英汉对照指南与学习方法
  • Minecraft光幕PV制作全流程解析:从光影渲染到后期合成
  • Linux系统安装实战:从分区到驱动,新手避坑指南
  • 基于深度学习的镜头分辨率全自动检测技术解析
  • Unity粒子系统打造顶级闪电特效:从原理到实战全解析
  • 安卓图形绘制技术:Canvas、OpenGL ES与SVG全解析
  • 小团队怎么选AI模型?预算有限的选型思路
  • 智能环境监测终端开发实战:ESP32-C3与传感器应用全解析
  • 树莓派与AI结合:Dream Recorder梦境记录设备解析
  • ANSYS重启动分析:原理、实现与工程应用
  • 2026重庆ToB企业参考:GEO优化会不会影响传统SEO效果? - 企智芯
  • AI智能体记忆基础设施Memori:从对话持久化到结构化记忆的实践指南
  • 基于NVIDIA Isaac Sim与LLM的医院多机器人自然语言调度系统实践
  • Codex运营素材图生成:高效流水线方案与实践
  • Android开发必备:Demos学习源码全解析
  • Win10与Win11双系统安装与优化全指南
  • Android开发进阶:从基础到架构的系统化学习指南
  • AI代码生成工具实战:从需求到部署的完整网页应用开发指南
  • 2026年7月最新嘉兴卡地亚官方售后联系电话与客户服务中心网点地址 - 卡地亚服务中心
  • 67-Agent工具定义与调用-搜索引擎-数据库-代码执行器集成
  • Windows 11安全启动问题解析与修复指南
  • Python基础语法全解析与开发环境配置指南
  • TBomb多平台部署指南:Linux、Termux与macOS环境搭建实战
  • Mac Mini本地部署OpenClaw多智能体协作系统实战指南
  • OpenClaw Skills 生态解析与实战指南
  • Windows原生运行手机应用的性能优化与WSA配置指南
  • 基于蓝牙FTMS协议的智能健身车改造方案
  • YOLO模型改进与工程实践:从原理到部署优化
  • 基于双目视觉与改进YOLOv11-pose的河蟹质量估测系统