磁盘

  • Linux所有设备都被抽象成为一个文件,保存在/dev目录下。
  • 设备名称一般为hd[a-z]或sd[a-z]。如果电脑中有多硬盘,则设备名依次为sda、adb、sdc...以此类推
  • IDE设备的名称为hd[a-z]。SATA、SCSI、SAS、USB等设备的名称称为sd[a-z]。

分区

在Linux中,使用 备名称+分区号 的方式来表示分区,例如:

sda1---第一块硬盘的第一个分区

sda2---第一块硬盘的第二个分区

sdb1---第二块硬盘的第一个分区

。。。。。。

分区是一个软件概念,主流分区机制分文MBR和GPT两种

  • MBR是传统的分区机制,应用于绝大多数使用BIOS的PC设备。

1、MBR支持32bit和64bit系统

2、MBR支持分区数量有限,最多只能创建4个主分区,要想创建多个分区,需要占用一个主分区创建一个扩展分区,然后基于扩展分区创建若干个逻辑分区(扩展分区不能用,只能用来创建逻辑分区)(SCSI硬盘最多15个逻辑分区,IDE硬盘最多63个逻辑分区)

3、MBR只支持不超过2T的硬盘,超过2T的硬盘将只能2T

  • GTP是一个较新的分区机制,解决了MBR很多缺点

1、支持超过2T的硬盘

2、向后兼容MBR

3、必须在支持UEFI的硬件上才能使用

4、必须使用64bit系统

5、MAC\LINUX系统都能支持GPT分区格式(部分windows系统支持)

fdisk分区

fdisk是一个基于MBR老牌的分区工具,支持几乎所有的Linux的发型版本。

  • fdisk命令只有具有超级用户权限才能运行
  • 使用fdisk -l可以列出所有安装的磁盘及其分区信息
  • 使用fdisk /dev/sd[a-z]可以对目标磁盘进行分区操作
  • 分区之后需要使用partprobe命令让内核更新分区信息,否则需要重启才能识别新的分区
  • /proc/partitions文件也可以用来查看分区信息

fdisk /dev/sd[a-z]指令

a   toggle a bootable flag

b   edit bsd disklabel

c   toggle the dos compatibility flag

d   delete a partition              删除一个分区

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)

文件系统

创建分区之后,分区还不可以使用,操作系统必须通过文件系统才能管理文件和数据,磁盘或分区需要创建文件系统之后才能为操作系统使用,创建文件系统的过程被称之为格式化。

  • 没有文件系统的设备被成为裸(raw)设备。
  • 常见的文件系统有fat32、NTFS、ext2、ext3、ext4、HFS等
  • 文件系统之间的区别:日志、支持的分区大小、支持的单个文件大小、性能等等
  • windows下主流文件系统是NTFS,Linux下主流文件系统是ext3、ext4

Linux支持的文件系统

ext2          ext3          ext4          fat(msdos)          vfat          

         nfs             iso9660    proc          gfs             jfs      ......

创建文件系统:

mke2fs [参数] -t [文件系统类型] 分区

  参数:

                   -b      blocksize           指定文件系统块大小

                   -c                                  建立文件系统时检查损坏块

                   -L      lable                            指定卷标

                   -j                                   建立文件系统日志(ext3、ext4默认建立日志)

mkfs也可以用于创建文件系统,支持参数较少,不能进行精细化

mkfs.ext3         /dev/sdb1

mkfs.ext4 /dev/sdb2

mkfs.ext4 /dev/sdb1

查看分区的文件系统的信息

dumpe2fs /dev/sdb5

会列出sdb5分区下文件系统的详细信息

文件系统标签

给分区打上标签方便后期管理

e2label 分区   --- 显示分区标签,如果没有设置过,则显示为空

e2label 分区 标签名  ---  给分区设置标签

检查并修复文件系统

fsck /dev/sda*

fsck -y /dev/sda*      可以遇到错误不提示,直接修复

对于损坏的又修复成功但无法确定位置的文件,fsck会把这些数据放入lost+found目录中

每次启动系统时候会对磁盘进行fsck操作

挂载硬盘

新硬盘分区完并且建立好文件系统之后,还需要挂载到一个目录上才可以使用

Linux需要手动进行挂载操作或者配置/etc/fstab文件来自动挂载

手动挂载

使用命令

mount [参数] 挂载分区 挂载点

常用参数:

                           -t      指定文件系统的类型

                           -o      指定挂载选项

挂载选项如图

使用命令

umount 文件系统或者挂载点

来卸载挂载的文件系统

如果在卸载过程中出现device is busy报错,则表示这个文件系统正在被使用,无法卸载

使用命令:

fuser -m /挂载目录

来查看使用文件系统的进程

使用命令

lsof 挂载目录

  来查看正在被使用的文件

配置文件自动挂载

编辑/etc/fstab文件可以自动挂载文件系统到指定目录下格式如下

挂载光盘:

建立挂载点

mkdir /mnt/cdrom

挂载光盘

通过命令ll /dev/cdrom可以发现cdrom是链接至sr0的

所以可以使用下面命令挂载光盘

mount -t iso9660 /dev/cdrom /mnt/cdrom

         或者

mount -t iso9660 /dev/sr0 /mnt/cdrom

另外-t iso 9660也可以省略,因为系统已经默认光盘文件系统是iso9660

提示“mount: block device /dev/sr0 is write-protected, mounting read-only”,是因为光盘是一旦刻录无法继续写入,所以是只读模式。

此时可以进入/mnt/cdrom查看光盘内容

    卸载挂载

umount /mnt/cdrom/

挂载U盘:

    建立挂载点

mkdir /mnt/usb

    挂载U盘

 mount -t vfat /dev/sdb1 /mnt/usb

    卸载挂载

umount /mnt/usb

    注意:挂载命令中的sdb1是可变的,当计算机中存在两块硬盘时,U盘则为sdc1,三块硬盘,sdd1,以此类推。。。

    使用fdisk -l 可查看系统硬盘挂载情况

如果机器中挂载了两块硬盘,一块20G,一块5G,此时再插入U盘,设备文件名则为sdc1

  整理自:慕课网(www.imooc.com)网易云课堂(study.163.com)

Linux 磁盘、分区、文件系统、挂载的更多相关文章

  1. Linux磁盘分区和挂载

    Linux磁盘分区和挂载 分区 分区的方式: mbr分区 最多支持4个主分区 系统只能安装到主分区上 扩展分区要占用一个主分区 MBR最大支持2TB,但拥有最好的兼容性 gtp分区 支持无线多个主分区 ...

  2. Linux 实用指令(7)--Linux 磁盘分区、挂载

    目录 Linux 磁盘分区.挂载 1 分区基础知识 1.1 分区的方式: 1.2 windows 下的磁盘分区 2 Linux分区 2.1 原理分析 2.2 磁盘说明 2.3 使用lsblk指令查看当 ...

  3. Linux磁盘分区、挂载、查看文件大小

    快速查看系统文件大小命令 du -ah --max-depth=1 后面可以添加文件目录 ,如果不添加默认当前目录. 下面进入正题~~ 磁盘分区.挂载 引言: ①.分区的方式 a)mbr分区: 最多支 ...

  4. Linux 磁盘分区和挂载

    目录 Linux 磁盘分区和挂载 windows 下的分区 磁盘管理 相关命令 分区及挂载实现步骤 添加硬盘 分区步骤 步骤 挂载步骤 卸载分区步骤 补充: Linux 磁盘分区和挂载 windows ...

  5. Linux磁盘分区-mount挂载

    Linux磁盘分区类型 磁盘存储术语CHS head:磁头  磁头数=盘面数 track:磁道  磁道=柱面数 sector:扇区,512bytes cylinder:柱面 1柱面=512*secto ...

  6. linux磁盘分区、挂载、查看

    实战: 34    查看本机所有磁盘                 fdisk -l 35    查看磁盘挂载情况                lsblk -f 36            39: ...

  7. linux 磁盘分区和挂载看这一篇就够了

    Linux fdisk 和 mount 命令操作指南,linux磁盘管理.新增磁盘.挂载新硬盘(linux运维入门) 首先列出文件系统的整体磁盘空间使用情况.可以用来查看磁盘已被使用多少空间和还剩余多 ...

  8. Linux 磁盘分区、挂载

    一.分区介绍 mbr分区: 1.最多支持四个主分区 2.系统只能安装在主分区上 3.扩展分区要占一个主分区 4.mbr最大只支持2TB,但拥有最好的兼容性 gpt分区: 1.支持无限多个主分区(但操作 ...

  9. shell 脚本实战笔记(4)--linux磁盘分区重新挂载

    背景: Hadoop的HDFS文件系统的挂载, 默认指定的文件目录是/mnt/disk{N}. 当运维人员, 不小心把磁盘挂载于其他目录, 比如/mnt/data, /mnt/disk01, /mnt ...

  10. Linux磁盘分区,挂载

    分区基础知识 分区的方式:   1) mbr分区:     1.最多支持四个主分区     2.系统只能安装在主分区     3.扩展分区要占一个主分区     4.MBR最大只支持2TB,但拥有最好 ...

随机推荐

  1. 利用 Postman 中 Tests 断言校验返回结果

    前言 Postman目前是一款很火的接口测试工具,它有着非常强大结果判断能力.为什么说强大呢,因为Postman有自带的校验脚本,根本不需要我们去学习JS脚本语言,对于代码能力为0的各位测试小伙伴来说 ...

  2. iOS点击按钮第二次不能旋转View

    原因: 用CGAffineTransformMakeRotation,每次旋转都要在之前最后的角度基础之上再转才有效果. - (void)clickAction: (UIButton *)button ...

  3. docker进入容器内部执行命令

    [root@bogon ~]# docker ps -l CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 38a2cae4c32f jenk ...

  4. Sublime Text 3能用支持的插件推荐

    从二月份用测试版本build 3012开始用sublime text 3,虽然很多插件在sublime text 3不工作了,因为sublime text 3修复了2的一些bug.提升了性能并集成了不 ...

  5. 怎么改变wampserver默认的网站目录

    现在大家基本上开发php的有很大一部分都在用Wampserver,今天来讲讲怎么更改默认的www目录, 需要修改的文件有三个 apache2的配置文件 httpd.conf 和 Wampserver的 ...

  6. upload-labs 上传漏洞靶场环境以及writeup

    一个帮你总结所有类型的上传漏洞的靶场 https://github.com/c0ny1/upload-labs 靶场环境(基于phpstudy这个php集成环境) https://github.com ...

  7. c# stmp邮件发送

    最近用到了邮件发送功能,因为stmp设置.参数传递错误等一些问题走了弯路,虽然代码很简单,这里还是记录一下,方便下次查阅. 用个人163邮箱测试的邮件发送 class Program { static ...

  8. golang中sync.RWMutex和sync.Mutex区别

    golang中sync包实现了两种锁Mutex (互斥锁)和RWMutex(读写锁),其中RWMutex是基于Mutex实现的,只读锁的实现使用类似引用计数器的功能. type Mutex     f ...

  9. Appium移动自动化测试-----(十)appium API 之上下文操作

    其实上下文的操作主要针对于混合应用.啥是混合应用,简单来说就是APP用里面嵌入网页.Android上的浏览器就属于混合应用. 1.获取当前上下文 方法: getContext() 获取当前所有的可用的 ...

  10. pycharm设置开发模板/字体大小/背景颜色(3)

    一.pycharm设置字体大小/风格 选择 File –> setting –> Editor –> Font ,可以看到如上界面,可以根据自己的喜好随意调整字体大小,字体风格,文字 ...