Linux
25.8K 开源的 Linux 命令速查手册,可本地部署
docker 部署 linux-command 网页版,项目地址:https://github.com/jaywcjlove/linux-command
#拉取镜像 docker pull wcjiang/linux-command #启动 docker run --name linux-command --rm -d -p 9665:3000 wcjiang/linux-command:latest
基本命令
-
查看系统的发行版信息
cat /etc/os-release
-
查看主机的信息
hostnamectl
-
实时监控系统的运行状态
top
-
CPU详细信息:
lscpu
-
内存使用情况:
free -h
-
网络连接相关信息:
netstat
-
磁盘相关信息:
df -h
-
查看当前用户:
whoami
-
查看当前用户分组:
group
-
查看全部用户组:
cat /etc/group
-
添加、删除组账号:
groupadd、groupdel
-
管道命令打印标题行:
ps -ef | head -1; ps -ef | grep -n elastic
-
远程传输文件方式:远程服务器间传输文件远程复制文件
- 参考:https://zhuanlan.zhihu.com/p/507876254
- scp:已弃用的旧命令
- rsync:用于文件同步的流行命令
- sshfs:通过 SSH 挂载远程目录
- sftp 客户端:通过 SFTP 访问文件的 GUI 工具
-
查找文件或目录:
find / -type f -name "name"
-
ldd命令
LDD 命令在Linux系统中用于显示一个二进制文件所需的所有共享库及其依赖关系。它可以帮助系统管理员和开发者在进行软件包管理和调试时识别问题。LDD命令通常用于验证软件包是否正确安装,确认它们之间的依赖关系,以及在特定环境下的行为。
要使用LDD命令,可以通过终端输入ldd
后跟空格和需要分析的二进制文件的路径。例如,运行ldd /path/to/your_program
可以获取该程序所需的共享库和其他相关信息。此外,还可以通过传递不同的选项来定制输出,如-v
(显示详细版本信息)或-u
(列出未被使用的共享库)。
总结来说,LDD命令是一个有用的工具,尤其在处理共享库依赖性和确保软件包正确安装方面发挥作用
Linux路径目录解释
参考:linux文件目录
目录 | 说明 | 备注 |
---|---|---|
/ | 根目录 | |
/bin | 存放二进制可执行文件,指向usr/bin | 常用命令存放在此处,如ls、cat、mkdir等 |
/boot | Linux核心相关文件 | |
/dev | 系统的设备文件,即设备的驱动程序 | 如disk、cpu、net等系统设备 |
/etc | 系统的配置文件 | 如hosts、systemd、sysctl.d等 |
/home | 用户主目录文件 | 如zhangsan、lisi用户的目录 |
/lib | 系统运行相关的 库文件 | |
/media | 自动识别的外部设备,可移除设备 | 如光盘、软盘等 |
/mnt | 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。 | |
/opt | (option : 自由选择)主要给源码安装软件时选择的安装目录位置 | 如安装tomcat等 |
/proc | 虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。 | |
/root | 超级用户(系统管理员)的主目录 | |
/run | 系统启动后的一些临时文件 | |
/sbin | 存放二进制可执行文件,只有root才能访问。指向usr/sbin | 如iptables、ifconfig等 |
/srv | 系统启动服务时可以访问的数据目录 | |
/sys | 系统设备管理相关的文件 | |
/tmp | 临时文件,重启后自动清空 | |
/usr | 最大的目录,存放着应用程序和文件 | |
/var | 某些大文件的溢出区,比如各种服务的日志文件 | 用于存放运行时需要改变数据的文件 |
/lost+found | 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件 |
Linux性能分析命令
参考:
-
uptime
查看计算机启动时间信息及平均负载情况,1min、5min、15min内的平均负载。[root@localhost /]# uptime 14:02:14 up 3:13, 1 user, load average: 0.61, 0.52, 0.43
-
top
查看计算机当前负载情况,更多指标统计,展示进程以及系统全局的cpu,内存等信息
top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols]
参考:linux 命令:top 详解[root@localhost /]# top top - 14:52:55 up 4:03, 1 user, load average: 0.15, 0.09, 0.17 Tasks: 198 total, 1 running, 197 sleeping, 0 stopped, 0 zombie %Cpu(s): 4.1 us, 0.3 sy, 0.0 ni, 95.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 5077260 total, 410392 free, 2592288 used, 2074580 buff/cache KiB Swap: 1048572 total, 1048572 free, 0 used. 2181756 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2483 root 20 0 720736 14852 4160 S 1.3 0.3 0:08.04 containerd-shim 2342 root 20 0 720736 14472 4184 S 1.0 0.3 0:08.32 containerd-shim 4264 gonait 20 0 4200644 939184 36492 S 1.0 18.5 10:19.67 java 2543 gonait 20 0 11.1g 399700 23408 S 0.7 7.9 2:52.88 node 402 root 20 0 0 0 0 S 0.3 0.0 0:02.50 xfsaild/dm-0 2390 root 20 0 720480 14508 4160 S 0.3 0.3 0:07.69 containerd-shim 4082 gdm 20 0 714396 14716 9580 S 0.3 0.3 0:01.20 gsd-color 20194 root 20 0 164300 2428 1616 R 0.3 0.0 0:00.09 top 1 root 20 0 128420 7116 4216 S 0.0 0.1 0:02.93 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd 4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
-
vmstat
打印进程、内存、交换分区、IO和CPU等的统计信息
vmstat [options] [delay [count]]
[root@localhost /]# vmstat 10 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 3 0 0 407520 1080 2074708 0 0 165 71 1073 718 8 1 91 1 0 0 0 0 460616 1080 2074560 0 0 0 24 970 683 2 1 98 0 0 0 0 0 408968 1080 2074728 0 0 0 20 1091 711 7 1 92 0 0
-
mpstat
打印CPU的统计信息,查看CPU调度情况
mpstat [ 选项 ] [ <时间间隔> [ <次数> ] ]
[root@localhost /]# mpstat 1 Linux 3.10.0-1160.90.1.el7.x86_64 (localhost.localdomain) 2023年11月23日 _x86_64_ (1 CPU) 15时15分38秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 15时15分39秒 all 19.19 0.00 1.01 0.00 0.00 0.00 0.00 0.00 0.00 79.80 15时15分40秒 all 1.02 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 98.98 15时15分41秒 all 1.02 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 98.98 15时15分42秒 all 1.01 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 98.99 15时15分43秒 all 0.00 0.00 1.00 0.00 0.00 0.00 0.00 0.00 0.00 99.00
-
pidstat
打印进程的CPU占用情况
pidstat [ 选项 ] [ <时间间隔> [ <次数> ] ]
[root@localhost /]# pidstat 3 Linux 3.10.0-1160.90.1.el7.x86_64 (localhost.localdomain) 2023年11月23日 _x86_64_ (1 CPU) 15时22分12秒 UID PID %usr %system %guest %CPU CPU Command 15时22分15秒 0 1176 0.34 0.00 0.00 0.34 0 rsyslogd 15时22分15秒 42 1652 0.34 0.00 0.00 0.34 0 gnome-shell 15时22分15秒 999 2191 0.00 0.34 0.00 0.34 0 mysqld 15时22分15秒 1000 2543 0.34 0.34 0.00 0.68 0 node 15时22分15秒 1000 4264 1.01 0.34 0.00 1.35 0 java 15时22分15秒 UID PID %usr %system %guest %CPU CPU Command 15时22分18秒 999 2279 0.34 0.00 0.00 0.34 0 mongod 15时22分18秒 1000 2543 1.01 0.00 0.00 1.01 0 node 15时22分18秒 1000 4264 0.34 0.00 0.00 0.34 0 java 15时22分18秒 0 22208 0.00 0.34 0.00 0.34 0 pidstat
-
iostat
统计系统的io输入输出情况
iostat [ 选项 ] [ <时间间隔> [ <次数> ] ]
[root@localhost /]# iostat 3 Linux 3.10.0-1160.90.1.el7.x86_64 (localhost.localdomain) 2023年11月23日 _x86_64_ (1 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 7.51 0.00 1.02 0.49 0.00 90.98 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 9.35 156.54 69.60 2551850 1134585 dm-0 9.97 155.77 79.31 2539282 1292927 dm-1 0.01 0.14 0.00 2204 0
-
free
free [options]
统计系统内存使用情况[root@localhost /]# free -ht total used free shared buff/cache available Mem: 4.8G 2.5G 392M 11M 2.0G 2.1G Swap: 1.0G 0B 1.0G Total: 5.8G 2.5G 1.4G
-
sar
sar(System Activity Reporter 系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘 I/O、CPU 效率、内存使用状况、进程活动及 IPC 有关的活动等。
sar [ 选项 ] [ <时间间隔> [ <次数> ] ]
参考:Linux必会基础命令-sar命令# 查看cpu活动情况 [root@localhost /]# sar -u 1 3 Linux 3.10.0-1160.90.1.el7.x86_64 (localhost.localdomain) 2023年11月23日 _x86_64_ (1 CPU) 15时56分31秒 CPU %user %nice %system %iowait %steal %idle 15时56分32秒 all 50.51 0.00 11.11 0.00 0.00 38.38 15时56分33秒 all 2.04 0.00 0.00 0.00 0.00 97.96 15时56分34秒 all 0.00 0.00 0.00 0.00 0.00 100.00 平均时间: all 17.57 0.00 3.72 0.00 0.00 78.72
-
netstat
netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。
netstat [-vWeenNcCF] [<Af>] -r netstat {-V|--version|-h|--help}
netstat [-vWnNcaeol] [<Socket> ...]
netstat { [-vWeenNac] -I[<Iface>] | [-veenNac] -i | [-cnNe] -M | -s [-6tuw] } [delay]
参考:netstat命令详解[root@localhost /]# netstat -anp | grep 9200 tcp 0 0 0.0.0.0:9200 0.0.0.0:* LISTEN 2113/docker-proxy tcp 0 0 172.17.0.1:56982 172.17.0.2:9200 ESTABLISHED 2113/docker-proxy tcp 0 0 172.17.0.1:56986 172.17.0.2:9200 ESTABLISHED 2113/docker-proxy tcp 0 0 192.168.211.200:9200 172.17.0.6:35130 ESTABLISHED 2113/docker-proxy