Administrator
Published on 2024-06-01 / 50 Visits
0

linux-基础命令

linux-基础命令

pwd​查看当前所在路径

pwd 查看当前所在目录

cd​切换路径

cd 切换目录
cd 返回当前用户目录和 cd ~ 命令相同

cd - 切换至上一步路径

mkdir​创建目录

mkdir 目录名 创建目录

mkdir -p 目录名1/目录名2/... 递归方式创建目录

touch​创建文件

touch 文件名 创建文件

cp​复制

cp [选项] 源文件或目录目标文件或目录

  • -f 强制复制,不提醒
  • -i 复制,提醒
  • -p 权限不变
  • -r 复制目录时必须添加

rm​删除

rm [选项] 文件或目录 删除文件

  • -f 强制删除,不提醒
  • -i 删除,提醒
  • -r 删除目录时必须添加

mv​移动或重命名

mv 源文件或目录目标文件或目录

源路径和目标路径相同时——重命名

ls​显示当前目录的内容

ls [选项]

  • -l 以列表形式显示
  • -A 显示所有文件,包括隐藏文件或目录
  • -d 显示目录属性,而不是内用
  • -h 以人性化的方式显示单位

lsof

lsof 是一个命令行实用程序,用于列出有关由各种进程打开的文件的信息。在 unix 中,一切都是文件:管道、套接字、目录、设备等。因此,通过使用 lsof,您可以获得有关任何已打开文件的信息。

  • -a:列出打开文件存在的进程;
  • -c<进程名>:列出指定进程所打开的文件;
  • -g:列出GID号进程详情;
  • -d<文件号>:列出占用该文件号的进程;
  • +d<目录>:列出目录下被打开的文件;
  • +D<目录>:递归列出目录下被打开的文件;
  • -n<目录>:列出使用网络链接的进程文件。

命令示例:

列出打开特定文件的进程

lsof /var/log/syslog

列出属于用户拥有的进程的所有打开文

lsof -u username

杀死属于特定用户的所有进程

lsof -t -u username`

列出所有网络连接

lsof -i

列出特定进程正在使用的所有网络文件

lsof -i -a -c ssh

列出正在侦听特定端口的进程

lsof -i :25

​统计目录或者文件占用空间">​du ​统计目录或者文件占用空间

du [选项] 目录或者文件

  • -a 统磁盘占用时包括所有文件或者目录
  • -s 统计总大小
  • -h 以人性化的方式显示单位

which​查找用户执行命令的路径

which [命令]

find​查找文件或者目录

find [查找范围] [条件表达式] find 查找路径选项文件名

  • -size 文件大小 + - 表示文件大小 -size +1024k
  • -user 按用户
  • -type 按文件类型 文件f 目录d 块设备文件 b 字符c -type f
  • -name 名字 *代表多个字符,?号表示一个字符
  • -a 且 -o或 多个查找条件时使用
  • -mtime<24小时数>:查找在指定时间曾被更改过的文件或目录 + - 表示文件修改天数
  • -perm<权限数值>:查找符合指定的权限数值的文件或目录;其中 /ugo 表示分别对应文件属主、同组用户和其他用户+x 表示具有执行权限 find / -perm/ugo+x

> 输出结果">> 输出结果

把查找结果输出到benet文件中

Find / -name 123 > benet

cat​查看小文件内容

more less​查看大文件内容分页查看 全屏查看

More 只能向下翻页

Less 向上向下

wc​统计文件

wc [选项]

  • -l 统计行数
  • -c 统计字节
  • -w 统计单词个数

grep​过滤文件内容

grep [选项] [条件] 文件 grep -v "^$" /etc/yum.config

  • -i 忽略大小写
  • -v 取反 "^$" 匹配空行
  • -n 显示行号

gzip​、bzip2 ​压缩、解压

Gzip [数值] 文件、目录 压缩

Gunzip 文件 或 gzip -d 文件 解压

Bzip2 同上

tar​归档

tar [选型] 包名源文件或目录

Zcvf 打包 zxf 解包

  • -C 解压时指定路径
  • -f 表示归档文件
  • -x 解开.tar格式
  • -z 调用gzip程序进行压缩或解压
  • -j 调用bzip2
  • -v 输出详细信息

vim​文件编辑

设置行数 :set nu

dd 删除光标所在行 #dd 从光标所在第#​行开始删除末行模式下%d删除全部

yy 复制光标所在行 #yy 从光标所在第#​行开始复制

P 粘贴行 粘贴位置光标以下

/ 查找字符 /字符 n向下查招 N向上查找

rpm​安装

rpm [选项] 文件

  • -q 显示已安装的软件
  • -qa 显示以rpm方式安装的软件
  • -qi [软件名] 显示指定软件详细信息
  • -ql [软件名] 显示指定软件所生成文件
  • -qf [目录或文件] 显示这个目录或文件有那个软件产生
  • -qp 显示没有安装软件
  • -qpa 显示以rpm方式安装的软件
  • -qpi [软件名] 显示指定软件详细信息
  • -qpl [软件名] 显示指定软件所生成文件
  • -i 安装
  • -e 卸载
  • -U 升级软件,未安装,直接安装
  • -F 升级软件,未安装,不安装
  • -h 显示安装进度
  • -v 显示详细信息
  • --force 强制信息
  • --nodeps 强制卸载
  • --initdb 维护rpm数据库
  • --import [文件] 导入公钥

make​源码安装

1解压安装包

2配置进入解压目录

./configure --prefix=目录

3 make

4 make install

USERADD、USERDEL、USERMOD创建、删除、修改用户">USERADD、USERDEL、USERMOD创建、删除、修改用户

useradd ​[选项] 用户 添加用户

useradd tt
  • -u 指定用户UID
  • -d 指定用户宿主目录
  • -e 指定用户账户的失效时间
  • -g 指定用户的基本组可以使用GID
  • -G 指定用户的附加组可以使用GID
  • -M 不建立宿主目录
  • -s 指定用户登录shell

userdel ​[选项] 用户 删除用户

userdel tt
  • -r 删除用户所属目录

usermod ​[选项] 用户 修改用户属性

usermod -u 777 tt
  • -u 指定用户UID
  • -d 指定用户宿主目录
  • -e 指定用户账户的失效时间
  • -g 指定用户的基本组可以使用GID
  • -G 指定用户的附加组可以使用GID
  • -M 不建立宿主目录
  • -s 指定用户登录shell
  • -l 更改用户名称
  • -L 锁定用户
  • -U 解锁用户

Passwd​修改用户密码

Passwd [选项] 用户设置用户密码

  • -d 清空用户密码
  • -l 锁定用户
  • -S 查看用户状态
  • -u 解锁用户

group​组账号的管理

Groupadd [选项] 组名创建组

-g 指定组id

Gpasswd [选项] 用户组 增删组成员

-a 添加用户到组

-d 删除组成员

-M 同时添加多个成员到组

Groups 用户 查看用户的所属组

Groupdel 组 删除组

id 用户 查看用户的id

figer 用户 查看用户的登录属性

w 查看当前主机用户的登录情况

hmod​修改文件或目录权限

Chmod [选项] nnn 文件或目录

-R 以递归的方式赋予属性

chown​修改文件或目录的所属主或属组

Chown 属主:属组文件或目录

FDISK、MKFS、MOUNT创建分区,创建文件系统,挂载分区">FDISK、MKFS、MOUNT创建分区,创建文件系统,挂载分区

Fdisk -l 以列表形式显示本机磁盘

Fdisk 硬盘 进入硬盘

  • -n 新建分区
  • -p 显示磁盘和分区
  • -t 修改分区ID xfs 83 Swap 82 LVM 8e NTFS 86

Mkfs -t 文件系统 分区 //设置分区文件系统

Mkswap 分区 //设置swap分区

Mkfs -t vfat -F 32 分区 或Mkfs.vfat -F 32 分区 //创建FAT32分区

MOUNT、UMOUNT 装载,卸载">MOUNT、UMOUNT 装载,卸载

Mount 选择硬盘目录

Umount 硬盘所挂载目录

vim /etc/fstab 设置分区自动挂载">vim /etc/fstab 设置分区自动挂载

DF 显示分区占用情况">DF 显示分区占用情况

df -hT 人性化显示分区占用情况

LVM机制">LVM机制

PV 物理卷  VG卷组  LV逻辑卷

功能 物理卷管理 卷组管理 逻辑卷管理
Scan扫描 pvscan vgscan lvscan
Create建立 pvcreate vgcreate lvcreate
Display显示 pvdisplay vgdisplay lvdisplay
Remove删除 pvremove vgremove lvremove
Extend扩展 vgextend lvextend
Reduce减少 vgreduce lvreduce
Vgcreate 卷名 物理卷1,物理卷2..                                                                              //**创建卷组**

Lvcreate   -L 容量大小     -n 逻辑卷名     卷组名                                                         //**创建逻辑卷**

Lvextend -L   +大小 /dev/卷组名/逻辑卷                                                                                //**扩展逻辑卷**

Mount -o usrquota,grpquota  /dev/卷组名/逻辑卷目录                                                         //**队挂载逻辑分区添加配额功能**

Xfs_quota -x -c ‘limit -u/g bsoft=n bhard=n isoft=n ihard =n 用户或组’ 挂载点

                                     对用户/组设置磁盘容量,文件数

xfs_quota -x -c ‘report -abi’                                                                                                                      //**显示配额使用情况**

Dd 验证磁盘配额功能

在测试过程中,为了快速看到效果,可以使用dd转换工具。dd命令是一个设备转换和复制命令,分别使用"if="选项指定输入设备(或文件),"of="选项指定输出设备(或文件),"bs="选项指定读取数据块的大小,"count="指定读取数据块的数量。例如,以下操作可以向//mailbox目录下写入一个名为 ddtest,data的测试文件,大小为4MB(分四次读取,每次 1MB),复制来源为设备文件/dev/zero.

dd if=/dev/zero of=/mailbox/ddtest. data bs=1M count=4

Ps 查看系统进程">Ps 查看系统进程

常用组合 aux

ps aux
  • -a 所有
  • -u 以用户格式显示
  • -x 当前用户所在终端进程
  • -e 系统信息
  • -l 以长格式显示

STAT 显示信息 S 休眠 R 运行 < 高优先

Top 进程动态显示">Top 进程动态显示

P安cpu排 M安内存排 N 按启动时间排 K默认杀掉第一进程

PGREP安终端、用户显示进程">PGREP安终端、用户显示进程

Pgrep -u [用户] 按用户查找

-t [终端] 安终端查找

& 操作符 放在命令最后,使命令挂起在后端">& 操作符 放在命令最后,使命令挂起在后端

job -l​ 查看后台挂起的进程

bg​(后台进行)/fg(前台进行) 任务ID 使任务在前/后台运行

kill​ 结束进程

Kill -9 PID 强制结束任务

Killall -9 进程名 强制结束一类进程

pKill -u 用户 强制结束用户进程

-t 终端 强制结束终端进程

at​时间 创建一次性任务

atq 查询执行任务

atrm  任务id 删除一次性任务

croutab​创建周期任务

-e 编辑

-u 指定用户

-l 查看任务计划

-r 删除

所有 - 范围 ,间隔 */3 隔3天

* * * * * command
五个星号分别表示分钟、小时、日、月、周几,command 表示要执行的命令或脚本文件路径。

netstat​ 查看网络状态

Netstat [选项] 常用-anpt

  • -a像是当前主机中所有活动的网信息
  • -n以数字显示主机地址
  • -t 查看TCP
  • -u 查看UDP
  • -p 显示网络简介相关联的进程号

ifconfig​设置网络

临时修改网卡ip子网掩码

Ifconfig 网络接口名称 IP地址[/子网地码长度]

为网卡绑定虚拟接口

Ifconfig 网络接口名称:0 ip

永久修改网卡ip子网掩码
Vim /etc/sysconfig/network-scripts/ifcfg-*
		TYPE=Ethernet			# 类型
		BOOTPROTO=static			# 网络状态:静态(static)动态(dhcp)	
		DEVICE=ens33			#网卡名称	
		ONBOOT=yes			#开机自启
		IPADDR=192.168.4.11		#ip	
		NETMASK=255.255.255.0		#掩码	
		GATEWAY=192.168.4.1		#网关

打开和关闭网卡
Ifconfig 网卡 down/up 或者Ifdown/up 网卡                                                                //关/开网卡

lsblk​ 用于列出所有可用块设备的命令

lsblk 
选项 含义
-d 仅列出磁盘本身,并不会列出该磁盘的分区数据
-f 同时列出该磁盘内的文件系统名称
-i 使用 ASCII 的线段输出
-m 同时输出该设备在 /dev​ 下面的权限数据(rwx 的数据)
-p 列出该设备的完整文件名
-t 列出该磁盘设备的详细数据,包括磁盘伫列机制、预读写的数据量大小等

image

字段名称 字段含义
NAME 设备的文件名,省略 /dev​ 等前导目录
MAJ:MIN 主要:次要设备代码
RM 是否为可卸载设备,如光盘、USB 磁盘等
SIZE 容量
RO 是否为只读设备
TYPE 种类:磁盘(disk)、分区(partition) 、只读存储器(rom)(注意:这里可能是ROM或RAM的误写,通常ROM表示只读存储器,RAM表示随机存取存储器,但在lsblk​中应该是表示分区类型)
MOUNTPOINT 挂载点(注意:这里字段名称可能是一个拼写错误,应为MOUNTPOINT​)
FSTYPE 文件系统
LABEL 标签
UUID 全域单一识别码

blkid​ 单独显示磁盘的UUID

blkid

image

parted ​用来列出磁盘的分区表类型以及分区信息

parted /dev/vda print

image

grep​ 命令查询

  1. test.txt文件中查找出特定字符"the"所在位置
grep -n 'the' test.txt
  1. test.txt文件中查找出特定字符"the"所在位置,不区分大小写

注意:在原始命令中,您使用了“the“(带有不必要的引号),这里我假设您是指“the”。

grep -in 'the' test.txt
  1. 查找不包含"the"字符的行
grep -vn 'the' test.txt
  1. test.txt文件中查找出"shirt"与"short"这两个字符串,[io]”表示匹配“i”或者“o”
grep -n 'sh[io]rt' test.txt
  1. 查找包含重复单个字符"oo"
grep -n 'oo' test.txt
  1. 查找“oo”前面不是“w”的字符串
grep -n '^[^w]oo\|[^w]oo' test.txt
# 或者,如果你想要确保"oo"不是任何小写字母后面
grep -n '[^a-z]oo' test.txt
  1. 包含数字的行
grep -n '[0-9]' test.txt
  1. 查询以“the”字符串为行首的行

这实际上已经是默认的 grep​ 行为,但你可以明确指定:

grep -n '^the' test.txt
  1. 以小写字母开头的行
grep -n '^[a-z]' test.txt
  1. 查询不以字母开头的行
grep -n '^[^a-zA-Z]' test.txt
  1. 查找以某一特定字符结尾的行(例如.为特殊字符,需要转义)
grep -n '\.$' test.txt
  1. 查询空白行
grep -n '^$' test.txt
  1. 查找“w??d”的字符串,即共有四个字符,以w开头d结尾
grep -n 'w..d' test.txt
  1. 匹配含有多个o的字符串
grep -n 'ooo' test.txt  # 这只是匹配至少3个'o'
  1. 查询以w开头d结尾,中间包含至少一个o的字符串

注意:这里不需要特定的 grep​ 选项,因为默认就是匹配任意字符。

grep -n 'wood' test.txt  # 这只是匹配"wood",而不是任意o
# 如果想要匹配至少一个o
grep -n 'wo*d' test.txt  # 这里'*'表示0个或多个'o'
grep -n 'wo\+d' test.txt  # 使用扩展正则表达式,+表示至少一个'o'
  1. 查询以w开头d结尾,中间的字符可有可无的字符串
grep -n 'w.*d' test.txt
  1. 查询任意数字所在行

(与第7点相同)

grep -n '[0-9]' test.txt
  1. 查询两个0的字符

使用基本正则表达式(BRE):

grep -n 'o\{2\}' test.txt

或者使用扩展正则表达式(ERE):

grep -En 'oo' test.txt
  1. 查询以w开头以d结尾,中间包含2~5个o的字符串
grep -n 'wo\{2,5\}d' test.txt
  1. 查询以w开头以d结尾,中间包含2以上0的字符串
grep -n 'wo\{2,\}d' test.txt

sed ​文本解析

sed[选项] '操作' 参数

[选项]

  • -e或--expression=:表示用指定命令或者脚本来处理输入的文本文件
  • -f或--file=:表示用指定的脚本文件来处理输入的文本文件。
  • -h或--help:显示帮助。
  • -n、--quiet或silent:表示仅显示处理后的结果。
  • -i:直接编辑文本文件

[操作]

  • a:增加,在当前行下面增加一行指定内容。
  • c:替换,将选定行替换为指定内容。
  • d:删除,删除选定的行。
  • i :插入,在选定行上面插入一行指定内容。
  • p:打印,如果同时指定行,表示打印指定行:如果不指定行,则表示打印所有内容:如果有非打印字符,则以ASC码输出。其通常与“一n”选项一起使用。
  • s:替换,替换指定字符。
  • y:字符转换。

命令示例:

下面是您提供的 sed​ 命令的 Markdown 格式版本,以有序列表的形式展示:

  1. 输出所有内容,等同于 cat test.txt

    sed -n 'p' test.txt
    
  2. 输出第3行

    sed -n '3p' test.txt
    
  3. 输出3~5行

    sed -n '3,5p' test.txt
    
  4. 输出所有奇数行

    sed -n 'p;n' test.txt
    
  5. 输出所有偶数行

    sed -n 'n;p' test.txt
    
  6. 输出第1~5行之间的奇数行(第1、3、5行)

    sed -n '1,5{p;n}' test.txt
    
  7. 输出第10行至文件尾之间的偶数行

    sed -n '10,${n;p}' test.txt
    
  8. 输出包含 the​ 的行

    sed -n '/the/p' test.txt
    
  9. 输出从第4行至文末第一个包含 the​ 的行

    sed -n '4,/the/p' test.txt
    
  10. 输出包含 the​ 的行所在的行号

    sed -n '/the/=' test.txt
    
  11. 输出包含单词 wood​ 的行

    sed -n '/\<wood\>/p' test.txt
    
  12. 输出以 PI​ 开头的行

    sed -n '/^PI/p' test.txt
    
  13. 输出以数字结尾的行

    sed -n '/[0-9]$/p' test.txt
    
  14. 删除第3行(注意这里原始命令有错误,应使用管道 |​ 或先处理文件名)

    nl test.txt | sed '3d'
    # 或者直接处理文件
    sed -i '3d' test.txt
    
  15. 删除第3~5行

    nl test.txt | sed '3,5d'
    # 或者直接处理文件
    sed -i '3,5d' test.txt
    
  16. 删除包含 cross​ 的行

    nl test.txt | sed '/cross/d'
    # 或者直接处理文件
    sed -i '/cross/d' test.txt
    
  17. 删除不包含 cross​ 的行

    nl test.txt | sed '/cross/!d'
    # 或者直接处理文件
    sed -i '/cross/!d' test.txt
    
  18. 删除以小写字母开头的行

    sed '/^[a-z]/d' test.txt
    # 或者直接处理文件
    sed -i '/^[a-z]/d' test.txt
    
  19. 删除以 .​ 结尾的行

    sed '/\.$/d' test.txt
    # 或者直接处理文件
    sed -i '/\.$/d' test.txt
    
  20. 删除所有空行

    sed '/^$/d' test.txt
    # 或者直接处理文件
    sed -i '/^$/d' test.txt
    

awk

awk包含几个特殊的内建变量

  • FS:指定每行文本的字段分隔符,默认为空格或制表位。
  • NF:当前处理的行的字段个数,
  • NR:当前处理的行的行号(序数)。
  • $0:当前处理的行的整行内容。
  • $n:当前处理行的第n个字段(第n列)。
  • FILENAME:被处理的文件名.
  • RS:数据记录分隔,默认为n,即每行为一条记录。

命令示例:

  1. 输出所有内容,等同于 cat test.txt
awk '{print}' test.txt
  1. 这个命令尝试做同样的事情,但同样有错误:
# 正确的命令和第一个一样
awk '{print}' test.txt
  1. 输出第1~3行内容
awk 'NR==1,NR==3{print}' test.txt
# 但这个命令实际上只会输出第1行,因为NR==1,NR==3是一个范围表达式,它不会包括NR==3这一行。
# 要输出第1到第3行,可以使用:
awk 'NR>=1 && NR<=3{print}' test.txt
  1. 输出第1~3行内容(这个命令是正确的)
awk 'NR>=1 && NR<=3{print}' test.txt
  1. 输出第1行、第3行内容
awk 'NR==1 || NR==3{print}' test.txt
  1. 输出所有奇数行的内容
awk '(NR%2)==1{print}' test.txt
  1. 输出所有偶数行的内容
awk '(NR%2)==0{print}' test.txt
  1. 输出以root开头的行(在 /etc/passwd​ 文件中)
awk '/^root/{print}' /etc/passwd
  1. 输出以nologin结尾的行(在 /etc/passwd​ 文件中)
awk '/nologin$/{print}' /etc/passwd
  1. 统计以 /bin/bash​ 结尾的行数
awk '/\/bin\/bash$/{x++}; END {print x}' /etc/passwd
# 这个命令确实等同于 `grep -c "/bin/bash$" /etc/passwd`
  1. 统计以空行分隔的文本段落数(在 /etc/squid/squid.conf​ 文件中)
awk 'BEGIN{RS=""}; END{print NR}' /etc/squid/squid.conf
  1. 输出每行中(以空格或制表位分隔)的第3个字段:

    awk '{print $3}' test.txt
    

    (这里不需要设置 FS​(字段分隔符),因为默认就是空格或制表位。)

  2. 输出每行中的第1、3个字段(假设字段由冒号分隔,比如 /etc/shadow​ 文件):

    awk -F: '{print $1,$3}' /etc/shadow
    

    (这里我们设置了字段分隔符为冒号 -F:​。)

  3. 输出密码为空的用户的 shadow​ 记录:

    awk -F: '$2 == "" {print}' /etc/shadow
    

    (这里我们检查第二个字段(密码字段)是否为空字符串。)

  4. 输出以冒号分隔且第7个字段中包含 /bash​ 的行的第1个字段(这里应该是 /etc/passwd​ 文件):

    awk -F: '$7 ~ /bash/ {print $1}' /etc/passwd
    

    (这里我们检查第七个字段是否包含字符串 /bash​。)

  5. 输出包含8个字段且第1个字段中包含 nfs​ 的行的第1、2个字段(这里假设是 /etc/services​ 文件):

    awk -F: 'NF==8 && $1 ~ /nfs/ {print $1,$2}' /etc/services
    

    (注意:/etc/services​ 通常不是由冒号分隔的,但这里我们假设它是为了符合您的示例。如果它是其他分隔符,您需要更改 -F​ 的值。)

  6. 输出第7个字段既不为 /bin/bash​ 也不为 /sbin/nologin​ 的所有行(这里应该是 /etc/passwd​ 文件):

    awk -F: '$7 != "/bin/bash" && $7 != "/sbin/nologin" {print}' /etc/passwd
    

    (这里我们检查第七个字段是否不等于 /bin/bash​ 和 /sbin/nologin​。)

chattr​ 命令

chattr​ 用于改变文件或目录的扩展属性。

chattr [+-=AacDdiIjsSuStTu] [文件或目录]

选项:

  • +​:添加指定的属性。
  • -​:删除指定的属性。
  • =​:设置指定的属性。

属性:

  • a​:只能追加数据,不能删除或覆盖。
  • A​:不要备份文件。
  • c​:将文件或目录压缩后存储。
  • d​:当目录被删除时,使它的内容也被删除。
  • D​:用于目录,表示该目录的压缩状态将传递给新创建的子目录和文件。
  • i​:不能修改文件(不能被删除、重命名、链接或写入)。
  • j​:在数据写入之前尝试将数据存储在日志中。
  • s​:在文件被删除时,将其内容归零(删除内容但不释放空间)。
  • S​:如果文件被删除,它的块将被写入磁盘之前清除。
  • u​:当文件被删除时,其内容将保存,直到文件系统的空间被其他文件占用。
  • t​:禁用文件的尾部合并。
  • T​:启用文件或目录的跟踪模式。
  • u​:当文件被设置为不可变时,也设置其atime(访问时间)。

lsattr​ 命令

lsattr​ 用于列出文件或目录的扩展属性。

lsattr [文件或目录]

ldd​ 和 lsblk​ 是两个在 Linux 系统中常用的命令行工具,它们分别用于不同的目的。

ldd

ldd​(List Dynamic Dependencies)命令用于显示一个可执行文件或共享库所依赖的动态链接库(shared libraries)。这对于理解程序如何在运行时加载和链接库文件非常有用。

命令格式:

ldd [options] file

示例:

ldd /bin/ls

这将显示 /bin/ls​ 命令所依赖的所有动态链接库,以及它们在文件系统中的位置。``

lsblk

lsblk​(List Block Devices)命令用于列出系统中所有可用的块设备(如硬盘、分区、CD/DVD驱动器等),以及它们之间的层次结构。这对于查看磁盘和分区布局、检查设备名称和挂载状态非常有用。

命令格式:

lsblk [options] [device]

示例:

lsblk

这将列出系统中所有可用的块设备及其分区。

lsblk -f

这将显示设备的文件系统类型和挂载点。

lsblk /dev/sda

这将显示 /dev/sda​ 设备及其分区的详细信息。

blkid

blkid​ 是一个在 Linux 系统中用于定位和/或打印块设备属性的命令行工具。blkid​ 可以用来查询已挂载的文件系统或尚未挂载的设备的 UUID(Universally Unique Identifier,通用唯一识别码)和文件系统类型等信息。

基本用法

blkid [选项] [设备]

常用选项

  • -o​: 指定输出格式。例如,-o list​ 会以列表的形式输出信息。
  • -U UUID​: 通过 UUID 查找设备。
  • -L LABEL​: 通过文件系统的标签(LABEL)查找设备。
  • -d​: 显示设备名称。
  • -t TYPE​: 只显示指定类型的文件系统。
  • -p​: 显示设备路径而不是设备名称。

示例

  1. 列出所有块设备的 UUID 和文件系统类型
blkid
  1. 只显示 /dev/sda1的信息
blkid /dev/sda1
  1. 以列表格式显示所有块设备的信息
blkid -o list
  1. 通过 UUID 查找设备

假设你知道一个 UUID 是 UUID="1234-ABCD"​,你可以这样查找对应的设备:

blkid -U 1234-ABCD
  1. 通过文件系统标签查找设备

假设你知道一个文件系统的标签是 MYLABEL​,你可以这样查找对应的设备:

blkid -L MYLABEL

输出解释

blkid​ 的输出通常包含设备的名称(如 /dev/sda1​)、UUID、文件系统类型(如 ext4​)、以及可能的其他信息,如分区类型(如 GUID_PARTITION_SCHEME​ 或 DOS_PARTITION_SCHEME​)和分区标签(如 msdos​)