博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux下使用fdisk/mke2fs/mount添加新硬盘分区
阅读量:2448 次
发布时间:2019-05-10

本文共 4180 字,大约阅读时间需要 13 分钟。

linux新增硬盘,需要先分区然后再对分区格式化,最后将分区mount后才能使用

 

磁盘分区

一个硬盘最多有4个主分区,多出的需要放在扩展分区,这些信息存储在磁盘的MBR(master boot recorder)即主引导区;

MBR位于硬盘的0轨,第一个要读取的硬盘区域,当MBR损坏时,整个硬盘就报销了;

硬盘分区格式化fdisk后,每个分区就是一个文件系统,而默认情况下每个文件系统开始的位置就是super block即超级块,存储该分区的metadata,包括blockinode总量,块与inode单个大小,文件系统载入时间以及有效位;

当超级块损坏时,该分区就报销了;

可通过dump2fs读取ext2/3的超级块及块组信息,需要root权限;

-h:只检查超级块

-b:查看坏块

查看linux支持的文件系统,可调用 ls  -l /lib/modules/`uname r`/kernel/fs

$  ls -l /lib/modules/`uname -r`/kernel/fs

total 160

drwxr-xr-x  2 root root 4096 Dec 17  2007 autofs4

drwxr-xr-x  2 root root 4096 Dec 17  2007 cifs

drwxr-xr-x  2 root root 4096 Dec 17  2007 cramfs

drwxr-xr-x  2 root root 4096 Dec 17  2007 exportfs

drwxr-xr-x  2 root root 4096 Dec 17  2007 ext3

drwxr-xr-x  2 root root 4096 Dec 17  2007 fat

drwxr-xr-x  2 root root 4096 Dec 17  2007 freevxfs

drwxr-xr-x  2 root root 4096 Dec 17  2007 hfs

drwxr-xr-x  2 root root 4096 Dec 17  2007 hfsplus

drwxr-xr-x  2 root root 4096 Dec 17  2007 jbd

drwxr-xr-x  2 root root 4096 Dec 17  2007 jffs2

drwxr-xr-x  2 root root 4096 Dec 17  2007 lockd

drwxr-xr-x  2 root root 4096 Dec 17  2007 msdos

drwxr-xr-x  2 root root 4096 Dec 17  2007 nfs

drwxr-xr-x  2 root root 4096 Dec 17  2007 nfs_common

drwxr-xr-x  2 root root 4096 Dec 17  2007 nfsd

drwxr-xr-x  2 root root 4096 Dec 17  2007 nls

drwxr-xr-x  2 root root 4096 Dec 17  2007 smbfs

drwxr-xr-x  2 root root 4096 Dec 17  2007 udf

drwxr-xr-x  2 root root 4096 Dec 17  2007 vfat

若查看已经启用的文件系统,则使用cat /proc/filesystems

$ cat /etc/filesystems

ext3

ext2

nodev proc

nodev devpts

iso9660

vfat

hfs

Linux采用VFS即虚拟文件系统为所有的文件系统提供统一的调用接口;

 

初始化文件系统

磁盘格式化采用mke2fs命令,其有许多选项常见的如下:

-b:块大小,包含1024/2048/4096字节

-i:每个inode的字节大小

 -j:创建ext3  journal

-n:模拟测试创建文件的效果但不实际执行

-N:分配inode的数量,而inode数量在文件系统创建后不可再更改

-S:初始化超级块和组描述符,通常被当作在超级块及其备份遭破坏后的最后一招,使用后应立即调用e2fsck检测

 

加载

注:将分区加载到某目录后,该目录原有的子目录会暂时被隐藏直至该分区被卸载为止;不同的文件系统可能有着不同的选项,以下的部分仅适用于ext3

使用mount命令,其选项很多常用的如下:

-o:分区载入选项,包括rw(读写)/ro(只读)noatime不更新访问时间,可加速;noexec不允许执行二机制文件;

-grpid:指定新创建文件的默认组,如不设置则使用当前进程的fsgid

-sb=n:指定超级块位置,默认为1;早先版本每8192块就有一个冗余备份,即第1/8193/16385..均为超级块,当文件系统超大时会造成浪费;自1.08版本其mke2fs增添-s选项,即稀疏超级块sparse superblock

-data:指定文件数据(metadata)的日志模式:journal—数据写入文件系统前先写日志;ordered—默认,先写数据后记日志;writeback--

-a:加载/etc/fstab列出的所有文件系统

-n:加载但不更新/etc/mtab,可在/etc为可读时使用

-L/U: 加载具有指定的标签名或UUID的文件系统

 

修改磁盘参数

加载磁盘后可能根据实际需求修改部分参数,可使用以下命令

Mknod

用于创建字符或块设备并赋予设备号;

Linux下所有的硬盘/软盘/键盘等外部设备都用文件代表存放在/dev下,但内核无法识别诸如/dev/sda等文件名,实际上其采用主/次设备号来区分不同的设备;

内核中维护着一个device driver table,其中主设备号代表该设备类型,次设备号代表该类型下的具体设备,两者都存储于该设备的i-node中,不可随意修改其值;

mknod还可用于创建FIFO文件

$ pwd

/dev

$ ll cpu* | head -5

crw-------   1 root root 203,  0 Oct  6 07:30 cpu0

crw-------   1 root root 203,  1 Oct  6 07:30 cpu1

crw-------   1 root root 203, 10 Oct  6 07:30 cpu10

crw-------   1 root root 203, 11 Oct  6 07:30 cpu11

crw-------   1 root root 203, 12 Oct  6 07:30 cpu12

$ ll md* | head -5

brw-rw----  1 root disk 9,  0 Oct  5 23:30 md0

brw-r-----  1 root disk 9,  1 Oct  5 23:30 md1

brw-r-----  1 root disk 9, 10 Oct  5 23:30 md10

brw-r-----  1 root disk 9, 11 Oct  5 23:30 md11

brw-r-----  1 root disk 9, 12 Oct  5 23:30 md12

 

Hdparm

仅限于IDESATA,对于SCSI则使用sdparm

设置硬盘参数,比如禁止write-back,启用DMA

-d   get/set using_dma flag d1打开DMA模式,所谓DMA即跳过CPU直接访问内存

--direct  use O_DIRECT to bypass page cache for timings

-f   flush buffer cache for device on exit

-m   get/set multiple sector count-m16即一次IO中断从磁盘读入16个扇区

-P   set drive prefetch count

-t  查看磁盘读次数

-T 查看cache读次数

$ sudo hdparm -tT /dev/hda

/dev/hda:

 Timing buffer-cache reads:   128 MB in  1.34 seconds =95.52 MB/sec

 Timing buffered disk reads:  64 MB in 17.86 seconds = 3.58 MB/sec

$ sudo hdparm /dev/hda

/dev/hda:

 multcount    =  0 (off)

 I/O support  =  0 (default 16-bit)

 unmaskirq    =  0 (off)

 using_dma    =  0 (off)

 keepsettings =  0 (off)

 nowerr       =  0 (off)

 readonly     =  0 (off)

 readahead    =  8 (on)

 geometry     = 1870/255/63, sectors = 30043440, start = 0

multcount即一次I/O中断读取的sector数量,可通过-m调整,能有效降低CPU使用率及增加IO性能,-m16每次读取16个扇区;

I/O support决定数据从PCI到控制器的传输默认,目前普遍支持32bit-c3激活32bit传输

Unmaskirq启用此功能运行linux在处理磁盘中断时接受其它中断,即等待磁盘返回请求数据时linux可以处理其它中断相关任务

 

Tune2fs

文件系统被创建后部分参数可通过tune2fs调整

-j:为文件系统增添ext3 journal选项

-l:列举超级块内容

-L:设置磁盘标签

-m:设置预留磁盘百分比

-u:设置可访问预留数据块的用户,可赋予uid或用户名

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15480802/viewspace-753426/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/15480802/viewspace-753426/

你可能感兴趣的文章
使Backspace键在Linux上的Firefox中正常工作
查看>>
搭建gos_快速浏览gOS –但不要称其为Google
查看>>
sherlock软件使用_如何在不使用电缆的情况下播放BBC的“ Sherlock”
查看>>
mac上vim不能复制粘贴_如何在Mac上复制和粘贴
查看>>
使用Outlook 2007待办事项栏
查看>>
关闭explorer_重新打开Internet Explorer中的关闭的选项卡
查看>>
再探:在线音乐工厂
查看>>
如何在线播放UFC 249 Ferguson vs. Gaethje在线直播
查看>>
将快速拨号设置为Opera启动页面
查看>>
如何将AirPods与Apple Watch配对
查看>>
Mysticgeek的周评
查看>>
如何在Ubuntu Linux中显示最近的命令列表
查看>>
在Windows Vista中备份您的文件加密密钥
查看>>
使Word 2007始终以Word 2003格式保存
查看>>
如何在Google课堂中创建测验
查看>>
skype 加密通话_如何更改您的Skype视频通话背景
查看>>
netflix什么来很_如何使用Netflix的屏幕锁定来禁用播放控件
查看>>
什么是跟踪器,为什么运行?
查看>>
如何更改您的Netflix计划
查看>>
xp好还是vista好_在Windows Vista或XP中轻松调整照片大小
查看>>