zoukankan      html  css  js  c++  java
  • Linux学习-内存与磁盘管理

    内存与磁盘管理

    • 内存和磁盘使用率查看
      常用命令

      • free 显示内存总的大小,-m以多少m显示,-g以多少g显示。主要查看used使用了多少,available还有多少可用。若开始往swap中写入内存,则说明内存真的不足了,需要扩大。
      • top 查看进程的消息,以及内存的状态和实时变化

      查看命令

      • fdisk 即可以查看磁盘,又能对磁盘分区
        • fdisk -l 查看磁盘具体信息
        • ls -l /dev/sd* 查看具体的磁盘,磁盘是块设备,最好谨慎操作。Liunx 划分大小是以扇区进行区分
        • parted -l 查看磁盘具体信息
      • df
        • df -h 查看具体的分区和挂载的目录,使用场景,查看磁盘是否满了
      • du
        • du /etc/passwd 查看某个文件真实的大小
      • du 与 ls 的区别,du 读取的是文件真实占用的大小,ls 读取的整体文件所占用的大小,该文件可能包含一些空洞存储来用于其它用途
    • ext4文件系统
      (其他常见的文件系统还有:xfs,NTFS(移动硬盘的文件格式,需安装额外软件)

      • ext4文件系统基本结构
        • 超级块 记录整个系统/分区包含了多少个文件,所有文件的总数。这些都是超级块事先统计好的
        • 超级块副本 多份,超级块的备份
        • i 节点(node) 记录每一个文件的名称、大小、编号、权限,文件名没有记录在i节点,记录在自己文件的父目录的i节点里面
        • 数据块(datablock) 记录数据,默认大小是4k,以链接式方式记录。i节点中能够以一个数据块存储,就在i节点后挂载一个数据块,不够的话就第二、三块...ls 其实是查看i节点的大小,du是查看具体数据块的大小。
      • 相关常用命令
        • touch afile 创建文件
        • ls -li afile 查看文件的大小、权限、属主/组及编号
        • 使用mv改名或移动文件的原理:在本地目录对文件进行改名,与i节点和数据块没有什么影响,只是改了目录里面去记录i节点和文件名的对应关系,所以速度很快;若是跨分区进行移动和改名,则i节点和数据块都会改动,会占用跟多时间;在本地分区中进行操作,因为i节点和数据块是由整个文件系统去管理的,所以在当前文件系统里面做移动,速度也很快,只是改了指定目录文件名称的链接。
        • vim 编辑文件时,会对文件的i节点和数据块进行修改,而echo > 追加输入,只是对数据块进行修改。
        • rm 让文件名和i节点的链接断开,释放数据块
        • ln 让更多的文件名指向i节点,但不能夸分区使用,但可以使用软链接方式。ln也叫符号链接。
          • ln -s afile aafile afile与aafile的i节点不同。符号链接可以进行夸分区操作
        • facl 文件访问控制列表
          • getfacl afile 查看文件的所属的用户/组的权限
          • setfacl -m(赋予权限)/-x(回收权限) u(用户)/g(组):user1(用户名):r(要赋予的权限) afile
    • 磁盘配额的使用

      • xfs 文件系统的用户磁盘配额 quota,限制的是用户创建文件的个数
      • fdisk /dev/sdb 对某个硬盘进行分区
      • mkfs.xfs /dev/sdb1 对分区进行格式化,若分区中以前存在文件,则使用-f操作强制进行覆盖 mkfs.xfs -f /dev/sdb1
      • mkdir -p /mnt/disk1 创建挂载的目录,-p 目录不存在则创建,存在则不操作
      • mount -o uquota,gquota /dev/sdb1 /mnt/disk1 -o 使用默认配置,uquota,gquota 支持用户和组磁盘配额
      • chmod 1777 /mnt/disk1 赋予权限,1777 只有创建者才有权限操作该文件
      • xfs_quota -x -c 'report -ugibh' /mnt/disk1 -x -c 使用不交互模式,'report -ugibh'要执行的命令,查看报告,u用户g组i节点b块h人性化的方式
      • xfs_quota -x -c 'limit -u isoft=5 ihard=10 user1' /mnt/disk1 对用户进行磁盘配额限制,limit 命令进行限制,isoft 软限制,达到相应的值后允许超出一部分进行使用,ihard硬限制,达到相应的值后就无法再增加了,user1 对user1用户进行限制
    • 磁盘的分区与挂载
      常用命令

      • fdisk
        • fdisk -l 查看分区情况
        • fdisk /dev/sdc 创建分区,分区前确保硬盘没有数据,会进行格式化
        • 常用命令:m 帮助,p 打印分区,d 删除分区,n 添加新分区,w 保存分区并退出,q 不保存退出
      • mkfs
        • mkfs.ext4 /dev/sdc1 映射成盘符,格式化成ext4文件系统
        • mkdir /mnt/sdc1 创建一个目录,挂载新的分区
        • mount /dev/sdc1 /mnt/sdc1 进行挂载,mount命令会自动检查系统,此命令只是临时进行挂载,若要参数进行固化,修改/etc/fstab
      • parted 分区若大于2t时使用parted进行分区,通过help获取帮助
      • mount

      常见配置文件

      • /etc/fstab
        • vim /etc/fstab 在末尾增加 /dev/sdc1 /mnt/sdc1 ext4 defaults 0 0 保存后退出,下次开机时就会自动挂载
    • 交换分区(虚拟内存)查看与创建

      • free -m 查看内存与交换分区使用情况
      • swapon -s 查看当前交换分区的详细信息
    • 扩充分区的两种方法:

      • 增加交换分区的大小

        • mkswap前需要有一个空的硬盘,对其进行分区,才能给swap扩充分区
        • mkswap /dev/sdd1 对分区进行格式化,设置了一个mkswap标记
        • swapon /dev/sdd1 打开分区
        • swapoff /dev/sdd1 还原分区,扩充的部分都还原回去
      • 使用文件制作交换分区

        • dd if=/dev/zero bs=4M count=1024 of=/swapfile
        • chmod 600 /swapfile 改变文件的权限
        • swapon /swapfile
      • 要想使swap的分区永久生效,要在 /etc/fstab 中添加设置

        • vim /etc/fstab
        • 在/etc/fstab 最后一行添加 /swapfile swap swap defaults 0 0 挂载到虚拟的目录swap
    • 软件 RAID 的使用,RAID 磁盘阵列,可以把多个磁盘组合起来使用

    • RAID 常见级别及含义

      • RAID 0 striping 条带方式,提高单盘吞吐率;把文件拆成两份,放到两个不同磁盘
      • RAID 1 mirroing 镜像方式,提高可靠性;写入文件时,系统会在另外一个磁盘进行备份
      • RAID 5 有奇偶校验;至少要有三块磁盘,前两个写入数据,第三个写前两个磁盘的奇偶校验,当前面其中一个磁盘损坏,利用第三个磁盘的奇偶校验恢复数据。
      • RAID 10 是RAID 1 与 0 的结合
    • 软件RADI的使用

      • mdadm -C /dev/md0 -a yes -l1 -n2 /dev/sdb1 /dev/sdc1
        C创建磁盘阵列,-l1表示级别,-n2表示有几块磁盘是活动的
      • mdadm -D /dev/md0 查看信息
      • echo DEVICE /dev/sd[b, c]1 >> /etc/mdadm.conf 下次开机时,RADI才会被加载
      • mdadm -Evs >> /etc/mdadm.conf 追加RADI的属性,下次开机时才会生效
      • mkfs.xfs /dev/md0 对RADI 进行格式化
      • mdadm --stop /dev/md0 停止RADI,停止还不够,需要对组合的磁盘进行“破坏”
      • dd if=/dev/zero of=/dev/sdb1 bs=1M count1 有几个磁盘就执行几次这样的操作,把磁盘名称换掉即可
    • 逻辑卷管理
      逻辑卷和文件系统的关系
      名词解释:

      • LVM(Logical Volume Manager),逻辑盘卷管理,是 Linux 下对磁盘分区进行管理的一种机制。LVM 是建立在磁盘分区和文件系统之间的一个逻辑层,系统管理员可以利用 LVM 在不重新对磁盘分区的情况下动态的调整分区的大小。
      • 物理存储介质(The physical media)
        指系统的存储设备:硬盘,如:/dev/sda、/dev/sdb 等等,是存储系统最低层的存储单元。
      • 物理卷(PV physical volume)
        物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。
      • 卷组(VG Volume Group)
        LVM 卷组类似于非 LVM 系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成。
      • 逻辑卷(LV logical volume)
        LVM的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷之上可以建立文件系统(比如/home或者/usr等)。
      • PE(physical extent)
        每一个物理卷被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。
      • LE(logical extent)
        逻辑卷也被划分为被称为LE(Logical Extents) 的可被寻址的基本单位。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。

      为Linux创建逻辑卷

      • fdisk -l 或者 fdisk -l /dev/sd?? 添加硬盘(进行分区)和查看硬盘信息
      • pvcreate /dev/sbd1 /dev/sdc1 /dev/sdd1 组成物理卷
      • pvs 查看物理卷信息
      • vgcreate vg1 /dev/sdb1 /dev/sdc1 创建卷组
      • vgs 查看卷组信息
      • lvcreate -L 100 -n lv1 vg1 -L 指定大小,-n 逻辑卷名称,vg1从哪个卷组创建
      • lvs 查看逻辑卷信息
      • mkdir /mnt/test
      • mkfs.xfs /dev/vg1/lv1 将逻辑卷格式化,xfs文件类型
      • mount | grep root 查看根目录挂载到哪个lv下面

      动态扩容逻辑卷

      • vgs 和 lvs 先查看卷组和逻辑卷的信息
      • vgextend centos /dev/sdd1 给卷组扩充
      • lvextend -L +10G /dev/centos/root 给逻辑卷扩充
      • xfs_growfs /dev/centos/root 告诉文件系统,下面的逻辑卷扩大了,你也要更新了
      • df -h
    • 系统综合状态查看

      • 使用sar命令查看系统综合状态
        • sar -u 1 10 -u查看cup状态,每隔1秒进行查看,查10次
        • sar -r 1 20 -r查看内存
        • sar -b 1 10 -b查看IO
        • sar -d 1 10 -d查看每块磁盘的读写
        • sar -q 2 10 查看进程的使用
      • 使用第三方命令查看网络流量
        • yun install epel-release
        • yun install iftop
        • iftop -p 查看网络状态,默认监听eth0,查看网络流量,哪个端口占用最多
  • 相关阅读:
    css3圆形修边按钮
    TinyCC的Java绑定版本 TCC4Java
    简单实用蓝色jQuery日期选择插件
    QE不是变形金刚
    javascript 进度条的几种方法
    使用Java进行 a + b = c 计算
    Javascript jquery css 写的简单进度条控件
    Drupal SellingSpace模板
    恢复Windows 10自带的微软正黑字体
    提取配置文件中无注释的内容方法--findstr
  • 原文地址:https://www.cnblogs.com/chenri/p/12590419.html
Copyright © 2011-2022 走看看