分享
 
 
 

fc3HAL挂载vfat分区的方法(手动+自动)

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

挂载 vfat 分区的方法 (手动+自动)

声明

本文遵循 GNU FDL,仅正文部分可自由修改,重发布时正文之外的部分必须同时原样发布。作者对误读的后果表示不负责。

正文开始

如果不希望自动挂载优盘,或者要挂载的是 vfat 格式的硬盘分区,那么应当像下面这样手动进行操作。大概的步骤有几个,首先必须知道自己的语言环境是什么。其次必须知道要挂载的是什么分区。最后,要确定自己要挂载到什么位置。挂载硬盘分区的时候,和优盘是几乎一样的。

要想知道自己的语言环境,可以告诉别人自己使用的是什么发行版,有没有使用美化包,有没有修改过 /etc/sysconfig/i18n,这样别人可以猜到你用的究竟是什么。不过这样做实在麻烦了大家也麻烦了自己。最好的办法,还是运行 locale 命令,然后看看结果

首先,运行 locale

代码:

[yuan@jackycom ~]$ locale

LANG=zh_CN.UTF-8

LC_CTYPE="zh_CN.UTF-8"

LC_NUMERIC="zh_CN.UTF-8"

LC_TIME="zh_CN.UTF-8"

LC_COLLATE="zh_CN.UTF-8"

LC_MONETARY="zh_CN.UTF-8"

LC_MESSAGES="zh_CN.UTF-8"

LC_PAPER="zh_CN.UTF-8"

LC_NAME="zh_CN.UTF-8"

LC_ADDRESS="zh_CN.UTF-8"

LC_TELEPHONE="zh_CN.UTF-8"

LC_MEASUREMENT="zh_CN.UTF-8"

LC_IDENTIFICATION="zh_CN.UTF-8"

LC_ALL=

如果结果和我的一样都是 UTF-8,也就是 fc3 的默认值,那么挂载时需要加上 utf8 参数,就像这样 (假设我们是将优盘 /dev/sda1 挂载到 /media/usbdisk)

代码:

mkdir /media/usbdisk

mount -o utf8,umask=0,dmask=0,fmask=111,users /dev/sda1 /media/usbdisk

但是如果结果不是 zh_CN.UTF-8 而是 zh_CN.GB18030,或者 zh_CN.GB2312 的话,那么挂载时需要使用 iocharset=cp936 参数,这样看到的文件名才不是乱码。就像这样 (仍然是将优盘 /dev/sda1 挂载到 /media/usbdisk)

代码:

mkdir /media/usbdisk

mount -o iocharset=cp936,umask=0,dmask=0,fmask=111,users /dev/sda1 /media/usbdisk

第二步,应当清楚要挂载什么分区。

通常,优盘是只有一个分区的。上面提到的 /dev/sda1 通常是第一块优盘的第一个分区 (第一个分区也可能是 /dev/sda);而第二个分区可能是 /dev/sda2,或者 /dev/sda5。硬盘与优盘不同,通常有多个分区。遇到有多个分区时,优盘与硬盘同样麻烦,必须运行 fdisk 可以看到要挂载的分区的情况。下面是我的硬盘的分区情况

代码:

[root@jackycom ~]# fdisk -l /dev/hda

Disk /dev/hda: 40.0 GB, 40020664320 bytes

255 heads, 63 sectors/track, 4865 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/hda1 * 1 255 2048256 83 Linux

/dev/hda2 256 4865 37029825 5 Extended

/dev/hda5 256 893 5124703+ 83 Linux

/dev/hda6 894 1148 2048256 83 Linux

/dev/hda7 1149 1403 2048256 c Windows 95 fat 32 (LBA)

/dev/hda8 1404 1658 2048256 83 Linux

/dev/hda9 1659 2388 5863693+ 83 Linux

/dev/hda10 2389 3118 5863693+ 83 Linux

/dev/hda11 3119 4832 13767673+ 83 Linux

/dev/hda12 4833 4865 265041 82 Linux swap / Solaris

假如输出是上面那样,我们要将 vfat 分区 /dev/hda7 挂载到 /mnt/D 目录,我们可以这样做

代码:

mkdir -p /mnt/D

mount -o utf8,umask=0,dmask=0,fmask=111,users /dev/hda7 /mnt/D

或者用这一句,仍然取决于 locale 命令的执行结果!

mount -o iocharset=cp936,umask=0,dmask=0,fmask=111,users /dev/hda7 /mnt/D

最后,我们可以考虑是不是将这条命令写到配置文件里,这样开机时就会自动挂载这个分区了

配置文件是 /etc/fstab。运行这样的命令

代码:

[root@jackycom ~]# cat /etc/fstab

# This file is edited by fstab-sync - see 'man fstab-sync' for details

/dev/hda1 / ext3 defaults 1 1

none /dev/pts devpts gid=5,mode=620 0 0

none /dev/shm tmpfs defaults 0 0

none /proc proc defaults 0 0

none /sys sysfs defaults 0 0

none /proc/bus/usb usbfs defaults 0 0

none /tmp tmpfs defaults 0 0

none /media tmpfs defaults 0 0

/dev/hda5 /usr ext3 defaults 1 2

/dev/hda6 /usr/local ext3 defaults 1 2

/dev/hda8 /home ext3 defaults 1 2

/dev/hda9 /usr/share ext3 defaults 1 2

/dev/hda10 /var/ftp/incoming auto defaults,noauto,users 0 2

/dev/hda12 swap swap defaults 0 0

none /var/lib/jack/tmp tmpfs defaults 0 0

/dev/hdc /media/cdrom auto pamconsole,fscontext=system_u:object_r:removable_t,exec,noauto,managed 0 0

会输出很多内容。以行为单位,每行保存了一个分区的配置。我们要挂载分区,只要照猫画虎就可以了,把这样的一行添加到 /etc/fstab 配置文件中:

代码:

/dev/hda7 /mnt/D auto defaults,rw,users,utf8,umask=0,dmask=0,fmask=111 0 0

是不是应该使用这样的一行,而不是上面那个呢?仍然取决于 locale 命令的执行结果!

/dev/hda7 /mnt/D auto defaults,rw,users,iocharset=cp936,umask=0,dmask=0,fmask=111 0 0

如何测试效果

请先试验一下配置文件是不是写对了,再重启系统!怎么检查新添加的配置是不是正确呢?只要先把 /mnt/D 卸载,查看一下当前挂载了哪些分区;再加载一次,再次查看当前挂载了哪些分区。具体执行的命令如下:

代码:

umount /mnt/D

mount

再运行

代码:

mount -a

mount

看看中间有没有什么出错的提示消息就可以了。如果配置文件正确的话,第二次执行不带参数的 mount 命令时,会显示出 /dev/hda7 已经挂载到了 /mnt/D。这时候就可以放心地重启了

可能的问题

1. 如果你运行 locale 时,输出的东西是乱七八糟的 (混合的,尤其是同时使用多种编码值或者不指定编码时),那么还是先考虑一下将 locale 也就是语言环境变量的值调节为一致的之后,再进行其他操作吧。

很多人喜欢在英文 locale 中工作,但是又要使用中文输入法。在 fc3 中不必对 locale 做任何设置就可以办到,只要将 scim 的配置文件 /etc/X11/xinit/xinput.d/scim 链接到 $HOME/.xinput.d/en_US 就可以默认在英文环境中启动输入法了。但是在 rh9 等早些的系统中,那时的 UTF-8 支持还没有现在这么好,一般会在 $HOME/.i18n 中设置 LC_CTYPE=zh_CN.GB18030,这时 mount 也需要 iocharset=cp936 才可以工作。

2. 如果运行 fdisk /dev/sda 时,输出的东西是乱七八糟的,那么可能这块优盘的分区方式是与其他优盘不一样的方式,大约是软驱方式 (?),优盘内部不再分区。很多播放器或支持启动功能的优盘都使用这种分区方式。那么挂载时,应当用 /dev/hda 而不是 /dev/hda1

代码:

mount /dev/hda /media/usbdisk -o utf8

3. 注意只能由 root 来运行 fdisk 命令。

4. /dev/hda 是说第一块硬盘 harddisk a,一般的机器都只有一块硬盘。/dev/sda 是说第一块优盘。第二块硬盘是 /dev/hdb, 优盘是 /dev/sdb,当然这只是说 IDE 硬盘和普通的优盘。如果是串行硬盘或者 SCSI,应该使用不同的设备文件。如果是 LVM 或者 raid,是不是还有别的设备呢?

命令的可重复性

mount -a 和 umount -a 可以任意运行多次

如何撤销所有操作?

如果要取消自动挂载,只要把 /etc/fstab 中新加的这一行删掉或者在行首添加一个 # 符号就可以了

与其他方案的相容性

关于手动挂载,大家都是一样的办法

正文结束

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有