我已经编写了一个代码来分析RHEL的文件系统统计信息(比如说io,文件总数等等)。现在,用户删除文件系统并创建一个具有相同名称的新文件系统。 现在我的代码无法区分文件系统和有关FS的显示数据,这会使用户感到困惑,因为用户属于新用户,哪些用户对旧FS感到困惑。 因为我的代码是按名称读取文件系统。因此,如果我获得OS分配的文件系统的唯一ID,它将有所帮助。 我希望OS每次创建文件系统时都会分配唯一的ID。
有人可以帮我解决这个问题吗?
答案 0 :(得分:1)
你最好的选择可能是存储除文件系统名称之外的其他识别信息,例如它的元数据,类型,分区的uuid等等......
答案 1 :(得分:1)
您可以检查文件系统的UUID,这对于每个文件系统应该是唯一的。
看看:
[root@server]# ls -l /dev/disk/by-uuid/
如果默认情况下/dev/disk/by-uuid
不存在(例如在RHEL4上),您仍然可以使用tune2fs
或blkid
查询UUID。例如:
[root@server]# tune2fs -l /dev/sda1 | awk '/Filesystem UUID/{print $3}'
或
[root@server]# blkid /dev/sda1 | awk '{print $3}'
P.S。如果您需要进行反向映射(找到具有特定UUID的设备),您可以使用findfs UUID=<the-uuid>