1 分区 
                 2 格式化 
                 3 挂载 
--------------------------------------- 
我们先来看下分区指令 
fdisk 
比如我这里,我的硬盘是挂载在/dev/hda上 
1 分区 装系统时可以看到 
2 fdisk -l 
那么可以 
fdisk /dev/hda   (注意了,我这后面没有数字) 
然后按m 可以查看帮助 
我说几个常用的```` 
d 删除一个硬盘分区 
n 新增一个硬盘分区 
p 将当前磁盘分区列出来 
q 不保存退出 
w 保存后退出(不要随便按这个) 
查看目前所有的分区有哪些 
fdisk -l 
注意了 列表有个ID一项,是分区格式的代码, 
可以在fdisk里 用l参数看到 
提醒一下:这个fdisk命令 只有root才能执行 
还有一个要注意的地方,/dev/hda后面不要加数字,因为它是针对整个硬盘 
而不是某个分区 
----------- 
下面我们来看下具体的操作 
删除一个硬盘分区 
新增一个硬盘分区 
         按N后,系统会提示你, 
         如果你已经有扩展分区(extended)时,系统会提示:要新增主分区(Primary) 
         还是逻辑分区(Logical) 
         如果你还没有扩展分区,那么系统会提示你要新增主分区还是扩展分区 
         
         如果这里你已经用完了4个主分区+扩展分区的话,那么就只有逻辑分区 
         可以选择了(这里要是还不大了解的话,可以去复习下第二讲) 
         如果是选择的primary的话,按p 
         否则按e(extended) 或 l(logical) 
2 磁盘格式化 
这个没什么可讲的````为了突出通常所说的分区其实是2个步骤 
1 分区         
2 格式化 
一般的工具 比如PQ 就是分区的时候 同时格式化了,其实这是2个步骤 
好了,我这随便举个分区例子 
         将分区/dev/hda3格式化为ext3 
[root@localhost ~]mke2fs -j -L "new" /dev/hda3 
这里注意了,执行这个命令之前,要先把机器重启,不然会提示错误 
我这里就不重启了,节约大家时间 
执行的结果是这样的: 
------------ 
[root@localhost ~]# mke2fs -j /dev/hda4 
mke2fs 1.39 (29-May-2006) 
Filesystem label= 
OS type: Linux 
Block size=1024 (log=0) 
Fragment size=1024 (log=0) 
12048 inodes, 48192 blocks 
2409 blocks (5.00%) reserved for the super user 
First data block=1 
Maximum filesystem blocks=49545216 
6 block groups 
8192 blocks per group, 8192 fragments per group 
2008 inodes per group 
Superblock backups stored on blocks: 
         8193, 24577, 40961 
Writing inode tables: done                             
Creating journal (4096 blocks): done 
Writing superblocks and filesystem accounting information: done 
This filesystem will be automatically checked every 37 mounts or 
180 days, whichever comes first.   Use tune2fs -c or -i to override. 
------------ 
3 挂载与卸载 
我们现在来看下怎么将上面建立的分区在linux下能使用, 
需要将他挂载在linux上,所谓的 挂载点 则是该分区的目录 
这里说个需要注意的地方,如果你挂载的目录里面不是空的 
那么挂载后,原目录下的东西就会消失。不用担心,只是暂时的消失 
举个例子来说,假设你的/home原来是属于/根目录下的分区所有, 
这个目录里有/home/test,/home/test2 这2个目录,然后你挂载新的硬盘 
并且想直接挂载/home下,那么当你挂载上新的硬盘时,则/home目录下 
显示的是这个新硬盘的内容,原来的test和test2就被暂时的隐藏掉了。 
不是会覆盖掉,只是暂时的隐藏起来。等你的新的硬盘umount后,该目录的内容 
就可以再次跑出来了 
那怎么挂载呢~~ 
指令是:mount [参数] 盘符代号 挂载点 
参数:我这里只介绍2个,其他的用到的不多 
-t          你的linux的支持的文件格式,比如,挂载/ext3/格式,就写上-t ext3 
         用来告诉系统,用ext3的格式来挂载这个分区 
         常见的格式有 
         linux                 :         ext2         ext3 
         windows         :         vfat(就是fat32) 
         光盘                 :         iso9660 
         系统默认支持的格式在/lib/modules/`uname -r`/kernel/fs里可以找到 
         若你mount后面没有加-t,linux在默认的情况下,会用/etc/filesystems这个文件 
         内的规范来一个个试 
-o         这个参数可以设置权限 
         ro, rw         :让该扇区以可擦写或者是只读的型态挂载上来,如果是 vfat 之 
                         类的非 Linux 传统扇区,您不想让 Linux 变更的话, 
                         那么使用 ro也不错!能够提供有效的保护呢! 
         async,sync         :是否允许磁盘与内存中的数据以同步写入的动作?,默认是async 
                         (使用 async 这个异步写入的方式会比较快速一些。) 
         auto,noauto         :在开机的时候是否自动挂载该扇区? 
                         
         dev,nodev         :是否可以建立文件?dev为可以 
         suid,nosuid         :该档案系统是否允许 SUID 的存在?一般而言, 
                         如果不是 Linux系统的扇区,而是一般数据 
                         的 partition ,那么设定为 nosuid 确实比较安全一些。 
                         毕竟有 SUID 是蛮夸张的一件事。 
         exec,noexec         : 限制在此档案系统内是否可以进行『执行』的工作? 
                         如果是纯粹用来储存资料的, 那么可以设定 
                         为 noexec 会比较安全,相对的,会比较麻烦! 
         user,nouser         :是否允许使用者使用 mount 指令来挂载呢?一般而言, 
                         我们当然不希望一般身份的 user 能使用 mount , 
                         因为太不安全了,因此这里应该要设定为 nouser 
         defaults         :默认的是:rw, suid, dev, exec, auto, nouser, async 
         remount         :重新挂载,这个在系统出错,或重新更新参数时,很有用 
例1:把我们新建的/dev/hda4挂载在mnt/hda4上面 
         [root@localhost ~]# mkdir /mnt/hda4         
         [root@localhost ~]# mount -t ext3 /dev/hda4 /mnt/hda4 
         执行成功后不会有显示,错误了就会有了- - 
例2:将/重新挂载,并加入参数为rw 
         [root@localhost ~]# mount -o remount,rw / 
例3:将系统所有的挂载数据列出来 
         [root@localhost ~]# mount 
注意了:1 挂载的时候需只有root才能执行, 
           2 挂载前要知道你需要挂载的分区格式,可以:fdisk -l 查看 
卸载的指令是:umount 
         格式:umount 硬盘代码 或 挂载点 
         我们把例1的挂载卸载就是 
         [root@localhost ~]# umount /dev/hda4         或者是 
         [root@localhost ~]# umount /mnt/hda4 
--------- 
好了 我们再来看下其他几个常用的挂载 
挂载WIN盘符 
         1 fdisk -l 看下你要挂载的盘的符号是什么 是什么格式 
         2 [root@localhost ~]# mkdir /mnt/win2000e 
         3 [root@localhost ~]# mount -t vfat /dev/hda1 /mnt/win2000e 
         我这里是随便假设的的格式 
挂载USB 
         现在的大多数USB插上去后都可以识别 
         1 再次用fdisk -l列出所有分区信息,你会发现你的系统 
                 多了一个/dev/sda[??]的代号,第一个USB代号为/dev/sda 
                 假设我们这里是sda1,通常都是这个,而且是WIN下fat32的格式 
         2 [root@localhost ~]# mkdir /mnt/usb 
         3 [root@localhost ~]# mount -t vfat /dev/sda1 /mnt/usb 
开机自动挂载/etc/fstab 与 /etc/mtab 
         我们可以在开机的时候将我要的分区挂好,这样就不用每次进入系统挂载一次了 
         直接修改/etc/fstab 
         这里又要说几个要注意的地方 
         1 根目录是必须挂载的,而且一定要比其他挂载点先挂载进来 
         2 其他挂载点必须为已建立的目录, 
         3 所有分区,在同一时间类,只能挂载一次 
         4 如果要卸在,必须先将工作目录移动到挂载点的目录之外 
我们先来看下/etc/fstab这个文件 
[root@localhost ~]# cat /etc/fstab 
#Device                 Mount point                         filesystem         parameters         dump         fsck 
LABEL=/                 /                     ext3     defaults         1 1 
devpts                   /dev/pts               devpts   gid=5,mode=620   0 0 
tmpfs                   /dev/shm               tmpfs   defaults         0 0 
proc                     /proc                 proc     defaults         0 0 
sysfs                   /sys                   sysfs   defaults         0 0 
LABEL=SWAP-hdc4         swap                   swap     defaults         0 0 
我这里多了一行,注释,方便看清楚,好了,我们来具体看下 
1     硬盘代号或该硬盘的 Label: 
         这个就是装置代号啦, 将您需要的硬盘代号给他填上去吧。 
         这个提一个,我们格式化盘的时候用到一个-l参数 
         我们也可以利用 Label 来挂载档案系统 
         例如上表当中的特殊字体的第一行, 根目录 (/) 就是以 Label 名称为 / 的磁盘分割槽来挂载的 
         利用 label 挂载时,您必须要知道您的磁盘内的 label 名称, 
         可以利用 e2label 来更改标头名称啊。 在知道了 label 名称后,最后就可以利用 
         LABEL=(your label name) 来设定您的盘 
         e2label指令 
         格式:e2label 硬盘代号   新的Label名称 
         [root@localhost ~]# e2label /dev/hdb5 new 
2           挂载点 (mount point):: 
         这里一定要是目录才行。要注意了 
3         磁盘分割槽的档案系统: 
         就如同我们在这个章节一开始就谈到的, Linux 在传统上面,使用的是 ext2/ext3 等档案系统, 
         目前则加入了很多日志式档案系统,例如 reiserfs 及 XFS 等档案系统的支持。 此外,存在已 
         久的 Windows vfat, msdos 及 iso9660 的光盘档案系统, 
         还有网络档案系统如 nfs, smbfs 等等,都可以被支持。这个字段就是写这些档案系统的地方 
4         通常情况下这里用默认的就行了defaults 
5          是否被dump备份 
         在 Linux 当中,可以利用 dump 这个指令来进行系统的备份的。 
         而 dump 指令则会针对/etc/fstab 的设定值,去选择是否要将该 partition 进行备份的动作 
         0 代表不要做 dump备份, 1 代表要进行 dump 的动作。 2 也代表要做 dump 备份动作, 
         不过,该 partition 重要度比 1 小。 
6         是否以 fsck 检验扇区: 
         开机的过程中,系统预设会以 fsck 检验我们的 partition 内的 filesystem 是否完整。 
         不过,某些 filesystem 是不需要检验的,例如虚拟内存 swap ,或者是特殊档案系统, 
         例如 /proc 与 /sys 等等。所以,在这个字段中,我们可以设定是否要以 fsck 检 
         验该filesystem。 
         0 是不要检验, 1 是要检验, 2 也是要检验,不过 1 会比较早被检验 
         一般来说,根目录设定为 1 ,其它的要检验的 filesystem 都设定为 2 就好了。 
-------- 
好了,所以说,我们要把上面例子的/dev/hda4/这个 ext3 的 filesystem 
挂载到 /mnt/hdb4时, 并且在开机的时候就已经自动的挂载好, 
那么就可以将底下这一行写入到 /etc/fstab 当中了: 
/dev/hdb5 /mnt/hdb5 ext3 defaults 0 0 
所以说,以后您自己建立的磁盘档案系统想在开机的时候挂载好时, 
就在 /etc/fstab 加入 
当我们编辑 /etc/fstab 后,为了避免可能的错误,通常就会以 mount -a 这个指令来测试看看。 
这里还提醒一个小技巧: 
/etc/fstab 是开机时的设置文件,不过,实际 filesystem 的挂载是记录到 
         /etc/mtab 与 /proc/mounts这两个档案当中的。每次我们在更动 filesystem 的挂载时, 
         也会同时更动这两个档案。但是,万一发生您在 /etc/fstab 输入的数据错误,导致无法顺利 
         开机成功,而进入单人维护模式当中,那时候的 / 可是 read only 的状态,     
         当然您就无法修改 /etc/fstab ,也无法更新 /etc/mtab ~那怎么办? 
         可以利用底下这一招: 
         [root@linux ~]# mount -n -o remount,rw / 
         加上 -n 则不更新 /etc/mtab ,加上 -o 则提供额外的参数设定。 利用这一动作, 
         您的 / 就可以读写,那么自然就能够更新档案内容
fdisk分区与挂载
最新推荐文章于 2024-09-06 07:23:44 发布
          
          
       
          
       
      
                  
                  
                  
                  
      
          
                
                
                
                
              
                
                
                
                
                
              
                
                
              
            
                  
					1878
					
被折叠的  条评论
		 为什么被折叠?
		 
		 
		
    
  
    
  
            


            