zoukankan      html  css  js  c++  java
  • linux(centOS7)的基本操作(五) 磁盘、分区、挂载、卸载

    linux的磁盘类型和分区简介

    linux的磁盘分为IDE和SCSI,目前以后者居多。

    1. IDE磁盘的分区:hd+盘号+分区数字

    盘号

      |-a:基本盘

      |-b:基本从属盘

      |-c:辅助主盘

      |-d:辅助从属盘

    分区数字

      |-1~4:主分区或扩展分区

      |-5+:逻辑分区

    例如,hda3表示第一块IDE磁盘的第3个主分区或扩展分区,hdb5表示第二块IDE磁盘的逻辑分区。

    2. SCSI磁盘的分区:sd+盘号+分区数字

    盘号

      |-a:基本盘

      |-b:基本从属盘

      |-c:辅助主盘

      |-d:辅助从属盘

    分区数字

      |-1~4:主分区或扩展分区

      |-5+:逻辑分区

    例如,sda1表示第一块SCSI磁盘的第1个主分区,sdc2表示第三块SCSI磁盘的第2个主分区或扩展分区。

     

    linux的挂载和卸载

    1. 挂载和卸载的概念

    (1) 我们知道,windows系统有多个盘符,例如C、D、E……等,当用户插入一个U盘时,系统会自动分配给它一个盘符,可能是I。有了这个盘符I,我们就可以在windows的命令行中对U盘中的目录和文件进行操作。

    (2) linux系统并没有盘符,它只有一个根目录/,linux磁盘的所有分区都在这个根目录下的某个位置。如果在linux系统中添加一块新磁盘,系统并不会自动给它分配盘符,它也不属于根目录/。这时,在命令行无法对这个新磁盘中的目录或文件进行操作,既无法通过cd命令进入该磁盘,也无法通过ls命令显示它下面的内容。

    (3) 挂载类似于windows系统给U盘分配盘符,是将新磁盘跟已经存在的系统目录之间建立联系,让新磁盘"拥有"根目录/下面的某个目录,以便于在命令行中操作它。例如,新添加了一块磁盘分区sdb1,将它挂载到/home/dubhlinn目录,则以后操作/home/dubhlinn目录就相当于操作sdb1分区。挂载后,/home/dubhlinn目录下的子目录和文件也会保存到sdb1分区,而不是原来的分区。

    (4) 卸载类似于windows退出U盘,切断磁盘分区与目录之间的联系。卸载后,/home/dubhlinn目录下的子目录和文件会重新回到原来的分区。

    2. 查看系统的挂载情况

    lsblk [-l] [-f]

    其中,-l表示列表方式显示,-f可以显示分区的uuid。

    3. 挂载

    mount equipment path

    其中,equipment为设备位置,path为挂载点。例如,mount /dev/sdb1 /home/dubhlinn。

    4. 永久挂载

    用上述命令只是临时挂载,重启系统后会失效,要想永久生效,需要改一个配置文件:/etc/fstab,加一行:

    /dev/sdb    /home    xfs    defaults    0 0

    其中,第一项为设备未知,第二项为挂载点,第三项为分区类型,后面固定不变。

    5. 卸载

    umount equipment

    umount path

    即卸载时既可以写磁盘分区,也可以写挂载点目录。例如umount /home/dubhlinn。

     

    使用VMWare添加硬盘示例

    1. 关闭linux虚拟机(在系统运行状态下无法添加硬盘),shutdown -h now,设置 → 添加新硬件 → 硬盘,指定大小;

    2. 添加分区,fdisk /dev/sdb;

    3. 格式化磁盘,指定分区类型(例如xfs、ext4等),mkfs -t xfs /dev/sdb;

    4. 挂载,mount /dev/sdb /home;

    5. 永久挂载,vim /etc/fstab,加一行:/dev/sdb    /home    xfs    defaults    0 0。

     

    磁盘管理

    1. 查询磁盘整体的使用情况

    df -h

    2. 查询指定目录的使用情况

    du [-a] [-c] [-h] [--max-depth=n] path

    其中,-a表示包含文件,-c表示显示汇总值,-h表示显示计量单位,--max-depth=n表示统计子目录的深度,path为要查询的目录路径。

    3. 查询指定目录下的文件,即以-开头的内容

    ls -l [-r] [path] | grep "^-"

    其中,-r表示包含子目录下的,path如果不指定则默认为当前目录。

    4. 查询指定目录下的子目录,即以d开头的内容

    ls -l [-r] [path] | grep "^d"

    其中,-r表示包含子目录的子目录,path如果不指定则默认为当前目录。

    5. 查询指定目录下的文件数量

    ls -l [-r] [path] | grep "^-" | wc -l

    其中,-r表示包含子目录下的,path如果不指定则默认为当前目录。

    6. 查询指定目录下的子目录数量

    ls -l [-r] [path] | grep "^d" | wc -l

    其中,-r表示包含子目录的子目录,path如果不指定则默认为当前目录。

    7. 以树状结构显示目录下的内容

    tree [path]

    其中,path为要显示的目录路径,如果不指定默认为当前目录。

  • 相关阅读:
    可以链接不同源的资源的html元素(能实现跨域)
    触摸点位置
    浏览器各种高度
    koa 知识点
    next().value和next().done
    js中逻辑为false的8种情况
    Node.js热部署方式
    在package.json里面的script设置环境变量,区分开发及生产环境。注意mac与windows的设置方式不一样
    js事件冒泡和事件捕获
    阻止事件冒泡两种方式:event.stopPropagation();和return false;
  • 原文地址:https://www.cnblogs.com/dubhlinn/p/11105137.html
Copyright © 2011-2022 走看看