Linux磁盘及文件系统管理是怎么样的

Linux磁盘及文件系统管理是怎么样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

磁盘基本概念
磁盘 分区 MBR GPT

格式化好的分区都有一个 lost+found 目录

磁盘基本概念
cylinder柱面
sector扇区
head磁头

linux所有设备都被抽象为一个文件,保存在/dev下
一般名称为hda,sda   hdb,sdb
IDE设备的名称为hda
sata,scsi,sas,usb等设备的名称为sd[a-z]

不同分区用:设备名称+分区号 方式表示,如sda1、sda2

主流分区机制为MBR和GPT两种
eg.
cd /dev/
ls /dev/sda (+TAB建)
或者ls /dev/sda*

MBR master boot record  传统 (使用BIOS的PC设备)
硬盘不得超过2T

头512KB都被MBR占用
Bootstrap code area446
Partition table (for primary partitions)
  partition entry #116
  partition entry #216
  partition entry #316
  partition entry #416
Boot signature
  55h3
  AAh3
Total512

主分区<=4
一个扩展分区会占用一个主分区位置
逻辑分区<63个IDE分区和15个SCSI分区

GPT
GUID Partition Table
支持>2T
向后兼容MBR
必须在支持UEFI的硬件基础
必须64bit
Mac、Linux系统都能支持GPT分区格式
windows7 64bit,windowsServer2008 64bit 支持GPT

使用fdisk进行磁盘管理_________________________________________________

fdisk是来自IBM的老牌分区软件,几乎所有Linux系统均默认安装
fdisk是一个MBR分区工具,不可用于GPT分区
只有超级用户(root)权限可以执行fdisk
fdisk分区后需要使用partprobe让内核识别新的分区

fdisk -l磁盘分区信息
fdisk /dev/sda  对目标进行分区
p打印(显示)分区表
n创建分区
eextended
partition number(1-4):2
pprimary partition(1-4)    
partition number(1-4):1
:+2G
n
llogical(5 or over)
:+2G
p primary partition(1-4)
t修改分区ID
L
83(82.linux swap[虚拟内存])

此时所有信息只保存在内存当前,还没有写进硬盘
此时需要写入MBR分区表里
命令为:W

分区后有时候信息显示有延迟
手动来让内核更新分区表
命令为:partprobe

查看分区信息
fdisk -l
cat /proc/partitions

此时文件系统还没有创建

Linux文件系统_____________________________________________________

没有文件系统的设备为裸(raw)设备
文件系统是操作系统用以管理磁盘或分区上的文件数据使用的,创建文件系统的过程一般称之为格式化

windows下主流的文件系统是:fat32、NTFS,
Linux下主流的文件系统是:ext3、ext4

判断一个文件系统优劣通常通过以下几个方面:
支持最大分区大小
支持最大单个文件大小
支持文件名长度
日志功能
文件存取性能

命令mke2fs用以创建文件系统:
  mke2fs -t ext4 /dev/sdb1
  -b  指定文件系统块(block)大小(block是文件系统读写操作的最小单位,   默  认是4096)
  -c  建立文件系统的时候检查块损坏
  -L  指定卷标
  -j   建立文件系统日志

命令mkfs可用来快速建立文件系统:(命令简单,没有参数)
  mkfs.ext3、mkfs.ext4、mkfs.vfat
  mkfs.ext4 /dev/sdb1

命令dumpe2fs可用来查看指定文件系统的信息:
  dumpe2fs /dev/sda1

命令e2label用以为指定文件系统添加卷标:
  e2label /dev/sda1 LINUXCAST

命令fsck用以检查文件系统错误:
  fsck /dev/sda1

日志是文件系统通常都支持的功能,用以提高文件系统的稳定性及可恢复性

Linux文件系统挂载管理___________________________________

文件系统创建好之后需要挂载到系统中方可使用,windows、Mac系统会自动挂载文件系统,而Linux下一般需要手工挂载

命令mount可用来挂载文件系统:
直接敲一个mount可以显示挂载信息
mount 要挂载的设备   挂载点
mount /dev/sdb1    /mnt/     (挂载到任意位置其实都可以)
-t  指定文件系统的类型,如: -t ext3、-t vfat  
-o  指定挂载选项:
   ro,rw    只读挂载或读写挂载
   sync     不使用文件缓存,所有操作直接写入磁盘
   async    使用缓存提高文件系统读写效率
   noatime 不更新文件访问时间
   atime    更新文件访问时间
   remount  重新挂载

you must specify the filesysten type?挂载出错
回答:
1.先用vgscan 
2.vgchange -ay
3.lvscan
4.mount
到第三步的时候如果正常会显示出两块硬盘的lv状态都是active,此时再
#mount -t ext3 /dev/VGname/LVname /mnt/cdrom

命令umount用以卸载一个挂载的文件系统
umount 挂载源或挂载点
umount /dev/sdb1 | /mnt

可以将挂载配置写入/etc/fstab中以实现自动挂载

命令fuser可查看某文件系统中正在使用的文件
fuser -m /mnt

命令lsof可查看正在被使用的文件
lsof /mnt

自动挂载
修改文件/etc/fstab定义系统启动自动挂载
格式
/dev/sda3/mntext4  defaults00
需要挂载的设备挂载点文件系统  挂载选项dump、fsck相关选项

要挂载的设备也可以使用LABEL进行标识,使用LABEL+LINUXTEST取代/dev/sda3
e2label /dev/sdb1显示卷标
e2label /dev/sdb1 /mm   设置卷标
mount -a 命令会挂载所有fstab中定义的自动挂载项

关于Linux磁盘及文件系统管理是怎么样的问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/199390.html

(0)
上一篇 2021年11月20日
下一篇 2021年11月20日

相关推荐

发表回复

登录后才能评论