Chinaunix首页 | 论坛 | 博客
  • 博客访问: 502624
  • 博文数量: 119
  • 博客积分: 5054
  • 博客等级: 大校
  • 技术积分: 1305
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-03 13:13
文章分类

全部博文(119)

文章存档

2011年(4)

2010年(115)

我的朋友

分类: LINUX

2010-03-31 11:51:49

首先是了解一下UUID是什么,下面是引用维基百科的解释

通用唯一识别码 (Universally Unique Identifier, UUID)是一个软件建构的标准,亦为 自由软件基金会 (Open Software Foundation, OSF)的组织在 分散式计算环境 (Distributed Computing Environment, DCE)领域的一部份。

UUID 的目的,是让分散式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的UUID。在这样的情况下,就不需考虑资料库建立时的名称重复问题。目前最广泛应用的UUID,即是微软的Microsoft's Globally Unique Identifiers (GUIDs),而其他重要的应用,则有Linux ext2/ext3 档案系统、LUKS 加密分割区、GNOME、KDE、Mac OS X 等等。另外我们也可以在e2fsprogs 套件中的UUID 函式库找到实作。

硬盘分区UUID丢失的问题表现:在查看 sudo blkid 的命令输出是看不到分区的UUID,而查看 sudo fdisk -l 的命令输出可以看到该分区,并且可以通过 sudo mount -t fstype /dev/sdaX /mnt (fstype、X分别指分区的文件系统类型和分区号)命令挂载分区到目录,分区数据并没有任何的损坏。UUID丢失的直接结果是:在开机时会提示fstab中的某分区(以UUID形式表示)无法挂载到目录而不能成功进入系统。

问题的解决方法:(具体见

uuidgen会返回一个合法的uuid,结合tune2fs可以新生成一个uuid并写入ext2,3,4分区中:

比如新建或改变sda5的uuid(需要root权限)

uuidgen | xargs tune2fs /dev/sda5 -U


也可以在fstab中找到原uuid并写回分区,例如

tune2fs -U c1b9d5a2-f162-11cf-9ece-0020afc76f16 /dev/sda5


reiserfs 用 reiserfstune,jfs 用 jfs_tune,xfs 用 xfs_admin,具体请man。
修过 fat/ntfs 的 uuid 则需要微软的工具
阅读(10584) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~