linux下对U盘进行format时出现的问题~~~~~~~~~~~`

来源:百度知道 编辑:UC知道 时间:2024/06/16 03:15:39
我想把手中的4GU盘分成2个分区,一个分区用来装linux系统,一个分区用来放资料,分别为:/dev/sdb1 /dev/sdb2 其中 /dev/sdb1为linux文件系统,/dev/sdb2为fat32文件系统,目的想在XP下能访问到/dev/sdb2的磁盘,向里头放东西,但是在我做/dev/sdb2时,用mkfs.vfat /dev/sdb2并没有作用,当我把U盘插入电脑时,XP只能找到/dev/sdb1这个主分区(我的/dev/sdb2也是主分区),请问各位大虾们,这个问题该如何解??
我想在这补充一点:我现在改成在/dev/sdb1装dos,在/dev/sdb2安装linux。但不知道该则怎样修改/boot/grub/grub.conf 及/boot/grub/device.map二个文件。
我有一点不明:
(hd0,0) /dev/sdb
我修改如下:
root (hd1,1) for /dev/sdb2
root (hd0,0) for dos
不知道这样对不对?

看看分区类型 ID 吧,Windows 是按照类型 ID 识别的。
fdisk ( linux 下面的啊……)可以修改这个 ID 。

另外,USB 不同于硬盘,他的 grub 不能这么设置。
你最好不要动 map 。

默认 grub 会把被 BIOS 引导而启动的盘,识别为 hd0 ,但系统却不这么认为,他会重新按照接口顺序重新识别(但也会考虑驱动载入的先后顺序),所以 sdx 的识别全都有可能混乱。

启动 Linux 的话,这种情况最好用 /dev/disk/by-uuid (或者 by-lable )里面的连接来识别。也就是基于 uuid (理论上是唯一的),或者 lable (卷标,可以自己设置)来识别。
不过这个识别只能让 kernel 来识别,grub 不认的……

乱世才刚刚开始……
------------------
其实可以这样:
启动 grub 后,按 C 。进入命令行
grub>
执行命令
find /vmlinuz
这个 /vmlinuz 是你的内核文件名,注意文件名必须写全,而且必须有路径 /xxx/vmlinuz 的方式(简单办法就是在你的 U 盘上面的放一个 aaa.txt 或者类似的文件名的文件,内容无所谓,只需要文件名之后 find /aaa.txt 结果是相同的)。
再说一遍这个 find 必须要完整文件名。

之后他会提示这个文件所在的 (hdx,y) 。
不过注意,这个顺序和 /dev/ 里面的顺序很有可能是不同的。
绝对不是 (hd0,0) 就代表 /dev/sda1 ,绝对不能直接这么认为。这两个顺序是无关的。

你直接fdisk /dev/sd[a..b] a..b是你u盘的设备名。你可以插上U盘,用df来看就行。(fdisk -l)也可以看。

然后按照提示继续分区就是了。

分完区,再用mkfs来格式化。