zoukankan      html  css  js  c++  java
  • du命令、df命令、磁盘分区

    df:汇报文件系统的磁盘使用空间
    [root@localhost ~]# df
    文件系统 1K-块 已用 可用 已用% 挂载点
    /dev/sda3 29140072 1022920 28117152 4% /
    devtmpfs 496332 0 496332 0% /dev
    tmpfs 506188 0 506188 0% /dev/shm
    tmpfs 506188 6904 499284 2% /run
    tmpfs 506188 0 506188 0% /sys/fs/cgroup
    /dev/sda1 201380 99180 102200 50% /boot
    tmpfs 101240 0 101240 0% /run/user/0
    第一列:磁盘分区的名字
    第二列:磁盘总大小,单位是KB
    第三列:是已使用多少,单位也是KB
    第四列:是可用多少空间,单位是KB
    第五列:是已用百分比,这是我们最为关注的一项,如果到80%~90%我们就要注意了。
    第六列:是挂载点,就是linux中的目录。
    linux的磁盘不能直接访问,只能通过挂载点访问
    df还有一个参数h加上这个参数后,他可以按照磁盘的大小显示适当的单位

    [root@localhost ~]# df -h
    文件系统 容量 已用 可用 已用% 挂载点
    /dev/sda3 28G 999M 27G 4% /
    devtmpfs 485M 0 485M 0% /dev
    tmpfs 495M 0 495M 0% /dev/shm
    tmpfs 495M 6.8M 488M 2% /run
    tmpfs 495M 0 495M 0% /sys/fs/cgroup
    /dev/sda1 197M 97M 100M 50% /boot
    tmpfs 99M 0 99M 0% /run/user/0

    我们也可以以M单位来显示
    [root@localhost ~]# df -m
    文件系统 1M-块 已用 可用 已用% 挂载点
    /dev/sda3 28458 999 27459 4% /
    devtmpfs 485 0 485 0% /dev
    tmpfs 495 0 495 0% /dev/shm
    tmpfs 495 7 488 2% /run
    tmpfs 495 0 495 0% /sys/fs/cgroup
    /dev/sda1 197 97 100 50% /boot
    tmpfs 99 0 99 0% /run/user/0

    其中的tmpfs是一个临时文件系统,即使在挂载点中写入文件,重启是也会消失,我们需要关注的是dev文件,swap则要用fell这个命令查看
    [root@localhost ~]# free
    total used free shared buff/cache available
    Mem: 1012376 126624 755076 6904 130676 731804
    Swap: 2097148 0 2097148

    df还有一个参数是-i,这是查看这个分区有多少inode和inode的使用情况的,inode的多少和你磁盘分区大小是有关系的
    [root@localhost ~]# df -i
    文件系统 Inode 已用(I) 可用(I) 已用(I)% 挂载点
    /dev/sda3 14577152 26453 14550699 1% /
    devtmpfs 124083 388 123695 1% /dev
    tmpfs 126547 1 126546 1% /dev/shm
    tmpfs 126547 466 126081 1% /run
    tmpfs 126547 16 126531 1% /sys/fs/cgroup
    /dev/sda1 102400 327 102073 1% /boot
    tmpfs 126547 1 126546 1% /run/user/0

    有时候我们会遇到这种情况,明明磁盘有空间,但是就是写不进去文件,这时候我们就要用df -i来查看inode是否有剩余,如果inode已经没有剩余了,就算是磁盘有空间,我们也不可能再往里写入文件了。

    du:查看文件大小,常用参数可以加sh
    [root@localhost ~]# du -sh /root
    32K /root
    以合适的单位显示文件大小

    磁盘分区
    在日常工作中,我们经常要给设备增加一块磁盘,给他分区,格式化,挂载等。
    首先我们先在虚拟机中增加一块磁盘,然后保持默认。在服务器上,我们可以热拔插硬盘的。
    怎样查看我们新增加的硬盘呢?输入命令fdisk,除此之外,它还可以给磁盘分区。
    刚开始我们会查不到新加的硬盘,只要重启一下就可以查到了

    [root@localhost ~]# fdisk -l

    磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
    Units = 扇区 of 1 * 512 = 512 bytes
    扇区大小(逻辑/物理):512 字节 / 512 字节
    I/O 大小(最小/最佳):512 字节 / 512 字节
    磁盘标签类型:dos
    磁盘标识符:0xbade897a

    设备 Boot Start End Blocks Id System

    磁盘 /dev/sda:32.2 GB, 32212254720 字节,62914560 个扇区
    Units = 扇区 of 1 * 512 = 512 bytes
    扇区大小(逻辑/物理):512 字节 / 512 字节
    I/O 大小(最小/最佳):512 字节 / 512 字节
    磁盘标签类型:dos
    磁盘标识符:0x000b36d5

    设备 Boot Start End Blocks Id System
    /dev/sda1 * 2048 411647 204800 83 Linux
    /dev/sda2 411648 4605951 2097152 82 Linux swap / Solaris
    /dev/sda3 4605952 62914559 29154304 83 Linu

    /dev/sdb就是我们新加的硬盘
    下面我们要给/dev/sdb/分区
    分区命令是fdisk /dev/sdb/
    [root@localhost ~]# fdisk /dev/sdb
    欢迎使用 fdisk (util-linux 2.23.2)。

    更改将停留在内存中,直到您决定将更改写入磁盘。
    使用写入命令前请三思。

    在这里我们要记住几个常用的字母
    命令(输入 m 获取帮助):m
    命令操作
    a toggle a bootable flag
    b edit bsd disklabel
    c toggle the dos compatibility flag
    d delete a partition(删除一个分区)
    g create a new empty GPT partition table
    G create an IRIX (SGI) partition table
    l list known partition types
    m print this menu
    n add a new partition(重新创建一个新分区)
    o create a new empty DOS partition table
    p print the partition table(打印分区列表)
    q quit without saving changes(退出不保存)
    s create a new empty Sun disklabel
    t change a partition's system id
    u change display/entry units
    v verify the partition table
    w write table to disk and exit(退出保存)
    x extra functionality (experts only)
    首先我们先输入p打印一下
    命令(输入 m 获取帮助):p

    磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
    Units = 扇区 of 1 * 512 = 512 bytes
    扇区大小(逻辑/物理):512 字节 / 512 字节
    I/O 大小(最小/最佳):512 字节 / 512 字节
    磁盘标签类型:dos
    磁盘标识符:0xbade897a

    设备 Boot Start End Blocks Id System
    发现下面什么都没有,然后我们新建一个分区,输入n
    命令(输入 m 获取帮助):n
    Partition type:
    p primary (0 primary, 0 extended, 4 free)
    e extended
    Select (default p):
    这里的p代表主分区,e代表扩展分区,一个磁盘中只能有4个主分区,如果我想划分多个,那我们可以划分3个主分区和1个扩展分区,然后我们可以扩展分区中划分逻辑分区。
    然后我们开始分区,首先分主分区,所以我们要先输入字母“n”新建
    命令(输入 m 获取帮助):n
    Partition type:
    p primary (0 primary, 0 extended, 4 free)
    e extended
    然后我们输入字母“p”,这是主分区
    Select (default p): p
    下一步是给分区编号,默认分区编号是1-4,所以我们只要按照顺序来就可以。
    分区号 (1-4,默认 1):1
    下一步是起始的扇面,这里默认的是2048
    起始 扇区 (2048-10485759,默认为 2048):
    将使用默认值 2048
    然后我们给这个分区设置大小,比如我们要给这个分区设置大小为2G,这里要注意的是,表示磁盘大小的字母一定要是大写。
    Last 扇区, +扇区 or +size{K,M,G} (2048-10485759,默认为 10485759):+2G

    分区 1 已设置为 Linux 类型,大小设为 2 GiB
    然后我们会看到上面的提示↑

    我们也可以输入字母“p”查看一下
    命令(输入 m 获取帮助):p

    磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
    Units = 扇区 of 1 * 512 = 512 bytes
    扇区大小(逻辑/物理):512 字节 / 512 字节
    I/O 大小(最小/最佳):512 字节 / 512 字节
    磁盘标签类型:dos
    磁盘标识符:0xbade897a

    设备 Boot Start End Blocks Id System
    /dev/sdb1 2048 4196351 2097152 83 Linux

    然后我们默认往下分,直到我们分了4个主分区后,会出现如下的提示
    If you want to create more than four partitions, you must replace a
    primary partition with an extended partition first.
    如果要创建四个以上的分区,则必须首先用扩展分区替换主分区。意思就是我们必须要删除一个主分区,然后再去创建一个扩展分区。

    然后我们输入字母“d”
    命令(输入 m 获取帮助):d

    下面会出现1-4序号,我们只要选择一个序号输入就可以,我们选择了4号,然后确认。
    分区号 (1-4,默认 4):4

    然后会显示4号分区已删除
    分区 4 已删除

    然后我们输入字母“e”建立逻辑分区,和分主分区的步骤一样。
    命令(输入 m 获取帮助):n
    Partition type:
    p primary (3 primary, 0 extended, 1 free)
    e extended
    Select (default e): e
    已选择分区 4
    起始 扇区 (8390656-10485759,默认为 8390656):
    将使用默认值 8390656
    Last 扇区, +扇区 or +size{K,M,G} (8390656-10485759,默认为 10485759):+900M
    分区 4 已设置为 Extended 类型,大小设为 900 MiB
    然后我们就会发现分区4的类型以是Extended,而不再是Linux,然后我们继续向下分。

    命令(输入 m 获取帮助):n
    All primary partitions are in use这时候的分区就不再分主分区和扩展分区了,而是只能添加逻辑分区。
    添加逻辑分区 5
    起始 扇区 (8392704-10233855,默认为 8392704):
    将使用默认值 8392704
    Last 扇区, +扇区 or +size{K,M,G} (8392704-10233855,默认为 10233855):+500M
    分区 5 已设置为 Linux 类型,大小设为 500 MiB

    命令(输入 m 获取帮助):n
    All primary partitions are in use
    添加逻辑分区 6
    起始 扇区 (9418752-10233855,默认为 9418752):
    将使用默认值 9418752
    Last 扇区, +扇区 or +size{K,M,G} (9418752-10233855,默认为 10233855):+400M
    值超出范围。
    Last 扇区, +扇区 or +size{K,M,G} (9418752-10233855,默认为 10233855):+300M
    分区 6 已设置为 Linux 类型,大小设为 300 MiB

    然后 我们查看一下,又多了两个分区,sdb5,和sdb6
    设备 Boot Start End Blocks Id System
    /dev/sdb1 2048 4196351 2097152 83 Linux
    /dev/sdb2 4196352 6293503 1048576 83 Linux
    /dev/sdb3 6293504 8390655 1048576 83 Linux
    /dev/sdb4 8390656 10233855 921600 5 Extended
    /dev/sdb5 8392704 9416703 512000 83 Linux
    /dev/sdb6 9418752 10033151 307200 83 Linux
    这里面的我们还可以看出在,Id号是查看分区类型的,83代表主分区或者逻辑分区,5代表扩展分区,而blocks下面的数字是磁盘的大小,单位是k。

    如果我们对我们的分区不满意,那我们就可以删除他,删除的时候只要输入相应的磁盘编号,磁盘编号就在每行的第一列最后一个数字,比如/dev/sdb4 ,那么这个磁盘的编号就是3号,然后输入字母“d”就可以删除。
    命令(输入 m 获取帮助):d

    比如,下面会出现1-4序号,我们只要选择一个序号输入就可以,我们选择了4号,然后确认。
    分区号 (1-4,默认 4):4

    然后会显示4号分区已删除
    分区 4 已删除。

    如果我们想重新分区,那么就直接输入“q”退出。

    然后我们重新划分,这次我们直接先划分一个扩展分区

    命令(输入 m 获取帮助):n
    Partition type:
    p primary (0 primary, 0 extended, 4 free)
    e extended
    Select (default p): e
    分区号 (1-4,默认 1):1
    起始 扇区 (2048-10485759,默认为 2048):+3G
    Last 扇区, +扇区 or +size{K,M,G} (6291456-10485759,默认为 10485759):
    将使用默认值 10485759
    分区 1 已设置为 Extended 类型,大小设为 2 GiB
    命令(输入 m 获取帮助):n
    Partition type:
    p primary (0 primary, 1 extended, 3 free)
    l logical (numbered from 5)
    这时候我们发现提示变了,提示直接是让我们划分主分区还是逻辑分区。

    然后我们划分一个主分区
    命令(输入 m 获取帮助):n
    Partition type:
    p primary (0 primary, 1 extended, 3 free)
    l logical (numbered from 5)
    Select (default p): p
    分区号 (2-4,默认 2):3
    起始 扇区 (6293504-10485759,默认为 6293504):
    将使用默认值 6293504
    Last 扇区, +扇区 or +size{K,M,G} (6293504-10485759,默认为 10485759):+1G
    分区 3 已设置为 Linux 类型,大小设为 1 GiB

    然后我们在划分一个逻辑分区
    命令(输入 m 获取帮助):n
    Partition type:
    p primary (1 primary, 1 extended, 2 free)
    l logical (numbered from 5)
    Select (default p): l
    添加逻辑分区 5
    起始 扇区 (4096-6293503,默认为 4096):
    将使用默认值 4096
    Last 扇区, +扇区 or +size{K,M,G} (4096-6293503,默认为 6293503):+1G
    分区 5 已设置为 Linux 类型,大小设为 1 GiB

    输入“p”查看一下

    设备 Boot Start End Blocks Id System
    /dev/sdb1 2048 6293503 3145728 5 Extended
    /dev/sdb3 6293504 8390655 1048576 83 Linux
    /dev/sdb5 4096 2101247 1048576 83 Linux
    这事我们发现,磁盘的序号出现了不连续的现象,然后我们连续划分多个逻辑分区,再查看一下

    设备 Boot Start End Blocks Id System
    /dev/sdb1 2048 6293503 3145728 5 Extended
    /dev/sdb3 6293504 8390655 1048576 83 Linux
    /dev/sdb5 4096 2101247 1048576 83 Linux
    /dev/sdb6 2103296 2308095 102400 83 Linux
    /dev/sdb7 2310144 2719743 204800 83 Linux
    /dev/sdb8 2721792 2926591 102400 83 Linux

    然后我们删除分区6,然后再查询
    命令(输入 m 获取帮助):d
    分区号 (1,3,5-8,默认 8):6
    分区 6 已删除
    设备 Boot Start End Blocks Id System
    /dev/sdb1 2048 6293503 3145728 5 Extended
    /dev/sdb3 6293504 8390655 1048576 83 Linux
    /dev/sdb5 4096 2101247 1048576 83 Linux
    /dev/sdb6 2310144 2719743 204800 83 Linux
    /dev/sdb7 2721792 2926591 102400 83 Linux
    这时我们发现,虽然我们已经删除了分区6,但是查看后依然有分区6的编号存在

    所以我们得出结论逻辑分区必须要连续,主分区和扩展分区可以不连续。当我们先分扩展分区的话,那系统就会提示我们下一步是要分主分区,还是逻辑分区,主分区和扩展分区的总和小于4,也就是说一块磁盘的只能有4个主分区,逻辑分区是从第5个号开始,而且是连续的。扩展分区不知处格式化,他只是个壳子,真正装数据的是扩展分区下面的逻辑分区。

    转载于:https://blog.51cto.com/13067688/2070421

  • 相关阅读:
    C#中使用My实现单例应用程序
    喝着啤酒学Python(2):第一个HelloWorld
    再读《精通css》04:盒模型和空白边叠加
    再读《精通css》07:圆角
    再读《精通css》08:阴影
    @ResponseBody 乱码
    再读《精通css》05:定位、浮动与清理
    关于javascript面向对象的一点思考
    再读《精通css》06:背景图片
    【求解释】关于第三方接口调用中安全的疑问
  • 原文地址:https://www.cnblogs.com/twodog/p/12137530.html
Copyright © 2011-2022 走看看