分页: 1 / 2

硬盘分区的UUID丢失(求解)(已解决)

发表于 : 2010-03-30 11:52
Jarson
笔记本,ubuntu 9.10单系统,硬盘分区全部是ext4文件系统。
昨天关机前安装了gparted工具,但安装完后什么都没有动。昨天开机的时间比较长,12个钟吧,而且也一直挂着amule下载(下载的速度也比较快)。
现遇到的问题:今天开机后发现硬盘分区的最后一个分区的UUID丢失了,使用sudo blkid命令查看不到该分区的UUID,其实在开机时就提示fstab文件中的某个分区(UUID形式表示)无法挂载到目录,从而进入的系统的修复模式。幸好是最后一个分区(不过该分区最大,200多G,主要的数据盘 :em20 幸运中的不幸吧),要不然连系统都进不去。虽然sudo blkid命令看不到该分区的UUID,但是使用sudo fdisk -l命令可以看到该分区还在,而且可以手动把它挂载到目录,使用的是sudo mount -t ext4 /dev/sdaX /mnt命令,还好所有的数据都在并没有丢失,而丢失的只有该分区的UUID(重启后还是看不到) ,不懂求解。
可能的原因会是什么呢?(会是ext4文件系统的问题吗?)

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 11:55
adagio
fsck一下嘛

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 13:30
qiang_liu8183
这玩意还能丢?

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 13:39
速腾1994
啊!丢了。fdisk试试 :em04

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 13:42
jxhow
qiang_liu8183 写了:这玩意还能丢?
:em20

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 13:51
Jarson
在维基那里查到的关于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 库找到实现。
是实情啊,我也觉得奇怪。在sudo blkid命令的输出中确实没有那个分区的UUID,而sudo fdisk -l中是可以看到该分区的,并且是可以挂载的,数据都还在而且没有损坏什么的。我也郁闷,这个磁盘的UUID在linux系统中是由谁生成的?我已经转移数据并使用gparted重新对该分区进行分割调整了,新生成的分区有新的UUID了。
ps:难道这个和我安装gparted有关,可是我之前只是安装gparted并没有用它折腾硬盘呀 :em20

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 13:59
lainme
我也丢过……同求解

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 14:04
wangdu2002
可能是保存UUID的扇区的信息意外丢失了,LiveCD启动,fsck看看有啥效果。 :em06

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 14:13
Jarson
lainme 写了:我也丢过……同求解
哈哈,仁兄后来是怎么解决的?虽然觉得修过fstab中使用/dev/sdaX的方式挂载该分区可以修复系统(我没有这样做),可这问题还是希望有了解的前辈解疑一下。召唤小苹果、大熊、pt……兄 :em06

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 14:18
Jarson
wangdu2002 写了:可能是保存UUID的扇区的信息意外丢失了,LiveCD启动,fsck看看有啥效果。 :em06
可惜现在已经无法“恢复现场”了,使用fsck会有用不?个人感觉fsck不是干这事的哦 :em06 ,要是fsck,应该check哪个分区?
当时有点心急,因为虽然这分区比较大,还好数据还不是很多,40G左右,所以最笨的就是转移数据再调整分区,正好这两天有在硬盘中安装arch的冲动,所以……

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 14:23
速腾1994
她们都是女性

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 15:17
billbear
不知道为什么会丢失
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" 则需要微软的工具
http://technet.microsoft.com/en-us/sysi ... 97436.aspx

Re: 硬盘分区的UUID丢失(求解)

发表于 : 2010-03-30 18:17
Jarson
十分感谢billbear兄 :em63 ,原来问题解决的步骤是这么的简单(简单的背后十分的不简单^_^)。

Re: 硬盘分区的UUID丢失(求解)(已解决)

发表于 : 2010-03-30 18:22
木泥黑

代码: 全选

1. sudo blkid
/dev/sda1: UUID="9ADAAB4DDAAB250B" TYPE="ntfs"
/dev/sdb1: UUID="B2FCDCFBFCDCBAB5" TYPE="ntfs"
/dev/sdb5: UUID="46FC5C74FC5C5FEB" TYPE="ntfs"
/dev/sdb6: TYPE="swap" UUID="2cec6109-5bcf-45a3-ba1b-978b041c037f"
/dev/sdb8: UUID="9ee6f22d-b394-422c-9b4a-1525a3220942" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdb7: UUID="4bcb9381-6e25-4304-8743-f882039ff3ad" TYPE="ext3"

2. ls -l /dev/disk/by-uuid
lrwxrwxrwx 1 root root 10 2008-05-15 22:37 2cec6109-5bcf-45a3-ba1b-978b041c037f -> ../../sdb6
lrwxrwxrwx 1 root root 10 2008-05-15 22:37 46FC5C74FC5C5FEB -> ../../sdb5
lrwxrwxrwx 1 root root 10 2008-05-15 22:37 4bcb9381-6e25-4304-8743-f882039ff3ad -> ../../sdb7
lrwxrwxrwx 1 root root 10 2008-05-15 22:37 9ee6f22d-b394-422c-9b4a-1525a3220942 -> ../../sdb8

3. sudo vol_id /dev/sda1
ID_FS_USAGE=filesystem
ID_FS_TYPE=reiserfs
ID_FS_VERSION=3.6
ID_FS_UUID=be6d8295-a1c4-48e9-b68d-f4b043cd5f2c
ID_FS_UUID_ENC=be6d8295-a1c4-48e9-b68d-f4b043cd5f2c
ID_FS_LABEL=
ID_FS_LABEL_ENC=
ID_FS_LABEL_SAFE=

Re: 硬盘分区的UUID丢失(求解)(已解决)

发表于 : 2010-03-30 18:27
jxhow
熊哥威武 :em11 :em11