• linux 的 磁盘管理


     

    1. 查看信息

    1.1 查看磁盘信息

    在linux中如果需要查看磁盘信息,需要使用df和du命令。

    df: 列出文件系统中整个磁盘的使用量

    du:评估文件系统中磁盘的使用量,经常用来推算目录所占的容量

    df –hl
    
    

    df( abbreviation for disk free)中常见的命令:

         -l, --local 限制列出的文件结构;

         -h, --human-readable 使用人类可读的格式(预设值是不加这个选项的...);

         -a, --all 包含所有的具有 0 Blocks 的文件系统;

         -k, --kilobytes 就像是 --block-size=1024;

         -P, --portability 使用 POSIX 输出格式;

    --- 详情参见:  https://en.wikipedia.org/wiki/Df_(Unix)

    du (abbreviated from disk usage) 在此不再赘述,网上的资料已经很多了

    --- 详情参见:https://en.wikipedia.org/wiki/Du_(Unix)

     

    1.2 查看磁盘大小

    这里介绍一个du的命令

    sudo du –h –max-depth=1 <direction>
    # 或者是
    du -ah --max-depth=1 <目录路径> # a/ all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况
    # 假如要查看每个用户所占用的磁盘空间 sudo du –h -d=1 /home

     

     

    1.3 查看内存信息

    linux中所有的资源以文件的形式展现,比如内存的信息便是在/proc/meminfo存储,通过

    cat /proc/meminfo

    可以查看详细的内存信息;

    free命令是一个快速查看内存使用情况的方法,它是对 /proc/meminfo 收集到的信息的一个概述;

    free -h

    1.4 查看版本信息

    lsb_release -a
    cat /etc/issue

    1.5 查看内核版本

    uname –a

    2. linux磁盘的管理

    2.0 查找磁盘

    bh@bh:~$ ls /dev/sd*
    /dev/sda  /dev/sda1  /dev/sda2  /dev/sda3  /dev/sdb  /dev/sdc  /dev/sdd
    

    解释: linux中所有的设备的都是以文件的形式展现的,磁盘也是如此;linux系统中凡是可以检测到的设备都会在/dev下出现。

    dev是device的缩写,sd是mass-storage driver 的缩写,由此可见,如果要查看可用的磁盘,可以通过 ls /dev/sd* 查看;

    查看磁盘信息:

    bh@bh:~$ sudo fdisk -l /dev/sdb
    Disk /dev/sdb: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes

    2.1 分区操作

    # 假定要分区的设备是 sdb
    fdisk -l /dev/sdb
    # 分区过后,记得根据提示按w进行保存,否则无效
    # 分区操作
    sudo fdisk /dev/sdb
    # 根据提示信息划分磁盘区域
    # 在划分完毕以后,记得输入w进行保存

    再次查看,验证分区结果

    bh@bh:~$ ls /dev/sd*
    /dev/sda  /dev/sda1  /dev/sda2  /dev/sda3  /dev/sdb  /dev/sdb1  /dev/sdc  /dev/sdd



    2.2 磁盘的格式化

    磁盘分区完毕以后,就是要对分区格式化。格式化的命令很简单 mkfs(make file systerm), centOS7可能会用xfs作为预设格式,ubuntu使用的是ext4;

    mkfs.ext4 只有两个参数:
    -b : 设置block的大小,可以设置1k,2k,4k,等等;

    -L:

    bh@bh:~$ sudo mkfs.ext4 /dev/sdb1
    mke2fs 1.44.1 (24-Mar-2018)
    Found a dos partition table in /dev/sdb1
    Proceed anyway? (y,N) y
    mkfs.ext4: inode_size (128) * inodes_count (0) too big for a
            filesystem with 0 blocks, specify higher inode_ratio (-i)
            or lower inode count (-N).

    格式化以后,可以通过 dumpe2fs 命令查看:

    bh@bh:~$ sudo dumpe2fs -h /dev/sdb1
    
    dumpe2fs 1.44.1 (24-Mar-2018)
    Filesystem volume name:   <none>
    Last mounted on:          <not available>
    Filesystem UUID:          9f15b1a8-b750-4f45-9231-f7911ebda515
    
    .....
    Inode count:              122101760
    Block count:              488378390
    Reserved block count:     24418919
    Free blocks:              480431167
    Free inodes:              122101749
    First block:              0
    Block size:               4096
    Fragment size:            4096
    ....
    
    Journal checksum:         0xcb55b6e4

    2.3 磁盘的挂载

    # 对sdb1进行格式化,格式的文件系统格式是ext4
    sudo mkfs.ext4 /dev/sdb1
    # 创建挂载目录
    sudo mkdir /home1
    #挂载分区sdb1, 同时给定分区格式
    bh@bh:/$ sudo mount -t ext4 /dev/sdb1 /home1
    #查看挂载目录的信息
    bh@bh:/$ df /home1 # 通过df 命令可以看到挂载成功
    Filesystem      1K-blocks  Used  Available Use% Mounted on
    /dev/sdb1      1921802520 77852 1824032608   1% /home1

    3. 磁盘操作的总结:

    # 查看设备
    bh@bh:/$ ls /dev/sd*
    /dev/sda  /dev/sda1  /dev/sda2  /dev/sda3  /dev/sdb  /dev/sdb1  /dev/sdc  /dev/sdc1  /dev/sdd
    #对设备sdd进行操作
    bh@bh:/$ sudo fdisk /dev/sdd
    
    Welcome to fdisk (util-linux 2.31.1).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
    
    The old ext4 signature will be removed by a write command.
    
    Device does not contain a recognized partition table.
    Created a new DOS disklabel with disk identifier 0x334596a8.
    
    Command (m for help): n # 输入m会提示相关磁盘的操作,n代表new一个新分区
    Partition type
       p   primary (0 primary, 0 extended, 4 free)
       e   extended (container for logical partitions)
    Select (default p):# 设置磁盘的主分区还是扩展分区
    
    Using default response p.
    Partition number (1-4, default 1): 
    First sector (2048-3907029167, default 2048):
    Last sector, +sectors or +size{K,M,G,T,P} (2048-3907029167, default 3907029167):
    
    Created a new partition 1 of type 'Linux' and of size 1.8 TiB.
    
    Command (m for help): w
    The partition table has been altered.
    Calling ioctl() to re-read partition table.
    Syncing disks.
    # 格式化sdd1, 并输出相关信息
    bh@bh:/$ sudo mkfs.ext4 /dev/sdd1 
    mke2fs 1.44.1 (24-Mar-2018)
    Creating filesystem with 488378390 4k blocks and 122101760 inodes
    Filesystem UUID: d0e572d2-6970-44d7-8f3f-91905c095f8c
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
            4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
            102400000, 214990848
    
    Allocating group tables: done
    Writing inode tables: done
    Creating journal (262144 blocks): done
    Writing superblocks and filesystem accounting information: done
    
    bh@bh:/$ sudo mkdir /home3 # 创建目录,视为挂载点
    bh@bh:/$ sudo mount -t ext4 /dev/sdd1 /home3 # 将sdd1挂载到home3上
    bh@bh:/$ df -h /home3 # 查看最终home3的信息
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sdd1       1.8T   77M  1.7T   1% /home3
  • 相关阅读:
    c# netcore 发送http请求并接收返回数据
    CentOS7 nginx安装与卸载
    c# 取出特定标签的内容 去除html标签
    dotnet运行项目
    hangfire自定义访问api接口
    10万个数中取最大的10个数
    指定的服务已标记为删除
    gitlab-配置邮件
    gitlab-centos的安装
    ansible-任务控制tags
  • 原文地址:https://www.cnblogs.com/greentomlee/p/9918047.html
Copyright © 2020-2023  润新知