首页 >> 技术文章 >> 详细内容
Linux Centos中解决硬盘空间不足问题
运行中的Centos服务器,发现mysql服务运行不了了,重启也解决不了问题,后来通过df -h发现硬盘空间不足,mysql日志文件过大,发现问题了,解决问题就很容易了。
解决方法有两个:
1,找出过大的文件删除
首先通过 df -k 命令发现0号物理卷组(本系统只有一个物理卷组)中的Use%达到了100%,它的挂载点是根目录。那么我们就要去看根目录下的空间分配情况,已了解是哪个文件把空间占用了,然后删除就OK了;
2,增加硬盘扩大容量
挂载硬盘分为手动挂载和自动挂载
建立文件系统一般是在系统安装的时候就会建立,但是在我们实际应用中,往往会对现有的文件系统的分区进行调整或建立新的分区。比如说扩充文件系统的存储容量(即添加一块硬盘)。linux分区不同于windows,linux下硬盘设备名为(IDE硬盘为hdx(x为从a—d)因为IDE硬盘最多四个,SCSI、SATA、USB硬盘为sdx(x为a—z)),硬盘主分区最多为4个 ,所以主分区从sdb1开始到sdb4,逻辑分区从sdb5开始,(逻辑分区永远从sdb5开始…)设备名可以使用fdisk –l查看
[root@CentOS-Test /]# fdisk –l  //查看硬盘分区信息
Disk /dev/sda: 21.5 GB, 21474836480 bytes  //第一块硬盘(sda)大小
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00036e82
//第一块硬盘分成三个区 sda1 sda2  sda3
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        1275    10240000   83  Linux
/dev/sda2           1275        1406     1048576   82  Linux swap / Solaris
/dev/sda3           1406        1431      204800   83  Linux
 
Disk /dev/sdb: 21.5 GB, 21474836480 bytes //第二块硬盘(sdb)大小
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x98fefa90
//第二块硬盘未分区
   Device Boot      Start         End      Blocks   Id  System
l  在硬盘中建立分区
文件系统都是建立在硬盘分区中的,所以我们先要对硬盘进行分区,进行分区前要先确定分区的类型(即文件系统类型)、分区的大小。分区类型一旦确定将不能改变。我们先将第二块硬盘分成2个区,大小都为10G,文件系统类型为ext4.分区的命令在linux里面是fdisk 设备名
先使用fdisk  查看硬盘信息,即硬盘的设备名称,然后使用fdisk 设备名称 进入分区交互状态
这里是使用fdisk /dev/sdb  对应sdb这块硬盘进行分区,然后进入分区交互对话状态,键入m命令可以查看此交换状态的命令帮助,其中n:创建分区  d:删除分区  p:打印分区信息  w:保存
 
[root@CentOS-Test /]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').
Command (m for help): m
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition  //删除一个分区
   l   list known partition types
   m   print this menu  //打印命令的帮助
   n   add a new partition  //增加一个分区
   o   create a new empty DOS partition table
   p   print the partition table  //打印分区信息
   q   quit without saving changes  //退出交互状态
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit  //将所有的操作写入磁盘即保存
   x   extra functionality (experts only)
Command (m for help):
 
[root@CentOS-Test /]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').
Command (m for help): n  //创建一个分区
Command action
   e   extended  //扩展分区
   p   primary partition (1-4) //主分区
p //输入的p键,即创建一个主分区
Partition number (1-4): 1  //分区的id号,此为第一个分区
First cylinder (1-2610, default 1): //分区的起始柱面大小,默认直接回车就行
Using default value 1 //默认卷标
//第一分区的终止柱面,格式输入为:+sizeMB
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610):+1024MB
Command (m for help): n  //创建一个分区
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (126-2610, default 126):
Using default value 126
Last cylinder, +cylinders or +size{K,M,G} (126-2610, default 2610): 1024MB
Command (m for help): p   //打印分区信息
 
Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x98fefa90
//分区信息列表
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         125     1004031   83  Linux  //第一分区
/dev/sdb2             126        1024     7221217+  83  Linux //第二分区
Command (m for help): w //执行保存操作
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
 
l  在分区上建立文件系统(格式化)
[root@CentOS-Test /]# mkfs.ext4 /dev/sdb1
l  把分区挂载到系统中
手动挂载:此种方式挂载在系统重启后不会自动挂载
[root@CentOS-Test /]# mount /dev/sdb1 /bak
[root@CentOS-Test /]#mount all stuff from /etc/fstab  //挂载所有的设备从fstab文件中
自动挂载:将挂载信息写入/etc/fstab文件中
加入如下信息:
/dev/sdb1       /web    ext4    defaults         0 2
/dev/sdb2       /bak    ext4    defaults         0 2
这样重启后就会自动挂载
修改完/etc/fstab时,应该用 mount -a将所以设备挂载进行测试 ,这时mount读取/etc/fstab中内容进行挂载,如果/etc/fstab的条目无错误,则mount -a后无显示,表示挂载成功;如有错误,则根据提示排查。
卸载:[root@CentOS-Test /]# umount /dev/sdb1
3、/etc/fstab文件说明
[root@bys ~]# more /etc/fstab
dev/hdb3               /mnt/diskone            ext3    defaults        1  2
第一列:设备名或者设备卷标名
指定你要挂载的文件系统的设备名称或块信息,也可以是远程的文件系统。
//把IP为192.168.1.56的远程主机上的/home/nfs/目录挂载到本机的/mnt/nfs /目录之下。
mount 192.168.1.56:/home/nfs /mnt/nfs/ -o nolock
如果要把它写进/etc/fstab文件中,file system这部分应填写为:/192.168.1.56:/home/nfs/。
如果想把本机上的某个设备(device)挂载上来,写法如:/dev /sda1、/dev/hda2或/dev/cdrom
第二列:设备挂载目录(例如上面的“/”或者“/mnt/D/”)
挂载点,也就是自己找一个或创建一个dir(目录),然后把文件系统<fie sysytem>挂到这个目录上,然后就可以从这个目录中访问要挂载文件系统。对于swap分区,这个域应该填写:none,表示没有挂载点。
第三列:设备文件系统   (例如上面的“ext3”或者“vfat”)
第四列:挂载参数   (看帮助man mount)
第五列:指明是否要备份。(0为不备份,1为要备份,一般根分区要备份)
第六列:指明自检顺序。(0为不自检,1或者2为要自检,如果是根分区要设为1,其他分区只能是2)
3、  对于/etc/fstab文件操作有误造成系统不能启动的解决方法
装入安装盘,选择 linux rescue模式,这时分区都挂到 /mnt/sysimage 下
根据系统提示   chroot  /mnt/sysimage获取读写权限,然后就可以修改 fstab文件了。修改完后重启正常
4、  常用到的文件系统命令
1、  fdisk –l 查看磁盘信息
2、  df –h 查看分区挂载信息及使用情况
[root@CentOS-Test ~]# df -h
文件系统              容量  已用  可用 已用%% 挂载点
/dev/sda1             9.7G  3.2G  6.0G  35% /
tmpfs                 504M  260K  504M   1% /dev/shm
/dev/sda3             194M   60M  124M  33% /data
/dev/sr1              2.2G  2.2G     0 100% /media/RHEL_4-U7 i386 Disc 1
/dev/sdb1             966M   18M  899M   2% /web
/dev/sdb2             6.8G  144M  6.3G   3% /bak
备注:- device name,设备名,例如/dev/sda1。
- mount point,挂载点,是一个系统上存在的文件夹。
- fs-type,要挂载设备的类型,例如ext4。用man fstab可以查到支持的类型。
- options,挂载时采用的参数,一般是defaults。
- dump-freq和pass-num,一般都设置为0,启动时不检查要挂载的设备。
下面有个例子,分别挂载/dev/sdb1到/var/ftp,和/home/.isos到/var/ftp/pub/软件/isos。

南京服务器托管 | 南京服务器租用 | 南京主机托管 | 南京主机租用 | 南京华昊数据 | www.467.cn |
TEL:400-025-9-467  025-58633651 QQ:23190019
发布者:admin 发布时间:2016/8/24 阅读:3355

Baidu
Copyright © 2002-2021 467.Cn All rights reserved    南京华昊网络技术有限公司    版权所有
备案序号:苏ICP备13052121号    ISP经营许可证:苏B2-20080166    ICP/SP经营许可证:苏B2-20130350      苏公网安备 32011102010099号
地址:南京市江北新区大桥北路77号电信大楼5楼    电话:025-58633651(8线)  13913852884  传真:025-58497310    E-mail:467cn@163.com    邮编:210032
网址:Www.467.Cn    QQ在线支持:点击这里给我发消息 点击这里给我发消息