在Linux中拷贝了一个文件比较大5G,直接提示:No SPace Left On Device,很明显是磁盘空间不够了,我因为是在虚拟机上面建的,直接右击虚拟机==>编辑设置
如图片1所示,
选择==>选择第四项==>硬盘1==>置备大小加了40个G==>然后回到命令行进行拷贝==>照样提示No space left on device==>
上网上查了一下发现问题==>linux新添加的磁盘不能直接使用,需要先分区==>在格式化==>在挂载到相应的盘符上面这样才可以使用.
也就是说:就像window一样,你添加了一块硬盘E之后,假如不格式化这个E盘,拷贝还在桌面上拷贝的话,照样提示没有空间
==>于是继续翻资料==>在命令行中输入df -h(显示出可用的盘符)
总共25个G仍然没有显示新加 的40个G==>
使用命令==>fdisk -l ==>这时候,我们看到了相应的所有的磁盘总共75个G,但是有个 /dev/sdb1总共50G是没有分区的==>` fdisk /dev/sdb1
==>Command(M for help):m这里输入m后能够出现 打印列表==>然后输入P,打印当前磁盘情况==>输入n创建磁盘==>输入p建立主磁盘==>回车后需要输入盘符我选了2,输入1的话提示已经有了==>然后回车==>要求输入First Cylinder==>默认回车==>提示需要分多大的磁盘空间==>我写了个+50000M(50G)===>
然后按下w保存
到此为止我们将盘分区了
===>我这时候迫不及待的挂载上去了 执行了mount /dev/sdb1p2 /media ==>
提示: you must specify the filesystem type
查了一下原因是:没有格式化==>使用命令: mkfs -t ext3 /dev/sdb1 格式化这个磁盘的格式为:ext3==>
然后执行: mount /dev/sdb1 /media 将这个文件挂载到根目录下的/media底下==>
这时候我突然想起来,不对,我希望在根目录的/code文件夹下面增加空间
好比说:现在是Window盘,我现在希望能在C盘里面直接拷贝一个7G的东西,而不是把这个东西拷贝到E盘中去,因此,现在要做的就是先把 /dev/sdb1 取消挂载到/media上去
==>然后从新挂到根目录上来==>
执行 df -h (这时候出现了新的盘符,在/media底下)==> 执行 umount /dev/sdb1==>df -h (发现/dev/sdb1已经不再挂载在/media底下了)==>
这时候从新执行==> mount /dev/sdb1 /==>将这个新的分区挂载到/ 根目录下面==>然后再在根目录下拷贝 7G的东西,
==>这时候我震精了,挂载到根目录下面之后,新的磁盘同样很快满了,明明考呗的是5G的东西,但是df -h显示两个都满了24G,==>见鬼了
==>后来想了想,不能挂载到根目录底下,然后从新取消挂载==>umount /dev/sdb1==>问题又来了提示==>device is busy==>
解决方法:原因是有进程使用这个根目录,所以调用fuser -m -k / 杀死跟进程的所有占用的进程==>当然,系统马上需要重启了==>=
==>重启完之后执行==>umount /dev/sdb1==>没有问题了==>然后挂载到根目录的/Media 上面==>执行mount /dev/sdb1 /Media
==>然后我重启了一下机器
==>再次震惊了==刚才挂载的磁盘没了==>执行df -h ,发现没有 /dev/sdb1的磁盘==>上网查了一下发现原因了
挂载玩了之后需要 修改/etc/fstab文件。
加一行字:
/dev/sdb1 /media ext3 defaults 0 0
保存退出:wq==>重启,挂载还在,没有问题了.