序言
c盘和文件系统的管理是运维人员必把握的内容,此文对c盘管理和文件系统做了一些了解。
一、磁盘基础1、磁盘的化学结构2、磁盘的数据结构3、硬盘的数据结构二、MBR与c盘分区1、为什么分区2、磁盘分区的结构3、文件系统XFS文件系统SWAP,交换文件系统linux支持的其它文件系统类型
常见的硬件设备在/dev目录下
[root@localhost ~]#ll /dev/sd*
brw-rw---- 1 root disk 8, 0 11月 25 14:10 /dev/sda
brw-rw---- 1 root disk 8, 1 11月 25 14:10 /dev/sda1
brw-rw---- 1 root disk 8, 2 11月 25 14:10 /dev/sda2
brw-rw---- 1 root disk 8, 16 11月 25 14:10 /dev/sdb
三、分区工具而且确认新硬碟1、fdisk——命令
或则fdisk查看硬碟的整体情况和分区情况
[root@localhost ~]#fdisk -l /dev/sda
磁盘 /dev/sda:64.4 GB, 64424509440 字节,125829120 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0009d5e8
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 4196351 2097152 83 Linux
/dev/sda2 4196352 119556095 57679872 8e Linux LVM
Device:分区的设备文件名称。
Boot:是否是引导分区。若是,则有""标识。
Start:该分区在硬盘中的起始位置(柱面数)
End:该分区在硬盘中的结束位置(柱面数)。
Blocks:分区的大小,以Blocks(块)为单位,默认的块大小为1024字节
Id:分区对应的系统ID号。83表示Linux中的XFS 分区或EXT4分区、8e表示LVM逻辑卷。LVM是Linux操作系统中对磁盘分区进行管理的一种逻辑机制。
System:分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了。在Linux
操作系统中,分区和格式化的过程是相对独立的。
交互模式中的常用指令
Command (m for help) : m #输入m指令
d #删除一个分区
l #显示己知的分区类型,其中82为Linux swap分区,83为Linux分区
m #最示帮助菜单I
n #增加一个新的分区
p #显示磁盘当前的分区表
q #退出fdisk程序,不保存任何修改
s #创建一个新的空白的sun磁盘标签
t #改变一个分区的系统号码
u #改变显示记录单位
v #对磁盘分区表进行验证
w #保存修改结果并退出fdisk程序复制
a #设置可引导标记
b #修改bsd的磁盘标签
c #设置DOS操作系统兼容标记
o #创建一个新的空白的Dos分区表
x #特殊功能,不建议初学者使用
2、本地yum库房搭建
[root@localhost ~]#mount /dev/sr0 /mnt/ #挂载
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]#df -h #查看是否已挂载
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 50G 4.2G 46G 9% /
devtmpfs 1.5G 0 1.5G 0% /dev
tmpfs 1.5G 0 1.5G 0% /dev/shm
tmpfs 1.5G 13M 1.5G 1% /run
tmpfs 1.5G 0 1.5G 0% /sys/fs/cgroup
/dev/sda1 2.0G 157M 1.9G 8% /boot
tmpfs 296M 4.0K 296M 1% /run/user/42
tmpfs 296M 36K 296M 1% /run/user/0
/dev/sr0 4.2G 4.2G 0 100% /mnt
[root@localhost ~]#cd /etc/yum.repos.d/ #切换到固定目录
[root@localhost yum.repos.d]#ls
CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo
[root@localhost yum.repos.d]#mkdir bak #创建备份文件夹
[root@localhost yum.repos.d]#ls
bak CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo
[root@localhost yum.repos.d]#mv *.repo bak #移走网源,减少干扰
[root@localhost yum.repos.d]#mv bak/* . #移回网源
[root@localhost yum.repos.d]#ls
bak
[root@localhost yum.repos.d]#vi zhantai.repo #自建配置文件 本地源
[zhantai]
name=zhantai
baseurl=file:///mnt
gpgcheck=0
:ZZ #保存退出
[root@localhost yum.repos.d]#yum clean all #清缓存
已加载插件:fastestmirror, langpacks
正在清理软件源: zhantai
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
[root@localhost yum.repos.d]#yum makecache #重新建立元数据
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
zhantai | 3.6 kB 00:00:00
(1/4): zhantai/group_gz | 166 kB 00:00:00
(2/4): zhantai/filelists_db | 3.1 MB 00:00:00
(3/4): zhantai/primary_db | 3.1 MB 00:00:00
(4/4): zhantai/other_db | 1.3 MB 00:00:00
元数据缓存已建立
3、lsblk——命令
[root@localhost ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 60G 0 disk
├─sda1 8:1 0 2G 0 part /boot
└─sda2 8:2 0 55G 0 part
├─centos-root 253:0 0 54G 0 lvm /
└─centos-swap 253:1 0 5G 0 lvm [SWAP]
sdb 8:16 0 20G 0 disk
└─centos-root 253:0 0 54G 0 lvm /
sr0 11:0 1 4.2G 0 rom /run/media/root/CentOS 7 x86_64
4、blkid——命令5、mkfs——命令6、扩展分区的大小
7、gdisk——命令四、挂载、解挂载
挂载规则
[root@localhost ~]#mount /dev/sr0 /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]#df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 50G 4.2G 46G 9% /
devtmpfs 1.5G 0 1.5G 0% /dev
tmpfs 1.5G 0 1.5G 0% /dev/shm
tmpfs 1.5G 12M 1.5G 1% /run
tmpfs 1.5G 0 1.5G 0% /sys/fs/cgroup
/dev/sda1 2.0G 157M 1.9G 8% /boot
tmpfs 296M 4.0K 296M 1% /run/user/42
tmpfs 296M 28K 296M 1% /run/user/0
/dev/sr0 4.2G 4.2G 0 100% /mnt
####查看是否为挂载点
# findmnt 查看 设备的详细信息
[root@localhost opt]# findmnt /sdb1
TARGET SOURCE FSTYPE OPTIONS
/sdb1 /dev/sdb1 xfs rw,relatime,seclabel,attr2,inode64,noquota
选项
功能
rw/ro
是否对挂载的文件系统拥有读写权限,rw为默认值linux 磁盘管理工具,表示拥有读写权限;ro表示只读权限。
async/sync
此文件系统是否使用同步写入(sync)或异步(async)的显存机制,默认为异步async。
dev/nodev
是否容许从该文件系统的block文件中提取数据linux 磁盘管理工具,为了保证数据安装,默认是nodev。
auto/noauto
是否容许此文件系统被以mount-a的形式进行手动挂载,默认是auto。
suid/nosuid
设定文件系统是否拥有SetUID和SetGID权限,默认是拥有。
exec/noexec
设定在文件系统中是否容许执行可执行文件,默认是容许。
user/nouser
设定此文件系统是否容许让普通用户使用mount执行实现挂载,默认是不容许(nouser),仅有root可以。
defaults
定义默认值,相当于rw、suid、dev、exec、auto、nouser、async这7个选项。
remount
重新挂载已挂载的文件系统,通常用于指定更改特殊权限。
####重新挂载
root@localhost data]#mount -o ro /dev/sdc1 /mnt/
[root@localhost data]#mount
/dev/sdc1 on /mnt type xfs (ro,relatime,seclabel,attr2,inode64,noquota)
#如果有人在使用 挂载文件夹 无法先解挂载再 去挂载
[root@localhost data]#mount -o remount,ro /mnt/
[root@localhost data]#fuser -v /mnt/
用户 进程号 权限 命令
/mnt: root kernel mount /mnt
root 20480 ..c.. bash
[root@localhost data]#fuser -km /mnt/
/mnt: 20480c
1、mount——挂载
格式:mount[-t类型]储存设备挂载点目录
2、umount——解挂载
卸载已挂载的文件系统
3、永久挂载
方式一:在**/etc/fstab**文件中,每一行记录对应一个分区或设备的挂载配置信息linux嵌入式开发查看系统版本linux,这种信息从左到右包括六个数组使用空格或制表符分隔。
/dev/sdb2 /mnt xfs defaults 0 0
方式二:须要将文件写入/etc/fstab
UUID可以确保惟一
[root@localhost ~]#blkid
/dev/sda1: UUID="8ed41bec-1329-4607-9b42-6f7b4b60816c" TYPE="xfs"
/dev/sda2: UUID="G15aII-0Yle-SYk6-q1mJ-bsHn-HZfu-GeC1Zv" TYPE="LVM2_member"
/dev/sdb1: UUID="tGm7NP-Ys8i-pm4d-1t0P-Bwdg-g5ua-TkFBN2" TYPE="LVM2_member"
/dev/sr0: UUID="2018-05-03-20-55-23-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/mapper/centos-root: UUID="d2fd2b9d-612e-4e17-ab97-dc611c730a96" TYPE="xfs"
/dev/mapper/centos-swap: UUID="492e835a-762f-475b-a66c-ce4a341b1174" TYPE="swap"
/dev/mapper/zhangsan-cxk: UUID="8f7991cf-2c7c-4239-a74e-e57c6153f392" TYPE="xfs"
[root@localhost ~]#
[root@localhost opt]# vim /etc/fstab
在/etc/fstab 文件中,每一行记录对应一个分区或设备的挂载配置信息,这些信息从左到右包括六个字段(使用空格或制表符分隔),各部分的含义如下所述。
/dev/sdb1 /mnt xfs defaults 0 0
第 1 字段:设备名或设备卷标名。
第 2 字段:文件系统的挂载点目录的位置。
第 3 字段:文件系统类型,如 XFS、Swap 等。
第 4 字段:挂载参数,即mount 命令“-o”选项后可使用的参数。例如,defaults、rw、ro、noexec 分别表示默认参数、可写、只读、禁用执行程序。
第 5 字段:表示文件系统是否需要 dump 备份(dump 是一个备份工具)。一般设为 1时表示需要,设为 0 时将被 dump 忽略
第 6 字段:该数字决定在系统启动时进行磁盘检查的顺序。0 表示不进行检查,1 表示优先检查,2 表示其次检查。根分区应设为 1,其他分区设为 2。
通过在/etc/fstab 文件中添加相应的挂载配置,可以实现开机后自动挂载指定的分区。例如,执行以下操作将添加自动挂载分区/dev/sdb1的配置记录。
# /etc/fstab
# Created by anaconda on Fri Aug 6 20:57:12 2021
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=e9364e9b-a85b-49d7-9652-3a56202e14c8 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
UUID=2a1e1ac7-7462-4fc3-b644-43813660276f /sdb1 xfs defaults 0 0
~
:wq
uuid写错了 可以直接等待进入系统后,出现ctrl+D 报错 输入root密码,后修改 /etc/fstab.
总结
管理c盘和分区、创建文件系统、挂载、卸载文件系统。