22、磁盘管理2

22.磁盘管理2

1.磁盘大于2t分区

  • 磁盘小于2t使用fdisk分区MBR格式
  • 磁盘大于2t使用parted分区GPT格式 ​ GPT格式支持128个主分区 ​ parted命令分区默认自动保存不需要w
1.插入硬盘 或虚拟机设置里增加硬盘    ##  parted  -l  检查硬盘和分区情况  

2.磁盘分区    ##  使用 parted /dev/sdb  命令给sdb第二块磁盘分区

3.格式化分区  ##   使用  mkfs.xfs  /dev/sdb1  给第二块硬盘的第一个分区格式化

4.挂载硬盘    ##  使用 mount /dev/sdb1  /date  挂载到/date
             ##   umount 为卸载硬盘,类似拔出硬盘

5.查看测试    ## df -h 查看挂载情况,在挂载点新建文件

6.写入开机自动挂载:  
                配置文件/etc/fstab 配置开机自启
                /dev/sdb1      /data      xfs      defaults       0      0
                --------
                /dev/sdb1:第一列:设备的名称或者UUID
                /data: 第二列:挂载点
                xfs:  第三列:文件系统类型
                defaults  第四列: 挂载的参数
                0  第五列:是否备份 
                0  第六列: 是否自检

partprobe:通知系统磁盘的分区信息变化 更新内核的硬盘分区表信息 

-------------------------------------------------
若何丝滑的给大于2t的硬盘分区 说明扩展:
        2.磁盘分区    ##  使用 parted /dev/sdb  命令给sdb第二块磁盘分区

大于2t的磁盘分区 使用parted
[root@haoshuaicong ~]# parted /dev/sdb
  help [COMMAND]                 # 打印菜单帮助
  mklabel,mktable LABEL-TYPE         # 创建分区表类型
  mkpart PART-TYPE [FS-TYPE] START END # 创建分区
  print [devices|free|list,all|NUMBER] # 查看分区表
  quit                                 # 退出
  rm NUMBER                               # 删除分区

(parted) mklabel gpt         # 将磁盘类型修改为gpt格式
(parted) print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

(parted) mkpart                 # 创建分区                                              
Partition name?  []? primary    # 分区的名称  自定义叫啥都行                         
File system type?  [ext2]? xfs                                            
Start? 0                                                                  
End? 500G                                                                 
Warning: The resulting partition is not properly aligned for best performance: 34s % 2048s != 0s
Ignore/Cancel? I  
Partition Table: gpt     
Disk Flags:  

Number  Start   End    Size   File system  Name     Flags
 1      17.4kB  500GB  500GB  xfs          primary

(parted) mkpart 
Partition name?  []? parimary                                             
File system type?  [ext2]? xfs      ##指定xfs文件类型                                      
Start? 500G                                                               
End? 1000G
(parted) print                                                            
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size   File system  Name      Flags
 1      17.4kB  500GB   500GB               primary
 2      500GB   1000GB  500GB  xfs          parimary

(parted) mkpart primary xfs 1000G  4000G        # 非交互式分区                             
(parted) print                                                            
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name      Flags
 1      17.4kB  500GB   500GB                primary
 2      500GB   1000GB  500GB   xfs          parimary
 3      1000GB  4000GB  3000GB  xfs          primary

(parted) quit  # 退出parted分区


## 企业中使用方法,一般不用分区,一个盘就是一个区
1.直接格式化

2.直接挂载

2.磁盘相关案例

企业案例1:java环境内存不够用,大量占用swap

swap磁盘分区: 大小是内存的1-1.5倍 如果内存大于8G,则最多swap给8G即可。
什么情况下使用swap: 
       测试服务器 
       内部服务器 
       自己用的虚拟机 
       流量波动的业务。
线上服务器,业务服务器禁止使用swap,增加内存的方式临时解决OOM内存不够溢出问题。

创建swap分区的方式:
        方法1: 安装操作系统的时候创建

        方法2: 安装完成操作系统以后如何增加swap容量
        # 测试服务器上测试软件内存不够用,也无法添加内存,为了正常让测试业务正常运行,临时创建swap分区。

1.生成一个1个G的设备文件,需要多大生成多大
        dd if=/dev/zero of=/opt/1G   bs=1M  count=1024

2.把文件格式化成swap类型
        mkswap   /opt/1g

3.挂载使用swap,直接增加到原有的空间上
        swapon  /opt/1g

4.查看swap
        df  -h 看总容量
        swap -s  看容量的组成

5.写入开机自动挂载/etc/fstab  注意:挂载点格式与普通分区挂载不同    格式为:
    /opt/1g    none    swp   defaults  0   0  

企业案例2.无法写入文件到磁盘

第一种情况:磁盘空间满了
第二种情况:磁盘inode号满了

1.磁盘空间满了解决办法
        find /   -type  f  -size +1G 
        ##找出大于1G的文件,然后看需要是否删除腾出磁盘空间
        注意::如果挂载点/date挂载前有100G的一个文件,挂载后该文件会被隐藏还会继续占用磁盘空间,umount卸载即可解除隐藏

2.inode号用完了解决办法:
        find  /  -type d -size +1M  
        ##找出目录大于1M的目录,因为目录的inode存放的是文件名等属性信息,然后看需要是否删除腾出inode

企业案例3.解决磁盘不够用的问题

  • 需求: 目前磁盘不够用
  • 业务会持续输出日志内容到 /var/log/nginx.log文件中
  • 日志的路径不能变,解决磁盘不够用的问题 ​
解决方案:
        1.增加大磁盘
        2.挂载到磁盘/nginx_log目录
        3.将大文件移动到/nginx_log目录下
        4.在原路径/var/log/下创建一个名字为nginx.log的软链接,链接到/nginx_log/nginx.log
        ln -s  /nginx_log/nginx.log   /var/log/nginx.log

企业案例4.删除文件

  • 注意::如果挂载点/date挂载前有100G的一个文件,挂载后该文件会被隐藏还会继续占用磁盘空间,umount卸载即可解除隐藏
  • 需求:磁盘上有个一39G的文件,删除后发现磁盘没有释放。
因为::文件如果被进程所占用,会出现删除文件磁盘没有释放的问题。


如何解决:
1.查看当前的文件被哪个进程所占用:
[root@haoshuaicong ~]# lsof |grep nginx.conf

2.杀死进程或者重启或者重新加载
kill -9  32355

3. /etc/重要系统配置文件

  • 以下文件都要会配置
文件路径文件说明
/etc/passwd存储用户账户信息,包括用户名、密码(加密)、用户ID、组ID等。
/etc/crontab用于配置cron守护进程的作业调度。
/etc/rc.local系统启动时执行的脚本,用于执行一些初始化操作。
/etc/fstab存储文件系统信息,用于系统启动时自动挂载。
/etc/hosts定义静态主机名到IP地址的映射,用于在没有DNS的情况下解析主机名。
/etc/hostname存储系统的主机名。
/etc/profile全局用户的shell配置文件,为所有用户设置环境变量和shell配置。
/etc/sysconfig/network-scripts/ifcfg-ens33特定网络接口的配置文件,如ens33。
/etc/os-release查看系统版本信息,例如CentOS系统中的/etc/redhat-release
/etc/sudoers定义哪些用户和组可以执行sudo命令以及可以执行哪些命令。
/etc/motd系统启动时显示的消息,通常包含系统信息和公告。
/etc/resolv.conf配置DNS解析器,指定DNS服务器地址。

4./var/和/proc/里的重点文件

  • /var/ 的
/var/
1./var/log/messages  # 系统日志
2./var/log/secure    # 系统登录和退出日志
nginx-->/var/log/nginx/
  • /proc/ 的
/proc/cpuinfo  # cpu信息    lscpu
/proc/meminfo  # 内存信息   free-h
/proc/loadavg  # 负载信息    w 和 uptime
/proce/mounts # 挂载信息     df -h

/proc/
1./proc/cpuinfo  # cpu信息 笔记
[root@haoshuaicong ~]$lscpu
Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   45 bits physical, 48 bits virtual
CPU(s):                          4            # cpu的核心数量
On-line CPU(s) list:             0-3
Thread(s) per core:              1
Core(s) per socket:              4
Socket(s):                       1            # CPU的个数

2./proc/meminfo  # 内存信息
[root@haoshuaicong ~]$free -h
              total        used        free      shared  buff/cache   available
Mem:          1.9Gi       187Mi       1.5Gi       8.0Mi       194Mi       1.6Gi
Swap:         2.0Gi          0B       2.0Gi

3./proc/loadavg  # 负载信息
[root@haoshuaicong ~]$w
 15:49:05 up 56 min,  1 user,  load average: 0.04, 0.01,  0.00
                                平均负载:       1分钟 5分钟  15分钟
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0     14:53    0.00s  1.15s  0.00s w
[root@haoshuaicong ~]$uptime
 15:49:07 up 56 min,  1 user,  load average: 0.04, 0.01, 0.00
负载高和核心数量相关: 核心是4则负载达到4说明非常繁忙

4./proce/mounts # 挂载信息
df -h
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇