Linux命令
[toc]
1 A
1.1 ab
Apache HTTP 服务器性能测试
"ab"指令是一个常用的命令行工具,用于进行 Apache HTTP 服务器的性能测试。它允许你模拟多个并发用户向特定URL发送请求,并计算服务器的响应时间、吞吐量等性能指标。下面是常用的"ab"指令的用法:
shell
复制
ab [选项] [URL]
常用选项和用法如下:
-n:指定总请求数。例如,-n 1000表示发送1000个请求。
-c:指定并发请求数。例如,-c 10表示同时发送10个请求。
-t:指定测试的最长时间(秒)。例如,-t 60表示测试持续60秒。
-k:启用HTTP Keep-Alive功能。默认情况下,每个请求都会打开和关闭一个连接。
-p:指定包含POST数据的文件。例如,-p data.txt表示将data.txt文件中的数据作为POST请求的主体。
-H:指定自定义的HTTP头部。例如,-H "Host: example.com"表示在请求中包含自定义的Host头部。
-g:生成可用于GNU Plot绘图的收集数据文件。
-s:设置显示详细性能报告之前的等待时间(以秒为单位)。例如,-s 5表示等待5秒后显示结果。
-e:指定包含SSL/TLS密钥和证书的文件。
示例用法:
shell
复制
ab -n 1000 -c 10 http://example.com/
此命令会向http://example.com/发送1000个请求,每次并发发送10个请求。
2 B
3 C
3.1 createrepo
用于创建软件仓库和生成元数据
createrepo /root/shell_c/cloud/
4 D
5 E
5.1 ethtool
用于配置和显示以太网接口的状态和参数
5.1.1 显示以太网接口eth0的配置和状态信息
ethtool eth0
-s/--change:修改接口的设置。例如:ethtool -s eth0 autoneg off。
-A/--pause:配置流控制和自动协商设置。例如:ethtool -A eth0 rx on tx off。
-C/--coalesce:配置中断协调和包合并设置。例如:ethtool -C eth0 adaptive-rx off。
-i/--driver:显示接口的驱动程序信息。例如:ethtool -i eth0。
-l/--show-tx/rx-frames:显示接口的发送和接收帧队列长度。例如:ethtool -l eth0。
-r/--show-ring:显示接口的接收和发送环缓冲区设置。例如:ethtool -r eth0。
-S/--statistics:显示接口的统计信息。例如:ethtool -S eth0。
-t/--test:运行内置的自检测试。例如:ethtool -t eth0 offline。
6 F
7 G
8 H
9 I
10 J
11 K
12 L
12.1 ldd
用于查看可执行文件或共享库所依赖的动态链接库
ldd /bin/cat
linux-vdso.so.1 => (0x00007ffe3f3bd000)
libc.so.6 => /lib64/libc.so.6 (0x00007f92af0da000)
/lib64/ld-linux-x86-64.so.2 (0x00007f92af4a8000)
13 M
14 N
15 O
15.1 Openssl
OpenSSL是一个开源的加密库,提供了一系列的加密算法,包括对称加密和非对称加密。
15.1.1 生成RSA私钥
openssl genrsa -out private.pem 2048
15.1.2 生成RSA公钥
openssl rsa -in private.pem -out public.pem -pubout
15.1.3 加密文件
openssl enc -aes-256-cbc -salt -in file.txt -out file.txt.enc
15.1.4 解密文件
openssl enc -aes-256-cbc -d -in file.txt.enc -out file.txt
15.1.5 生成签名证书
openssl req -newkey rsa:2048 -nodes -keyout server.key -x509 -days 365 -out server.crt
15.1.6 查看证书信息
openssl x509 -in server.crt -noout -text
# -noout:表示不输出证书本身,而是输出证书的详细信息
# -text:以文本形式输出
16 P
17 Q
18 R
18.1 route
用于管理和操作网络路由表的命令行工具
18.1.1 显示路由表
route -n
18.1.2 添加路由
route add -net 10.0.0.0/24 gw 192.168.0.1 dev eth0
18.1.3 删除路由
route del -net 10.0.0.0/24
18.1.4 修改默认网关
route add default gw 192.168.0.1

18.2 Rsync

19 S
19.1 SHC
一个Shell脚本编译器工具,将Shell脚本编译为二进制文件
编译为二进制:
shc -f script.sh
编译为二进制,并重命名输出文件:
shc -f script.sh -o binary_file
19.2 SCP

20 T
20.1 tcpdump
是一个网络报文抓取工具,可以在计算机网络上捕获和分析网络数据包。它可以用于诊断和故障排除网络问题、监视网络流量以及进行安全分析
tcpdump -i ens33 -nn icmp
-i:指定需要监听的网络接口。
-n:以数字形式显示IP地址和端口号。
-s:指定捕获数据包的长度。
-w:将捕获的数据包保存为文件。
host:根据主机或IP地址过滤数据包。
port:根据端口号过滤数据包。
tcpdump -i ens33 -nn icmp and host 192.168.1.100
20.2 tracepath
一个用于追踪网络路径的命令行工具,它类似于traceroute
命令
20.2.1 追踪到主机的路径
tracepath 192.168.1.1
# 选项与traceroute一样
-n:使用IP地址而不是主机名显示路由器的信息。
-p <端口号>:指定追踪的目标端口号,默认为80。
-m <最大跳数>:设置允许的最大跳数。
-w <等待时间>:设置每个路由器的超时时间。
traceroute通常会显示每个跳跃的IP地址、主机名以及每个跳跃的延迟时间。而tracepath通常较为简洁,只显示每个跳跃的IP地址和一个数字,表示该跳跃的延迟时间。
21 U
21.1 uuidgen
生成一个uuid
22 V
23 W
23.1 w
显示已经登录的用户以及他们在做什么
23.2 watch
是一个 Linux 命令,它可以用来在固定时间间隔内重复执行任意命令,并在终端窗口中显示命令的输出
23.2.1 每 5 秒显示一次系统时间和日期
# watch -n [interval in seconds] [command]
watch -n 5 date
# -n 或 --interval:允许您指定更新输出之间的时间间隔。
# 默认间隔2s
23.2.2 监控系统正常运行时间并突出显示变化
# watch -d [command]
watch -d uptime
# -d 或 --differences:突出显示输出更新之间的差异。
23.2.3 监控系统正常运行时间并删除标题
# watch -t [command]
watch -t uptime
# -t 或 --no-title:删除显示时间间隔、命令和当前时间和日期的标题。
23.2.4 监控系统正常运行时间并在输出发生变化时退出 watch
命令
watch
命令# watch -g [command]
watch -g uptime
# -g 或 --chgexit:当用户定义命令的输出发生变化时退出 watch 命令。
24 X
25 Y
26 Z
27
27.1 触发 SCSI 主机(host)的扫描过程
echo '- - -' > /sys/class/scsi_host/host0/scan
最后更新于