swap分区:又叫交换分区,是当系统物理内存不够用的时候,计算机会将一部分内存里的数据先放置单swap分区中保存,等物理内存有了空间之后再将swap分区内的数据写入到内存之中,所以swap分区的大小一般为物理内存的1.5—2倍之间,如果实际应用中需要为swap分区扩容,我们有两种方法

一、文件的方式,dd出一个文件,然后添加入swap分区,
二、使用分区的方式
这两种方法都能将swap扩大,但是推荐是用分区的方法做,文件写入swap的时候分区会比文件快,所以最好还是使用分区的方式。
首先我们先使用文件的方式去增加swap,假设增大500M
先使用free命令查看当前的swap分区大小
第一步:使用dd命令创建500M的文件
dd if=/dev/zero of=/tmp/swap.file bs=100M count=5
解释下这个命令,if=/dev/zero if的意思是i代表input 就是输入的意思f=file代表文件 if=/dev/zero 说明使用/dev/zero 这个文件作为输入,of代表output file 就是输出文件,就是我们生成的那个文件的文件名,我们这里名字叫做swap.file, bs代表块大小,count代表使用几个块,bs乘以count大小为该文件的总大小,/dev/zero这个文件很特别,这个文件连全都是0,我们一般使用dd命令去建立新的文件的时候都是用这种方式
第二步:将该文件改为swap格式的文件,使系统可以使用该文件作为swap分区
mkswap /tmp/swap.file
第三步:将创建好的swap文件添入swap分区中
swapon /tmp/swap.file
第四步:设置开机自动挂载(使用/etc/fstab文件)
vim /etc/fstab中最后一行添加
/tmp/swap.file swap swap defaults 0 0
测试:1、测试swap有没有增大,使用free命令查看
2、测试开始启动是否可用
①swapoff /tmp/swap.file
②mount -a 如果没有报错再次使用free命令查看如果swap增大说明/etc/fstab文件没有写错
二、使用分区的方式增大swap
首先要是用fdisk命令去分区,分区的时候要注意,如果你是新手,还不了解每个分区的作用,不要乱删分区,如果一不小心删错了分区,那系统就挂了。分区的时候还要注意一点,每个硬盘最多可以分4个区,但是为什么有的硬盘还是分了比4个区更多的分区呢? 那就是拓展分区的原因,分区分为主分区和拓展分区,在拓展分区上可以建立逻辑分区,拓展分区不能被使用,也不能被格式化,只能使用拓展分区之上的逻辑分区,拓展分区最多只有一个,是操作系统的限制
一、使用fdisk命令分区。
使用fdisk -l 查看当前分区的名字。
# fdisk -l
Disk /dev/sda: 85.8 GB, 85899345920 bytes
255 heads, 63 sectors/track, 10443 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2624 20972857+ 83 Linux
/dev/sda3 2625 2885 2096482+ 82 Linux swap / Solaris
/dev/sda4 2886 10443 60709635 5 Extended
/dev/sda5 2886 3008 987966 83 Linux
我这里的设备号是/dev/sda
下面增加一个逻辑分区
#fdisk /dev/sda
The number of cylinders for this disk is set to 10443.
/………………./省略
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): n //n是添加一个新分区的意思,想了解别的命令就输入m
First cylinder (3009-10443, default 3009): //这里直接摁回车,第一柱面默认就可以
Using default value 3009 //这里说使用默认柱面3009
Last cylinder or +size or +sizeM or +sizeK (3009-10443, default 10443): +500M <–这里写入要添加的分区的大小
Command (m for help): t // t 指定分区类型
Partition number (1-6): 6 //第6个分区
Hex code (type L to list codes):82 //82代表的是swap如果忘记哪个代表swap 使用L查看
Command (m for help): w //w 保存退出
# partprobe /dev/sda //通知内核分区发生改变
我这里添加的分区是/dev/sda6
# mkswap /dev/sda6 //同上
#swapon /dev/sda6
最后使用free查看swap是否增加
编辑/etc/fstab文件时新添加的swap可以开机自动挂载
/dev/sda6 swap swap defaults 0 0

测试方法同上

lvm的拉伸和缩小

逻辑卷可以实现动态在线拉伸,扩展一个逻辑卷的空间不需要卸载文件系统,拉伸一个逻辑卷的步骤如下:

  1. 保证卷组中有足够空闲空间:vgdisplay
  2. 扩充指定逻辑卷空间:lvextend -L +10G /dev/linuxcast-vg/mylv
  3. 更新文件系统:resize2fs /dev/linuxcast-vg/mylv
  4. 查看更新后的文件系统:df -h

拉伸一个卷组:

  1. 将要添加到卷组中的磁盘格式化为物理卷:pvcreate /dev/sdc
  2. 将磁盘添加到指定卷组中:vgextend linuxcast-vg /dev/sdc
  3. 查看扩充后大小:vgdisplay

逻辑卷可以动态缩小,但是缩小操作必须使逻辑卷离线,也就是卸载,缩小一个逻辑卷步骤如下:

  1. 卸载该逻辑卷:umount /dev/lnuxcast-lv/mylv
  2. 缩小文件系统:resize2fs /dev/linuxcast-lv/mylv 10G
  3. 缩小逻辑卷大小:lvreduce -L -5G /dev/linuxcast-lv/mylv
  4. 查看缩小后大小:lvdisplay
  5. 挂载使用:mount /dev/linuxcast-lv/mylv /mnt

缩小一个卷组:

  1. 将一个磁盘移出一个卷组:vgreduce linuxcast-lv /dev/sdc
  2. 查看缩小后卷组大小:vgdisplay

17050356_13612764821Ogq.jpg

17050356_1361278255R3bO.jpg

 

改变目录底层的属性方法chattr和lsattr

chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,如果Linux内核版本低于2.2,那么许多 功能不能实现。同样-D检查压缩文件中的错误的功能,需...

阅读全文

sendmail简单配置与使用

linux邮件服务器现在主流是postfix,配置也比较简单,跟ftp配置一样,这里主要记录下sendmail的简单配置.  1.安装相关的包: yum -y install sendmail sendmai...

阅读全文

域名无法解析简单的排查方法

当域名出现无法解析的情况,可以使用下面的方法进行排查: 首先安装域名排查工具 [root@localhost ~]# yum install -y jwhois 运行如下命令:查看Domain Stat...

阅读全文