Linux磁盘管理进阶

Linux磁盘管理进阶


  • dd命令
  • SWAP与移动介质
  • 磁盘配额
  • RAID

dd命令

dd - convert and copy a file
Copy a file, converting and formatting according to the operands.

dd命令基本用法:

ddif=/PATH/FROM/SRC of=/PATH/TO/DEST
bs=#:block size, 复制单元大小count=#:复制多少个bs
skip=blocks从开头忽略blocks个ibs大小的块
seek=blocks从开头忽略blocks个obs大小的块

常用选项:

conv=conversion[,conversion...] 用指定的参数转换文件。    
    lcase 把大写字符转换为小写字符    
    ucase 把小写字符转换为大写字符
    swab 交换输入的每对字节
    noerror 出错时不停止
    notrunc 不截短输出文件
    sync 把每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐

使用dd命令对磁盘进行操作进,最好使用块设备文件;

使用示例:

创建两个文件:

[[email protected] ~]#echo {1..9} |tr -d [:space:] > f1
[[email protected] ~]#echo {a..z} |tr -d [:space:] > f2
[[email protected] ~]#cat f1
123456789[[email protected] ~]#
[[email protected] ~]#cat f2
abcdefghijklmnopqrstuvwxyz[[email protected] ~]#
[[email protected] ~]#
[[email protected] ~]#dd if=f1 of=f2 bs=1 count=3 
3+0 records in
3+0 records out
3 bytes (3 B) copied, 0.00136469 s, 2.2 kB/s
[[email protected] ~]#cat f2
123[[email protected] ~]#     # 从f1中复制了3字节的内容覆盖了f2
[[email protected] ~]#dd if=f1 of=f2 bs=1 count=3 skip=3 seek=3
3+0 records in
3+0 records out
3 bytes (3 B) copied, 0.000396399 s, 7.6 kB/s
[[email protected] ~]#cat f2
abc456[[email protected] ~]#  # 从f1中跳过了3字节并复制其后的3字节插入到f2的3字节后面
[[email protected] ~]#dd if=f1 of=f2 bs=1 count=3 skip=3 seek=3 conv=notrunc  # 不截断f2后面的内容 
3+0 records in
3+0 records out3 bytes (3 B) copied, 0.00277328 s, 1.1 kB/s
[[email protected] ~]#cat f2
abc456ghijklmnopqrstuvwxyz[[email protected] ~]#

备份MBR:

[[email protected] ~]#dd if=/dev/sda of=/testdir/sda.mbr bs=512 count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.000380182 s, 1.3 MB/s
[[email protected] ~]#

磁盘拷贝:

[[email protected] ~]#dd if=/dev/sda of=/dev/sdb

破坏MBR中的bootloader:

[[email protected] ~]#dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446
1+0 records in
1+0 records out
64 bytes (64 B) copied, 0.00180836 s, 35.4 kB/s
[[email protected] ~]#

破坏MBR中的分区表:

[[email protected] ~]#dd if=/dev/zero of=/dev/sda bs=1 count=64 skip=446 seek=446
64+0 records in
64+0 records out
64 bytes (64 B) copied, 0.00589307 s, 10.9 kB/s
[[email protected] ~]#

可见,sda的分区已经被破坏!

修复sda分区表:

[[email protected] ~]#dd if=/testdir/sda.mbr of=/dev/sda bs=512 count=1 
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.000348826 s, 1.5 MB/s
[[email protected] ~]#partprobe # 同步分区表
[[email protected] ~]#

sda被成功修复!

备份:

dd if=/dev/sdx of=/dev/sdy
    将本地的/dev/sdx整盘备份到/dev/sdy
dd if=/dev/sdx of=/path/to/image
    将/dev/sdx全盘数据备份到指定路径的image文件
dd if=/dev/sdx | gzip >/path/to/image.gz
    备份/dev/sdx全盘数据,并利用gzip工具进行压缩,保存到指定路径
[[email protected] ~]#dd if=/dev/sdb1 |gzip > /testdir/image.gz
409600+0 records in
409600+0 records out
209715200 bytes (210 MB) copied, 9.02236 s, 23.2 MB/s
[[email protected] ~]#ll /testdir/image.gz
-rw-r--r--. 1 root root 139129150 Aug 29 08:16 /testdir/image.gz
[[email protected] ~]#

恢复:

dd if=/path/to/image of=/dev/sdx
将备份文件恢复到指定盘
gzip -dc /path/to/image.gz | dd of=/dev/sdx将压缩的备份文件恢复到指定盘
[[email protected] ~]#gzip -cd /testdir/image.gz |dd of=/dev/sdc
409600+0 records in
409600+0 records out
209715200 bytes (210 MB) copied, 6.16743 s, 34.0 MB/s
[[email protected] ~]#
拷贝内存资料到硬盘
dd if=/dev/mem of=/root/mem.bin bs=1024
将内存里的数据拷贝到root目录下的mem.bin文件
从光盘拷贝iso镜像
dd if=/dev/cdrom of=/root/cd.iso
拷贝光盘数据到root文件夹下,并保存为cd.iso文件
销毁磁盘数据
dd if=/dev/urandom of=/dev/sda1
利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据。执行此操作以后,/dev/sda1将无法挂载,创建和拷贝操作无法执行。

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

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

[[email protected] ~]#dd if=/root/1Gb.file bs=64k |dd of=/dev/null
[[email protected] ~]#dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000

修复磁盘

[[email protected] ~]#dd if=/dev/sda of=/dev/sda

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


系统配额

SWAP

交换分区是系统RAM(裸设备)的补充,涉及到的基本命令有:mkswap, swapon, swapoff, 其优先级范围为0-32767,如果用户未指定swap的优先级,内核会给swap指定一个优先级,此值从-1开始,每加一个优先级递减一;用户指定的优先级(是正数)永远高于核心缺省指定的优先级(是负数);swap分区即可以是一个整个硬盘,也可以是一个分区(要指定分区类型)或者是将一个文件创建成swap分区

mkswap - set up a Linux swap area
swapon, swapoff - enable/disable devices and files for paging and swapping

基本设置包括:

创建交换分区或者文件

使用mkswap写入特殊签名

在/etc/fstab文件中添加适当的条目

使用swapon -a 激活交换空间

即:swap分区---> 格式化---> 挂载--> 激活

创建一个swap分区:

[[email protected] ~]#dd if=/dev/zero of=/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.75694 s, 611 MB/s
[[email protected] ~]#ls

格式化swap分区:

[[email protected] ~]#mkswap /dev/sdc1Setting up swapspace version 1, size = 10485756 KiB
no label, UUID=a0ac8c08-23b9-4672-bee3-449e949cea8c

[[email protected] ~]#mkswap /swapfile Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=4659cff5-5718-4119-a70e-6283ca443509
[[email protected] ~]#

写入/etc/fstab

[[email protected] /]#swapon -a    # 激活/etc/fstab中的swap类型
[[email protected] /]#swapon -s
Filename                                Type            Size    Used    Priority
/dev/sdc1                               partition       10485756        0       10
/swapfile                               file    1048572 0       -1

由此,你当然可以想到,mkfs命令应该把一个文件“做成”普通分区,并且挂载之:

[[email protected] ~]#dd if=/dev/zero of=/testdir/partfile bs=1M count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB) copied, 0.00416736 s, 252 MB/s

[[email protected] ~]#mkfs.ext4 /testdir/partfile  # mkfs.xfs不行
[[email protected] ~]#blkid /testdir/partfile
/testdir/partfile: UUID="e925d5a7-6def-430c-99e0-c4dc966caadf" TYPE="ext4" 
[[email protected] ~]#
[[email protected] ~]#mkdir /testdir/partfile
[[email protected] ~]#mount -a
[[email protected] ~]#mount |grep /testdir/
/testdir/partfile on /mnt/partfile type ext4 (rw,relatime,seclabel)
[[email protected] ~]#
[[email protected] ~]#cd /mnt/partfile/
[[email protected] /mnt/partfile]#ls
lost+found
[[email protected] /mnt/partfile]#

移动介质

所有的移动介质要想被内核认可,必须得挂载,而挂载意味着使外来的文件系统看起来如同是主目录树的一部分,且必须要遵守:访问前、介质必须被挂载;摘除时,介质必须被卸载。

按照默认设置,非根用户只能挂载某些设备(光盘、DVD、USB等等), 且挂载点通常在/media 或/mnt下。

如何使用光盘:

eject命令卸载或弹出磁盘,刻录光盘可用以下命令:

wodim–v –eject centos.iso

创建IOS文件可用以下命令:

cp/dev/cdrom /root/centos7.isomkisofs -r -o /root/etc.iso /etc

手工挂载

mount /dev/cdrom/mnt/

那如何在/etc/fstab文件里面挂载iso文件呢?如何把普通文件也挂载到一个目录上呢?


磁盘配额

所谓磁盘配额,就是超级用户给普通用户分配一定的磁盘空间,以防止普通用户占用大量的磁盘空间; 磁盘配额是在内核中执行,以文件系统为单位启用,可以做到对不同的组或用户制定不同的策略,且根据块或节点进行限制;另外,磁盘配额的限制分别软限制(soft limit)与硬限制(hatd limit),软限制就是达到一定磁盘额度后给予警告,而硬限制就是非常强硬地限制你的所作所为,除了建立空文件和空目录(提前是你的节点数没达到上限,即还有空留的inode。

磁盘配额的常用命令:

usrquota: 启用用户配额
grpquota:启用组配额 
noquota: 不启用配额 

quotacheck, quotaon, quotaoff, repquota

实现磁盘配额主要有以下五个步骤:

1.启用配置挂载选项 
vim /etc/fstab  usrquota,grpquota2. 创建配额数据库
mount -o remount /dev/sdb1
quotacheck -cug /home
setenforce 03. 启用数据库
quotaon /home4. 配置配额项
edquota liansir
edquota -p liansir shitou
setquota tom 100000 150000 0 0 /home5.测试
quota liansir
repquota /home

硬盘配额/home目录

在Linux中,磁盘配额是针对分区进行的,而不是硬盘,即磁盘配额是以文件系统为单位,在下面的试验中,我们将对/home目录进行硬盘配额,需要让home独立分区,但是现在home不是独立分区是和根一起的,如果想要实现就需要在根上做磁盘配额,但是这样是不合理的。需要把home独立到一个分区。

所以,此时我们需要完成的一项工作就是把/home迁移到五个独立的文件系统。

分区、格式化、挂载一步不能少:

[[email protected] ~]#mkfs.ext4 /dev/sdb3 -L /home   # 设其卷标为/home
[[email protected] ~]#blkid /dev/sdb3
/dev/sdb3: LABEL="/home" UUID="e18fa7a2-d436-4bd5-bfdb-453d0af53fb6" TYPE="ext4" 
[[email protected] ~]#
[[email protected] ~]#mkdir /mnt/home
[[email protected] ~]#mount /dev/sdb3 /mnt/home  # 新设备必须挂载才能使用

接下来,还存在一个问题,就是把/home下的数据迁移到新分区/dev/sdb3上面,复制或移动都可以,但要注意权限不要被改变!

挂载到/home目录,注意/home目录下数据的迁移;所以/dev/sdb3不是一次到位挂载到/home,而是先挂载到了一个其它的空目录,待完成数据迁移后再挂载到/home。最后取消之前的挂载。注:在centos 7上只会显示最后一次挂载。

磁盘配额的准备工作至此结束!如果是对一个普通的空目录进行硬盘配额的话也就没有数据迁移这回事了。

下面正式磁盘配额:

  1. 初始化:在/etc/fstab配置文件里面写入分区挂载选项:usrquota, grpquota;初始化数据库:checkquota, 注意初始化磁盘配额数据库前可能需要重新挂载

[[email protected] ~]#mount -o remount /home
[[email protected] ~]#quotacheck -cug /home

[[email protected] /home]#file aquota.group aquota.user #这两个文件是数据库的二进制文件,而非文本文件
aquota.group: data
aquota.user:  data
[[email protected] /home]#

注:在centos 6上面会提示权限不允许,需要关闭SELinux,setenforce 0.

  1. 启用数据库:
[[email protected] ~]#quotaon /home
[[email protected] ~]#quotaon -p /home
group quota on /home (/dev/sdb3) is on
user quota on /home (/dev/sdb3) is on
[[email protected] ~]#
  1. 配置用户的磁盘配额
[[email protected] ~]#edquota liansir

直接原处修改:

  1. 切换到普通用户的家目录,测试

测试成功!

用户调查:查看特定用户的磁盘配额情况

[[email protected] ~]#quota liansir   
Disk quotas for user liansir (uid 1000): 
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
      /dev/sdb3  102400*  80000  102400   6days     133       0       0

配额概述:查看指定分区的磁盘配额情况

[[email protected] ~]#repquota /home*** Report for user quotas on device /dev/sdb3
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --      20       0       0              2     0     0       
liansir   +-  102400   80000  102400  6days     133     0     0       
hacker    --      52       0       0             13     0     0       
xue       --      32       0       0              8     0     0       
[[email protected] ~]#

我们看到,liansir用户是有磁盘配额了,现在如果要把hacker用户的磁盘配额设置成与liansir一样,我们此时只是一条命令搞定!edquata -p

[[email protected] ~]#edquota -p liansir hacker
[[email protected] ~]#

当然,我们还可以在命令行里面直接设置用户的磁盘配额:

[[email protected] ~]#setquota xue 100000 200000 0 0 /home  #注意要指定分区
[[email protected] ~]#


RAID

RAID (Redundant Arrays of Independent Disks), 即独立冗余磁盘阵列,其重要技术是同位检查(Parity Check), 在多块硬盘组成的阵列中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。

磁盘阵列其样式有三种,一是外接式磁盘阵列柜、二是内接式磁盘阵列卡,三是利用软件来仿真。外接式磁盘阵列柜最常被使用大型服务器上,具可热交换(Hot Swap)的特性;内接式磁盘阵列卡,价格相对便宜,需要较高的安装技术,硬件阵列能够提供在线扩容、动态修改阵列级别、自动数据恢复、驱动器漫游、超高速缓冲等功能;软件仿真的方式,是指通过操作系统自身提供的磁盘管理功能将连接的普通SCSI卡上的多块硬盘配置成逻辑盘,组成阵列。其中,前两者称为硬RAID,软件仿真称为软RAID.

RAID是有级别的,本文以软RAID为例,且RAID级别之间可以按需组合;配置RAID时的主要命令为mdadm, 且内核中提供有md模块(multi devices),RAID设备可命名为/dev/md0、/dev/md1、/dev/md2、/dev/md3等。

mdadm

mdadm - manage MD devices aka Linux Software RAID
mdadm [mode] <raiddevice> [options] <component-devices>

MODES
   mdadm has several major modes of operation:

   -A, --assemble
          Assemble a pre-existing array.

   -B, --build
          Build a legacy array without superblocks.

   -C, --create
          Create a new array.

   -F, --follow, --monitor
          Select Monitor mode.

   -G, --grow
          Change the size or shape of an active array.
          
即:
    模式:
    创建:-C
    装配: -A
    监控: -F
    管理:-f, -r, -a

接下来看看RAID的主要级别:

  1. RAID 0:条带卷,strip

RAID 0最简单的实现方式就是把N块同样的硬盘用硬件的形式通过智能磁盘控制器或用操作系统中的磁盘驱动程序以软件的方式串联在一起创建一个大的卷集。只需要2块以上的硬盘即可,无冗余或错误修复能力,实现成本是最低,最大的缺点在于任何一块硬盘出现故障,整个系统将会受到破坏,可靠性仅为单独一块硬盘的1/N。所以,RAID 0一般只是在那些对数据安全性要求不高的情况下才被人们使用。

  1. RAID 1:镜像卷,mirror

RAID 1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件。具备很好的磁盘冗余能力,但磁盘利用率为50%,RAID 1多用在保存关键性的重要数据的场合。

  1. RAID 5: 带奇偶校验的条带机

RAID 5的奇偶校验码存在于所有磁盘上,其中的p0代表第0带区的奇偶校验值,其它亦然,对于RAID 5来说,大部分数据传输只对一块磁盘操作,可进行并行操作。在RAID 5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。

  1. RAID 01

RAID 01是RAID0与RAID1的结合体,数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。RAID 01要在磁盘镜像中建立带区集至少4个硬盘。

  1. RAID 10

RAID 10是一个带区结构加一个镜象结构,可以相互补充,达到既高效又高速的目的。主要用于数据容量不大,但要求速度和差错控制的数据库中。

注:RAID级别图片来自网络。

介绍完RAID的主要级别,我们再来看看mdadm具体的模式命令吧!

-C: 创建模式    
    -n #: 使用#个块设备来创建此RAID;    
    -l #:指明要创建的RAID的级别;    
    -a {yes|no}:自动创建目标RAID设备的设备文件;    
    -c CHUNK_SIZE: 指明块大小;    
    -x #: 指明空闲盘的个数;
    
-D:显示raid的详细信息;    
    mdadm-D /dev/md#
    
管理模式:
    -f: 标记指定磁盘为损坏    
    -a: 添加磁盘    
    -r: 移除磁盘观察md的状态:
    cat /proc/mdstat
    
停止md设备:
    mdstat -S DVICE

OK,现在我们来实现一个RAID 5, 4个RAID盘,1个备用盘,总共5个盘。

我们准备四个硬盘,并都创建一个大小为10G的分区:

sdb      8:16   0   20G  0 disk 
└─sdb1   8:17   0   10G  0 part 
sdd      8:48   0   20G  0 disk 
└─sdd1   8:49   0   10G  0 part 
sdc      8:32   0   20G  0 disk 
└─sdc1   8:33   0   10G  0 part 
sde      8:64   0   20G  0 disk 
└─sde1   8:65   0   10G  0 part 
sdf      8:80   0   20G  0 disk 
└─sdf1   8:81   0   10G  0 part 
[[email protected] ~]#
  1. 创建RAID: /dev/md0
[[email protected] ~]#mdadm -C /dev/md0 -l 5 -n 4 -x 1 /dev/sd{b,d,c,e,f}1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[[email protected] ~]#

查看:

[[email protected] ~]#ll /dev/md0
brw-rw----. 1 root disk 9, 0 Sep  2 20:17 /dev/md0
[[email protected] ~]#cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
md0 : active raid5 sde1[5] sdf1[4](S) sdc1[2] sdd1[1] sdb1[0]      
31446528 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
      
unused devices: <none>
[[email protected] ~]#
  1. 格式化RAID
[[email protected] ~]#mkfs.ext4 /dev/md0

查看:

[[email protected] ~]#blkid /dev/md0
/dev/md0: UUID="0ea747b9-c98e-47fd-b08d-fd346ecbd654" TYPE="ext4" 
[[email protected] ~]#
  1. 挂载

[[email protected] ~]#mkdir /mnt/md0
[[email protected] ~]#mount -a

查看:

[[email protected] ~]#mount |grep /dev/md0
/dev/md0 on /mnt/md0 type ext4 (rw)
[[email protected] ~]#
  1. 测试
[[email protected] ~]#cd /mnt/md0
[[email protected] /mnt/md0]#touch f1      # 可创建文件
[[email protected] /mnt/md0]#
[[email protected] ~]#mdadm /dev/md0 -f /dev/sdb1  # 损坏
/dev/sd1mdadm: set /dev/sdb1 faulty in /dev/md0
[[email protected] ~]#
[[email protected] ~]#mdadm /dev/md0 -r /dev/sdb1  # 热移除
mdadm: hot removed /dev/sdb1 from /dev/md0
[[email protected] ~]#

至此,我们重启系统!

重启系统后我们发现RAID失效了!不过这个跟损坏/dev/sdb1没关系

此时再次重复以上步骤!

在重启系统之前我们必须先备份!

[[email protected] ~]#mdadm -Ds /dev/md0 > /etc/mdadm.conf  # 否则重启系统后RAID失效

然后重启系统:

查看RAID:

[[email protected] ~]#mdadm -D /dev/md0

再次测试:

[[email protected] ~]#mdadm /dev/md0 -f /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md0
[[email protected] ~]#

[[email protected] ~]#mdadm /dev/md0 -r /dev/sdb1

此时备用盘已经被移除,

在RAID盘里创建一些文件,然后我们再移除一块RAID硬盘。

[[email protected] /mnt/md0]#dd if=/dev/zero of=/mnt/md0/f2 bs=100M count=1
1+0 records in
1+0 records out
104857600 bytes (105 MB) copied, 0.254593 s, 412 MB/s
[[email protected] /mnt/md0]#ll
total 102416
-rw-r--r--. 1 root root         0 Sep  2 21:56 f1
-rw-r--r--. 1 root root 104857600 Sep  2 21:56 f2
drwx------. 2 root root     16384 Sep  2 21:28 lost+found
[[email protected] /mnt/md0]#
[[email protected] ~]#mdadm /dev/md0 -f /dev/sdf1
mdadm: set /dev/sdf1 faulty in /dev/md0
[[email protected] ~]#mdadm /dev/md0 -r /dev/sdf1
mdadm: hot removed /dev/sdf1 from /dev/md0
[[email protected] ~]#
[[email protected] ~]#cd /mnt/md0  #查看数据是否正常
[[email protected] /mnt/md0]#ls
f1  f2  lost+found
[[email protected] /mnt/md0]#

测试成功!

  1. RAID管理:添加新的分区与扩展新成员(在硬盘的数量上进行扩展)
[[email protected] ~]#mdadm /dev/md0 -a /dev/sdg1  # 给RAID添加新分区
mdadm: added /dev/sdg1
[[email protected] ~]#

[[email protected] ~]#mdadm -G /dev/md0 -n 6 -a /dev/sdh1  # 扩展
mdadm: added /dev/sdh1

注意,在做RAID时,最好各硬盘的分区一样大,因为会以最小的为标准,多余的空间则会浪费掉;另外,生产环境中无人用软RAID,软RAID仅用途测试与理解RAID用!

本文主要介绍了dd命令的常规用法、如何建立交换分区SWAP、常用RAID的基本特性与RAID 5的配置. 2016.9.3

止战

时间: 2024-10-10 14:37:43

Linux磁盘管理进阶的相关文章

linux 磁盘管理

linux磁盘管理 I/O Port: I/O 设备地址 块设备:block, 存取单位"块",磁盘 字符设备:char, 存取单位"字符", 键盘 设备文件:关联至一个设备驱动程序,使能够与之对应的硬件设备进行通信 设备号:主设备号   次设备号 设备文件只有源数据(属性),没有数据,都是特殊类型的文件,目录也是 /dev/dev_file都在这儿 硬盘的接口类型: 并行(慢于串口): IDE   133MB/S(接口速率) SCSI  640MB/S 串口: S

第十一章 linux磁盘管理(1)

Linux磁盘管理 涉及到的命令如下: fdisk -l              查看当前磁盘使用情况 fdisk /dev/sdb        划分分区 mkfs.ext4 /dev/sdb1   给分区格式化 mkdir /data           创建挂载目录 mount /dev/sdb1 /data 将新划分的分区挂载到/data目录 vi /etc/fstab         将挂载信息卸载配置文件里,开机启动挂载信息 /dev/sdb1 /data  ext4 defaul

Linux磁盘管理高级

Linux磁盘管理高级 LVM Btrsh LVM 逻辑卷管理(LVM)指系统将物理卷管理抽象成一个逻辑卷,包括重新设定文件系统的大小,LVM可以弹性的更改LVM的容量,通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备中的PE加到LV中以加大容量. LVM还有快照的功能,快照区与原本的LV共用很多PE的区块,因此快照区与被快照的LV必须要要在同一个VG上!系统恢复的时候的文件数量不能高于快照区的实际容量. LVM的基本原理可用下图表示: LVM: 

分析Linux磁盘管理与文件系统专题三

1.前言 紧接着我的上一篇博客进行磁盘管理操作: http://zhangfengzhe.blog.51cto.com/8855103/1430531 我们已经对磁盘进行了分区,信息如下: [[email protected] ~]# fdisk -l /dev/sdb Disk /dev/sdb: 1073 MB, 1073741824 bytes 255 heads, 63 sectors/track, 130 cylinders Units = cylinders of 16065 * 5

分析Linux磁盘管理与文件系统专题二

1.关于设备文件 A 我们知道常见的设备文件有:字符设备文件(character),块设备文件(block). B 块设备,简写b,随机访问,比如硬盘. C 字符设备,简写c,线性访问,比如键盘,鼠标,显示器. D 我们的设备文件常常在/dev目录下,并且没有大小.因为设备文件只是作为设备访问   的入口. E 设备文件,一般用major(主设备号),minor(次设备号)进行标示.主设备号标示设备类型,次设备号标示同一种类型设备下的不同设备. 2.创建设备文件实例 [[email protec

深入剖析linux磁盘管理

一.linux中常见的磁盘: 无论什么操作系统,归根还是要落实与磁盘上的,对于磁盘的管理也是linux管理必备的一项技能.在linux中"一切皆文件"的思想贯彻整个linux的学习中,包括像是磁盘等的硬件也是在linux的/dev/目录下类似于文件形式的存放,常见的SATA口USB优盘或是SCSI口的硬盘在linux中是以/dev/sd[a-p]开头的文件,早期的IDE硬盘现在已经很少见了,这种硬盘在linux中是以/dev/hd[a-d],CDROM是以/dev/cdrom开头的文件

Linux磁盘管理:LVM逻辑卷创建及使用

Linux磁盘管理:LVM逻辑卷创建及使用    一.创建LVM逻辑卷    通过图文并茂的方式来看看如何创建我们的LVM ,首先是要将我们的物理硬盘格式化成PV,然后将多个PV加入到创建好的VG中,最后通过VG创建我们的LV.所以我们第一步就是将我们的物理硬盘格式化成PV(物理卷) ①将物理硬盘格式化成PV(物理卷) 使用的是 pvcreate 命令 这里我已经事先虚拟化了3快物理硬盘,每块硬盘的大小为8G,通过 fdisk -l 命令可以查看 [[email protected] ~]# f

【转载】Linux磁盘管理:LVM逻辑卷管理

Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理 这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!! 一.传统的磁盘管理 其实在Linux操作系统中,我们的磁盘管理机制和windows上的差不多,绝大多数都是使用MBR(Master Boot Recorder)都是通过先对一个硬盘进行分区,然后再将该分区进行文件系统的格式化,在Linux系统中如果要使用该分区就将其挂载上去即可,windows的话其实底

Linux磁盘管理基础

Linux磁盘管理基础 硬盘结构 文件系统与MBR.GTP 磁盘管理三步骤:分区.格式化.挂载 mount 硬盘结构 硬盘的基本组成材质是盘片,不同容量硬盘的盘片数不等.每个盘片有两面,都可记录信息.盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道,不同盘片相同半径的磁道所组成的圆柱称为柱面,每个磁道被分成许多扇形的区域,每个区域叫一个扇区,每个扇区可存储128×2^N 次方(N=0.1.2.3)字节信息.在DOS中每扇区是128×2^2 次方=512字节. 硬盘存储相关术语:CHS hea