Linux 磁盘管理

磁盘管理
     I/O ports:I/O设备地址;一般会用到两个缓冲器,一个输入,一个输出;
    一切皆文件:
        open();read();write();close();
        设备文件
            块设备:block,存储单位为"块";    磁盘设备;
            字符设备:char,存储单位为"字符";键盘,鼠标设备;
            
            设备文件:关联至一个设备驱动,进而能够跟与之对应的硬件设备进行通讯;并且设备文件没有数据大小的属性,只有元数据;
                包括read(),write()等输入,输出操作;还可能包括一些硬件特性,比如寻道,磁盘转动等;这些由文件系统及设备驱动共同完成;设备驱动将read(),write()等操作转换成硬件的电气操作特性;
            设备号(udev)
                主设备号:major number,用来标识不同设备类型;
                次设备号:minor number,用来标识相同类型的不同设备;
            硬盘的接口类型:主板跟硬件设备中间通信,需要协商一些参数,比如收发速率,双方都识别的信息格式等;这些都有控制器协调;
                并口:
                    IDE:133MB/s
                    SCSI:640MB/s
                串口:
                    SATA:6Gbps
                    SAS:6Gbps
                    USB:480MB/s
                    以上只是接口速率,跟设备存取速率没有直接关系;
            /dev/DEV_FILE:设备文件的存放位置;
                磁盘设备的设备文件命名:
                    IDE:/dev/hd(a-z);
                    SATA,SAS,SCSI,USB:/dev/sd(a-z);
                        现在IDE也是sd了;
                    磁盘编号:a-z;磁盘编号跟系统启动时,识别设备的顺序有关,越显示别的,号码越靠前;
                    分区编号:sda1,sda2 …;
                        分区号码1-4为主分区或者扩展分区,之后的为逻辑分区;
            机械式磁盘:  rpm :rotations per minute 转速;
                track :磁道;数据实际存储的位置;
                sector:扇区;一般为512bytes或4k;
                cylinder:柱面;分区都是以柱面为单位的;
            分区:将一个存储空间在逻辑上划分为多个独立的存储空间,当做多个单独的硬件设备使用;
            0磁道0扇区:512bytes用来存储开机引导程序及分区表;
                MBR:Master Boot Record主引导记录;
                    前446bytes用来存储boot loader 引导加载器;
                    之后64bytes用来存储分区表;
                        每16bytes标识一个分区,所以最多只有4个主分区;可以通过扩展分区来划分多个分区,扩展分区是通过指向另外一个存储位置,把他当做分区表继续划分逻辑分区;
                    最后2bytes用来存储MBR是否有效,通常为55AA;
                课外知识:UEFI,GPT;
            分区管理工具
                gdisk(GPT),fdisk(MBR),parted,sfdisk;
                fdisk:对一块硬盘来讲,只能管理15个分区;
                    -l:列出主机上的磁盘分区;
                        "*":表示在此分区上存在可引导程序;
                    子命令:
                        p:显示已有分区;
                        n:新建分区;
                        m:显示帮助信息;
                        d:删除分区;
                        t:更改分区id;
                        l:列出所有分区id类型;
                        w:写入磁盘并退出;
                        q:放弃写入并退出;
                查看内核是否已识别新的分区:
                    cat /proc/partations:分区信息所在位置;
                通知内核重新读取磁盘分区表:
                    partx,kpartx,partprobe;
                    partx -a :可以手动添加分区;
                    kpartx:支持强制添加分区;

注:根据马哥视频做的学习笔记,如有错误,欢迎指正;侵删

posted @ 2018-09-29 20:40  郭伟001  阅读(147)  评论(0编辑  收藏  举报