third commit

This commit is contained in:
cyl-sql 2021-06-12 11:10:53 +08:00
parent f1ebc121ed
commit bc9ea8e767
1 changed files with 62 additions and 181 deletions

View File

@ -2,13 +2,9 @@
## 5.1、什么是磁盘
> 磁盘disk是指利用磁记录技术存储数据的存储器。
>
> 磁盘是计算机主要的存储介质可以存储大量的二进制数据并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘Floppy Disk简称软盘如今常用的磁盘是硬磁盘Hard disk简称硬盘
>
>
>
> ——百度百科
磁盘disk是指利用磁记录技术存储数据的存储器。
磁盘是计算机主要的存储介质可以存储大量的二进制数据并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘Floppy Disk简称软盘如今常用的磁盘是硬磁盘Hard disk简称硬盘
@ -69,9 +65,9 @@ Linux磁盘管理通常分成五个步骤首先是添加硬盘做RAID或
LVM是 Logical Volume Manager逻辑卷管理的简写它是Linux环境下对磁盘分区进行管理的一种机制。
LVM将一个或多个硬盘的分区在逻辑上集合相当于一个大硬盘来使用当硬盘的空间不够使用的时候可以继续将其它的硬盘的分区加入其中这样可以实现磁盘空间的动态管理相对于普通的磁盘分区有很大的灵活性。
Linux的用户经常会遇到一个问题就是当磁盘分区空间不足了调整分区大小非常麻烦。而LVM最大的作用就是解决这个问题。LVM将一个或多个硬盘的分区在逻辑上集合相当于一个大硬盘来使用当硬盘的空间不够使用的时候可以继续将其它的硬盘的分区加入其中这样可以实现磁盘空间的动态管理相对于普通的磁盘分区有很大的灵活性。
与传统的磁盘与分区相比LVM为计算机提供了更高层次的磁盘存储。它使系统管理员可以更方便的为应用与用户分配存储空间。在LVM管理下的存储卷可以按需要随时改变大小与移除(可能需对文件系统工具进行升级)。LVM也允许按用户组对存储卷进行管理允许管理员用更直观的名称(如"sales'、 'development')代替物理磁盘名(如'sda'、'sdb')来标识存储卷。
### 5.2.2、分区
@ -83,76 +79,43 @@ LVM将一个或多个硬盘的分区在逻辑上集合相当于一个大硬
1方便管理文件种类繁多的时候不易造成混乱。
2有利于数据的安全
通过分区可以降低数据损失的风险。出现硬盘坏道、错误操作、重装系统都有可能造成数据损失,如果分区了,那么我们就可以将损失最小化。
2安全当硬盘出现问题又或者各类错误操作都可能造成数据损失。如果分区了则可以减少损失。
#### 5.2.2.2、Linux分区原理
**磁盘分区类型**
1、主分区
1)系统中必须要存在的分区,系统盘选择主分区安装
2)数字编号只能是1-4.sda1、sda2、sda3、sda4
3)主分区最多四个,最少一个。
2、扩展分区
1)相当于一个独立的小磁盘。独立的分区表,不能独立存在。
2)有独立的分区表。
3)不能独立存在,即不能直接存放数据
4)必须在扩展分区上建立逻辑分区才能存放数据
5)占用主分区的编号(主分区+扩展分区)之和最多4个
3、逻辑分区
1)数字编号只能是从5开始
2)存放于扩展分区之上
3)存放任意普通数据
**磁盘分区方式**
①1~4个主分区
②扩展分区至多能有一个,且 2 ≤ 扩展分区+主分区≤ 4
磁盘是按柱面分区的。(提升读写速率)
磁盘分区登记的地点磁盘分区表。存放分区结果信息位置0磁道0磁头1扇区
1扇区的前446字节系统引导信息随后64字节分区表最后两个字节分区结束标志
一个分区信息固定占16字节所以只能有64/16=4个分区。
#### 5.2.2.3、分区常用命令
#### 5.2.2.2、分区常用命令
fdisk是一个创建和维护分区表的程序它兼容DOS类型的分区表、BSD或者SUN类型的磁盘列表。
```
fdisk [必要参数][选择参数]
```shell
fdisk [选项] <磁盘> #更改分区表
fdisk [选项] -l [<磁盘>] #列出分区表
```
**必要参数:**
- -l 列出素所有分区表
- -u 与"-l"搭配使用,显示分区数目
| 选项 | 功能 |
| ---- | ---------------------------------------------- |
| -b | 显示扇区计数和大小 |
| -B | 创建新标签时不要擦除 bootbits |
| -c | 模式为“dos”或“nondos”(默认) |
| -L | 彩色输出(auto, always 或 never) |
| -l | 显示分区并退出 |
| -o | 输出列 |
| -t | 只识别指定的分区表类型 |
| -u | 显示单位“cylinders”柱面或“sectors”扇区(默认) |
| -w | 擦除签名(auto, always 或 never) |
| -W | 擦除新分区的签名(auto, always 或 never) |
| -C | 指定柱面数 |
| -H | 指定磁头数 |
| -S | 指定每条磁道的扇区数 |
| -h | 帮助文档 |
**选择参数:**
- -s<分区编号> 指定分区
- -v 版本信息
**菜单操作说明**
对某个磁盘分区,如 fdisk /dev/sda则会出现以下菜单进行选择
- m :显示菜单和帮助信息
- a :活动分区标记/引导分区
@ -168,29 +131,34 @@ fdisk [必要参数][选择参数]
### 5.2.3、格式化
#### 5.2.3.1、为什么要格式化
#### 5.2.3.1、什么是格式化
1、认识格式化
格式化:指将分区格式化成不同的文件系统。
那什么是文件系统呢?
文件系统:指操作系统用于明确存储设备或分区上的文件的方法和数据结构:即在存储设备上组织文件的方法。就好比一个教室,同学们的坐的位置总是与桌子凳子排列的方式有关系。桌子,凳子怎么摆放,就导致了同学坐的位置在哪里。文件系统存放数据也是这么个道理。
我们所说的格式化一般是指逻辑格式化,它是指根据用户选定的文件系统,在磁盘的特定区域写入特定数据,以达到初始化磁盘或磁盘分区、清除原磁盘或磁盘分区中所有文件的一个操作。
2、Linux系统下的文件类型
Linux下的文件类型有ext2、ext3、ext4、xfs等等我们可以使用命令mkfs 然后用按TAB、TAB来查看都有哪些文件类型。
文件系统指操作系统用于明确存储设备或分区上的文件的方法和数据结构:即在存储设备上组织文件的方法。
#### 5.2.3.2、格式化常用命令
mkfsmake filesystem
用法:
```shell
mkfs [选项] [-t <类型>] [文件系统选项] <设备> [<大小>]
```
mkfs [-t 文件系统格式] 装置文件名
```
创建一个Linux 文件系统。
| 选项 | 功能 |
| ---- | ----------------------------------- |
| -t | 文件系统类型;若不指定,将使用 ext2 |
| -V | 解释正在进行的操作; |
| -h | 帮助文档 |
| -v | 展示版本信息 |
@ -200,122 +168,35 @@ mkfs [-t 文件系统格式] 装置文件名
在Linux 系统中一切皆文件,所有文件都放置在以根目录为树根的树形目录结构中。在 Linux 看来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)。挂载,指的就是将设备文件中的顶级目录连接到 Linux 根目录下的某一目录,访问此目录就等同于访问设备文件。
Linux 的磁盘挂载使用 `mount` 命令,卸载使用 `umount` 命令。
#### 5.2.4.2 mount命令
#### 5.2.4.2 挂载常用命令
用法:
```
mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n] 装置文件名 挂载点
```shell
mount [-lhV]
mount -a [选项]
mount [选项] [--source] <> | [--target] <目录>
mount [选项] <> <目录>
mount <操作> <挂载点> [<目标>]
```
因选项过多,这里不做详解,可以在命令行输入 mouunt -h 获取帮助文档。
**示例1**
**挂接光盘镜像文件**
**1、从光盘制作光盘镜像文件。将光盘放入光驱执行下面的命令。**
```
#cp /dev/cdrom /home/sunky/mydisk.iso 或
#dd if=/dev/cdrom of=/home/sunky/mydisk.iso
```shell
mount /dev/usb /mnt/usb
```
注:执行上面的任何一条命令都可将当前光驱里的光盘制作成光盘镜像文件/home/sunky/mydisk.iso
用默认方法将/dev/usb 挂载到 /mnt/usb
**2、将文件和目录制作成光盘镜像文件执行下面的命令。**
```
#mkisofs -r -J -V mydisk -o /home/sunky/mydisk.iso /home/sunky/ mydir
```
注:这条命令将/home/sunky/mydir目录下所有的目录和文件制作成光盘镜像文件/home/sunky/mydisk.iso光盘卷标为mydisk
**3、光盘镜像文件的挂接(mount)**
```
#mkdir /mnt/vcdrom
```
注:建立一个目录用来作挂接点(mount point)
```
#mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom
```
注:使用/mnt/vcdrom就可以访问光盘镜像文件mydisk.iso里的所有文件了。
**挂接移动硬盘**
对[linux系统](https://www.linuxprobe.com/)而言USB接口的移动硬盘是当作SCSI设备对待的。插入移动硬盘之前应先用fdisk l或more /proc/partitions查看系统的硬盘和硬盘分区情况。
```
[root at pldyrouter /]# fdisk -l
```
接好移动硬盘后再用fdisk l或more。
/proc/partitions查看系统的硬盘和硬盘分区情况应该可以发现多了一个SCSI硬盘/dev/sdc和它的两个磁盘分区/dev
/sdc1、/dev/sdc2其中/dev/sdc5是/dev/sdc2分区的逻辑分区我们可以使用下面的命令挂接/dev/sdc1和
/dev/sdc5。
```
#mkdir -p /mnt/usbhd1
#mkdir -p /mnt/usbhd2
```
注:建立目录用来作挂接点(mount point)
```
#mount -t ntfs /dev/sdc1 /mnt/usbhd1
#mount -t vfat /dev/sdc5 /mnt/usbhd2
```
对ntfs格式的磁盘分区应使用-t ntfs参数对fat32格式的磁盘分区应使用-t vfat参数。若汉字文件名显示为乱码或不显示可以使用下面的命令格式。
```
#mount -t ntfs -o iocharset=cp936 /dev/sdc1 /mnt/usbhd1
#mount -t vfat -o iocharset=cp936 /dev/sdc5 /mnt/usbhd2
```
linux系统下使用fdisk分区命令和mkfs文件系统创建命令可以将移动硬盘的分区制作成linux系统所特有的ext2、ext3格式。这样在linux下使用就更方便了。使用下面的命令直接挂接即可。
```
#mount /dev/sdc1 /mnt/usbhd1
```
**挂接U盘**
和USB接口的移动硬盘一样对linux系统而言U盘也是当作SCSI设备对待的。使用方法和移动硬盘完全一样。插入U盘之前应先用fdisk l 或more /proc/partitions查看系统的硬盘和硬盘分区情况。
```
[root at pldyrouter root]# fdisk -l
```
插入U盘后再用fdisk l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。
```
[root at pldyrouter root]# fdisk -l
```
系统多了一个SCSI硬盘/dev/sdd和一个磁盘分区/dev/sdd1,/dev/sdd1就是我们要挂接的U盘。
```
#mkdir -p /mnt/usb
```
注:建立一个目录用来作挂接点(mount point)
```
#mount -t vfat /dev/sdd1 /mnt/usb
```
注:现在可以通过/mnt/usb来访问U盘了, 若汉字文件名显示为乱码或不显示,可以使用下面的命令。
```
#mount -t vfat -o iocharset=cp936 /dev/sdd1 /mnt/usb
```
## 参考资料
[1] 《大学计算机基础》编写组编写大学计算机基础中国铁道出版社2015.09
[2] 百度百科 https://baike.baidu.com/item/%E7%A3%81%E7%9B%98/2842227?fr=aladdin