前题: 自己的本本是双系统,win7 + debian,装debian的时候划分的磁盘空间是 30G,以为够了,但是后面各种开发环境搭建,各种源码的下载,各种工作内容,导致了自己的30G硬盘给用光了,这让自己很尴尬,于是决定从 win7 下面再拿80G给debian,在网上搜索了各种教程,看了下,失败了两次,最后成功了,以下记述。
----------------------------------------
第一步,从win 7中划分空余磁盘出来,这个要借助软件,有个PQ9.0的硬盘分区软件不错,自己用的就是这个。
操作:
将要划分的盘上数据进行转移,如果没有就算了。然后打开PQ9.0这个软件,在软件里面将这个空白盘先删除,然后再从这个删除的空白盘里创建分区,选择ext 系列的就好;不要添加盘符(A~Z),分好了,一定要在软件的菜单栏的某个地方选择 应用改变,不然分区不成功。大概3分钟左右,就结束了。
解释这样做的原因,如果直接用win 7的磁盘管理分区格式化什么的,也不是不可以,但是这样一来,会在win7下面留下一个盘符,你每次去点击它,它都会让你格式化,这个是稍微有点危险--一不注意,就格式化了,那么linux下的数据就完了。同时需要说明,如果直接在win 7下删除一个空盘,然后去linux下面找,好像不行,反正我的debian是不行的。
第二步,PQ9.0分区好了后,就进入linux下面,开始linux下面盘的处理。
操作:
先 sudo fdisk -l 看一下,你需要添加的那个盘是哪个。比如我的是 /dev/sda3---如果有桌面环境就更好,更适合我这种人:可以直接点击文件选项找到那个盘,然后点击挂在过来,然后再配合fdisk -l 和df命令一看就知道是 /dev/xxx 什么了。
然后是 格式化这个盘,虽然在windows 下已经格式化成了 ext2或者ext3,这里还是需要再次格式化一下,最好格式化成和linux系统中其他盘一样的文件系统,比如是ext4 ,那么这个盘也就格式化成ext4,命令:
sudo mkfs.ext4 /dev/sda3 ----<以我自己的盘为例,如果有人看见这篇笔记而要按照这个操作,请务必读懂上面的意思,别匆忙下手>
第三步: 转移文件到这个盘上
操作:
sudo mount /dev/sda3 /mnt
我的分区情况是这样的,/ /boot swap。那我这个情况就非常好办了,我随便转移 / 下的某个文件夹到我这个盘上就行了----理论上可以这样说,但实际上,最好转移/home 或者/usr,可千万别转移/bin /sbin 这两个目录。至于原因,如果做个系统的就明白了。当然别的方法就思路差不多了。我转移/home
这个时候要我调回了 / ,因为/home 会被我转移了
cd /
mv -v /home/* /mnt
很长的一段时间过后,成功
sync
第四步:这个时候可千万别急着reboot,这样你就进不了桌面的,当然,还是可以进root字符界面的。
修改 /etc/fstab 让系统启动的时候,自动挂在/dev/sda3 到/home
注意我上面的/home 没有删除,如果你删除了可是要mkdir 建一个的,它进入桌面的时候 是在 /home/ 下的用户目录中,比如我的用户为 test ,那系统它就会去找/home/test 找不到就进不去的。
操作:
先看格式, vim /et/fstab
------------------------------------------------------------------------------------
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda8 during installation
UUID=8ab7edca-7737-4aa1-b192-5f33f3e8e1e1 / ext4 errors=remount-ro 0 1
# /boot was on /dev/sda7 during installation
UUID=d6c92c50-f4db-4d33-b215-1f59be78ad36 /boot ext4 defaults 0 2
---------------------------------------------------
这个自动挂载的格式就如上,第一个是 UUID ,第二个是 挂载点,我这里挂载点是 /home 第三个是文件系统类型 ,我的是 ext4, 至于后面就照着格式来吧:
-----------
先查看UUID,这个命令在 fstab文件中已经提示了,那就是
#Use 'blkid' to print the universally unique identifier for a device
意思很明显:
sudo blkid
如果觉得这样不爽,不方便,那就直接 sudo blkid >> /etc/fstab
然后 vim /etc/fstab 进去,按照格式修改,修改完后,把这个文件的最后一行注释掉,原因嘛....
我的是这样的:
UUID=3687bd81-b359-4658-a855-49f9eb998a6c /home ext4 defaults 0 2
#/dev/sda3: UUID="3687bd81-b359-4658-a855-49f9eb998a6c" TYPE="ext4"
后面那个 2,我试着写成3,但是错误了,不行,就又修改成2了。
然后保存退出。
reboot
OK 了。