linux常用命令
发表于|更新于|Linux
|浏览量:
Linux 常用命令速查
每日一遍,快乐无限!
系统与信息
cat /etc/redhat-release- 查看系统版本信息 (适用于 RedHat/CentOS)。uname -a- 显示内核信息。uptime- 显示系统从开机到现在所运行的时间。w- 显示登录的用户。whoami- 查看你的当前用户名。finger user- 显示用户的相关信息。date- 显示当前时间。cal- 显示当月的日历。top- 查看系统负载状态,输入1查看 CPU 核心详情,输入m查看内存信息。ps -aux- 查看所有系统进程状态,可配合grep使用。df -Th- 查看磁盘挂载与使用情况。du -h --max-depth=1- 查看当前目录下一级文件和目录的大小。free -h- 显示内存以及交换区占用情况。cat /proc/cpuinfo- 查看 CPU 信息。cat /proc/meminfo- 查看内存信息。man command- 显示command的说明手册。
文件与目录操作
ls -al- 列出所有文件(包括隐藏文件)的详细信息。pwd- 显示当前工作目录。cd dir- 切换到dir目录。mkdir dir- 创建dir目录。rm file- 删除file文件。rm -rf dir- 强制删除dir目录及其所有内容。cp file1 file2- 将file1复制为file2。cp -r dir1 dir2- 复制dir1目录到dir2。mv file1 file2- 移动或重命名file1为file2。ln -s source_file link_name- 创建一个指向source_file的软链接link_name。touch file- 创建一个空文件file或更新文件时间戳。cat file1 file2 > file3- 合并file1和file2的内容到file3。tree- 以树状结构显示文件和目录。chattr +i file- 设置文件为不可修改模式。
文本处理
grep pattern file- 在file中查找pattern。grep -v pattern file- 在file中查找不包含pattern的行。grep ^start file- 查找以start开头的行。grep end$ file- 查找以end结尾的行。sed -i 's/old/new/g' file- 将file中的所有old替换为new。head file- 查看文件的前 10 行。tail file- 查看文件的后 10 行。tail -f file- 实时查看文件的新增内容。
网络与 DNS
dig 域名 +short- 简洁地查询域名的 IP 地址。dig -x ip +short- 简洁地反向查询 IP 地址对应的域名。dig @dns_server 域名 +short- 从指定的 DNS 服务器查询。nslookup 域名- 查询域名的 DNS 信息。netstat -ntlp- 查看当前监听的 TCP 端口。ss -antp- 显示 TCP 连接 (功能类似netstat)。ss -anup- 显示 UDP 连接。ip route或route -n- 显示当前路由表。ip route add 192.168.52.0/24 dev ens33- 添加到192.168.52.0/24网段的路由。ip route del 192.168.10.0/24- 删除路由。traceroute ip/域名- 追踪到目标主机或域名的路由路径。ping host- 测试与host的连通性。whois domain- 获取domain的 whois 信息。wget file- 下载file。wget -c file- 断点续传下载file。
curl 高级用法
curl http://example.com -H "X-Forwarded-For: 1.1.1.1" -H "Referer: https://google.com"- 伪造请求头。curl url >> file.html- 将网页内容重定向保存到文件。curl -X POST -d "data=payload" http://example.com- 发送 POST 请求。curl -c cookie.txt http://example.com- 保存响应中的 Cookie。curl -b cookie.txt http://example.com- 发送请求时携带 Cookie。curl -D headers.txt http://example.com- 保存响应头。
权限与用户管理
chmod 755 file- 更改文件权限 (r=4, w=2, x=1)。chown -R user:group /path/to/dir- 递归地将目录所有者和属组更改为user:group。passwd user- 修改user的密码。passwd -d user- 删除user的密码。
防火墙与网络安全
ufw (Ubuntu 防火墙)
sudo ufw status- 查看防火墙状态。sudo ufw enable- 开启防火墙。sudo ufw disable- 关闭防火墙。
firewalld (CentOS/RHEL)
systemctl stop firewalld- 临时关闭防火墙。systemctl disable firewalld- 永久禁用防火墙。
iptables
iptables -L --line-numbers- 查看所有规则及其编号。iptables -F- 清空所有规则。iptables -P INPUT DROP- 设置 INPUT 链的默认策略为 DROP。iptables -A INPUT -s 1.2.3.4 -j ACCEPT- 允许来自1.2.3.4的流量。iptables -A INPUT -p tcp --dport 22 -j ACCEPT- 允许 TCP 流量到 22 端口。iptables-save > /etc/sysconfig/iptables- 保存规则。
压缩与解压
*.tar->tar -xvf file.tar*.tar.gz,*.tgz->tar -xzf file.tar.gz*.tar.bz2->tar -xjf file.tar.bz2*.zip->unzip file.zip -d /path/to/dir
软件安装
yum update- (CentOS/RHEL) 更新所有软件包。yum remove package- (CentOS/RHEL) 移除软件包。dpkg -i pkg.deb- (Debian/Ubuntu) 安装.deb包。- 从源码安装:
1
2
3./configure
make
make install
tcpdump 抓包
tcpdump -i eth0 host 1.2.3.4 -c 10 -nn -w capture.pcap-i eth0: 指定网卡。host 1.2.3.4: 过滤主机 IP。-c 10: 只抓取 10 个包。-nn: 不解析主机名和端口号。-w capture.pcap: 保存到文件。
Wireshark 过滤语法
- 协议过滤:
tcp,udp,http - IP 过滤:
ip.addr == 192.168.1.1ip.src == 192.168.1.1ip.dst == 192.168.1.1
- 端口过滤:
tcp.port == 80tcp.srcport == 80
- HTTP 过滤:
http.request.method == "GET"http.request.uri contains "admin"http.response.code == 404
- 逻辑操作:
&&(and),||(or)
LVM (逻辑卷管理)
LVM 扩容
pvcreate /dev/sdb1- 创建物理卷。vgextend vg_name /dev/sdb1- 将物理卷添加到卷组。lvextend -L +10G /dev/mapper/vg-lv- 扩展逻辑卷。resize2fs /dev/mapper/vg-lv- 调整文件系统大小 (ext4)。xfs_growfs /path/to/mount- (xfs)
非 LVM 分区扩容
umount /dev/sda1- 卸载分区。fdisk /dev/sda- 使用 fdisk 重新分区 (先删除旧分区,再创建新分区)。resize2fs /dev/sda1- 调整文件系统大小。mount /dev/sda1 /mnt- 重新挂载。
注意: 操作磁盘分区前务必备份重要数据!
文章作者: diaopanda
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 diaopanda!
