一、为啥子要把硬盘分区? 1、维护相关:如可以把相同类型,有共同安全需要的内容,放到不同的分区中,这样方便了维护。 2、效率因素:如果一个大的硬盘,在整个硬盘上找到相应的资料,很费时。 3、硬盘限额:限额的控制,只能对分区来实施。 4、备份资料:对重要的信息放到某个分区,方便备份。 5、安全考虑:如果大的硬盘,一但有损坏的话,就有可能导致整个硬盘资料丢失,如果把硬盘的资料分开来存放的话,损失会很小。
二、Linux是咋样使用其支持的文件系统哩? 低级格式化:磁盘厂商在生产磁盘时创建磁道。 高级格式化:用户创建文件系统。 文件系统是内核的一个功能。 但是创建文件系统,必须一点就是先分区啊!亲。
对于任何操作系统而言,一个分区都对应有一个独立的文件系统,而且操作系统可以用不同的文件系统。这些文件系统的调用都要经过VFS这个东西。
因为Linux访问文件的方式是从根开始的,根是唯一的,所有新文件系统或新划分的分区,都应该归并到根下,这种方式叫挂载或关联。
画的不好,也就这么回事吧[抠鼻] [抠鼻]。
三、走,我们一同分区去
(1)首先,先给虚拟机添加一些新硬盘,IDE与SCSI接口添加方法无二。 (2)磁盘分区格式硬盘设备名说明 IDE、ATA:并口,以hd开头 SATA:串口 ,sd开头 SCSI:以sd开头 USB:以sd开头 在开头后加a,b,c . . .来区分同一种类型下的不同的设备,硬盘主分区最多为4个,主分区从sdb1开始到sdb4,逻辑分区从sdb5开始,(逻辑分区永远从sdb5开始. . .) (3)管理磁盘分区 命令fdisk /dev/sda -n : 创建新分区 -p : 显示当前硬盘的分区,包含还没保存的改动 -d : 删除一个分区 -t : 修改分区类型(文件系统类型,创建Linux格式化时作优化工作) -l : 显示所支持的所有类型 -w : 保存退出(在内存中完成后直接同步到硬盘) -q : 不报存退出
查看当前系统识别了几块硬盘:fdisk -l
(4)在/dev/sda上创建一个大约这麽大的分区 —ε—
已经通知系统重新读取分区表,并同步到磁盘。 这样的提示的话,它的意思就是让我们重新启动系统,好让内核认出我们新的分区表,为了不让系统重新启动,我们可以用 # Partprobe ===》 在CentOS 5 ,RedHat 5上使用, 也可在CentOS 6,RedHat6上使用,还有其他的命令,如: # Partx -a [device] # kpartx -af [device]
#cat /proc/partitions 显示当前内核识别哪些分区 #cat /proc/filesystem 显示查看当前内核支持的文件系统的类型
四、文件系统,手持命令将你搭
Linux上的文件系统:ext2, ext3, ext4, xfs, reiserfs, jfs:日志文件系统 Linux常用的网络文件系统:nfs, ocfs2,gfs2, swap,
ext3 与ext2 的区别 ext3 叫journal file system 日志文件系统 ext3的优越性:若存储的东西较大,需要占有100个磁盘块 1)先建立一个inode,申请多个单元块,填到98个时,系统断电(非法关机),重启找不回来,应该删掉那个文件以节省空间。所以先要找到那个损坏的文件。 若量大难找时修复慢,就需要==》日志。 2)先把inode放入日志创建没有创建在原数据区 若断电于存数据过程中则检查日志区inode去修复这些文件 若没断电再把inode从日志区迁移到原数据区,缺点是多一次IO操作。
①. 专门创建ext系列文件的命令: mkfs :make file system 创建文件系统的通用命令 mkfs -t FSYPE DEST 通过指定参数-t type能够创建各种文件系统,本质上是调用对应的文件系统创建工具罢了 mkfs -t type DEVICE = mkfs.type DEVICE
[iyunv@localhost ~]# mkfs [tab] [tab] mkfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.msdos mkfs.vfat # 按下两个[tab],会发现 mkfs 支援的档案格式如上所示
[ make ext2 files ] ==》 mke2fs [OPTION]... DEVICE 创建ext2文件 -- j : ext3 创建ext3文件(日志) -t {ext2|ext3|ext4} 设置文件系统类型,可以实现无损转换 --b BLOCK_SIZE : 指定块大小,默认为4096;可取值为1024,2048,4096 --L LABEL : 指定分区卷标识符: --m Num: 指定预留给超级用户块数百分比 --i Num:指定inode占有多少字节的比率 --N Num:指定inode个数 --F :强制创建文件系统 --E :用户指定额外文件系统属性
[iyunv@localhost ~]# mke2fs -t ext2 /dev/sda2 [iyunv@localhost ~]# blkid /dev/sda2 /dev/sda2: UUID="3867817b-58f8-4d95-a040-bf88b9a8f851" TYPE="ext2"
例子:创建一个日志文件系统【ext3】,block大小2048,指定卷标名YUAN_DATA; 预留给超级用户3%的空间;每4096 bytes分配一个inode。 #mke2fs -j -L YUAN_DATA -b 2048 -m 3 -i 4096 /dev/sda3
②.用于查看的命令 blkid : 查看或查询磁盘设备的 相关属性 UUID :随机数,相当于唯一标识 TYPE :文件系统类型 LABEL:查看卷标 #blkid /dev/sda5
e2label:用于查看定义卷标的 修改:e2label 设备文件 卷标设定 #e2label /dev/sda5 hellodata [iyunv@localhost ~]# tune2fs -L Haha /dev/sda1 tune2fs 1.41.12 (17-May-2010) [iyunv@localhost ~]# e2label /dev/sda1 Haha
③. 无损进行调整文件系统的相关属性 tune2fs :调整文件系统的相关属性 --j :ext3,不损害原有数据 --L :LABEL:设定或修改卷标 --m #:调整预留百分比 --r # : 指定预留块数 --O : 文件系统属性开关 -- o : 设定默认挂载选项 -- c # :指定挂载次数达到 -- i # :每次挂载使用多少天后进行自检,0或-1关闭此功能 -- l :显示超级块中的信息
dumpe2fs :显示文件信息(更详细) --h :只显示超级块中的信息 # dumpe2fs -h /dev/sda ④. 筛查修复文件系统出现的讹误 fsck :检查并修复Linux文件系统 --t FSTYPE:指定文件系统类型 --a :自动修复,不在询问
e2fsck :专门用于ext系列文件系统 --f : 强制检查 --p | --a :自动修复 #e2fsck -f -p /dev/sda
五、哪些挂载的和永久挂载了的 挂载:将新的文件系统关联至当前根文件系统 卸载:将某文件系统与当前根文件系统的关联关系预以移除; mount 设备 挂载点
设备:
设备文件:/dev/sda5
卷标:LABEL=“”
UUID: UUID=“”
挂载点:目录
要求:
1、此目录没有被其它进程使用;
2、目录得事先存在;
3、目录中的原有的文件将会暂时隐藏;
mount: 显示当前系统已经挂载的设备及挂载点 mount [options] [-o options] DEVICE MOUNT_POINT -a: 表示挂载/etc/fstab文件中定义的所有文件系统 -n: 默认情况下,mount命令每挂载一个设备,都会把挂载的设备信息保存至/etc/mtab文件;使用—n选项意 味着挂载设备时,不把信息写入此文件; -t FSTYPE: 指定正在挂载设备上的文件系统的类型;不使用此选项时,mount会调用blkid命令获取对应文 件系统的类型; -r: 只读挂载,挂载光盘时常用此选项 -w: 读写挂载 -o: 指定额外的挂载选项,也即指定文件系统启用的属性; sync/async:同步/异步写入; remount: 重新挂载当前文件系统 ro: 挂载为只读 rw: 读写挂载 atime/noatime:文件或目录访问时间更迭,大量访问可将atime关上; diratime/nodiratime:目录在被访问时是否更新其访问时间戳; remount:重新挂载; acl:支持使用facl功能; ro:只读 rw:读写 dev/nodev:此设备上可否允许创建设备文件; exec/noexec:可否允许运行此设备上的程序文件; auto/noauto:磁盘可不可以用-a选项自动挂载 user/nouser:可否允许普通用户挂载此文件系统; suid/nosuid:可否允许程序文件上的suid和sgid特殊权
挂载完成后,要通过挂载点访问对应文件系统上的文件;
umount: 卸载某文件系统 umount 设备 umount 挂载点
卸载注意事项: 挂载的设备没有进程使用; ㈠、普通挂载
㈡、永久挂载或自动挂载
文件系统的配置文件/etc/fstab OS在初始时,会自动挂载此文件中定义的每个文件系统 # cat /etc/fstab
实现步骤: 1》用vim编辑器在/etc/fstab中末尾添加: /dev/sda1 /mnt/temo ext4 defaults 0 0 2》cat一下/etc/fstab 3》df -hT查看已经自动挂载的文件
df :显示磁盘整个分区的使用情况 -h 可作空间单位换算 -i inode的使用次数 -P 可以不换行,规整显示 -T 文件系统类型
六、交换分区
为什么要交换分区?
简单来说,SWAP 交换分区是用来存放内存溢出来的数据。我们可以将内存想像成一个盆子,运行程序时的数据都被作为水放在内存这个盆子当中。如果你运行太多的应用程序,导致水过多而(内存这个)盆子已经装不下时,就会将多于部分的水装到 SWAP 交换分区当中。 从理论上讲,SWAP 交换分区增大了可以使用的内存空间,但事实并非如此。因为内存的数据交换速度是非常快的,而 SWAP 交换分区是把物理磁盘当成内存的载体,也就是说:虽然使用 SWAP 可以让我们运行更多或更大的应用程序了,但物理磁盘的数据交换速度远比不上物理内存,因此也就可能造成运行性能的下降。而对硬盘特别是 SSD 磁盘的频繁读写,也会造成磁盘寿命的缩短和性能下降。 所以,交换分区仅作为一个应急使用。 怎样创建交换分区?
①.先在fdisk命令调整分区类型:82:Linux swap ②.创建交换分区命令mkswap ,-L LABEL ③.启用或关闭swap分区 swapon 启用分区 -a:启用所有的定义在/etc/fstab文件中的交换设备 swapoff 禁用 free -m :以兆为单位,查看当前物理内存使用情况
|