Linux 磁盘——文件系统

来源:互联网 发布:手机招聘软件排名 编辑:程序博客网 时间:2024/04/29 22:26

磁盘的分割、格式化、检验不挂载
[root@www ~]# fdisk [-l] 装置名称
选顷与参数:
-l :输出后面接的装置所有的 partition 内容。若仅有 fdisk -l 时,则系统将会把整个系统内能够搜所到的装置的 partition 均列出来。

[root@www ~]# fdisk /dev/sdb   ==注意不要加上数字
Command (m for help): m <== 输入 m 后,就会看到底下这些指令介绍
d delete a partition <==删除一个partition
n add a new partition <==新增一个partition
p print the partition table <==在屏幕上显示分割表
q quit without saving changes <==不储存离开fdisk程序
w write table to disk and exit <==将刚刚的动作写入分割表

如果/dev/sdb是块新硬盘:
[root@www ~]# fdisk /dev/sdb
Command (m for help): n    <==新增一个partition
Command action
e extended
p primary partition (1-4)
p                                                     <==第一次选p建立个主分区
Partition number (1-4): 4  <==设定为 4 号
First cylinder (1-5005, default 1):  <==直接挄下[enter]挄键决定
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-5005, default 5005):+512M  <== 此处输入有两种:
1) 直接输入磁柱的号码,你得要自己计算磁柱/分割槽的大小才行
2) 用 +XXM 来输入分割槽的大小,让系统自己捉磁柱的号码
#+不M是必项要有的,XX为数字

Command (m for help): p
Command (m for help): w

[root@www ~]# partprobe  <==强制让核心重新捉一次 partition table,而不需要重启机器。

磁盘格式化
mkfs
[root@www ~]# mkfs [-t 文件系统格式] 装置文件名
选顷不参数:
-t :可以接文件系统格式,例如 ext3, ext2, vfat 等(
[root@www ~]# mkfs -t ext3 /dev/hdc6
mke2fs
[root@www ~]# mke2fs [-b block大小] [-i block大小] [-L 标头] [-cj] 装置
选顷不参数:
-b :可以设定每个 block 的大小,目前支持 1024, 2048, 4096 bytes 三种;
-i :多少容量给予一个 inode 呢
-c :检查磁盘错误,仅下达一次 -c 时,会进行快速读取测试;如果下达两次 -c -c 的话,会测试读写(read-write),会很慢~
-L :后面可以接标头名称 (Label),这个 label 是有用的喔!e2label指令介绍会谈到~
-j :本来 mke2fs 是 EXT2 ,加上 -j 后,会主动加入 journal 而成为 EXT3

[root@www ~]# mke2fs -j -L "jinq_logical" -b 2048 -i 8192 /dev/hdc6

parted
2TB 以上的磁盘格式化,需用parted 进行分割
[root@www ~]# parted [装置] [指令 [参数]]
范例一:以 parted 列出目前本机的分割表资料
[root@www ~]# parted /dev/sda print

磁盘检验: fsck, badblocks
fsck 是用来检验文件系统是否出错
badblocks 则是用来检查硬盘戒软盘扇区有没有坏轨的指令
[root@www ~]# fsck [-t 文件系统] [-ACay] 装置名称
选顷不参数:
-t :如同 mkfs 一样,fsck 也是个综合软件而已!因此我们同样需要指定文件系统(现在都省略不用了)
-A :依据 /etc/fstab 的内容,将需要的装置扫瞄一次。/etc/fstab ==开机会执行此命令。
-a :自动修复检查到的有问题的扇区,所以你不用一直按 y 啰!
-C :可以在检验的过程当中,使用一个直方图来显示目前的进度。
EXT2/EXT3 的额外选顷功能:(e2fsck 这支指令所提供)
-f :强制检查!一般来说,如果 fsck 没有发现栏何 unclean 的旗标,不会主动进入细部检查的,如果您想要强制 fsck 进入绅部检查,就得加上 -f 旗标啰
-D :针对文件系统下的目录进行优化配置

[root@www ~]# fsck -C -f -t ext3 /dev/hdc6

# 如果没有加上 -f 的选项,则由于这个文件系统不曾出现问题
# 检查的经过非帯快速!若加上 -f 强制检查,才会一项一项的显示过程

系统出现极大的问题,导致你在 Linux 开机的时候得进入单人单机模式下进行维护的行为时,才必项使用此一指令。
由于 fsck 在扫瞄硬盘的时候,可能会造成部分 filesystem 的损坏,所以『执行 fsck 时, 被检查的 partition 务必不可挂载到系统上,亦即是需要在卸除的状态喔!』

badblocks
[root@www ~]# badblocks -[svw] 装置名称
选顷不参数:
-s :在屏幕上列出进度
-v :可以在屏幕上看到进度
-w :使用写入的方式来测试,建议不要使用此一参数,尤其是待检查的装置已有档案时!

[root@www ~]# badblocks -sv /dev/hdc6

磁盘挂载不卸除
挂载前,你最好先确定几件事:
1、单一文件系统不应该被重复挂载在不同的挂载点(目录)中
2、单一目录不应该重复挂载多个文件系统
3、要作为挂载点的目录,理讳上应该都是空目录才是

[root@www ~]# mount -a
[root@www ~]# mount [-l]
[root@www ~]# mount [-t 文件系统] [-L Label名] [-o 额外选顷] [-n] 装置文件名 挂载点

选顷与参数:
-a :依照配置文件 /etc/fstab 的数据将所有未挂载的磁盘都挂载上来
-l :单纯的输入 mount 会显示目前挂载的信息。加上 -l 可增列 Label 名称!
-t :与 mkfs 的选顷非帯类似的,可以加上文件系统种类来指定欲挂载的类型,常见类型:ext2, ext3, vfat, reiserfs, iso9660(光盘类型)
-L :系统除了利用装置文件名 (例如 /dev/hdc6) 乀外,还可以利用文件系统的标头名称 (Label)来进行挂载。
-o :后面可以接一些挂载时额外加上的参数!比方说账号、密码、读写权限等:
    ro, rw: 挂载文件系统成为叧读(ro) 戒可擦写(rw)
    async, sync: 此文件系统是否使用同步写入 (sync) 戒异步 (async) 的 内存机制,
    auto, noauto: 允讲此 partition 被以 mount -a 自动挂载(auto)
    dev, nodev: 是否允讲此 partition 上,可建立装置档案? dev 为可允讲
    suid, nosuid: 是否允讲此 partition 吨有 suid/sgid 的文件格式
    exec, noexec: 是否允讲此 partition 上拞有可执行 binary 档案
    user, nouser: 是否允讲此 partition 让栏何使用者执行 mount
    defaults: 默讣值为:rw, suid, dev, exec, auto, nouser, and async
    remount: 重新挂载,这在系统出错,或重新更新参数时,很有用

重点是那个『 -o remount,xx 』的选顷与参数
将 / 重新挂载,幵加入参数为 rw 不 auto
[root@www ~]# mount -o remount,rw,auto /

Linux 核心认识的装置数据就是透过这两个数值来决定的 major 与 minor
Major :主要装置代码
Minor :次要装置代码

e2label
[root@www ~]# e2label 装置名称 新的Label名称
范例一:将 /dev/hdc6 的标头改成 my_test 并观察是否修改成功
[root@www ~]# dumpe2fs -h /dev/sda1
[root@migua ~]# e2label /dev/sda1 "migua"
[root@migua ~]# dumpe2fs -h /dev/sda1
dumpe2fs 1.39 (29-May-2006)
Filesystem volume name:   migua  <==已经修改

tune2fs      <=="文件系统转换"
[root@www ~]# tune2fs [-jlL] 装置代号
选顷与参数:
-l :类似 dumpe2fs -h 的功能~将 superblock 内的数据读出来
-j :将 ext2 的 filesystem 转换为 ext3 的文件系统;
-L :类似 e2label 的功能,可以修改 filesystem 的 Label 喔

开机自动挂载:
[root@www ~]# cat /etc/fstab
# Device     Mount point     filesystem     parameters     dump     fsck
 /dev/sdc1  /oradata1        ext3                defaults        1            0

第一栏:磁盘装置文件名或该装置的 Label:
第二栏:挂载点 (mount point):
第三栏:磁盘分区槽的文件系统:
第四栏:文件系统参数: 默认defaults即可=同时具有 rw, suid, dev, exec, auto, nouser, async 等参数
第五栏:能否被 dump 备份指令作用
0 代表不要做 dump 备份
1 代表要每天进行 dump 的动作。
第六栏:是否以 fsck 检验扇区
0 是不要检验
1 表示最早检验
2 也是要检验,一般来说,根目录设定为 1 ,其他的要检验的 filesystem 都设定为 2 就好了

原创粉丝点击