Linux 磁盘挂载和swap空间管理
挂载:把指定的设备和根下面的某个文件夹建立关联
卸载:解除两者关系的过程
挂载文件系统:mount
格式:mount device mountpoint --- mount 设备名 挂载点
mountpoint:挂载点目录必须事先存在,建议使用空目录
选项:
-t fstype:指定文件系统类型,比如ext4
-r readonly,只读挂载
-w read and write, 读写挂载,此为默认设置,可省略
-n 不更新/etc/mtab,mount不可见
-a 自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件中,且挂载选项中有auto功能)
-o options:(挂载文件系统的选项),多个选项使用逗号分隔
# async 异步模式,内存更改时,写入缓存区buffer,过一段时间再写到磁盘中,效率高,但不安全
# sync 同步模式,内存更改时,同时写磁盘,安全,但效率低下
# remount 重新挂载(相当于umount后再mount)
# ro/rw 只读、读写
# defaults(默认挂载) 相当于rw, suid, dev, exec, auto, nouser, async
挂载规则:
一个挂载点同一时间只能挂载一个设备,如果挂载了多个设备就只显示最后一个设备
一个设备可以挂载到多个挂载点
挂载点通常是空的目录文件
查看挂载的设备:
#通过查看/etc/mtab文件显示当前已挂载的所有设备
mount
#查看内核追踪到的已挂载的所有设备
cat /proc/mounts
查看挂载点情况
findmnt MOUNT_POINT|device
#可以用来判断某个文件夹是不是挂载点,如果是会显示对应的数据信息
查看正在访问指定文件系统的进程
lsof MOUNT_POINT ---也可以用来查看某个挂载点是否被别人使用
fuser -v MOUNT_POINT -- 查看是谁在使用
终止所有在正访问指定的文件系统的进程
fuser -km MOUNT_POINT
持久挂载(重启电脑还存在)
将挂载保存到 /etc/fstab 中可以下次开机时,自动启用挂载
使用man 5 fstab 查看/etc/fstab配置文件格式
配置文件格式:
要挂载的文件系统 挂载点 文件系统类型 挂载属性 备份频率 sck检查的文件系统的顺序
要挂载的文件系统:可以用设备名、uuid、卷标
查看uuid: blkid挂载点:必须是事先存在的目录
挂载属性:defaults ,acl,bind
备份频率(一般用不上):0:不做备份 1:每天转储 2:每隔一天转储
文件系统检查的次序:开机检测文件系统的过程。其中允许的数字是0 1 2
0:不自检 ,1:首先自检;一般只有rootfs才用 2:非rootfs使用
卸载文件系统:umount
umount 设备名或挂载点
处理交换文件和分区
swap:是一种特殊的文件系统,叫交换文件系统。作用是缓解内存不足的情况。拿硬盘的分区来模拟内存,把内存中暂时不用的数据导入swap硬盘分区中,给内存腾出空间。利用硬盘来模拟内存.
副作用:硬盘速度没有内存的速度快,所以会降低速度。
swap空间分配原则:
| 内存 | swap |
|---|---|
| <=2G | swap就是内存的两倍(4G) |
| 2-8G | swap等于内存大小(2-8G) |
| 8-64G | swap是内存的0.5倍(4-32G) |
| >64G | swap选择4G左右 |
交换空间swap实现过程:
1. 创建交换分区或者文件 -- fdisk
2. 使用mkswap写入特殊签名 -- maswap 分区
3. 在/etc/fstab文件中添加适当的条目 --- xxx
# 文件系统没有挂挂载点就写none 因为swap是用来模拟内存的
4. 使用swapon -a 激活交换空间
启用swap分区:
swapon [OPTION]... [DEVICE]
选项:
-a: 启用所有的交换分区
-s: 显示交换区的使用状况
禁用swap分区:
swapoff [OPTION]... [DEVICE]
SWAP的优先级
有多个二swap分区的时候,指定优先使用谁。
swapon -s 可以查看swap的优先级
可以指定swap分区0到32767的优先级,值越大优先级越高
#修改swap的优先级:
例如:UUID=xxxxswap swap pri=100 0 0
#更改完成以后禁用再重新启用就生效了
用一个文件来作为swap
#创建一个指定大小的文件
dd if=/dev/null of=filename bs=大小 count=1
#因为这个文件后面要用来放内存中的信息,所以为了安全要更改权限
chmod a= filename #除了root谁也看不到
#创建文件系统
mkswap filename
#挂载 /etc/fstab
file_name(不能写uuid,uuid是针对设备来说的) none swap defaults 0 0
#启用swap
swapon file_name
swap的使用策略
/proc/sys/vm/swappiness 的值决定了当内存占用达到一定的百分比时,会启用swap分区的空间
例如/proc/sys/vm/swappiness这个值是30,则内存在使用到100-30=70%的时候,就开始出现有交换分区的使用
/proc/sys/vm/swappiness值为0不会禁止交换分区的使用,是最大限度地降低了使用swap的可能性
Linux 磁盘挂载和swap空间管理的更多相关文章
- Linux磁盘挂载
mount命令 用于加载文件系统到指定的加载点.此命令的最常用于挂载cdrom,使我们可以访问cdrom中的数据,因为你将光盘插入cdrom中,Linux并不会自动挂载,必须使用Lin ...
- Linux磁盘挂载详述
1.查看硬盘信息及分区 一般使用”fdisk -l”命令可以列出系统中当前连接的硬盘,设备和分区信息.新硬盘没有分区信息,则只显示硬盘大小信息. [root@localhost home]# fdis ...
- 攻城狮在路上(叁)Linux(二十二)--- linux磁盘挂载与卸载 mount umount
挂载就是将文件系统与目录结合的操作.挂载点就是目录,该目录就是进入分区或文件系统的入口. 一.挂载前的注意事项: 1.单一文件系统不应该被重复挂载在不同的挂载点中. 2.单一目录不应该重复挂载多个文件 ...
- Linux 磁盘挂载和mount共享
针对Linux服务器的磁盘挂载mount和共享做简单操作说明: 1. 查看已使用的磁盘情况 df –h 2. 查看所有磁盘 fdisk –l 3. 查看指定磁盘“/dev/xvde”的分区情 ...
- linux 磁盘挂载及查看磁盘
blkid命令实例 .列出当前系统中所有已挂载文件系统的类型: sudo blkid .显示指定设备 UUID: sudo blkid -s UUID /dev/sda5 .显示所有设备 UUID: ...
- Linux磁盘挂载、分区、扩容操作
本文最早发布于 Rootrl's blog 注:以下操作系统环境为CentOS7 基本概念 在操作前,首先要了解一些基本概念 磁盘 在Linux系统中所有的设备都会以文件的形式存储.设备一般保存在/d ...
- [linux]磁盘挂载
最近磁盘空间不足了, 所以需要将更多的磁盘空间加进来. 因为目前占空间最多的就是home, 无论是下载还是本地用户的东西都是放在这里的. 将分区格式化为ext4, 然后使用blkid /dev/sda ...
- 【转】linux 磁盘挂载
挂载好新硬盘后输入fdisk -l命令看当前磁盘信息 可以看到除了当前的第一块硬盘外还有一块sdb的第二块硬盘,然后用fdisk /dev/sdb 进行分区 进入fdisk命令,输入h可以看到该命令的 ...
- Linux 磁盘挂载分区
举例说明: 新增磁盘的设备文件名为 /dev/vdb 大小为100GB. #fdisk -l 查看新增的的磁盘 1.对新增磁盘进行分区 #fdisk /dev/vdb 按提示操作 p打印 n新增 d ...
随机推荐
- 2021.11.30 eleveni的水省选题的记录
2021.11.30 eleveni的水省选题的记录 因为eleveni比较菜,eleveni决定先刷图论,再刷数据结构,同时每天都要刷dp.当然,对于擅长的图论,eleveni决定从蓝题开始刷.当然 ...
- 通过OptaPlanner优化 COVID-19 疫苗接种预约安排(2)
本文为OptaPlanner官方博客<Optimizing COVID-19 vaccination appointment scheduling>的第二篇译文.第一篇介绍了通过OptaP ...
- 小程序开发之获取客户来源 scene 场景值 手机设备信息
为什么要获取客户来源 用作数据分析,根据客户来源,做精准转化! 判断客户来源入口方式 1.通过官方的scene场景值 常见场景值 场景值ID 说明 1001 发现栏小程序主入口,「最近使用」列表 10 ...
- UML的三项基础
UML的定义 UML语义:描述基于UML的精确元模型定义. UML表示法:定义UML符号和文本语法提供标准. 五类模型图 用例视图:用例图 逻辑视图:类图.对象图.包图(我把包放在一起的图) 静态视图 ...
- ucore lab1 操作系统启动过程 学习笔记
开头赞美THU给我们提供了这么棒的资源.难是真的难,好也是真的好.这种广查资料,反复推敲,反复思考从通电后第一条代码搞起来理顺一个操作系统源码的感觉是真的爽. 1. 操作系统镜像文件ucore.img ...
- Linux主流发行版本配置IP总结(Ubuntu、CentOS、Redhat、Suse)
我们先了解下IP的概念 IP地址简介 电脑连接互联网的必要条件:IP地址+子网掩码+网关+DNS IP地址是上网的唯一标识 - IPv4地址分类: IPv4地址分为A-E共计5类地址,其中A.B.C是 ...
- Spring Boot 配置 HikariCP
HikariCP 是一个可靠的.高性能的 JDBC 连接池 本来用的 alibaba/druid,但实际并没有怎么用其内置的监控网页,然后多方调查,决定弃用 druid,替换为 HikariCP Sp ...
- 【Java8新特性】Optional 类
概述 Optional 类是一个可以为null的容器对象.如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象. Optional 是个容器:它可以保存类型T的值,或者 ...
- SpringBoot线程池
1.遇到的场景 提高一下插入表的性能优化,两张表,先插旧的表,紧接着插新的表,若是一万多条数据就有点慢了 2.使用步骤 用Spring提供的对ThreadPoolExecutor封装的线程池Threa ...
- 559. Maximum Depth of N-ary Tree - LeetCode
Question 559. Maximum Depth of N-ary Tree Solution 题目大意:N叉树求最大深度 思路:用递归做,树的深度 = 1 + 子树最大深度 Java实现: / ...