常用命令
简洁版
# 显示当前系统中所有的 TCP 连接和监听端口信息,以及正在运行的进程和它们所占用的端口
ss -tnlp
# 查看磁盘空间
du -sh
# 清理缓存
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches
# 查看docker某镜像的版本
docker inspect redis | grep -i version
docker image inspect redis:latest | grep -i version
docker image inspect redis:latest | grep -i created
说明版
1、ss
ss -tnlp 是一个命令,用于显示当前系统中所有的 TCP 连接和监听端口信息,以及正在运行的进程和它们所占用的端口。其中:
- -t 表示只显示 TCP 连接信息。
- -n 表示以数字形式显示端口和 IP 地址,而不是以名称形式显示。
- -l 表示只显示监听状态的连接。
- -p 表示显示与每个连接相关联的进程信息。
通过 ss -tnlp 命令,可以方便地查看当前系统的网络连接情况,识别哪些进程在运行,哪些端口正在被占用,以及哪些连接是监听状态的。这对于网络故障排除和安全管理非常有用。
2、du
du(disk usage)是一个常用于查看磁盘空间使用情况的命令,以下是一些常见的 du 命令用法:
-
显示当前目录下所有文件和子目录的磁盘使用情况:
du
-
显示指定目录下所有文件和子目录的磁盘使用情况:
du /path/to/dir
-
显示指定目录下所有文件和子目录的磁盘使用情况,并按照大小从大到小排序:
du -sh /path/to/dir/* | sort -hr
-
显示当前目录下所有文件和子目录的磁盘使用情况,并只显示总大小:
du -sh
-
显示当前目录下所有文件和子目录的磁盘使用情况,并只显示文件夹的总大小,不显示文件:
du -sh */
-
显示当前目录下所有文件和子目录的磁盘使用情况,并只显示文件夹的总大小,不显示文件,同时按照大小从大到小排序:
du -sh */ | sort -hr
-
显示当前目录下所有文件和子目录的磁盘使用情况,并只显示指定深度的目录:
du -h --max-depth=1
-
显示当前目录下所有文件和子目录的磁盘使用情况,并只显示指定深度的目录,同时按照大小从大到小排序:
du -h --max-depth=1 | sort -hr
上述命令中,常用的选项包括:
-h
:以人类可读的方式显示文件大小。-s
:只显示总大小,不显示子目录大小。-c
:显示所有目录和文件的总大小。--max-depth=n
:只显示指定深度的目录。*
:通配符,表示匹配所有文件和目录。
3、echo 3 > /proc/sys/vm/drop_caches
参考:清理内存缓存
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches
它们所表示的含义为:
echo 1 > /proc/sys/vm/drop_caches:表示清除pagecache。
echo 2 > /proc/sys/vm/drop_caches:表示清除回收slab分配器中的对象(包括目录项缓存和inode缓存)。
slab分配器是内核中管理内存的一种机制,其中很多缓存数据实现都是用的pagecache。
echo 3 > /proc/sys/vm/drop_caches:表示清除pagecache和slab分配器中的缓存对象。
4、docker inspect
docker inspect
是一个Docker命令,用于获取Docker对象(如镜像、容器、网络等)的详细信息。它可以查看对象的元数据、配置信息、网络设置和挂载点等详细信息,帮助用户了解和管理Docker对象。
具体来说,docker inspect
命令的语法如下:
docker inspect [OPTIONS] OBJECT [OBJECT...]
其中,OBJECT
表示要查看的Docker对象,可以是镜像、容器、网络等。OPTIONS
是一些可选参数,用于指定输出的格式、只输出部分信息等。
执行docker inspect
命令时,它会输出一个JSON格式的对象,包含有关指定Docker对象的详细信息。这个JSON对象可以包含多个键值对,每个键值对都描述对象的一个方面。例如,对于一个容器,它可以包含以下键值对:
Id
:容器的唯一ID。Created
:容器的创建时间。Config
:容器的配置信息,包括启动命令、环境变量等。NetworkSettings
:容器的网络设置信息,包括IP地址、端口映射等。Mounts
:容器的挂载点信息,包括挂载的主机目录、容器内目录等。
根据不同的Docker对象,docker inspect
命令输出的JSON对象可能会有所不同,但都包含有关对象的详细信息。
总之,docker inspect
是一个用于获取Docker对象详细信息的命令,可以帮助用户了解和管理Docker对象。