Chinaunix首页 | 论坛 | 博客
  • 博客访问: 707159
  • 博文数量: 823
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5165
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-21 15:52
文章分类

全部博文(823)

文章存档

2011年(1)

2008年(822)

我的朋友

分类: LINUX

2008-08-21 17:53:43


UUID,全称UniversallyUniqueIdentifier

它是一个128位,16字节的值,并确保在时间和空间上唯一。它把硬件地址、时间以及随机数结合在一下起来确保其唯一性的。一般情况下,生成算法用计算机网卡的地址和一个60位的timestamp生成,时间是以100ns为时间间隔。例如,一台300PL6862的计算机,主板集成的网卡的MAC地址为00-04-AC-2E-B7-DC,而UUID的最后六个字节也会是0004AC2EB7DC。

Ubuntu现在默认使用UUID值表示硬盘分区,在/etc/fstab中我们很容易看到:

#/etc/fstab:staticfilesysteminformation.
#
#
proc/procprocdefaults00
#/dev/hda1
UUID=6286feb3-3037-4893-b0f1-8c9edba3c447/ext3defaults,errors=remount-ro01
#/dev/hda5
UUID=45bdb727-57db-46c2-8b33-e2dc813c0e18/media/mydocext3defaults02
#/dev/hda7
UUID=1bfc17a2-b39c-451b-8ce8-2b3bc13bf6e8noneswapsw00
/dev/hdd/media/cdrom0udf,iso9660user,noauto00
/dev//media/floppy0autorw,user,noauto00

在GRUB启动项中也有这样的表示,

kernel/boot/vmlinuz-2.6.20-14-genericroot=UUID=6286feb3-3037-4893-b0f1-8c9edba3c447ro
quietsplashlocale=zh_CN

与以前使用hda*相比,使用UUID的好处是只要分区大小没有调整,它的UUID值就是固定的,也就是说,即使把其他分区全删掉,也不影响这一分区的挂载。

那么,如果分区改变了怎么办?有时侯需要调整分区大小,这样它的UUID值也就发生了变化,此时需要在/etc/fstab中将该分区的UUID值修改为当前值,否则无法自动挂载。

查询分区UUID值可以使用下面的命令:

ls-al/dev/disk/by-uuid

结果是如下的形式:

总用量0

drwxr-xr-x2rootroot1002007-04-0620:09.
drwxr-xr-x5rootroot1002007-04-0620:09..
lrwxrwxrwx1rootroot102007-04-0620:091bfc17a2-b39c-451b-8ce8-2b3bc13bf6e8->../../sda6
lrwxrwxrwx1rootroot102007-04-0620:096286feb3-3037-4893-b0f1-8c9edba3c447->../../sda1
lrwxrwxrwx1rootroot102007-04-0620:098c6640b5-9c65-44d7-8f09-771b8c589922->../../sda5

这是我的硬盘分区的UUID,可见,sda5调整大小后,UUID发生了变化,将fstab中对应的部分该掉,OK。

新驱动程序的挂载选项:
你需要开辟一块空间来挂载NTFS卷,然后就可以进行挂载操作了。
mkdir/mnt/windows
NLS(本地语言支持)决定字符是如何被显示的。你可以选择像Unicode一样可以表示所有字符的utf8,或者你自己的代码页,比如iso8859-1(西欧)、iso8859-2(中欧)、gb2312(简体中文)、iso8859-8(希伯来文)。nls=gb2312

参数umask同时改变文件和路径两者的权限,fmask以同样的方式作用于文件而dmask作用于路径,这些选项也可以被组合使用。

Linux默认对于大小写字母是敏感的,MyFile、Myfile和myfile是不同的文件。如果你希望Linux对于NTFS卷具有和Windows相同的表现,那么就应将case_sensitive选项设置为false。将选项设置为true将使驱动具有和Linux类似的表现(默认设置)。case_sensitive=false

已挂载的NTFS卷上所有文件默认都是root所有的。如果提供uid参数就可以设置文件的所有者。这些参数可以是/etc/passwd中的任何用户名,或者任何表示用户id的数字。

mount/dev/hda1/mnt/windows-tntfs-oumask=0222-ouid=1000-ocase_sensitive=false-onls=gb2312umask是对权限的过滤器,因此它的工作方式和chmod恰好相反。全部权限等价与777(rwxrwxrwx),umask值0222(-w–w–w-)则代表权限555(r-xr-xr-x)。考虑到安全的原因,默认的umask被设置为0077。比如常用的0027=750,0077=700

操作完成以后,你可以使用以下任何一个命令卸载分区:
umount/mnt/windows
或者:umount/dev/hda1


编辑ext2/ext3/FAT32/NTFS磁盘分区卷标

据不同的磁盘分区类型,分别有3个程序可供选用.
Mtools适用于FAT32格式分区.
ntfsprogs适用于NTFS格式分区.
e2label适用于ext2和ext3型格式分区.
以上程序的具体使用说明分别如下:

使用mtools编辑FAT32磁盘分区卷标
我想更改由系统自动挂载的USB设备中的FAT32分区卷标.我有两个外接硬盘驱动器(一个日常家用,一个公司工作用),其中一个是iPod.这两个驱动器都被系统以”sda1”或”sda2”等名称挂载于”/media”目录下,在电脑里我很难通过这些名字辨认出哪个文件夹是对应哪个驱动器.后来,我发现更改这些驱动器上的FAT32分区卷标不是件容易事.所以我觉得有必要将我是如何修改这些FAT32分区卷标的过程写下来.方便那些遇到同样问题的人.讲解之前首先明白:系统会将外接的驱动器自动挂载到”/media/”目录下,以”sda1”类似的卷标名命名分区,为了容易区别各分区,我们需要修改默认的卷标

按如下步骤一步一步操作即可更改FAT分区卷标:

操作指导

1)安装mtools软件包

sudoapt-getinstallmtools
2)系统自动装载插入的USB设备后,可以用如下命令查看新设备相关信息:

mount
andNotedownwhereitsays“sda1″orsimilar

显示信息中”sda1”或与之相似的字段即是系统分配给设备的名字。

3)复制”/etc”目录下mtools.conf文件为新文件"~/.mtoolsrc"

cp/etc/mtools.conf~/.mtoolsrc
4)编辑刚复制的”~/.mtoolsrc”文件,在最后一行加入如下命令行:

drivei:file="/dev/sda2"
上面命令行中字段”sda2”应根据实际情况更改为你在第二步操作中所看到的新设备名称。
5)更改命令提示符路径到”i:”盘:

mcdi:
6)查看”i:”当前的卷标

sudomlabel-si:
7)更改”i:”盘原始卷标为你喜欢的新卷标名:

sudomlabeli:my-ipod
你可以将上述命令行操作中的”my-ipod”字段替换为你喜欢的名字,用以代表插入的USB设备。

8)检查更改是否成功

sudomlabel-si:
经过以上操作,电脑显示如下信息:VolumelabelisMY-IPODYou’re

恭喜!卷标修改已经成功.下次插入USB设备后,你可以在目录”/media/MY-IPOD”下找到你USB设备上的文件。

使用ntfsprogs修改NTFS分区卷标
操作指导

1)安装ntfsprogs软件包

sudoapt-getinstallntfsprogs
2)NTFS分区驱动器插入后被自动装载,可以用如下命令查看此新设备相关信息:

mount
显示信息中”sda1”或与之相似的字段即是系统分配给新设备的名字。

3)更改原始卷标为你喜欢的新卷标名:

sudontfslabel/dev/sda1newlabel
replacenewlabelwithwhatyouwouldliketonametheusbdrive/Harddisk

用你喜欢的卷标名替换此命令中的单词”newlabel”。

和FAT分区不同,更改NTFS分区卷标后你必须卸下此设备(卸载步骤:系统->管理->磁盘管理->硬盘分区下面的”禁用”按钮)

3)检查更改是否成功

重启电脑后查看相应NTFS分区卷标是否改变.如果你更改的是USB设备卷标,你需要重新插入设备。

使用e2label更改ext2或ext3分区卷标
操作指南

1)设备被自动加载后,可以用如下命令查看此新设备相关信息:

mount
显示信息中”sda1”或与之相似的字段即是系统分配给新设备的名字。

2)更改原始卷标为你喜欢的新卷标名:

sudoe2label/dev/sda1newlabel
用你喜欢的卷标名替换此命令中的单词”newlabel”

更改分区卷标后你必须卸下此设备(卸载步骤:系统->管理->磁盘管理->硬盘分区下面的”禁用”按钮)。

3)检查更改是否成功:

重启电脑后查看相应分区卷标是否改变.如果你更改的是USB设备卷标,你需要重新插入设备。 下载本文示例代码
阅读(1350) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~