如何查找在挂载点挂载了哪种设备?

如何查找在挂载点挂载了哪种设备?

如果我知道某种设备的安装路径,如何通过可编写脚本的 bash 方法获取确定设备类型的信息?

举个例子,假设我的挂载点是/mnt/drivex,我知道那里挂载了一些东西,因为我已经使用过:

mountpoint /mnt/drivex

它返回了有用的消息/mnt/drivex is a mountpoint。这可能是 USB 驱动器、内部驱动器上的分区或网络驱动器(如 Samba 或 NFS 驱动器)。

我尝试使用 fstype 和 source 输出df:对于 samba:

$ df --output=fstype /mnt/drivex | tail -n1
 cifs
$ df --output=source /mnt/drivex | tail -n1
 //server/SHARE

内部分区:

$ df --output=fstype /mnt/drivex | tail -n1
ext4
$ df --output=source /mnt/drivex | tail -n1
/dev/sdb2

我想如果它是一个块设备那么我可以lsblk用设备名称进行查询。

如何确定已安装的驱动器类型?理想情况下,在识别驱动器类型时,输出一个简单的字符串,例如“Samba”或“USB”,可以将其保存到变量中。

答案1

您可以安装u盘

sudo apt-get 安装 udisks

然后运行:

udisksctl status

它将输出以下内容:Slimtype DVD、外部(HHD)USB DISK 2.0(或 3.0)....

相关内容