设备文件:

    b:按块为单位,随机访问的设备

        如:硬盘  

    c:按字符为单位,线性设备

        如:键盘

[root@localhost tm]# ll /dev/
crw-rw---- 1 root audio   14,   12 Feb 18 00:28 adsp
brw-rw---- 1 root floppy   2,    0 Feb 18 00:28 fd0

14,   12和2,    0分别表示

主设备号

    标识设备类型

次设备号

    标识同一种类型中不同的设备


mknod    创建设备文件

    mknod [OPTION]... NAME TYPE [MAJOR MINOR]

    -m:指定权限

如:mknod mydev b 66 0

       mknod -m 640 mydev b 66 0


硬盘设备的设备文件名:

IDE,ATA:hd开头

SATA:sd开头

SCSI:sd

USE:sd

             a,b,c...来区别同一种类型下的不同设备

IDE:

    第一个IDE口:主(/dev/hda)、从(/dev/hdb)

    第二个IED口:主(/deb/hdc)、从(/dev/hdd)

hda:    

    hda1:第一个主分区

    hda2

    hda3

    hda4

    hda5:第一个逻辑分区

查看当前系统识别的硬盘:fdisk -l

管理磁盘分区:fdisk

fdisk /dev/sda

    p:显示当前硬盘的分区

    n:创建新分区

        e:扩展分区

        p:主分区

    d:删除一个分区

    w:保存推出

    q:不保存退出

    t:修改分区类型

    l:显示锁支持的所有类型

partprobe 让内核重读分区


磁盘空间

Boot BlockBlock Group 0Block Group 1......Block Group n

每一个块组Block Group内为

Super BlockGDTBlock BitmapInode BitmapInode TableData Blocks

Boot Block:0 系统预留的引导块

Super Block:超级块

GDT:块组描述符

Block Bitmap:块位图

Inode Bitmap:Inode位图

Inode Table:Inode位图


文件系统管理

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

mkfs:make file system

    -t 系统类型

如:mkfs -t ext3 /dev/sha5

mkfs -t ext2 == mkfs.ext2

mkfs -t ext3 == mkfs.ext3


专门管理ext系列文件

mke2fs

    -j:创建ext3类型文件系统

        mke2fs -j 2048 /dev/sha5

    -b:指定块大小,默认为4096,可用取值为1024、2048、4096

        mke2fs -b 2048 /dev/sha5

    -L:指定分区卷标

        mke2fs -L XX /dev/sda5

    -m:指定预留超级块的块数百分比

        mk2efs -m 3 /dev/sda5

    -i:指定为多少个字节的空间创建一个inode,默认为8192,这里给出的数值应该为块大小的2^n倍

    -N:指定要创建的inode个数

    -F:强制创建文件系统

    -E:用于指定额外的文件系统属性


blkid:查询或查看磁盘设备的相关属性.


e2label:用于查看或定义卷标

    e2label 设备文件 卷标:设定卷标


tune2fs:调整文件系统的相关属性

    -j:不损坏原有数据,将ext2升级为ext3

    -L:用于设定或修改卷标

    -m:调整预留百分比

    -r:指定预留块数

    -o:设定默认挂载选项

    -c:指定挂载次数达到多少次之后进行自检,0或-1表示关闭此功能

    -i:每挂载多少天后进行自检,0或-1表示关闭此功能

    -l:显示超级块中的信息


dumpe2fs:显示文件信息

    -h:只显示超级块中的信息


fsck:检查并修复Linux文件系统

    -t:指定文件系统类型

    -a:自动修复

e2fsck:专用与修复ext2/ext3文件系统

    -f:强制检查

    -p:自动修复

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

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

mount:挂载

    mount 设备 挂载点

        设备:设备文件:/dev/sda

                    卷标:LABEL=""

                    UUID:UUID=“”

        挂载点:目录

                要求:

                        1、此目录没有被其他进程使用

                        2、目录事先存在

                        3、目录中的原有的文件将会暂时隐藏

挂在完成后,要通过挂载点访问对应文件系统上的文件

umount:卸载文件系统

    umount 设备

    umount 挂载点

卸载注意事项:

    挂载的设备没有被进程使用

mount:显示当前系统已经挂载的设备及挂载点

    -a:挂载/etc/fstab文件中定义的所有文件系统

    -n:默认情况下,mount命令每挂载一个设备,都会把挂载的设备信息保存至/etc/mtab文件,使用-n意味着挂载设备时不把信息写入此文件

    -t:指定正在挂载的文件系统类型

    -r:只读挂载

    -w:读写挂载

    -o:指定额外的挂载选项,即指定文件系统启用的属性

        remount:重新挂载当前文件系统

        ro:只读挂载

        rw:读写挂载


swap分区

free:查看交换分区

     -m

fdisk命令中,调整分区类型为82

创建交换分区

mkswap /dev/sda

    -L LABEL

swapon /dev/sda    启用

swapoff /dev/sda    关闭


回环设备

loopback,使用软件来模拟实现硬件

mount命令可以挂载iso镜像

mount -o loop:挂载本地回环设备


dd命令

    if=数据来源

    of=数据存储目标

    bs=1

    count=2

        dd if=/dev/sda of=/mnt/usb/mbr.backup bs=512 count=1

    seek=#:创建数据文件时,跳过的空间大小

        dd if=/dev/sda of=/mnt/usb/mbr.backup seek=1023 bs=1M count=1


文件系统类型:

    ext3

    ext2

cat /proc/filesystem:查看当前内核所支持文件系统类型

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

    OS在初始化时 会自动挂载此文件中定义的每一个文件系统

[root@localhost shilei]# cat /etc/fstab 

LABEL=/       /          ext3    defaults    1                               1(只有根为1)

要挂在的设备 挂载点 文件系统类型 挂载选项 转储频率(多少天做一次完全备份) 文件系统检测次序


mount -a :挂载/etc/fstab文件中定义的所有文件系统


如果umount的时候提示正在busy,那么可以

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

    -v:查看某文件上正在运行的进场

    -k:杀掉

    -m:

    fuser -km :终止正在访问挂载点的所有进程