===========================================
现在就开始讲讲分区,先明确一下概念:
主分区:一块物理硬盘上可以被独立使用的一部分,一个硬盘最多可以有4个主分区。
扩展分区:为了突破一个物理硬盘只能有4个分区的限制,引入了扩展分区。扩展分区和主分区的地位相当,但是扩展分区本身不能被直接使用,然而可以被继续划分成多个逻辑分区。
逻辑分区:逻辑分区可以有任意多个,但是不能独立存在,多个连续的逻辑分区可做为一个扩展分区。一个硬盘只能有一个扩展分区。
总结:也就是说,在一个物理硬盘上主分区和扩展分区加在一起最多仍然只有4个。但是扩展分区可以继续被划分成逻辑分区,而对多数用户而言,其实主分区和逻辑分区在使用上是没什么区别的。这样就达到了一快硬盘几乎可以有无限个分区的目的。
LINUX下分区实例分析:
现在电脑上有一个SCSI硬盘,这时查看设备
ls /dev
会发现有一个sda,如果是IDE硬盘,就是hda。
分区方案一:4个主分区
这时候能看到:sda,sda1,sda2,sda3,dsa4
分区方案二:一个主分区然后一个逻辑分区
这时候能看到:sda,sda1,sda2,sda5
这里sda是物理硬盘,sda1是主分区,sda2是扩展分区,sda5是逻辑分区(正是因为必须保留4个数字给主分区和扩展分区使用,所以逻辑分区的数字必须从5开始)。
分区方案三:一个逻辑分区
这里能看到:sda,sda1,sda5
见到这些数字不要害怕,这样一解释就很容易理解了。如果有多块物理硬盘就会出现sdb,sdc。
分区号1234按创建时间顺序分配,逻辑分区按从硬盘上分区位置分配
=============================================
作者:Easiny
======================================================================
在我用的Ubuntu系统下,共有如下sda*
ubuntu@ubuntu-desktop:/media$ ll /dev |grep sda
brw-rw---- 1 root disk 8, 0 2009-12-19 01:32 sda //硬盘
brw-rw---- 1 root disk 8, 1 2009-12-19 01:32 sda1 //主分区1 相当于Win下的C:
brw-rw---- 1 root disk 8, 2 2009-12-19 01:32 sda2 //扩展分区
brw-rw---- 1 root disk 8, 5 2009-12-19 03:29 sda5 //逻辑分区1 相当于Win下的D:
brw-rw---- 1 root disk 8, 6 2009-12-19 03:39 sda6 //逻辑分区2 相当于Win下的E:
brw-rw---- 1 root disk 8, 7 2009-12-19 01:33 sda7 //逻辑分区3 挂载点为 / 目录
brw-rw---- 1 root disk 8, 8 2009-12-19 01:32 sda8 //逻辑分区4 无挂载点 为 swap
ubuntu@ubuntu-desktop:/media$
========================================
ubuntu@ubuntu-desktop:/media$ fdisk -l
Cannot open /dev/sda
ubuntu@ubuntu-desktop:/media$ sudo fdisk -l //查看sda的相关信息
sudo: unable to resolve host yuanming
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xbf8db35e
Device Boot Start End Blocks Id System
/dev/sda1 * 1 5099 40957686 c W95 FAT32 (LBA)
/dev/sda2 5100 19457 115330635 f W95 Ext'd (LBA)
/dev/sda5 5100 10198 40957686 7 HPFS/NTFS
/dev/sda6 10199 15297 40957686 7 HPFS/NTFS
/dev/sda7 * 15298 19157 31005418+ 83 Linux
/dev/sda8 19158 19457 2409718+ 82 Linux swap / Solaris
ubuntu@ubuntu-desktop:/media$
========================================
sda5 AND sda6
我是双系统,在Ubuntu下,有的时候会打不开 D盘和E盘 。所以只能手动挂载
ubuntu@ubuntu-desktop:/media/sda6$ sudo mount -t ntfs-3g /dev/sda6 /media/sda6 -o force //手动挂在E盘
sudo: unable to resolve host sin
$LogFile indicates unclean shutdown (0, 0)
WARNING: Forced mount, reset $LogFile.
ubuntu@ubuntu-desktop:/media/sda6$ ls
ubuntu@ubuntu-desktop:/media/sda6$ cd ..
ubuntu@ubuntu-desktop:/media$ ls
cdrom cdrom0 disk sda6 sin
ubuntu@ubuntu-desktop:/media$ df
文件系统 1K-块 已用 可用 已用% 挂载点
/dev/sda7 30518012 3923408 25044336 14% /
tmpfs 516488 0 516488 0% /lib/init/rw
varrun 516488 100 516388 1% /var/run
varlock 516488 0 516488 0% /var/lock
udev 516488 2740 513748 1% /dev
tmpfs 516488 352 516136 1% /dev/shm
lrm 516488 2204 514284 1% /lib/modules/2.6.27-14-generic/volatile
/dev/sda1 40947648 31237152 9710496 77% /media/disk
/dev/sda5 40957684 26918328 14039356 66% /media/sin //事先已经手动挂载的 D盘
/dev/sda6 40957684 39082404 1875280 96% /media/sda6
ubuntu@ubuntu-desktop:/media$
====================================
ubuntu@ubuntu-desktop:/media$ cd sda6
ubuntu@ubuntu-desktop:/media/sda6$ ls //显示E盘下的内容,说明挂载成功
ubuntu@ubuntu-desktop:/media/sda6$ cd ../sin
========================================
sda7 AND sda8
查看 /etc/fstab 相关信息
ubuntu@ubuntu-desktop:$ cat /etc/fstab
# /etc/fstab: static file system information.
#
#
proc /proc proc defaults 0 0
# /dev/sda7
UUID=e2fe617a-7404-4090-9449-a4360ac0c8ea / ext3 relatime,errors=remount-ro 0 1
# /dev/sda8
UUID=051def70-70c8-46a5-ab50-ce2cf5b243f9 none swap sw 0 0
==============================================
补充一个知识点:FROM fstab参数详解
fstab中存放了与分区有关的重要信息,其中每一行为一个分区记录,每一行又可分为六个部份,下面以/dev/hda7 / ext2 defaults 1 1为例逐个说明:
1. 第一项是您想要mount的储存装置的实际位置,如hdb或如上例的/dev/hda7。
2. 第二项就是您想要将其加入至哪个目录位置,如/home或如上例的/,这其实就是在安装时提示的挂入点。
3. 第三项就是所谓的local filesystem,其包含了以下格式:如ext、ext2、msdos、iso9660、nfs、swap等,或如上例的ext2,可以参见/prco/filesystems说明。
4. 第四项就是您mount时,所要设定的状态,如ro(只读)或如上例的defaults(包括了其它参数如rw、suid、exec、auto、nouser、async),可以参见「mount nfs」。
5. 第五项是提供DUMP功能,在系统DUMP时是否需要BACKUP的标志位,其内定值是0。
6. 第六项是设定此filesystem是否要在开机时做check的动作,除了root的filesystem其必要的check为1之外,其它皆可视需要设定,内定值是0。
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/hda11 swap swap defaults 0 0
/dev/hda5 /mnt/d vfat suid,exec,dev,rw,iocharset=gb2312,umask=0 0 0
/dev/hda6 /mnt/e vfat suid,exec,dev,rw,iocharset=gb2312,umask=0 0 0
/dev/hda7 /mnt/f vfat suid,exec,dev,rw,iocharset=gb2312,umask=0 0 0
/dev/hda8 /mnt/g vfat suid,exec,dev,rw,iocharset=gb2312,umask=0 0 0
其中iocharset可以设置成utf8
umask=0,任何用户都可以读windows的分区
Linux下的fstab文件
1. fstab文件的作用
文件/etc/fstab存放的是系统中的文件系统信息。当正确的设置了该文件,则可以通过"mount /directoryname"命令来加载一个文件系统,每种文件系统都对应一个独立的行,每行中的字段都有空格或tab键分开。同时fsck、 mount、umount的等命令都利用该程序。
2. fstab文件格式
下面是/etc/fatab文件的一个示例行:
fs_spec fs_file fs_type fs_options fs_dump fs_pass
/dev/hda1 / ext2 defaults 1 1
fs_spec - 该字段定义希望加载的文件系统所在的设备或远程文件系统,对于一般的本地块设备情况来说:IDE设备一般描述为/dev/hdaXN,X是IDE设备通道 (a, b, or c),N代表分区号;SCSI设备一描述为/dev/sdaXN。对于NFS情况,格式一般为:
,例如:`knuth.aeb.nl:/'。对于procfs,使用`proc'来定义。
fs_file - 该字段描述希望的文件系统加载的目录点,对于swap设备,该字段为none;对于加载目录名包含空格的情况,用40来表示空格。
fs_type - 定义了该设备上的文件系统,一般常见的文件类型为ext2 (Linux设备的常用文件类型)、vfat(Windows系统的fat32格式)、NTFS、iso9600等。
codepage 国家语言代码页
iocharset 字符集
fs_options - 指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来。对于大多数系统使用"defaults"就可以满足需要。其他常见的选项包括:
选项 含义
ro 以只读模式加载该文件系统
sync 不对该设备的写操作进行缓冲处理,这可以防止在非正常关机时情况下破坏文件系统,但是 却降低了计算机速度
user 允许普通用户加载该文件系统
quota 强制在该文件系统上进行磁盘定额限制
noauto 不再使用mount -a命令(例如系统启动时)加载该文件系统
fs_dump - 该选项被"dump"命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设置该字段为0
fs_pass - 该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统"/"对应该字段的值应该为1,其他文件系统应该为2。若该文件系统无需在启动时扫描则设置该字段为0
3. 示例文件
# /etc/fstab
/dev/hda8 swap swap defaults 0 0
/dev/hda9 / ext2 defaults 1 1
/dev/hda6 /wine vfat defaults,codepage=936,iocharset=cp936 0 0
/dev/hda7 /winf vfat defaults,codepage=936,iocharset=cp936 0 0
/dev/hdb /cdrom iso9660 noauto,user 0 0
none /proc proc defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0
格式化常用mkfs命令:如 mkfs.ext3、mkfs.msdos、mkfs.vfat,例如:mkfs.ext3 /dev/hdb1,详细说明使用man mkfs。
====================================================
开头和结尾引用了网络的资料,中间为自己的理解,有错误的地方请指正。