df mount umount fdisk mkfs blkid
=============================================================================实践错误总结:
1:fdisk 分区之后 不w 保存就退出的话 分区就是不生效的
2:
❗❗❗ 箭头指的那个路径是 备份数据存放的地方 不能事先用mkdir创建好
必须是一个当前不存在的目录
❗❗❗❗注意:一块新的硬盘存储设备后,先需要分区,然后再格式化文件系统,最后才能挂载并正常使用。
🟩🟩🟩分区fdisk-------------》格式化mkfs--------------》挂载mount
===========================================================================
分区的目的:
1:便于管理,可以将特定的数据存储在特定分区
2:不同的分区可以安装不同的文件系统类型,可满足不同的业务需求==============================
为什么要挂载
挂载. 指的就是将设备文件中的顶级目录连接到 Linux 根目录下的某一目录(最好是空目录),访问此目录就等同于访问设备文件。. Linux 系统中"一切皆文件",所有文件都放置在以根目录为树根的树形目录结构中。. 在 inux 看来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)。. 因此产生的问题是,当在 Linux 系统中使用这些硬件设备时,只有将Linux本身的文件目录与硬件设备的文件目录合二为一,硬件设备才能为我们所用。. 合二为一的过程称为"挂载"。. 如果不挂载,通过Linux系统中的图形界面系统可以查看找到硬件设备,但命令行方式无法找到。
❗所以 目录才可以作为挂载点
也就是在linux的根目录下创建一个接口 我们可以通过这个接口访问到对应的设备(例如 硬盘,扬声器。。。)
换言之 不挂载 我就无法操作这个分区 (例如无法把数据存在硬盘的这个分区),就相当于 我买了块硬盘 但是我没有把他安装在我的电脑上。
============================================================================
查看挂载-----------df
-h -----------显示单位(1024)
-H-------------显示单位(1000)
-T--------------显示所挂载的分区文件系统类型
-i --------------显示文件inode号容量
挂载-----------mount 解除挂载----------umount
mount [-o(操作选项: remount,ro,wo,rw,loop)] [-t(type指定被载的文件系统类型)] who(分区/cdrom/iso/nfs/smb) where(目录才可以为挂载点)
示例:mount -o ro -t xfs /dev/sda5 /mnt/xfs <映射>
mount -oremount,rw /dev/sda5 /mnt/xfs 重新以rw方式挂载
umount /dev/sda5 或者 umount /mnt/xfs <解除映射> (接触 挂载文件 或者 挂载点都可以)
umount -l /dev/sda5 强制卸载 (小写L)
-o : 常见操作选项
ro-----------------只读
wo----------------只写
rw-----------------读写
loop--------------loop设备
remount ---------在线重新挂载
-t : 常见文件系统类型(不是文件类型)
ext2 ext3 ext4 xfs linux常用的类型
FAT32 vfat
cdrom iso9660
network file system nfs
smb cifs
查看挂载信息---------mount / mount -l
mount -l和df -h到底有何区别呢?
[liuqiang2@mu02 ~]$ mount -l
/dev/sda3 on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw) /dev/sda1 on /boot type ext4 (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) none on /sys/kernel/config type configfs (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) 192.168.1.51:/public on /public type nfs (rw,vers=3,addr=192.168.1.51) nfsd on /proc/fs/nfsd type nfsd (rw) 192.168.1.51@tcp:/lustre on /lustre type lustre (rw) /lustre/home on /home type none (rw,bind)
[liuqiang2@mu02 ~]$ df -h
Filesystem Size Used Avail Use% Mounted on /dev/sda3 244G 117G 115G 51% / tmpfs 16G 0 16G 0% /dev/shm /dev/sda1 291M 37M 239M 14% /boot 192.168.1.51:/public 20T 903G 19T 5% /public 192.168.1.51@tcp:/lustre 108T 586G 102T 1% /lustre
❗ df 检查 linux 服务器文件系统磁盘空间 的 占用情况。
❗mount 查看目录结构的详细挂载信息
=======================================================================================
任何一块硬盘设备最多只能分配 4 个MBR类型的主分区(因为描述一个分区需要用16字节数据,但是分区表只有64字节)
MBR类型才是这样 其他的不是
查看分区--------------------fdisk -l
fdisk -l -------------查询所有硬盘 以及硬盘上的分区情况
fdisk -l /dev/sda --------查看指定硬盘上的分区情况 (不加 -l 就是设置对应的硬盘分区)
设置硬盘分区-------fdisk /dev/sdb
m --获取帮助
a --设置分区有启动的功能
p --打印当前硬盘的分区表
d --删除分区
n --新建分区
l --查看linux支持的文件系统类型
t --改变分区的类型/ID
q --不保存退出
w --保存退出
+size{K,M,G}---------------------+2G, +8M +7K
格式化分区: mkfs -t/-f mkswap
mkfs -t xfs /dev/sdb1
mkfs.xfs /dev/sdb1 或者 mkfs.xfs -f /dev/sdb1 ---强制格式化xfs
mkfs.ext3 /dev/sdb1
mkfs.ext4 /dev/sdb1
mkfs.vfat /dev/sdb1
mkfs.btrfs /dev/sdb1
mkswap /dev/sdb6 -----交换分区格式化
-----------------------------------------------------------------------
查看分区UUID 及 格式化文件系统类型
# blkid /dev/sdb1
挂载使用:
# mkdir /disk1
# mount /dev/sda5 /disk1/
卸载:
# umount /disk1
# umount /dev/sda5
访问:
cd /disk1
---------------------------------------------------------------------------
如图 直接挂载一个 分区了但是没有格式化的 分区 会挂载失败 df 查看不到
对 sdb1 格式化之后 挂载成功
没有格式化的分区 也不能直接使用 -t 指定文件系统类型
❗❗❗❗注意:一块新的硬盘存储设备后,先需要分区,然后再格式化文件系统,最后才能挂载并正常使用。
🟩🟩🟩分区fdisk-------------》格式化mkfs--------------》挂载mount
必须按照顺序来操作
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------
针对标准分区使用容量接近极限解决方案: -------------更换存储分区
假如/mnt/ext4 目录分区为应用分区,但是数据即将存满,并且数据不可清除,也不方便更改其它目录分区
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdb3 380M 353M 3.1M 100% /mnt/ext4
解决方案:
1.创建更大的满足需求的分区(该新分区可以来自该硬,也可以是其它新硬盘划分),并格式化
# fdisk -l /dev/sdc
/dev/sdc1 2048 4196351 2097152 83 Linux
#mkfs.ext4 /dev/sdc1
2.将该分挂载到一个临时目录
# mkdir /mnt/tmp
# mount -t ext4 /dev/sdc1 /mnt/tmp/
3.将原/mnt/ext4所有数据拷贝到 /mnt/tmp新分区
# cp -ari /mnt/ext4/* /mnt/tmp/
4.卸载原来分区,将新分区挂载到原业务目录
[root@localhost ~]# umount /mnt/ext4
[root@localhost ~]# umount /mnt/tmp
这时候卸载挂载 相当于 我把数据存到硬盘上了 然后又把硬盘拆下来 所以数据已经存在了硬盘分区中。
[root@localhost ~]# mount /dev/sdc1 /mnt/ext4/
[root@localhost ~]# ls /mnt/ext4/ -lh
total 351M
-rw-r--r-- 1 root root 350M Aug 13 22:13 data
drwx------ 2 root root 16K Aug 13 22:01 lost+found
[root@localhost ~]# df -h
/dev/sdc1 2.0G 356M 1.5G 20% /mnt/ext4
----------------------------------------------------------------------------
=====================================================================
❗❗❗❗❗❗用mount挂载分区之后重启就没有了,原因是因为这个挂载是临时的,而不是永久的。磁盘Linux分区都必须挂载到目录树中的某个具体的目录上才能进行读写操作,然而在linux操作系统中fstab正是负责这一配置的。在开机的时候linux操作系统会调用fstab配置文件,根据该配置文件挂载分区到操作系统的。这是重启后挂载的分区丢失的根本原因,所以我们只需要修改/etc/fstab文件就能解决这个问题。
可见昨天挂载的/dev/sdb1 已经不见了