Linux 操作系统中的命令非常丰富,覆盖了从文件操作到系统管理以及网络配置的各个方面。这里给出一些最常用的Linux命令:
文件和目录操作
ls
:列出目录内容。cd
:更改当前目录。pwd
:显示当前目录的路径。mkdir
:创建一个新目录。rmdir
:删除一个空目录。rm
:删除文件或目录。cp
:复制文件或目录。mv
:移动文件或目录,也可用于重命名。touch
:创建一个空文件或更新文件的时间戳。find
:在目录结构中搜索文件。grep
:搜索文本文件内容。
系统信息和管理
top
:显示当前系统运行的进程,以及系统资源的使用情况。ps
:展示当前系统的进程状态。kill
:结束一个进程。sudo
:以超级用户身份执行命令。chmod
:更改文件或目录的权限。chown
:更改文件或目录的所有者。df
:显示磁盘空间使用情况。du
:显示目录或文件的磁盘使用情况。free
:显示内存和交换空间的使用情况。
网络操作
ping
:检查与远程服务器的连接。ifconfig
/ip
:配置或显示系统网络接口的信息。ssh
:安全地远程登录到另一台计算机。scp
:安全地在本地和远程计算机之间复制文件。wget
:从网络上下载文件。curl
:传输数据,支持多种协议。
文本处理
echo
:在终端输出文本。cat
:显示文件内容。head
:显示文件的开头部分。tail
:显示文件的结尾部分。sort
:排序文本文件的行。uniq
:从输入中删除重复的行。diff
:比较两个文件的不同。
归档和压缩
tar
:归档文件。gzip
/bzip2
:压缩或解压文件。unzip
:解压缩zip文件。
在运维领域,Linux命令是维护服务器和网络运行的关键工具。以下是一些对系统管理员尤其重要的Linux命令,涵盖了监控、网络管理、性能调优、安全性等方面:
系统监控和管理
- top - 实时显示系统中各个进程的资源占用状况。
- htop - 类似于top,但用户界面更友好,信息展示更为丰富。
- vmstat - 报告虚拟内存统计。
- iostat - 用于CPU统计和磁盘I/O统计。
- mpstat - 显示各个可用CPU的状态。
- free - 显示内存和交换区的使用情况。
- df - 显示磁盘空间的使用情况。
- du - 显示指定目录的磁盘使用情况。
- lsof - 列出当前系统打开文件的工具。
网络管理
- ifconfig / ip addr - 配置或显示网络接口的信息。
- netstat - 显示网络连接、路由表、接口统计等网络信息。
- ss - 是netstat的现代替代品,用于监视套接字。
- ping - 测试与远程服务器的网络连接。
- traceroute - 显示数据包到主机间的路由。
- tcpdump - 数据包抓取工具,用于捕获网络上传输的数据包。
- iptables / firewalld - 命令行界面用于管理内置的防火墙规则。
- nmap - 网络探测和安全审核。
性能调优
- nice / renice - 调整程序执行的优先级。
- ionice - 调整程序进行磁盘I/O的优先级。
- ulimit - 控制shell启动进程的资源。
- sysctl - 用于在运行时修改内核参数。
安全和用户管理
- passwd - 修改用户密码。
- chown - 更改文件或目录的所有者和组。
- chmod - 更改文件或目录的权限。
- useradd / usermod - 创建和修改用户账号。
- groupadd / groupmod - 创建和修改用户组。
- visudo - 安全编辑sudoers文件,该文件用于控制sudo的权限。
- fail2ban - 防止暴力破解,自动封禁多次登录失败的IP。
日志管理
- journalctl - 用于查询和显示从系统日志中收集的信息。
- logrotate - 自动管理、压缩、删除和维护日志文件。
- dmesg - 显示Linux内核的消息缓冲区的内容。
掌握这些命令可以极大提升Linux运维的效率和响应能力,是每个系统管理员必备的技能。