week 6

Linux 文件系统管理:
从“/”开始,一切皆文件(树形结构)
Linux的起始点:/ 二进制可执行文件 : /bin,/sbin
程序所需配置文件:/etc
设备文件(终端设备 、USB 、光盘等连接到系统的任何设备):/dev
系统进程的相关信息(虚拟的文件系统 ,包含有关正在运行的进程的信息):/proc
变量文件(内容可能增长的文件):/var 临时文件:/tmp
用户程序:/user 用户目录:/home
引导加载程序相关的文件:/boot 系统库文件:/lib
附加应用程序:/opt 挂载目录:/mnt
可移动设备:/media 服务数据:/srv
文件系统错误时,丢失文件的片段的保存:/lost+found

表示用户所处当前目录:.
表示上级目录:…
表示当前用户自己的家目录:~

一般硬件的使用流程:硬盘——分区——格式化文件系统——挂载——正常访问
挂载硬件设备:mount
指定文件系统类型:mount -t
挂载所有在/etc/fstab中定义的文件系统:mount -a
卸载文件系统:umount
查看文件系统静态信息文件: more /etc/fstab
在这里插入图片描述
(说明:设备文件:一边为设备路径+设备名称,也可以是唯一的识别码UUID
挂载目录:指定到挂载到的目录,只能挂载到存在的目录,所以需在挂载前创建好
格式类型:指定文件系统的格式,如:Ext3、Ext4、xfs等
权限选项:默认为defaults,权限为: rw,s uid, dev, exec, auto, nouser, async
是否备份:若为1则开机后使用dump进行磁盘备份,若为0不备份
是否自检:若为1则开机后自动进行磁盘自检,为0不自检)
auto - 在启动时或键入了
mount -a 命令时自动挂载。
(权限选项扩展:
noauto- 只在你的命令下被挂载。
exec- 允许执行此分区的二进制文件。
noexec - 不允许执行此文件系统上的二进制文件。
ro - 以只读模式挂载文件系统。
rw - 以读写模式挂载文件系统。
user - 允许任意用户挂载此文件系统,若无显示定义,隐含启用 noexec, nosuid, nodev 参数。
users - 允许所有 users 组中的用户挂载文件系统.
nouser - 只能被 root 挂载。
owner - 允许设备所有者挂载.
sync - I/O 同步进行。
async - I/O 异步进行。
dev - 解析文件系统上的块特殊设备。
nodev - 不解析文件系统上的块特殊设备。
suid - 允许 suid 操作和设定 sgid 位。这一参数通常用于一些特殊任务,使一般用户运行程序时临时提升权限。
nosuid - 禁止 suid 操作和设定 sgid 位。
noatime - 不更新文件系统上 inode 访问记录,可以提升性能(参见 atime 参数)。
nodiratime - 不更新文件系统上的目录 inode 访问记录,可以提升性能(参见 atime 参数)。
relatime - 实时更新 inode access 记录。只有在记录中的访问时间早于当前访问才会被更新。(与 noatime 相似,但不会打断如 mutt 或其它程序探测文件在上次访问后是否被修改的进程。),可以提升性能(参见 atime 参数)。
flush - vfat 的选项, 更频繁的刷新数据, 复制对话框或进度条在全部数据都写入后才消失。
defaults - 使用文件系统的默认挂载参数。)

检测内存使用情况:free 人性化输出:free -h
在这里插入图片描述

检测磁盘目录使用情况:du 人性化输出:du -sh
在这里插入图片描述

检测空间大小:df 常用参数:-Th
在这里插入图片描述

显示挂载目录及UUID信息:blkid
在这里插入图片描述

显示系统下所有磁盘与分区信息:lsblk
在这里插入图片描述

磁盘分区工具:fdisk 格式化工具:mkfs
以xfs文件系统格式化: mkfs.xfs
以ext4文件系统格式化: mksf.ext4
处理修复xfs文件系统: xfs_repair
处理修复ext文件系统: fscl_ext4
创建swap分区: mkswap

独立冗余磁盘阵列:raid
硬件设备需要进行持续、频繁、大量的IO操作,相较于其他设备,其损坏几率也大幅增加,导致重要数据丢失的几率也随之增加。RAID技术通过把多个硬盘设备组合成一个容量更大、安全性更好的磁盘阵列,并把数据切割成多个区段后分别存放在各个不同的物理硬盘设备上,然后利用读写技术来提升磁盘阵列整体的性能,同时把多个重要数据的副本同步到不同的物理硬盘设备上,从而起到非常好的数据冗余备份效果

硬RAID:性能较高。采用CPI Express(一种总线接口)卡物理地提供有专用的RAID控制器。不会使用主机资源。有NVRAM(断电不丢失的内存)用于缓存的读取和写入。缓存用于raid重建时,即使出现电源故障,它会使用后备的电池电源保持缓存。
软raid:性能较低,使用主机资源。需要加载raid软件从软件raid卷中读取数据。在加载raid软件前,操作系统需要引导起来才能加载raid软件。在软件raid中无需物理硬件。投资较小。(零成本)

raid0:stripe,不含校验与冗余的条带存储,无备份。多块磁盘组合成为raid0后,每块磁盘都会被分割成小区快(chunk),而数据会被分割成块的大小,然后依序交错的存放到不同的磁盘中。(作用:读写性能有提升,冗余能力无,空间利用率100%,至少需要两块磁盘)
raid1:mirror,不含校验的镜像存储,完整备份,多块磁盘组合为raid1之后,数据将被同时复制到每块磁盘。(作用:读性能有提示,写性能下降,冗余能力有,空间利用率50%,至少需要两块磁盘)
raid5:数据块级别的分布式校验条带存储,性能与数据的备份的均衡考虑。多块磁盘组合成raid5后,数据将以块为单位同步式分别存储在不同硬盘上,在数据写入过程,在每块磁盘中加入一个同位检验数据(parity),这个是数据会记录其他磁盘的备份数据,用于有磁盘损坏时的救援,不过默认只支持一块磁盘的损毁情况。(作用:读写性能有提升,冗余能力有,空间利用率(n-1)/n,至少需要三块磁盘)
raid01:条带+镜像存储:disk0与disk1组成第一组raid0,disk2与disk3组成第二组raid0,之后再将两组整合为一组raid1(读写性能有提示,冗余能力有,空间利用率50%,至少需要4块盘)
raid10:镜像+条带存储,disk0与disk1组成第一组raid1,disk2与disk3组成第二组raid1,然后再将两组整合成一组raid0

管理Linux系统中的软件raid硬盘阵列:
检测设备名称:-a 指定设备数量:-n
指定raid级别:-l
创建:-C
显示过程: -v 模拟设备损坏:-f
移除设备: -r 查看摘要信息:-Q
查看详细信息:- D 停止raid磁盘阵列:-S

逻辑卷管理:LV
逻辑卷管理通过将地产物理硬盘抽象封装起来,以逻辑卷的形式表现给上层系统,逻辑卷的大小可以动态调整,并且不会丢失现有数据。新加入的硬盘不会改变现有上层的逻辑卷。
物理卷(PV)- 逻辑卷管理中处于最底层,可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备。
卷组(VG):建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可以动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。
逻辑卷(LV)- 建立在卷组之上,卷组中未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。
基本单元(PE)- 每一个物理卷被划分为称为PE的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小可以配置,默认为4MB
物理卷管理:
扫描:pvsan 建立:pvcreate
显示:pvdisplay
删除:pvremove
卷组管理:
扫描:vgscan
建立:vgcreate
显示:vgdisplay
删除:vgremove
扩展:vgextenf
缩小:vgreduce
逻辑卷管理
扫描:lvscan 建立:lvcreate
显示:lvdisplay
删除:lvermove
扩展:lvextend
缩小:lvreduce

Linux程序包管理:
软件包管理器:rpm
查询软件包是否安装:rpm -q 列出所有已安装的软件包:rpm -qa
显示拥有该文件的软件包:rpm -qf 显示一般信息:rpm -qi
列出软件包中所有文件的名称:rpm -ql
安装软件包,以进度条显示:rpm -ivh
卸载软件包:rpm -e 忽略依赖关系的卸载:rpm -e -nodeps

软件仓库:yum(用来解决软件包相关依赖性)
列出所有仓库:yum repolist all
列出仓库中所有软件包:yum list all
查看软件包信息:yum info 软件包名称
安装软件包:yum install 软件包名称
升级软件包:yum update 软件包名称
删除软件包:yum remove 软件包名称
清除所有仓库缓存:yum clean all
检查可更新的软件包:yum check-update
查看系统中已经安装的软件包组:yum grouplist 软件包组
安装指定的软件包组:yum groupinstall 软件包组
删除指定的软件包组:yum groupremove 软件包组
查询指定的软件包组的信息:yum groupinfo 软件包组
查询命令或软件包组由谁提供:yum whatprovides 软件包名称

Bash条件测试:(格式)
If-then:
If []
Then
Fi (以fi结束)
如果if语句行的命令的退出状态值为0,所有的命令都会被执行
如果if语句行的命令的退出状态不为0,所有的命令都会被跳过

If-then-eles:
If [
]
Then

else
fi

if-then-elif-then:

if [
]
then

elif

then

elif

then

else

fi

字符串常用参数及描述:

Str 1= str 2 检查str1是否和str2相同

Str 1 !=str 2 检查str1是否和str2 不同
(字符串的相等性比较会将所有的标点和大小写情况都考虑在内)
Str1 < str2 检查str1是否比str2小
Str1 > str2 检查str1是否比str2 大(字符串大小比较,比较长度)
-n str1 检查str1的长度是否非0
-z str1检查str1的长度是否为0
如果使用“<” “>”需要转义

测试linux文件系统上文件和目录的状态
检查file是否存在并是一个目录:-d
检查file是否存在:-e
检查file是否存在并是一个文件:-f
检查file是否存在并非空:-s
检查file是否存在并可读:-r
检查file是否存在并可写:-w
检查flie是否存在并可执行:-x
检查file是否存在并属当前用户所有:-o
检查file是否存在并且默认组与当前用户相同:-G
检查file1是否比file2新:file1 -nt file2
检查file1是否比file2旧:file1 -ot flie2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值