![如何查找在挂载点挂载了哪种设备?](https://linux22.com/image/891709/%E5%A6%82%E4%BD%95%E6%9F%A5%E6%89%BE%E5%9C%A8%E6%8C%82%E8%BD%BD%E7%82%B9%E6%8C%82%E8%BD%BD%E4%BA%86%E5%93%AA%E7%A7%8D%E8%AE%BE%E5%A4%87%EF%BC%9F.png)
如果我知道某种设备的安装路径,如何通过可编写脚本的 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)....