Linux 提供了许多系统工具和软件,用于文件管理、网络配置、性能监控、日志分析等操作。这些工具是 Linux 系统管理和日常操作的核心。以下是常用 Linux 系统工具及其操作详解:
1. 文件与目录管理工具
1.1 ls – 列出目录内容
功能:显示目录内容。常用选项:
ls # 列出当前目录内容
ls -l # 详细信息(长格式)
ls -a # 包括隐藏文件
ls -lh # 以人类可读的格式显示文件大小
1.2 cp – 复制文件/目录
功能:复制文件或目录。常用用法:
cp source_file destination # 复制文件
cp -r source_dir destination # 复制目录
1.3 mv – 移动或重命名文件
功能:移动文件或目录,或重命名文件。示例:
mv old_name new_name # 重命名文件
mv file /path/to/destination # 移动文件
1.4 rm – 删除文件/目录
功能:删除文件或目录。注意:删除操作不可逆,谨慎使用。
rm file # 删除文件
rm -r directory # 递归删除目录
rm -rf directory # 强制递归删除(无确认提示)
1.5 find – 搜索文件/目录
功能:在指定目录下查找文件或目录。示例:
find /path -name "filename" # 按名称查找
find /path -type d # 查找目录
find /path -size +1G # 查找大于 1GB 的文件
1.6 tar – 压缩/解压缩文件
功能:打包、压缩和解压文件。示例:
tar -cvf archive.tar files # 打包
tar -xvf archive.tar # 解包
tar -czvf archive.tar.gz files # 压缩
tar -xzvf archive.tar.gz # 解压
2. 系统性能监控工具
2.1 top 和 htop – 实时监控系统性能
功能:查看实时运行的进程、CPU、内存使用情况。用法:
top # 启动 top
htop # 启动 htop(需安装)
2.2 free – 查看内存使用情况
功能:显示内存和交换分区的使用情况。示例:
free -h # 以人类可读格式显示内存信息
2.3 df – 查看磁盘使用情况
功能:显示文件系统的磁盘使用情况。示例:
df -h # 以人类可读格式显示
df -T # 显示文件系统类型
2.4 du – 查看目录或文件大小
功能:统计目录或文件的磁盘占用情况。示例:
du -sh /path/to/dir # 查看目录大小
du -h --max-depth=1 /path # 查看目录深度为 1 的大小
2.5 iostat – 监控 I/O 性能
功能:显示 CPU 和设备 I/O 性能统计信息(需安装 sysstat)。示例:
iostat -x # 显示详细的 I/O 性能
3. 网络工具
3.1 ping – 测试网络连通性
功能:检查与目标主机的网络连通性。示例:
ping 8.8.8.8 #
Ping Google DNS
ping -c 4 example.com # 发送 4 个 ICMP 包
3.2 curl 和 wget – 下载工具
功能:下载文件、测试 HTTP 请求。示例:
curl http://example.com # 测试 HTTP 请求
wget http://example.com/file # 下载文件
3.3 ifconfig 和 ip – 网络配置
功能:查看和管理网络接口。示例:
ifconfig # 查看网络接口(旧版本)
ip addr # 查看网络接口(推荐)
ip route # 查看路由表
3.4 netstat 和 ss – 网络连接监控
功能:查看网络连接、端口和路由信息。示例:
netstat -tuln # 显示监听的端口
ss -tuln # 显示监听的端口(推荐)
3.5 traceroute – 路由跟踪
功能:追踪数据包的路由路径。示例:
traceroute example.com # 跟踪到目标的路径
4. 系统日志工具
4.1 journalctl – 查看系统日志
功能:管理和查询系统日志。示例:
journalctl # 查看全部日志
journalctl -b # 查看最近一次启动日志
journalctl -u sshd.service # 查看特定服务日志
4.2 dmesg – 查看内核日志
功能:显示内核启动或运行过程中的消息。示例:
dmesg # 查看所有内核日志
dmesg | grep error # 筛选错误日志
4.3 /var/log – 系统日志目录
功能:存放系统生成的日志文件。示例:
/var/log/syslog # 系统日志
/var/log/auth.log # 认证日志
5. 软件管理工具
5.1 apt(Ubuntu/Debian 系列)
功能:管理软件包的安装、升级和卸载。示例:
sudo apt update # 更新软件包索引
sudo apt install package # 安装软件
sudo apt remove package # 卸载软件
5.2 yum 或 dnf(Red Hat 系列)
功能:管理 RPM 软件包。示例:
sudo yum install package # 安装软件
sudo yum update # 更新所有软件
sudo yum remove package # 卸载软件
5.3 snap – 容器化软件管理
功能:安装和管理基于 Snap 的软件包。示例:
sudo snap install package # 安装软件
sudo snap list # 列出已安装的软件
6. 用户和权限管理工具
6.1 useradd 和 usermod – 添加/修改用户
功能:管理系统用户。示例:
sudo useradd username # 添加用户
sudo passwd username # 设置密码
sudo usermod -aG group user # 将用户添加到组
6.2 chmod 和 chown – 修改权限和所有权
功能:管理文件和目录权限。示例:
chmod 755 file # 设置权限
chown user:group file # 修改文件所有者和组
6.3 sudo – 提权命令
功能:以管理员身份运行命令。示例:
sudo command # 提权运行
总结
以上工具涵盖了文件管理、系统监控、网络操作、日志分析、用户管理和软件管理等多个方面。通过掌握这些工具,可以高效地完成 Linux 系统的日常操作和管理任务。