Linux入门之 磁盘管理与挂载

  在我们使用计算机或者是服务器时,总会需要接入外部存储的时候,正如我们使用的移动硬盘、U盘、接入手机等,就是一个接入外部存储的过程。上述这些在接入Windows时我们都能看到系统会自动安装驱动,接着就可以直接使用了。但是在LInux下,我们若想手动接入一块硬盘,有四个步骤:

1.磁盘分区 2.格式化 3.挂载 4.存储和读取


磁盘

  磁盘是指利用磁记录技术存储数据的存储器。磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。

早期计算机使用的磁盘是软磁盘(soft disk,简称软盘),如今常用的磁盘是硬磁盘(hard disk,简称硬盘)。

软盘 Soft Disk

硬盘 Hard Disk

  硬盘最基本的组成部分是由坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等。每个盘片有两面,都可记录信息。盘片被分成许多扇形的区域,每个区域叫一个扇区,每个扇区可存储128×2的N次方(N=0.1.2.3)字节信息。在DOS中每扇区是128×2的2次方=512字节,盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道。硬盘中,不同盘片相同半径的磁道所组成的圆柱称为柱面。磁道与柱面都是表示不同半径的圆,在许多场合,磁道和柱面可以互换使用,我们知道,每个磁盘有两个面,每个面都有一个磁头,习惯用磁头号来区分。扇区,磁道(或柱面)和磁头数构成了硬盘结构的基本参数,帮这些参数可以得到硬盘的容量,基计算公式为:

存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数

硬盘结构

1. MBR(主引导记录)位于硬盘第一个物理扇区(绝对扇区)柱面0,磁头0,扇区1处。由于DOS是由柱面0,磁头1,扇区1开始,故MBR不属于DOS扇区,DOS不能直接访问。
2. MBR中包含硬盘的主引导程序和硬盘分区表。分区表有4个分区记录区。记录区就是记录有关分区信息的一张表。它从主引导记录偏移地址01BEH处连续存放,每个分区记录区占16个字节。

  1. 磁盘的表示方法
  2. /dev/sda1
  3. sd 代表磁盘接口类型 USB SATA SAS等接口 IDE hd表示
  4. a b c 磁盘的顺序
  5. 1 2 3 4磁盘中的分区号

磁盘的分区号只有1-4,但是如:sda1 中的数字标识可不止1-4,也有5以上的,如sdb5、sdb6等,这是表示为逻辑驱动器。(可理解为1-4为分区,5及5以上为逻辑驱动器)

磁盘分区

  计算机中存放信息的主要的存储设备就是硬盘,但是硬盘不能直接使用,必须对硬盘进行分割,分割成的一块一块的硬盘区域就是磁盘分区。在传统的磁盘管理中,将一个硬盘分为两大类分区:主分区扩展分区

  主分区是能够安装操作系统,能够进行计算机启动的分区,这样的分区可以直接格式化,然后安装系统,直接存放文件。

  扩展分区是将一个硬盘驱动器分成若干个逻辑驱动器,把硬盘连续的区块当做一个独立的磁硬使用。理论上,逻辑驱动器是无上限的。

  一块硬盘最多可被分为四个区,也就是说这四个分区的大小就是硬盘的大小。这四个分区可定义为主分区或扩展分区,主分区可以直接格式化、安装系统或直接存放文件。扩展分区不能直接使用,应在其内部划分若干个逻辑驱动器后才能使用。
  扩展分区不能直接格式化,我们只能格式化扩展分区里的逻辑驱动器。
  此处须注意理解扩展分区与逻辑驱动器的概念。

fdisk命令

  1. fdisk磁盘分区命令
  2. fidsk [命令选项] [参数]
  3. 命令选项
  4. -l list 列出磁盘分区
  5. -u 与-l一起使用,显示分区的相关信息
  6. fdisk /dev/sda 为/dev/sda分区
  7. m :显示菜单和帮助信息
  8. a :活动分区标记/引导分区
  9. d :删除分区
  10. l :显示分区类型
  11. n :新建分区
  12. p :显示分区信息
  13. q :退出不保存
  14. t :设置分区号
  15. v :进行分区检查
  16. w :保存修改
  17. x :扩展应用,高级功能
  18. 命令缺点:单个分区不能超过2T 超过的话需要用parted命令
  19. linux 下大磁盘的分区不能再采用fdisk了,MBR分区表只支持2T磁盘,所以大于2T的磁盘必须使用GPT分区表。

parted磁盘分区命令

  parted是Linux中另外一款常用的分区软件,它支持的范围也非常广,包括ext2、ext3、linux-swap等,当然也支持在Windows平台上使用。

  1. NAME
  2. parted - a partition manipulation program
  3. SYNOPSIS
  4. parted [options] [device [command [options...]...]]
  5. OPTIONS
  6. -h, --显示帮助信息
  7. -i, --交互模式
  8. -s, --脚本模式
  9. -v, --显示版本

dumpe2fs命令 分区信息显示(dumpe2fs是查看ext2/ext3/ext4 文件系统信息的命令)

  1. [root@localhost /]# dumpe2fs /dev/sdb2
  2. dumpe2fs 1.42.9 (28-Dec-2013)
  3. Filesystem volume name: <none>
  4. Last mounted on: <not available>
  5. Filesystem UUID: 441acc5d-7d3d-4081-9558-b739a258f5e2
  6. Filesystem magic number: 0xEF53
  7. Filesystem revision #: 1 (dynamic)
  8. Filesystem features: has_journal ext_attr resize_inode dir_index filetype extent 64bit flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
  9. Filesystem flags: signed_directory_hash
  10. Default mount options: user_xattr acl
  11. Filesystem state: clean
  12. Errors behavior: Continue
  13. Filesystem OS type: Linux
  14. Inode count: 22528
  15. Block count: 90112
  16. Reserved block count: 4505
  17. Free blocks: 81615
  18. Free inodes: 22517
  19. First block: 1
  20. Block size: 1024
  21. Fragment size: 1024
  22. Group descriptor size: 64
  23. Reserved GDT blocks: 256
  24. Blocks per group: 8192
  25. Fragments per group: 8192
  26. Inodes per group: 2048
  27. Inode blocks per group: 256
  28. Flex block group size: 16
  29. Filesystem created: Tue Oct 8 09:52:36 2019
  30. Last mount time: Wed Oct 9 07:15:36 2019
  31. Last write time: Wed Oct 9 07:32:12 2019
  32. Mount count: 7
  33. Maximum mount count: -1
  34. Last checked: Tue Oct 8 09:52:36 2019
  35. Check interval: 0 (<none>)
  36. Lifetime writes: 7529 kB
  37. Reserved blocks uid: 0 (user root)
  38. Reserved blocks gid: 0 (group root)
  39. First inode: 11
  40. Inode size: 128
  41. Journal inode: 8
  42. Default directory hash: half_md4
  43. Directory Hash Seed: 541a67b8-fe59-4928-90f1-7a3261db2574
  44. Journal backup: inode blocks
  45. Journal features: journal_64bit
  46. Journal size: 4096k
  47. Journal length: 4096
  48. Journal sequence: 0x00000007
  49. Journal start: 0

blkid命令 查看磁盘分区 UUID信息

  1. # blkid /dev/vda1
  2. /dev/vda1: UUID="eb448abb-3012-4d8d-bcde-94434d586a31" TYPE="ext4"

磁盘格式化

mkfs命令

  格式化(format)是指对磁盘或磁盘中的分区(partition)进行初始化的一种操作,这种操作通常会导致现有的磁盘或分区中所有的文件被清除。格式化通常分为低级格式化和高级格式化。如果没有特别指明,对硬盘的格式化通常是指高级格式化,而对软盘的格式化则通常同时包括这两者。

格式化可理解为给分区安排一个文件系统,用于负责管理和存储数据的系统。
文件系统类型分 fat、ntfs、ext2、ext3、ext4、xfs、iso9660(光盘文件系统) 等

  1. NAME
  2. mkfs - build a Linux filesystem
  3. SYNOPSIS
  4. mkfs [options] [-t type] [fs-options] device [size]
  5. -L 标签名
  6. -V : 详细显示模式
  7. -t : 给定档案系统的型式,Linux 的预设值为 ext2
  8. -c : 在制做档案系统前,检查该partition 是否有坏轨
  9. -l bad_blocks_file : 将有坏轨的block资料加到 bad_blocks_file 里面
  10. -b : 给定 block 的大小
  11. 关于block and inode dentry
  12. 实验发现这句话不对
  13. block越大,inode越少,适合存储大文件的文件系统;block越小,inode越多,适合存储文件多而小的文件系统。
  14. 磁盘分区格式化
  15. mkfs -t ext4 /dev/sdb2

挂载

  Linux中的所有设备必须经过挂载才可以被用户使用,挂载的方式其实就是将某个设备挂到文件系统中的某个文件夹,就是将设备和文件夹映射在一起,对文件夹的操作就是对设备的操作。

mount命令 挂载

  1. NAME
  2. mount - mount a filesystem
  3. SYNOPSIS
  4. mount [-lhV]
  5. mount -a [-fFnrsvw] [-t vfstype] [-O optlist]
  6. mount [-fnrsvw] [-o option[,option]...] device|dir
  7. mount [-fnrsvw] [-t vfstype] [-o options] device dir
  8. OPTIONS
  9. -a 挂载所有文件系统,参考文件 /etc/fstab
  10. -l 显示当前挂载
  11. -t 文件系统类型
  12. -o 指定挂载权限

umount命令 卸载

  1. NAME
  2. umount - unmount file systems
  3. SYNOPSIS
  4. umount [-hV]
  5. umount -a [-dflnrv] [-t vfstype] [-O options]
  6. umount [-dflnrv] {dir|device}...
  7. OPTIONS
  8. -l, 懒惰卸载

自动挂载 /etc/fstab文件

  1. 设备 挂载点 文件系统 权限 备份 检测
  2. 第一列 设备源文件或者UUID
  3. 第二列 设备挂载点
  4. 第三列 文件系统类型
  5. 第四列
  6. auto: 系统自动挂载,fstab默认就是这个选项
  7. defaults: rw, suid, dev, exec, auto, nouser, and async.
  8. noauto 开机不自动挂载
  9. nouser 只有超级用户可以挂载
  10. ro 按只读权限挂载
  11. rw 按可读可写权限挂载
  12. user 任何用户都可以挂载
  13. 第五列是dump备份设置。
  14. 当其值设置为1时,将允许dump备份程序备份;设置为0时,忽略备份操作;
  15. 第六列是fsck磁盘检查设置。
  16. 其值是一个顺序。当其值为0时,永远不检查;而 / 根目录分区永远都为1。其它分区从2开始,数字越小越先检查,如果两个分区的数字相同,则同时检查。
  17. ##sdb
  18. /dev/sdb2 /opt/data1 ext4 defaults 0 0
  19. /dev/sdb5 /opt/data2 xfs ro 0 0
  20. /dev/sdb6 /opt/data3 ext3 rw 0 0

在挂载完成后就可进行磁盘的使用了


Linux入门(磁盘与挂载)的更多相关文章

  1. linux下磁盘的挂载与卸载

    Linux下每个文件系统都有独立的inode,block,super block等信息,这个文件系统要挂载到目录树才可以使用,将文件系统与目录树结合的操作称为挂载,反之则为卸载. 也就是说,挂载点一定 ...

  2. Linux下磁盘分区挂载

    一般你去买vps都会看到介绍说硬盘多少G  比如 80G 但是你进入系统df -h的时候发现怎么只有10G呢, 其实这10G是用来装系统的和一些常用服务软件的  不是给你放网站数据的 那50G硬盘在哪 ...

  3. Linux添加磁盘和挂载

    1.新建一个虚拟磁盘,例:20GB 2.重启后使用 fdisk -l 查看磁盘详细信息,刚添加的磁盘信息如下: 3.对刚添加的磁盘进行分区 fdisk /dev/sdc 4.格式化分区 mkfs.ex ...

  4. linux centos7磁盘格式化挂载之parted

    parted /dev/xvde mklabel gpt //划分为gpt分区 mkpart logical //创建逻辑分区 ext4 //开始大小 537G //结束大小 quit blkid l ...

  5. Linux系统磁盘分区、删除分区、格式化、挂载、卸载、开机自动挂载的方法总结

    Linux系统按照MBR(Master Boot Record)传统分区模式: 注意:传统的MBR(Master Boot Record)分区方式最大只能分2T容量的硬盘,超过2T的硬盘一般采用GPT ...

  6. linux入门系列12--磁盘管理之分区、格式化与挂载

    前面系列文章讲解了VI编辑器.常用命令.防火墙及网络服务管理,本篇将讲解磁盘管理相关知识. 本文将会介绍大量的Linux命令,其中有一部分在"linux入门系列5--新手必会的linux命令 ...

  7. Linux的磁盘管理和进程管理(入门)

    查看磁盘使用情况 df :列出文件系统整体的磁盘使用量 增加-h参数可以使得显示的容量更人性化 du:检查磁盘空间使用量---需要进入文件中查看 挂载本地磁盘或文件 mount mount /dev/ ...

  8. Linux下磁盘挂载

    公司硬盘不够用了,新买了一个存储,需要挂载到现在的系统上.前期的步骤就不说了,运维全部搞定,无非是硬件和网络那一套,这里只说分配到本人后在Linux下如何挂载. 具体步骤如下: 1.查看是否已经分配 ...

  9. linux入门教程(八) Linux磁盘管理

    [查看磁盘或者目录的容量 df 和 du] df 查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的 df常用参数有 –i -h -k –m等 -i 使用inode ...

随机推荐

  1. 题解 CF499A 【Watching a movie】

    题意 看一部电影,从第一分钟开始看,你每次可以按下快进键,快进x分钟,电影有n个精彩片段,问看到所有精彩片段至少需要看多少分钟电影.(数据保证能看到所有精彩片段) 我们可以发现答案其实 就是间隔时间% ...

  2. odoo12从零开始:一、安装odoo运行环境(windows10)

    前言 鉴于好多朋友说没有mac电脑,windows开发其实也差不了多远,只是个人习惯问题,而且吧,windows的电脑其实配环境也挺快的其实,我在这里再稍微补一个比较简单的windows环境部署,希望 ...

  3. js-DOM ~ 04. BOM:浏览器对象模型window. 、定时器、在线用户、祝愿墙、BOM的内置方法内置对象

    multiple. select列表多选 触发事件后调用有参数的函数要先创建一个函数,然后在函数内调用执行函数 Array.from(伪数组):伪数组变为真数组 indexOf():查询字符的索引 a ...

  4. SpringCloud 学习(二)-2 :Securing The Eureka Server

    由于工作等种种原因未能连续进行学习,现在继续学习微服务,不过是新建的demo,springcloud版本用的是Finchley.SR2. 之前用简单demo实现了注册中心,现在来对注册中心加安全验证: ...

  5. Spring事务失效的2种情况

    使用默认的事务处理方式 因为在java的设计中,它认为不继承RuntimeException的异常是”checkException”或普通异常,如IOException,这些异常在java语法中是要求 ...

  6. eclipse中离线安装activit插件

    离线安装activiti教程: 1.先下载压缩包和jar包 链接:https://pan.baidu.com/s/1hSToZt_4A262rUxc8KToCw 密码:j5r1 2.将下载好的jars ...

  7. 基础知识:CSRF漏洞

    CSRF漏洞概述 CSRF漏洞是跨站请求伪造攻击,能够对攻击用户的增.删.改,不能攻击查.为什么呢?根据其原理,攻击者是发一个链接给用户,用户点击这个链接而执行危险的操作,信息并不会返回到攻击者的电脑 ...

  8. MySQL二进制日志挖掘器BinlogMiner 1.0发布了。

    MySQL从2014年开始超越SQL Server, 占据DB-Engines数据库流行度排行榜第二名, 是一种非常流行的关系型数据库, 特别是在互联网领域, 是一种应该掌握的数据库系统.最近在学My ...

  9. golang时间转换

    1.datetime转换成时间字符串 package main import ( "fmt" "reflect" "time" ) func ...

  10. .Net基础篇_学习笔记_第七天_计算质数(找出0-100以内说有质数)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...