磁盘分区概述
分区示意图
分区方式
MBR 分区: 1. 最多支持四个主分区 2. 系统只能安装在主分区 2. 扩展分区要占一个主分区 4. MBR最大只支持2TB,但拥有最好的兼容性 GTP 分区: 1. 支持无限多个主分区(但操作系统可能限制,比如windows下最多128个分区) 2. 最大支持18EB的大容量(1EB=1024PB,1PB=1024TB) 3. windows7 64位以后支持gtp
分区方案
挂载目录说明:
/ # 根目录,唯一必须挂载的目录
/home # 家目录,相当于“我的文档”
/usr # 应用程序目录。大部分的软件都安装在这里
/var # 变量文件目录,服务器方面的应用,单独分区可以提高服务器的性能
/boot # 引导文件目录,开机启动时加载的一些文件
/tmp # 临时文件目录
swap # 交换分区,充当虚拟内存
分区方案:
1. 个人使用:
/ # 剩余空间
/boot # 100~200MB
swap # 内存大小*1~1.5倍
2. 服务器使用:
/ # 剩余空间
/boot # 100~200MB
/home # 硬盘大小*60%
/var # 硬盘大小*10%
/usr # 硬盘大小*20%
swap # 内存大小*1~1.5倍
或
/ # 剩余空间
/boot # 100~200MB
/home # 硬盘大小*4%
/var # 硬盘大小*70%
/usr # 硬盘大小*6%
/tmp # 硬盘大小*10%
swap # 内存大小*1~1.5倍
分区方案关键点:
1. 大数据库一般要加大/usr挂载点
2. 多用户、下载类、多存储文件等要加大/home挂载点
3. 文件小,用户多要注意/tmp和/var挂载点大小
磁盘设备信息
lsblk:列出块设备信息
语法: lsblk <选项> <参数> 选项: -a, --all # 显示所有设备 -b, --bytes # 以bytes方式显示设备大小 -d, --nodeps # 不显示 slaves 或 holders -D, --discard # 打印时丢弃能力 -e, --exclude <list> # 排除设备 (default: RAM disks) -f, --fs # 显示文件系统信息 -i, --ascii # 只使用 ascii 字符 -m, --perms # 显示权限信息 -l, --list # 使用列表格式显示 -n, --noheadings # 不显示标题 -o, --output <list> # 输出列 -P, --pairs # 使用key="value"格式显示 -r, --raw # 使用原始格式显示 -t, --topology # 显示拓扑结构信息 参数: 设备文件 # 指定要显示信息的设备文件 实例: lsblk -f # 以树状列出系统分区和挂载信息
磁盘分区
fdisk:查看磁盘使用情况和分区
语法: fdisk <选项> <参数> 选项: -b<分区大小> # 指定每个分区的大小 -l # 列出指定的外围设备的分区表状况 -s<分区编号> # 将指定的分区大小输出到标准输出上,单位为区块 -u # 搭配"-l"参数列表,会用分区数目取代柱面数目,来表示每个分区的起始地址 参数: 设备文件 # 指定要进行分区或者显示分区的硬盘设备文件 实例: fdisk -l # 显示分区情况 fdisk /dev/sdb # 开始对/sdb分区 菜单操作: a # 设置启动分区 b # 编辑分区标签 c # 切换dos兼容性标志 d # 删除分区 l # 显示分区类型 m # 输出帮助信息 n # 新建分区 e # e是扩展分区 p # p是主分区 o # 新建DOS分区表 p # 打印分区表 q # 退出不保存 s # 新建Sun磁盘标签 t # 设置分区号 u # 改变显示的单位 v # 检查验证分区表 w # 保存分区表 x # 扩展应用,高级功能
磁盘格式化
mkfs:设备上创建Linux文件系统
语法: mkfs <选项> <参数> 选项: fs # 指定建立文件系统时的参数 -t<文件系统类型> # 指定要建立何种文件系统 -v # 显示版本信息与详细的使用方法 -V # 显示简要的使用方法 -c # 在制做档案系统前,检查该partition是否有坏轨 参数: 文件系统 # 指定要创建的文件系统对应的设备文件名 块数 # 指定文件系统的磁盘块数 实例: mkfs -t ext4 /dev/sdb1 # 将sdb1分区格式化为ext4格式
磁盘挂载
mount:加载文件系统到指定的挂载点
语法: mount <选项> <参数> 选项: -V # 显示程序版本 -l # 显示已加载的文件系统列表 -h # 显示帮助信息并退出 -v # 冗长模式,输出指令执行的详细信息 -n # 加载没有写入文件“/etc/mtab”中的文件系统 -r # 将文件系统加载为只读模式 -a # 加载文件“/etc/fstab”中描述的所有文件系统
-t # 指定档案系统形态,通常不必指定,mount会自动选择正确形态 参数: 设备文件名 # 指定要加载的文件系统对应的设备名 加载点 # 指定加载点目录 实例: mount /dev/sdb1 /mnt/mymount # 将sdb1分区挂载到mymount目录
磁盘卸载
umount:卸载已经加载的文件系统
语法: umount <选项> <参数> 选项: -a # 卸除/etc/mtab中记录的所有文件系统 -n # 卸除时不要将信息存入/etc/mtab文件中 -r # 若无法成功卸除,则尝试以只读的方式重新挂入文件系统 -t<文件系统类型> # 仅卸除选项中所指定的文件系统 -v # 执行时显示详细的信息 参数: 文件系统 # 指定要卸载的文件系统或者其对应的设备文件名 实例: umount -v /dev/sda1 # 通过设备名卸载 umount -v /mnt/mymount/ # 通过挂载点卸载
磁盘情况查询
df:显示磁盘分区空间使用情况
语法: df <选项> <参数> 选项: -a或--all # 包含全部的文件系统 --block-size=<区块大小> # 以指定的区块大小来显示区块数目 -h或--human-readable # 以可读性较高的方式来显示信息 -H或--si # 与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes -i或--inodes # 显示inode的信息 -k或--kilobytes # 指定区块大小为1024字节 -l或--local # 仅显示本地端的文件系统 -m或--megabytes # 指定区块大小为1048576字节 --no-sync # 在取得磁盘使用信息前,不要执行sync指令,此为预设值 -P或--portability # 使用POSIX的输出格式 --sync # 在取得磁盘使用信息前,先执行sync指令 -t<文件系统类型>或--type=<文件系统类型> # 仅显示指定文件系统类型的磁盘信息 -T或--print-type # 显示文件系统的类型 -x<文件系统类型>或--exclude-type=<文件系统类型> # 不要显示指定文件系统类型的磁盘信息 参数: 文件 # 指定文件系统上的文件 实例: df # 查看系统磁盘设备,默认是KB为单位 df -h # 查看系统磁盘设备,以KB以上的单位显示
du:显示文件或目录磁盘空间使用情况
语法: du <选项> <参数> 选项: -a或-all # 显示目录中个别文件的大小 -b或-bytes # 显示目录或文件大小时,以byte为单位 -c或--total # 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和 -D或--dereference-args # 显示指定符号连接的源文件大小 -h或--human-readable # 以K,M,G为单位,提高信息的可读性 -H或--si # 与-h参数相同,但是K,M,G是以1000为换算单位 -k或--kilobytes # 以KB(1024bytes)为单位输出 -l或--count-links # 重复计算硬件链接的文件 -L<符号链接>或--dereference<符号链接> # 显示选项中所指定符号链接的源文件大小 -m或--megabytes # 以MB为单位输出 -s或--summarize # 仅显示总计,只列出最后加总的值 -S或--separate-dirs # 显示个别目录的大小时,并不含其子目录的大小 -x或--one-file-xystem # 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过 -X<文件>或--exclude-from=<文件> # 在<文件>指定目录或文件 --exclude=<目录或文件> # 略过指定的目录或文件 --max-depth=<目录层数> # 超过指定层数的目录后,予以忽略 参数: 文件 # 指定文件系统上的文件 实例: du # 显示目录或者文件所占空间 du -h # 显示目录或者文件所占空间,以K,M,G为单位显示
du -ach --max-depth=1 /opt # 显示opt目录磁盘占用空间,深度为1
扫描二维码关注公众号,回复:
1908175 查看本文章