Linux系统运维常用命令及参数总结
一、文件和目录操作
ls
-a
:列出目录下所有文件,包括隐藏文件。-m
:横向输出文件名,并以逗号分隔。-c
:按文件的 i 节点的修改时间排序并输出。-R
:递归列出所有子目录下的文件。-l
:列出文件的具体信息。-s
:在每个文件名后输出文件的大小。-k
:以 KB 为单位显示文件大小。-i
:输出文件的 i 节点索引信息。
cd
~
:切换到用户主目录。..
:切换到上一级目录。
cp
-r
:递归复制目录。-i
:交互式复制,覆盖前询问。
mv
-i
:交互式操作,覆盖前询问。-f
:禁止交互式操作,默认覆盖。-b
:覆盖文件前先备份。-S
或--suffix
:自定义备份后缀。-u
或--update
:仅在源文件较新时覆盖目标文件。-t
或--target-directory
:将所有源参数移动到指定目录。-T
或--no-target-directory
:将 DEST 视为普通文件。--help
:显示帮助信息。-v
或--version
:显示版本信息。--verbose
:显示详细执行信息。
rm
-r
或--recursive
:递归删除目录及其内容。-f
或--force
:强制删除文件或目录。-i
或--interactive
:交互式删除,操作前询问。-v
或--verbose
:显示详细删除信息。-d
或--directory
:将目录视为文件删除。--no-preserve-root
:允许删除根目录。--preserve-root
:禁止删除根目录。--one-file-system
:限制在同一个文件系统内递归删除。--help
:显示帮助信息。--version
:显示版本信息。
mkdir
-m
或--mode
:设置目录权限。-p
或--parents
:自动创建不存在的父目录。-v
或--verbose
:显示详细创建信息。-Z
或--context
:设置 SELinux 安全上下文。--help
:显示帮助信息。
rmdir
-p
或--parents
:删除指定目录及其所有空的父目录。-v
或--verbose
:显示详细删除信息。--ignore-fail-on-non-empty
:忽略非空目录的删除错误。--help
:显示帮助信息。--version
:显示版本信息。
二、文件查看与编辑
cat
-A
或--show-all
:等价于-vET
,显示所有字符。-b
或--number-nonblank
:对非空输出行编号。-e
:等价于-vE
。-E
或--show-ends
:在每行末尾显示$
。-n
或--number
:对输出的所有行编号。-s
或--squeeze-blank
:合并连续的空行。-t
:与-vT
等价。-T
或--show-tabs
:将制表符显示为^I
。-u
:(被忽略)-v
或--show-nonprinting
:使用^
和M-
引用非打印字符,除了 LFD 和 TAB。--help
:显示帮助信息并退出。
more
n
:定义每屏显示的行数。
less
N
:显示行号。/
:搜索文本。
vi/vim
:w
:保存文件。:q
:退出。:wq
:保存并退出。
nano
^G
:帮助文档。^X
:退出。
三、权限管理
chmod
-R
:递归更改文件和目录的权限。-v
:显示详细更改信息。
chown
-R
:递归更改文件和目录的所有者。-v
:显示详细更改信息。
chgrp
-R
:递归更改文件和目录的所属组。-v
:显示详细更改信息。
四、用户和组管理
useradd
-m
:创建用户主目录。-s
:指定用户的默认 shell。
usermod
-l
:更改用户名。-g
:更改用户的主组。
userdel
-r
:删除用户主目录及其内容。
groupadd
-g
:指定新组的 GID。
groupmod
-n
:更改组名。
groupdel
-r
:删除组(如果该组是任何用户的主组,则不允许删除)。
五、系统信息查看
uname
-a
:显示所有系统信息。
top
-d
:设置更新间隔(以秒为单位)。-b
:批处理模式,用于非交互式运行。
htop
-d
:设置更新间隔(以秒为单位)。
df
-h
:以人类可读的格式显示磁盘空间使用情况。
du
-sh
:显示总大小,以人类可读的格式(-s
为汇总,-h
为人类可读)。
free
-m
:以 MB 为单位显示内存使用情况。
vmstat
-a
:显示所有活动的内存信息。-s
:显示内存统计信息。
iostat
-x
:显示详细的 I/O 统计信息。
六、网络管理
ping
-c
:发送指定数量的 ECHO 请求。-t
:持续发送 ECHO 请求,直到手动停止。
traceroute
-n
:不解析主机名,显示 IP 地址。
netstat
-a
:显示所有连接和监听端口。-t
:显示 TCP 连接。-u
:显示 UDP 连接。
ifconfig
-a
:显示所有网络接口的信息。
route
-n
:不解析主机名,显示 IP 地址。
七、进程管理
ps
-e
:显示所有进程。-f
:全格式显示进程信息。
kill
-9
:强制终止进程(发送 SIGKILL 信号)。
pkill
-u
:根据指定的用户进程进行操作。
killall
-u
:根据指定的用户进程进行操作。
nice
-n
:指定进程的优先级(数值越低,优先级越高)。
renice
-n
:重新指定进程的优先级(数值越低,优先级越高)。
八、服务管理
systemctl
start
:启动服务。stop
:停止服务。restart
:重启服务。
service
start
:启动服务。stop
:停止服务。restart
:重启服务。
请注意,systemctl
和 service
都是用于管理系统服务的命令,但它们在不同的 Linux 发行版中可能有所不同。systemctl
是 Systemd 系统和服务管理器的命令,用于 Red Hat、Fedora、Debian、Ubuntu 等发行版。而 service
命令在较旧的 init 系统(如 SysVinit)中使用,也支持在一些基于 Systemd 的发行版中作为向后兼容的选项。
九、磁盘管理
fdisk
m
:显示帮助信息。w
:将当前的分区表写入磁盘并退出。
mkfs
-t
:指定要创建的文件系统类型。
mount
-t
:指定文件系统类型。-o
:指定挂载选项。
umount
-f
:强制卸载文件系统。
dd
if
:输入文件(input file)。of
:输出文件(output file)。
十、压缩与解压缩
tar
-c
:创建归档文件。-x
:从归档文件中提取文件。-v
:显示详细信息。-f
:指定归档文件名。
gzip
-r
:递归压缩目录。-v
:显示详细信息。
zip
-r
:递归压缩目录。-v
:显示详细信息。
unzip
-v
:显示详细信息。
十一、其他常用命令
wget
-O
:指定输出文件名。-P
:指定下载文件的存放目录。
scp
-r
:递归复制整个目录。-v
:显示详细的调试信息。
ssh
-l
:指定远程服务器上的用户名。-p
:指定连接远程服务器的端口号。
grep
-i
:忽略大小写进行匹配。-v
:反向匹配,即显示不匹配的行。
find
-name
:根据指定的文件名查找文件。-type
:根据指定的文件类型查找文件。
sort
-n
:按照数值大小进行排序。-r
:结果按照降序(从大到小)排列。
uniq
-c
:在每行前加上表示相应行目出现次数的前缀。
diff
-u
:以统一格式显示文件差异。
tail
-f
:持续监控文件,实时显示文件的末尾内容。
head
-n
:显示文件的前 N 行(N 为指定的行数)。
##请注意,这些命令及其参数可能因不同的 Unix/Linux 发行版而略有差异。在使用这些命令时,请确保谨慎操作以上命令及其常用参数涵盖了Linux系统运维的各个方面,是日常工作中常用的工具。