🐧 Linux 常用命令汇总

🐧 Linux 常用命令汇总
xiaoming📝 前言
Linux 命令很多,但真正高频使用的通常集中在关机重启、权限设置、文件目录管理、用户管理、磁盘操作与软件管理这些场景。与其一次性死记硬背所有命令,不如先把最常用、最容易碰到的那批掌握下来。
这篇文章整理成一份偏“速查 + 入门说明”的结构,适合:
- 刚接触 Linux 的新手
- 需要临时查命令的用户
- 想建立基础命令体系的人
[!TIP]
建议把这篇文章先收藏,平时遇到命令不熟的时候回来查,比硬背更有效。
🔌 一、关机与重启命令
在服务器环境里,关机和重启都属于需要谨慎执行的操作。因为一旦执行,可能直接影响线上服务。
1. 常见命令
shutdown -h now |
2. 这些命令分别是什么意思
shutdown -h now:立即关机shutdown -r now:立即重启reboot:重启系统halt:停止系统poweroff:关闭电源
3. 延时执行示例
shutdown -h +10 |
它们分别表示:
- 10 分钟后关机
- 10 分钟后重启
- 当天
20:25关机
4. 为什么常提到 sync
在一些资料中,你会看到先执行:
sync |
它的作用是把内存中的数据同步到磁盘,避免还没写盘的数据丢失。
[!NOTE]
在现代系统里很多情况下内核会自行处理,但理解这个命令的意义仍然很有帮助。
🔐 二、文件权限与属主命令
Linux 权限体系是新手最容易卡住的地方。只要理解“属主、属组、其他人”这三层关系,很多命令就会清晰很多。
1. chgrp:修改文件所属组
chgrp [-R] 属组名 文件名 |
常见用法:
-R:递归修改目录及内部所有文件
2. chown:修改文件拥有者
chown [–R] 所有者 文件名 |
示例:
chown root:root install.log |
这表示把 install.log 的属主和属组都改回 root。
3. chmod:修改权限
chmod [-R] xyz 文件或目录 |
Linux 的权限通常分成:
r:读,值为4w:写,值为2x:执行,值为1
例如:
777=rwxrwxrwx754=rwxr-xr--
示例:
chmod 777 .bashrc |
4. 符号写法
除了数字方式,也可以用符号写法:
chmod u=rwx,g=rx,o=r test1 |
常见字母含义:
u:userg:groupo:othersa:all
[!WARNING]
chmod 777虽然看起来方便,但权限过大,生产环境通常不推荐随便使用。
📁 三、文件与目录管理
这一部分是日常使用最频繁的内容,建议优先掌握。
1. 常见目录命令速览
ls:列出文件cd:切换目录pwd:显示当前路径mkdir:创建目录rmdir:删除空目录cp:复制文件或目录rm:删除文件或目录mv:移动文件或重命名
2. ls:列出目录内容
ls -al |
常见参数:
-a:显示隐藏文件-l:以详细列表形式显示-d:只显示目录本身
3. cd:切换目录
cd /root/runoob/ |
常见用法:
cd ~:回到家目录cd ..:回到上一级目录
4. pwd:显示当前工作目录
pwd |
其中 -P 会显示真实路径,而不是符号链接路径。
5. mkdir:创建目录
mkdir test |
常见参数:
-p:递归创建多级目录-m:创建时直接指定权限
6. rmdir:删除空目录
rmdir runoob/ |
[!NOTE]
rmdir只能删除空目录,非空目录通常改用rm -r。
7. cp:复制文件或目录
cp ~/.bashrc /tmp/bashrc |
常见参数:
-i:覆盖前询问-r:递归复制目录-p:保留文件属性
8. rm:删除文件或目录
rm -i bashrc |
常见参数:
-i:删除前询问-f:强制删除-r:递归删除目录
[!WARNING]
rm -rf是 Linux 最危险的高频命令之一,路径一定要确认清楚再执行。
9. mv:移动文件或重命名
mv bashrc mvtest |
它既可以:
- 把文件移动到别的目录
- 也可以直接给文件/目录改名
👤 四、用户与用户组管理
在服务器管理中,用户与权限是非常核心的部分。很多系统问题,最后都能追溯到“谁能访问、谁能执行、谁能写入”。
1. 添加用户:useradd
useradd 选项 用户名 |
例如:
useradd -d /home/sam -m sam |
这个命令会创建用户 sam,并创建主目录 /home/sam。
2. 删除用户:userdel
userdel -r sam |
这里的 -r 表示连主目录一起删除。
3. 修改用户:usermod
usermod -s /bin/ksh -d /home/z -g developer sam |
这个命令可以修改:
- 登录 Shell
- 主目录
- 用户组
4. 修改密码:passwd
passwd sam |
常见含义:
passwd sam:给用户设置密码passwd -d sam:删除密码passwd -l sam:锁定账号
5. 用户组管理命令
新建用户组
groupadd group1 |
删除用户组
groupdel group1 |
修改用户组
groupmod -g 102 group2 |
切换用户组
newgrp root |
[!TIP]
当你遇到“明明有权限却访问不了”的情况,记得检查当前用户到底属于哪个组。
🧾 五、与用户相关的重要系统文件
Linux 中很多用户与权限信息,实际上都保存在系统文件里。
1. /etc/passwd
这个文件记录用户的基本信息。
格式如下:
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell |
例如:
sam:x:200:50:Sam san:/home/sam:/bin/sh |
2. /etc/shadow
这个文件存放加密后的密码信息,权限更严格,一般只有超级用户能读。
3. /etc/group
这个文件记录用户组信息。
格式如下:
组名:口令:组标识号:组内用户列表 |
理解这三个文件后,很多用户管理相关问题会更容易排查。
👥 六、批量创建用户
如果你只是偶尔加一个用户,用 useradd 就够了;但如果要一次创建几十个甚至几百个用户,就需要批量方式。
1. 准备用户文件
例如 user.txt:
user001::600:100:user:/home/user001:/bin/bash |
2. 批量导入用户
newusers < user.txt |
3. 准备密码文件
例如 passwd.txt:
user001:123456 |
4. 批量设置密码
chpasswd < passwd.txt |
如果涉及 shadow 转换,也可能会配合:
pwunconv |
[!WARNING]
批量创建用户前,一定要仔细检查 UID、主目录和用户名是否冲突。
💽 七、磁盘管理常用命令
磁盘管理直接关系到系统容量、挂载、格式化与健康状态。
常见命令有:
df:查看磁盘整体使用情况du:查看目录占用情况fdisk:磁盘分区mkfs:格式化文件系统fsck:文件系统检查mount/umount:挂载与卸载
1. df:查看磁盘空间
df -h |
适合快速看:
- 哪个分区快满了
- 挂载情况是否正常
2. du:查看目录体积
du -sh /var/log |
适合查“哪个目录最占空间”。
3. fdisk:磁盘分区
fdisk -l |
用于查看当前系统磁盘与分区情况。
4. mkfs:格式化文件系统
mkfs -t ext3 /dev/hdc6 |
5. fsck:文件系统检查
fsck -C -f -t ext3 /dev/hdc6 |
6. mount:挂载分区
mount /dev/hdc6 /mnt/hdc6 |
7. umount:卸载分区
umount /dev/hdc6 |
[!WARNING]
格式化和分区命令有不可逆风险,执行前一定确认设备名是否正确。
✍️ 八、vi / vim 基础使用
在 Linux 世界里,vi / vim 是绕不过去的编辑器。
1. 什么是 vim
Vim 是从 vi 发展而来的文本编辑器,功能比传统 vi 更丰富,在服务器环境和开发场景中都非常常见。
2. 三种模式
Vim 最核心的是 3 种模式:
- 命令模式
- 输入模式
- 底线命令模式
3. 高频操作
进入输入模式
i |
保存退出
:wq |
不保存强退
:q! |
复制 / 删除当前行
yy |
撤销 / 重做
u |
[!TIP]
新手最先记住i、Esc、:wq、:q!这几个命令,就够应付大多数情况了。
📦 九、yum 包管理命令
在基于 RPM 的系统里,yum 是非常常见的软件包管理工具。
1. 常见用途
- 安装软件
- 更新软件
- 搜索软件包
- 删除软件
- 清理缓存
2. 常见命令示例
yum install nginx |
3. 使用场景理解
- 装软件:
yum install - 升级系统或软件:
yum update - 删除软件:
yum remove - 搜索包名:
yum search - 清缓存:
yum clean all
📥 十、apt 命令汇总与使用教学
如果你使用的是 Debian、Ubuntu、Linux Mint 等发行版,那么最常接触的软件包管理工具通常不是 yum,而是 apt。它主要负责软件包索引更新、软件安装、升级、卸载和依赖管理。
1. 先理解 apt 是做什么的
你可以把 apt 理解成“系统应用商店的命令行版本”,它能帮你:
- 从软件源获取软件包信息
- 安装或卸载软件
- 自动处理依赖关系
- 更新系统中的软件版本
- 清理不再需要的软件缓存
[!NOTE]
在较新的 Debian / Ubuntu 系统中,日常操作一般直接用apt即可;而脚本场景中也常见apt-get。
2. 最常用的 apt 命令速查
apt update |
3. 这些命令分别是什么意思
apt update:更新软件源索引apt upgrade:升级已安装的软件apt install nginx:安装指定软件apt remove nginx:卸载软件,但通常保留配置文件apt purge nginx:彻底卸载软件及其配置文件apt autoremove:删除不再需要的依赖包apt search nginx:搜索软件包apt show nginx:查看软件包详情apt list --upgradable:查看可升级的软件apt clean:清理已下载的软件缓存
4. 新手最常见的正确使用顺序
如果你准备在 Ubuntu 服务器上安装一个软件,最常见流程通常是:
第一步:更新软件源索引
sudo apt update |
这一步不是升级软件,而是先让系统知道“现在仓库里有哪些可用包、最新版本是多少”。
第二步:安装软件
sudo apt install nginx |
系统会自动解析并安装依赖。
第三步:确认软件是否安装成功
nginx -v |
或者查看软件包信息:
apt show nginx |
[!TIP]
很多人一上来直接apt install,虽然有时也能装,但更推荐先执行apt update,这样更稳妥。
5. 升级系统时怎么用
如果你只是想更新软件列表:
sudo apt update |
如果你要把已安装的软件升级到仓库里的新版本:
sudo apt upgrade |
如果想先看有哪些包可升级:
apt list --upgradable |
[!WARNING]
在生产服务器上执行升级前,建议先确认是否会影响运行中的业务服务,尤其是 Nginx、MySQL、Docker 一类关键组件。
6. 删除软件时要注意什么
普通卸载:
sudo apt remove nginx |
彻底卸载并删除配置:
sudo apt purge nginx |
清理无用依赖:
sudo apt autoremove |
这 3 个命令常常配合使用。例如:
sudo apt remove nginx |
如果你想删得更干净:
sudo apt purge nginx |
7. 搜索与查看软件包信息
当你不确定包名时,可以先搜索:
apt search php |
如果你已经知道包名,想看详细信息:
apt show php |
你通常能看到:
- 软件版本
- 依赖信息
- 软件说明
- 仓库来源
8. 缓存清理与系统整理
安装软件后,系统会保留下载缓存。常见清理命令:
sudo apt clean |
它们的作用分别是:
apt clean:清空本地下载的软件包缓存apt autoremove:清除已不再需要的依赖包
如果服务器磁盘比较紧张,这两个命令会很实用。
9. apt 和 apt-get 有什么区别
很多旧教程里会写:
apt-get update |
而现在常见写法是:
apt update |
简单理解:
apt:更适合人工在终端里直接使用,输出更友好apt-get:更传统,也常见于脚本和老教程
对于新手来说,日常记住 apt 就够用了。
10. apt 使用示例:在 Ubuntu 上安装 Nginx
下面给你一个完整示例:
sudo apt update |
如果后续不想用了,可以这样卸载:
sudo apt remove nginx |
如果你要彻底清理:
sudo apt purge nginx |
这个流程基本能覆盖大多数新手的实际使用场景。
📌 总结
Linux 命令学习最怕的不是多,而是没有主线。你可以先按下面这条顺序掌握:
- 文件和目录操作
- 权限和属主修改
- 用户与用户组管理
- 磁盘与挂载管理
- Vim 基本编辑
- 软件包安装与更新
把这些高频内容先掌握之后,你再接触服务管理、网络排查、Shell 脚本时会轻松很多。
💬 讨论
欢迎在评论区交流:
- 你目前最常用的 Linux 命令是哪几个?
- 你更想继续看服务器运维命令,还是日常桌面命令整理?
- 如果你愿意,我也可以继续帮你整理一版“Linux 新手必背 30 条命令”的精简版。










