新建一个Windows分区内的文件作为Linux分区使用的技巧

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
头像
careone
帖子: 839
注册时间: 2007-12-17 21:41

新建一个Windows分区内的文件作为Linux分区使用的技巧

#1

帖子 careone » 2009-07-07 11:06

新建一个Windows分区内的文件作为Linux分区使用的技巧

如果 Linux 分区不够用,Windows 分区又有大量可用空间,可以用下面的方法解决这个问题。

操作步骤:
1挂接 Windows分区(如D盘,一般情况下即 /dev/sda5 ):

代码: 全选

sudo mkdir -vp /media/sda5
为操作简单起见,可直接按第4步中的操作修改 /etc/fstab 文件,
然后再运行以下命令挂接D盘:

代码: 全选

sudo mount /media/sda5

代码: 全选

sudo mount -a
2 用dd命令在D盘中新建一个大小为1G(=4096*256*1024 byte)的
空白文件 ext3fs01.disk :

代码: 全选

dd if=/dev/zero of=/media/sda5/ext3fs01.disk bs=4096 count=256K
注意 dd 操作时应特别小心!!!如果参数输入错误,可能带来意想不到的后果,甚至是数据丢失!

3 用 mkfs.ext3 命令把D盘上的ext3fs01.disk文件格式化为 ext3分区格式:

代码: 全选

sudo mkfs.ext3 /media/sda5/ext3fs01.disk
4 以超级用户权限修改 /etc/fstab,实现系统启动时即自动挂接分区:
如想把ext3fs01.disk挂接到 /home/user/dir001/ (假定当前用户名为 user)

代码: 全选

mkdir -vp /home/user/dir001/
修改 /etc/fstab 分区配置文件

代码: 全选

sudo gedit /etc/fstab &
加入以下几行内容(如有必要,可按实际情况修改分区编号,文件名,挂接点等)

代码: 全选

#/dev/sda5 /media/sda5 ntfs-3g force 0 0
#mount -t ntfs-3g /dev/sda5 /media/sda5 -o force
#/media/sda5/LinuxMint-5-r1.iso	/media/cdrom	iso9660	loop	0	0	
#/media/cdrom/casper/filesystem.squashfs	/media/squashfs	squashfs	user,ufts,auto,loop	0	0
/dev/sda5	/media/sda5	auto	auto,users,noexec,utf8	0	0
/media/sda5/ext3fs01.disk	/home/user/dir001	 ext3 loop    0       0
以后每次启动 Linux时会自动挂接该分区。
可以直接在终端中使用 df 命令来查看 ext3fs01.disk 的使用率。

注意事项:
在Windows 和 Linux 双系统并存时,
如果在 Windows 下使用了休眠,启动 Linux 后会出现 Windows 分区无法挂接的现象。
可以按下面的方法进行强制挂接(但是不推荐强制挂接,可能会出现某些问题)

代码: 全选

sudo mount -t ntfs-3g /dev/sda5 /media/sda5 -o force
sudo mount /media/sda5/ext3fs01.disk
------------------
另外dd还有许多高级用途:
例1:备份分区表

代码: 全选

sudo dd if=/dev/sda of=/home/user/001.mbr bs=512 count=1
例2:备份某个分区的第一扇区(启动扇区)

代码: 全选

sudo dd if=/dev/sda5 of=/home/user/sda5.sec bs=512 count=1
例3:将大文件分成多个小文件(如上传时文件过大,必须分成多个小文件。)
如原文件 /home/user/aaa.zip 大小11M,分成5M+5M+1M 共3个文件(不需要运行 sudo):
说明:
dd 默认单位大小是 byte (字节。1字节=8个二进制位)。也可以自己指定单位大小:
1K=1024 byte
1M=1024K
1G=1024M
1T=1024G

代码: 全选

dd if=/home/user/aaa.zip of=/home/user/aaa.zip.001 bs=5M count=1
dd if=/home/user/aaa.zip of=/home/user/aaa.zip.002 bs=5M count=1 skip=1 
dd if=/home/user/aaa.zip of=/home/user/aaa.zip.003 bs=5M count=1 skip=2
把多个分卷文件合并成一个文件:

代码: 全选

cat aaa.zip.001 aaa.zip.002  aaa.zip.003 > aaa.zip
...
上次由 careone 在 2009-07-17 8:52,总共编辑 3 次。
魁拔不死,天下不宁。
魁拔既死,天下不平。
--------------
Careone <emacslocale^126.com>
https://sourceforge.net/projects/emacslocale/files/
inoagkcu
帖子: 20
注册时间: 2009-07-07 1:23

Re: 新建一个Windows分区内的文件作为Linux分区使用的技巧

#2

帖子 inoagkcu » 2009-07-07 11:12


非常的感谢你
回复