硬盘的分类
机械硬盘(HDD)
厂家:西部数据、希捷
转速:5400转、7200转
逻辑结构:磁道、扇区(512字节)、柱面
盘面中一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之为一个扇区(图践绿色部分)。扇区是磁盘的最小组成单元,通常是512字节。(由于不断提高磁盘的大小,部分厂商设定每个扇区的大小是4096字节)
硬盘通常由重叠的一组盘片构成,每个盘面都被划分为数目相等的磁道,并从外缘的“0”开始编号,具有相同编号的磁道形成一个圆柱,称之为磁盘的柱面。磁盘的柱面数与一个盘面上的磁道数是相等的。由于每个盘面都有自己的磁头,因此,盘面数等于总的磁头数。
接口:IDE(淘汰) SATA(最广泛) SAS SCSI(成本高)
固态硬盘(SSD)
M.2接口
SATA接口
linux硬盘分区
linux硬盘识别
IDE接口硬盘识别为hda(硬盘分区为hda1 hda2...) hdb hdc...
SATA/SAS/SCSI接口硬盘识别为(硬盘分区为sda1 sda2...) sdb sdc
MBR:主引导分区(512Byte)
1.主引导记录(MBR)(占446个字节)
2.磁盘分区表(DPT)(DiskPartitionTable)(占4*16=64个字节)
3.结束标记(占2个字节)
MBR分区结构
一个磁盘最多有4个主分区
主分区+扩展分区最多有4个,扩展分区最多有一个,即若存在扩展分区,主分区最多为3个
扩展分区中只能划分从sda5开始的逻辑分区,逻辑分区最多有4个
具体操作:fdisk和gdisk叫做交互式命令
MBR分区:
添加硬盘
关机情况下添加
fdisk -l (/dev/sda若输入到具体的磁盘可以查看磁盘具体的分区情况) 查看磁盘分区
具体流程fdisk /dev/sdb
新建主分区:
n新建分区
w写入到表中并退出,q不保存退出,查看一下fdisk -l /dev/sdb
新建扩展分区:
继续fdisk /dev/sdb
新建逻辑分区
n
删除分区直接 d 然后写3,就会删除sdb5
每次保存退出按”w“后可以输入partprobe报错系统繁忙重启即可
GPT分区
默认128个分区表,具体操作方式与MBR分区大致相似,不需要挂载(需要下载包)
gdisk /dev/sdc
n创建
+1G
格式化
文件系统种类
FAT32(兼容性强不支持单个文件超过4GB)、NTFS(windows默认使用)
CentOS6使用ext4 CentOS7使用xfs
命令操作:
格式化:mkfs.xfs /dev/sdb1(或者mkfs -t xfs /dev/sdb1)
不选文件系统类型会默认为ext2(使用df -Th命令可以查看)
挂载与卸载
mount 挂载源(设备)挂载点(目录)
挂载点可以在根目录下mkdir /sdb1,然后mount /dev/sdb1 /sdb1
mount 可以看挂载信息
umount 卸载挂载源或挂载点(不能在磁盘里取挂载,拆房子要到放在外面拆)
umount /sdb5 或者 umount /dev/sdb5
扩展分区不能挂载
设置到/etc/fstab开机自动挂载文件
挂在后可以写入到/etc/fstab文件中
挂载源 挂载点 文件系统类型 挂载的参数 是否备份(0不备份 1备份)是否检测(0不检测 1第一个检测 2按顺序检测)
查看命令
df 查看磁盘挂载信息
-T 显示文件类型
-h 人类可读方式
df -Thi
i 查看inode数量情况
-T 显示文件类型
-h 人类可读方式
du 查看文件或目录大小(默认会列出目录下所有内容)
-h 人类可读
-s查目录
UUID:设备的唯一标识,创建系统文件类型时产生
查看磁盘UUID的方式
blkid /dev/sdb1
查看网卡的UUID
nmcli conn show
nmcli conn show ens33
作用:挂载更可靠,防止挂载位置错位
交换分区
OOM 内存溢出 系统中内存不足,恰巧有新的进程申请内存,会自动杀死系统中内存占用最多的进程
交换分区的作用:内存不够用时,替代内存,实质是硬盘,一般与内存相等或者是内存的2倍,不需要挂载
free 查看系统内存使用状况 -m 选项:以M为单位
命令
mkswap创建交换分区
mkswap /dev/sdb5
写入 fstab:/dev/sdb5 swap swap defaults 0 0
swapon查看交换分区使用的设备以及大小(英文版)
swapoff -a关闭所有交换分区(可以指定)
swapon -a开启所有交换分区
swapon -s 列出所有交换分区
实验:查看交换分区的作用
下载yum -y install httpd mariadb mariadb-server php php-mysql.x86_64 (LAMP)
下载yum -y install net-tools 和yum -y install unzip
开启服务systemctl start httpd 和 systemctl start mariadb
查看端口号 netstat -anput | egrep '(:80|:3306)'
给数据库设置密码:mysqladmin -uroot password 123
解压缩包 unzip Discuz_X3.3_SC_UTF8.zip ; cd upload ; mv * /var/www/html/
chown -R apache:apache /var/www/html
去注册用户
新建一个终端,watch free -m
ab -n 100000 -c 1000 http://192.168.1.10/forum.php
c表示并发用户数
-n表示请求总数
将交换分区关掉swapoff -a,检测日志tail -f /var/log/messages,一会会把mysql干掉,再过一会会把自己干掉
磁盘配额
简介
在Linux系统中,由于是多人多任务环境,所以会有很多人共同使用一个硬盘空间的情况发生,如果其中少数几个使用者大量的占用硬盘空间的话,那势必会压缩其他用户的使用权力,因此,管理员应该适当的限制硬盘的容量给用户,以妥善分配系统资源。
柔性劝导与硬性规定( soft/hard )
不管是inode还是block限制,分别都有两个限制值,即soft与hard。通常hard限制比soft要高。
例如,若限制项目为block,可以限制hard为100M,而soft为80M。那么,用户使.用量绝对不可以高于100M,一旦超过,系统会锁住该用户的磁盘使用权,用户需自行删除一些无用的文件以减少磁盘使用量。若用户在用量低于80M时,可以正常使用。若用户使用量介于80M~100M间,则每次用户登入系统时,系统会主动发出磁盘即将爆满的警告信息,且会给予一个宽限时间(gracetime),默认为7天,若7天内使用者将用量降至80M以下,则宽限时间会停止,否则超过7天后系统将以80M作为硬性规定(取代100M)限制,锁住用户的磁盘使用权。
磁盘配额需要手动开启
磁盘配额相关选项
用户配额和组配额
磁盘容量限制和文件个数限制
软限制和硬限制
宽限时间
磁盘配额大致思路
创建磁盘分区并挂载
创建用户和用户组
在分区上开启磁盘配额功能,并修改挂载文件
建立磁盘配置文件,根分区额外注意
设置用户和组的配额限制
启动配额,并查询用户和文件系统配额
测试
实验流程
实验思路:本实验创建三个用户和一个用户组进行测试,每个用户给定硬限制100M大小空间,80M软限制,用户组给定250M大小空间,用户1额外限制做多创建10个文件,测试时用户1测试文件大小软限制和文件数量软硬限制,用户二测试文件大小硬限制,用户三测试最大组配额容量
yum -y install quota.x86_64 下载包
创建用户用户组group1和用户user1,user2,user3,设置密码,并将这三个用户加到到组group1下
groupadd group1
useradd -G group1 user1
useradd -G group1 user2
useradd -G group1 user3
将家目录下的所有内容备份
mkdir /bakhome
cp -rp /home/* /bakhome
ll /bakhome
首先选定一个磁盘分区大小10g,名称sdb1,将其挂载到/home下
mount /dev/sdb1 /home
df -Th
df -Th 目录或者文件 查看此目录或文件使用的文件系统
恢复家目录下的内容
cp -rp /bakhome/* /home/
在分区上开启磁盘配额功能并查看挂载
mount -o remount,usrquota,grpquota /home
mount | grep /home
永久开启磁盘配额功能写入/etc/fstab文件
vim /etc/fstab
/dev/sdb1 /home ext4 defaults,usrquota,grpquota 0 0
mount -o remount /home 重新挂载使配置文件生效
扫描建立磁盘配额的配置文件
quotacheck -avug
-a 扫描文件中所有启用的磁盘配额
-v 显示扫描过程
-u 建立用户配额配置文件,生成aquota.user文件
-g 建立组配额配置文件,生成aquota.group文件
注: 如果给根分区开启配额功能,加m选项强制 quotacheck -avugm
ll /home 查看文件是否生成
edquota [选项] [用户或组名] 设置用户和用户组的配额限制以及配额复制
选项
-u 用户名
-g 组名
-t 设定宽限时间
-p 复制配额
edquota -u user1 然后进行编辑
磁盘配额查询 quota -uvs user1
edquota -p user1 -u user2 配额复制复制
setquota -u user3 80000 100000 8 10 /home 非交互设定用户user3磁盘配额
setquota -u user3(用户名)80000(容量软限制) 100000(容量硬限制) 8(软限制) 10(硬限制) /home(挂载目录)
edquota -g group1
磁盘配额查询
repquota -avugs 查询文件系统配额
quota -uvs 用户名 用户查询
quota -gvs 组名 组查询
查询结果
edquota -t 修改宽限时间为14天
quotaon -avug 启动配额
-a 启动所有配额分区
-u 启动用户配额
-g 启动组配额
-v 显示详细信息
测试
user1:
dd if=/dev/zero of=/home/user1/testfile1 bs=1M count=90
dd if=/dev/zero of=/home/user1/testfile2 bs=1M count=50
du -h /home/user1查看文件大小
quota -uvs user1 查看user1配额情况
依次touch 5个文件
user2:
dd if=/dev/zero of=/home/user2/testfile bs=1M count=120
user3:
dd if=/dev/zero of=/home/user3/testfile bs=1M count=100
quotaoff -a 关闭磁盘配额
-a 关闭所有配额分区
-u 关闭用户配额
-g 关闭组配额
发布者:LJH,转发请注明出处:https://www.ljh.cool/35628.html