磁盘及文件管理系统

来源:互联网 发布:淘宝怎么认证代购 编辑:程序博客网 时间:2024/05/17 09:36

MBR:主引导记录(512byte)
master boot record
main boot record
446bytes:bootloader,程序
64bytes:
16bytes:标示一个分区
2bytes:magic number
标示MBR是否有效

文件系统可以认为是一个管理软件:

 元数据存储区,  位图(index node :Inode(索引节点)):  存储;     块位图:bitmap (存储块是否已经被使用的)  实际应用中:元数据存储区也会被分成块  数据存储区:逻辑存储单元(存储块) dentry:目录像

链接文件:

硬链接,直接指向同一个Inode的不同路径.    1. 只能对文件创建,不能应用于目录.    2. 不能跨文件系统;    3. 创建硬链接会增加文件被链接的次数.符号链接,一个目录文件指向的Inode不是一个块的地址而是一个文件的路径.1. 可应用于目录;2. 可跨文件系统;3. 不会增加被链接文件的链接次数;4. 其大小为指定路径所包含字符的个数.

du:显示文件或目录总大小

-s:显示目录大小.-h:大小单位换算.

df:显示整个磁盘的空间大小.

设备文件:

b:按块为单位,随机访问的设备;c:按字符为单位,线性设备;b:硬盘c:键盘

/dev

主设备号(major number):    标示设备类型次设备号(minor number):    标示同一类型的不同设备mknod:mknod [OPTION]... NAME TYPE [MAJOR MINOR]    -m指定访问权限:MODEeg:mknod -m 640 mynod c 66 0 

硬盘设备的设备文件名:

  IDE,ATA:hd  SATA:sd  SCSI:sd  USB:sd    a,b,c,...来区别同一种类型下的不同设备IDE:    第一个IDE口:主,从        /dev/hda,/dev/hdb    第二个IDE口:主,从        /dev/hdc,/dev/hddsda,sdb,sdc,...hda:    hda1:第一个主分区    hda2:    hda3:    hda4:    hda5:第一个逻辑分区查看当前系统识别了几块硬盘:    fdisk -l [ /dev/to/some_device_file ]

管理磁盘分区:

fdisk /dev/sda:    P:显示当前硬盘的分区,包括没保存的改动    n:创建新分区        e:扩展分区        p:主分区    d:删除一个分区    w:保存退出    q:不保存退出    t:修改分区类型        L:    l:显示所有支持的类型 partprobe:通知内核刷新分区表

格式化:

低级格式化:创建磁道高级格式化:创建文件系统  

VFS:virtual file system (内核中的模块)
中间的空条就是VFS
正是因为linux下的VFS才能使linux能够兼容下面这么多的文件系统.
常用的文件系统:

  FAT32:vfat  NTFS  ISO9660  CIFS:通用互联网文件系统  ext2  ext3  ext4  xfs  reiserfs  jfs

linux网络文件系统:
nfs:
ocfs:
gfs2:

EXT3

较ext2多了日志区

文件系统管理器

重新创建文件系统会损坏原有文件系统

mkfs:make file system    -t FSTYPEmkfs -t ext2=mkfs.ext2mkfs -t ext3=mkfs.ext3专门管理ext系列文件系统:mke2fs    -j:创建ext3类型文件系统    -b BLOCK_SIZE:指定块大小,默认为4096 ,可取数值为1024,2048,4096    -L LABLE:指定卷标    -m #:指定与留给超级用户的块数百分比    -i #:用于指定为多少字节的空间创建一个inode,默认为8192,这里给出的应该是2^n.

fsck:

挂载:将新的文件系统关联至当前根文件系统

卸载:将某文件系统与当前文件系统的关联关系予以移除

创建文件系统相当于快速格式化.

mount:挂载

mount 设备 挂载点    设备:        设备文件:/dev/sda5        卷标:LABLE=""        UUID=""    挂载点:目录        要求:            1. 此目录没有被其他进程使用            2. 目录得事先存在            3. 目录中原有的文件将会暂时隐藏mount:显示当前系统已挂载的设备和挂载点mount [option] [-o options] DEVICE MOUNT_POINT    -a:表示挂载/etc/fstab文件中定义的所有文件系统    -n:默认情况下,mount命令每挂载一个设备,都会把挂载的设备信息保存至/etc/mtab文件中;使用-n后,不把挂载的设备信息写入/etc/mtab文件;    -t FSTYPE:指定正在挂载设备上的文件系统的类型;不使用此选项时,mount会调用blkid命令获取对应的文件系统类型;    -r:只读挂载,挂载光盘时常用选项    -w:读写挂载    -o:指定额外的挂载选项,也指定文件系统的启动属性        loop:挂载本地回环设备        remount:重新挂载当前文件系统        ro:只读挂载        rw:读写挂载挂载完成后,要通过挂载点访问对应的文件系统umount:卸载文件系统    umount 设备    umount 挂载点卸载注意事项:挂载的设备没有进程正在使用

swap分区:

free:查看当前系统上物理内存和交换空间的使用情况mkswap:创建swap分区swapon : 启用交换分区    -a:启用所有定义在/etc/fstab 文件中的设备swapoff: 停止交换分区

回环设备:

loopback,使用软件来模拟实现硬件mount命令,可以挂载iso镜像文件:$:mount -o loop ios文件 MOUNT_POINT创建一个120G的分区dd命令:    if:指定来源    of:数据存储目标    bs=1:以一个字节为单位    count=2:复制两个单位    seek=#:创建数据文件时,跳过的空间的大小;dd if=/dev/sda of=/mnt/usb/mbr.backup bs=512 count=1dd if=/mnt/usb/mbr.backup of=/dev/sda bs=512 count=1赋值磁盘映像:    cat /dev/cdrom > /root/rhe15.iso    dd if=/dev/cdrom of=/root/rhe15.isodd与cp的不同:    cp是以文件为单位复制的,需要经过VFS.    dd是在底层复制的,不经过VFS.

文件系统配置文件:/etc/fstab

os在初始时,会自动挂载次文件中定义的每个文件系统格式:    要挂载的设备  挂载点  文件系统类型  挂载选项  存储频率(每多少天做一次完全备份)  文件系统检测次序(只有根可以为1)

fuser: 验证进程正在使用的文件或者套接字文件

-v:查看某文件上正在运行的进程-k:-m:fuser -km MOUNT_POINT :终止正在访问该挂载点的所有进程
0 0