磁盘管理(二)之swap、dd工具使用

磁盘管理(二)之swap、dd工具使用

 

一、挂载点和/etc/fstab

  1)配置文件/etc/fstab,当系统启动时,自动加载该文件,会把写在配置文件里面的所有挂载点全部自动挂载上去,只要按照格式写,就不会丢失。

  2)文件挂载配置文件,如下图:

   blob.png 

/etc/fstab每行定义一个要挂载的文件系统;

  要挂载的设备或伪文件系统(设备文件、LABEL(LABEL="")UUID(UUID="")、伪文件系统名称(proc, sysfs)

       挂载点

       文件系统类型(光盘:iso9660;文件挂文件的类型则为:none,选项为bind

       挂载选项 defaults——相当于rw, suid, dev, exec, auto, nouser, async

       转储频率(0:不做备份;1:每天转储;2:每隔一天转储)

       自检次序(0:不自检;1:首先自检;一般只有rootfs才用1

3 使用mount -a 命令生效挂载在/etc/fstab中的所有文件系统

4)使用文件来模拟分区,用来测试格式化等操作(当磁盘空间已经全部分完),则可以使用下面的命令来创建:

     #dd if=/dev/zero of=/testdir/partfile bs=1M count=500

 blob.png

如上图,同样可以使用格式化命令mkfs.ext4都可以对该文件进行格式化。

当格式化完成后,使用命令blkid查看时是没有改文件系统的,则需要使用mount命令来进行挂载,如下图:

blob.png

但在挂载的过程中会出现下图中错误,需要按照提示来添加相应的选项即可。

blob.png

挂载完成后,使用命令#mount,可以看到,这文件的挂载是映射到了/dev/loop上。通过这样设置,可以通过文件来做“移动硬盘”使用。

 blob.png

(注:在CentOS6上,loop设备默认是8个;在CentOS7上,loop则是随机生成,没有数量上的限制。如果是使用loop设备来挂载,则使用命令#losetup /dev/loop3 /testdir/partfilemount /dev/loop3 /mnt/partfile3

通过在/etc/fstab上设置,让系统开机自检挂载(永久生效自动挂载)

blob.png

二、swap交换分区:

1swap交换分区是系统RAM的补充。

(如下图,命令#free显示的以k为单位;#free -m是以M为单位显示;#free -g是以G为单位显示)

blob.png

2、如何知道系统中的swap是由谁提供的?

命令#cat /proc/swaps

blob.png

3、由于分区的局限性(已经分好分区的swap是无法扩展的),因此如何进行swap的增加,如下图:

blob.png

新分区做为swap,并修改分区编号保存后,如下图:

blob.png

4、格式化swap

mkswap -L swap_sba6 /dev/sda6

blob.png

blob.png

5、修改/etc/fstab

blob.png

6、激活所有的swap

#swapon –a

(注:可以使用命令#swapon -s 查看激活的swap

blob.png

7、设置swap的优先级:

pri的设置为032767

#vim /etc/fstab

defaults的默认设置优先级是负数,所以需要手动去设置swap的优先级,如下图:

blob.png

/etc/fstab设置完优先级后,要使用命令#swapoff /dev/sda6禁用;再用命令#swapon -a 激活

blob.png

8swap的优先级了解:

如果用户没有指定,那么核心会自动给swap指定一个优先级,这个优先级从-1开始,每加入一个新的没有用户指定优先级的swap,会给这个优先级减一。

先添加的swap的缺省优先级比较高,除非用户自己指定一个优先级,而用户指定的优先级(是正数)永远高于核心缺省指定的优先级(是负数)

优化性能:分布存放,高性能磁盘存放

9、使用文件来做swap

(当磁盘的分区把空间全部用完了,可以考虑使用文件来做swap分区)如下图:

blob.png

blob.png

blob.png

生效:#swapon -a

blob.png

10swap的删除:

首先要禁用:#swapoff /dev/sda6  #swapoff /testdir/swapfile

blob.png

然后到配置文件/etc/fstab上删除相应的添加记录,删除相应的分区和文件(rm -rf /testdir/swapfile)即可。

blob.png

三、移动介质挂载使用:(移动硬盘因为格式为ntfs使用不了)

#mount /dev/sd? /mnt/usb

拔除U盘前需要做的动作是命令#sync(最好执行三次,以免数据没有写入到U盘上)

#umount /mnt/usb 然后拔除U

四、光盘的使用

mount /dev/cdrom/mnt/

eject命令卸载或弹出光驱磁盘;eject -t 弹入光驱

创建ISO文件:

cp /dev/cdrom /root/centos7.iso

mkisofs -r -o /root/etc.iso  /etc (将目录打包成ISO,作为备份)

刻录光盘:wodim -v -eject centos.iso

五、常见工具:

  内存空间使用状态:free

  -m: MB为单位

  -g: GB为单位

 blob.png

 文件系统空间占用等信息的查看工具:df

 -H 1000为单位

 blob.png

 -T 文件系统类型

 blob.png

 -h: human-readable

 blob.png

 -iinode sinstead of blocks

 -P: Posix兼容的格式输出(较多用于设备名称过长、显示不整齐时)

 blob.png

 查看某目录总体空间占用状态:du

 -h: human-readable

 -s: summary

 blob.png

六、dd工具的使用:

   1dd命令:convert and copy a file

   2、用法:

ddif=/PATH/FROM/SRC of=/PATH/TO/DEST

bs=#block size, 复制单元大小

count=#:复制多少个bs

of=file写到所命名的文件而不是到标准输出

if=file从所命名文件读取而不是从标准输入

bs=size指定块大小(既是是ibs也是obs)

ibs=size一次读sizebyte

obs=size 一次写sizebyte

cbs=size 一次转化sizebyte

skip=blocks从开头忽略blocksibs大小的块

seek=blocks从开头忽略blocksobs大小的块

count=n只拷贝n个记录

cbs=size 一次转换多少byte

   3conv=conversion[,conversion…] 用指定的参数转换文件。

     转换参数:

     ascii 转换EBCDIC ASCII

     ebcdic 转换ASCII EBCDIC

     block 转换为长度为cbs 的记录,不足部分用空格填充。

     unblock 替代cbs长度的每一行尾的空格为新行

     lcase 把大写字符转换为小写字符

     ucase 把小写字符转换为大写字符

     nocreate不创建输出文件

     noerror 出错时不停止

     notrunc 不截短输出文件。

     sync 把每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐

   4、磁盘拷贝:ddif=/dev/sdaof=/dev/sdb

     备份MBRddif=/dev/sdaof=/tmp/mbr.bakbs=512 count=1

     破坏MBR中的bootloaderddif=/dev/zero of=/dev/sdabs=64 count=1 seek=446

   5、备份:

将本地的/dev/sdx整盘备份到/dev/sdydd if=/dev/sdx of=/dev/sdy

/dev/sdx全盘数据备份到指定路径的image文件:dd if=/dev/sdx of=/path/to/image

备份/dev/sdx全盘数据,并利用gzip工具进行压缩,保存到指定路径:dd if=/dev/sdx|gzip >/path/to/image.gz

  6、恢复:

将备份文件恢复到指定盘:dd if=/path/to/image of=/dev/sdx

将压缩的备份文件恢复到指定盘:gzip -dc /path/to/image.gz | dd of=/dev/sdx

   7、拷贝内存资料到硬盘

将内存里的数据拷贝到root目录下的mem.bin文件:dd if=/dev/mem of=/root/mem.bin bs=1024

从光盘拷贝iso镜像:dd if=/dev/cdrom of=/root/cd.iso

   8、销毁磁盘数据

dd if=/dev/urandom of=/dev/sda1

注:利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据。执行此操作以后,/dev/sda1将无法挂载,创建和拷贝操作无法执行。

   9、得到最恰当的block size

dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file

dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file

dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file

dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file

通过比较dd指令输出中所显示的命令执行时间,即可确定系统最佳的block size大小

   10、测试硬盘读写速度

dd if=/root/1Gb.file bs=64k | dd of=/dev/null

dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000

通过上两个命令输出的执行时间,可以计算出测试硬盘的读/写速度

   11、修复硬盘

dd if=/dev/sda of=/dev/sda

当硬盘较长时间(比如12年)放置不使用后,磁盘上会产生消磁点。当磁头读到这些区域时会遇到困难,并可能导致I/O错误。当这种情况影响到硬盘的第一个扇区时,可能导致硬盘报废。上边的命令有可能使这些数据起死回生。且这个过程是安全,高效的。

 

  

1、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/testdir目录,且默认有acl挂载选项

 blob.png

 blob.png

 blob.png

 blob.png

 blob.png

 blob.png

2、写一个脚本,完成如下功能:

(1) 列出当前系统识别到的所有磁盘设备;

(2) 如磁盘数量为1,则显示其空间使用信息;

否则,则显示最后一个磁盘上的空间使用信息;

 

 脚本代码:

 blob.png

 脚本执行效果:

 blob.png

原创文章,作者:Aaron_wang,如若转载,请注明出处:http://www.178linux.com/41077

(1)
Aaron_wangAaron_wang
上一篇 2016-08-29
下一篇 2016-08-29

相关推荐

  • bash特性及配置文件

    bash配置文件     两类:         profile:为交互式登录shell提供配置         bashrc:为非交互式登录shell提供配置…

    Linux干货 2016-08-31
  • 第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ~]# who | cut -d' ' -f 1 |sort |uniq -c 2、取出最后登录到当前系统的用户的相关信息。 ~]# last | head -1 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 ~]# cat…

    Linux干货 2016-12-14
  • 了解sed

    本博客分为四个部分:sed介绍、sed用法、sed高级用法(简略带过)、相关例题。通过本文可以大致了解sed命令。深度可以当成是课前预习吧。 1、sed介绍Stream EDitor, 行编辑器 sed是一种流编辑器,它一次处理一行内容。处理时,把 当前处理的行存储在临时缓冲区中,称为“模式空间”( pattern space),接着用sed命令处理缓冲区中…

    Linux干货 2017-04-25
  • HTTP响应连接介绍

    HTTP即超文本传输协议,web站点的实现就是基于HTTP协议得以实现。本文将详细讨论HTTP。 1. HTTP协议版本: HTTP从诞生到现在一共有如下几个版本: HTTP 0.9:是最早的版本,为HTTP的原型版本,其功能非常简陋; HTTP 1.0:此版本增加了很多新特性,如cache,method,MIME等,MIME的出现让网页不再是单纯的纯文本界…

    2017-05-31
  • Linux-运维之半自动化安装系统

    CentOS系统安装             系统启动流程: bootloader–>kernel(initramfs)–>rootfs–>/sbin/init 安装程序启动过程:         &nbs…

    2017-07-24
  • 十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

    格式说明: 操作 概念 命令 说明及举例 十二.文件查找和压缩、rpm包管理、yum、while循环、until循环 tar tar -zcvf /testdir/etc.tar.gz /etc/ 备份etc创建etc.tar.gz文件 压缩为gz格式 显示过程 tar -jcvf&nbs…

    Linux干货 2016-08-24

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-29 14:15

    文章结构层次清晰,内容完整,图文并貌,同时通过自己的实际操作,巩固了当天所学的知识。建议多加练习,熟练运用。