软件磁盘阵列 (Software RAID)
什么是 RAID
磁盘阵列全名是『 Redundant Arrays of Inexpensive Disks, RAID 』,容错式廉价磁盘阵列。 RAID 可以通过一些技术(软件或硬件),将多个较小的磁盘整合成为一个较大的磁盘设备; 而这个较大的磁盘功能可不止是储存而已,他还具有数据保护的功能呢。整个 RAID 由亍选择的等级 (level) 不同,而使得整合后的磁盘具有不同的功能, 基本常见的 level 有这几种(注1):
RAID-0 (等量模式, stripe):效能最佳
	这种模式如果使用相同型号与容量的磁盘来组成时,效果较佳。这种模式的 RAID 会将磁盘先切出等量的区块 (举例来说, 4KB), 然后当一个文件要写入 RAID 时,该文件会依据块的大小切割好,之后再依序放到各个磁盘里面去。由于每个磁盘会交错的存放数据, 因此当你的数据要写入 RAID 时,数据会被等量的放置在各个磁盘上面。举例来说,你有两颗磁盘组成 RAID-0 , 当你有 100MB 的数据要写入时,每个磁盘会各被分配到 50MB 的储存量。RAID-0 的示意图如下所示:

RAID-1 (映像模式, mirror):完整备份
	这种模式也是需要相同的磁盘容量的,最好是一模一样的磁盘啦!如果是不同容量的磁盘组成 RAID-1 时,那么总容量将以最小的那一颗磁盘为主!这种模式主要是『让同一份数据,完整的保存在两颗磁盘上头』。举例来说,如果我有一个 100MB 的档案,且我仅有两颗磁盘组成 RAID-1 时, 那么这两颗磁盘将会同步写入 100MB 到他们的储存空间去。 因此,整体 RAID 的容量几乎少了 50%。由于两颗硬盘内容一模一样,好像镜子映照出来一样, 所以我们也称他为 mirror(镜像) 模式。

RAID 0+1,RAID 1+0
	RAID-0 的效能佳但是数据不安全,RAID-1 的数据安全但是效能不佳,那么能不能将这两者整合起来设置 RAID 呢? 可以啊!那就是 RAID 0+1 或 RAID 1+0。所谓的 RAID 0+1 就是: (1)先让两颗磁盘组成 RAID 0,再让这样的设置共有两组; (2)将这两组 RAID 0 再组成一组 RAID 1。这就是 RAID 0+1 啰!反过来说,RAID 1+0 就是先组成 RAID-1 再组成 RAID-0 的意思。

RAID 5:性能与数据备份的均衡考虑
	RAID-5 至少需要三块以上的磁盘才能够组成这种类型的磁盘阵列。这种磁盘阵列的数据写入有点类似 RAID-0 , 不过每个循环的写入过程中,在每颗磁盘还加入一个同位检查数据 (Parity) ,这个数据会记录其他磁盘的备份数据, 用于当有磁盘损毁时的救援。RAID-5 读写的情况有点像底下这样:

Spare Disk:预备磁盘的功能
	当磁盘阵列的磁盘损毁时,就得要将坏掉的磁盘拔除,然后换一颗新的磁盘。换成新磁盘并且顺利启劢磁盘阵列后, 磁盘阵列就会开始主动的重建 (rebuild) 原本坏掉的那颗磁盘数据到新的磁盘上!然后你磁盘阵列上面的数据就复原了! 这就是磁盘阵列的优点。不过,我们还是得要动手拔插硬盘,此时通常得要关机才能这么做。 为了让系统可以实时的在坏掉硬盘时主动的重建,因此就需要预备磁盘 (spare disk) 的辅助。 所谓的 spare disk 就是一颗或多颗没有包含在原本磁盘阵列等级中的磁盘,这颗磁盘平时并不会被磁盘阵列所使用, 当磁盘阵列有任何磁盘损毁时,则这颗 spare disk 会被主动的拉进磁盘阵列中,再将坏掉的那颗硬盘移出磁盘阵列! 然后立即重建数据系统。如此你的系统则可以永保安康啊!若你的磁盘阵列有支持热拔插那就更完美了! 直接将坏掉的那颗磁盘拔除换一颗新的,再将那颗新设置成为 spare disk ,就完成了!
磁盘阵列的优点:
说的口沫横飞,重点在哪里呢?其实你的系统如果需要磁盘阵列的话,其实重点在于:
	 数据安全与可靠性:指的并非信息安全,而是的那个硬件 (指磁盘) 损毁时,数据是否还能够安全的救援或使用之意;
	 读写效能:例如 RAID 0 可以加强读写效能,让你的系统 I/O 部分得以改善;
	 容量:可以让多块磁盘组合起来,故单一文件系统可以有相当大的容量。
	尤其数据的可靠性与完整性更是使用 RAID 的考虑重点!毕竟硬件坏掉换掉就好了,软件数据损毁那可不是闹着玩的! 所以企业界为何需要大量的 RAID 来做为文件系统的硬件基准,现在您有点了解了吧?
software, hardware RAID
硬件磁盘阵列 (hardware RAID) 是透过磁盘阵列卡来达成数组的目的。 磁盘阵列卡上面有一块专门的芯片在处理 RAID 的仸务,因此在效能方面会比较好。在很多任务 (例如 RAID 5 的同位检查码计算) 磁盘阵列并不会重复消耗原本系统的 I/O 总线,理论上效能会较佳。此外目前一般的中高阶磁盘阵列卡都支持热拔插, 亦即在不关机的情况下抽换损坏的磁盘,对于系统的复原与数据的可靠性方面非常的好用。
软件磁盘阵列 (software RAID)。软件磁盘阵列主要是透过软件来仿真数组的仸务, 因此会损耗较多的系统资源,比如说 CPU 的运算不 I/O 总线的资源等。
另外你必项要知道的是,硬件磁盘阵列在 Linux 底下看起来就是一颗实际的大磁盘,因此硬件磁盘阵列的装置文件名为 /dev/sd[a-p] ,因为使用到 SCSI 的模坑之故。至于软件磁盘阵列则是系统仿真的,因此使用的装置文件名是系统的装置文件, 文件名为 /dev/md0, /dev/md1...,两者的装置文件名并不相同!
软件磁盘阵列的设定:
- # mdadm --create --auto=yes /dev/md[0-9] --raid-devices=N --level=[015] --spare-devices=N /dev/sdx /dev/hdx...
 - 选顷不参数:
 - --create :为建立 RAID 的参数。
 - --auto=yes :决定建立后面接的软件磁盘阵列装置,亦即 /dev/md0,/dev/md1...
 - --raid-devices=N :使用几个磁盘 (partition) 作为磁盘阵列的装置
 - --spare-devices=N :使用几个磁盘作为备用 (spare) 装置
 - --level=[015] :设定这组磁盘阵列的等级。支持很多,不过建议只要用 0, 1, 5 即可
 - --detail :后面所接的那个磁盘阵列装置的详绅信息
 
利用我的测试机来建置一个 RAID 5 的软件磁盘阵列给您瞧瞧!
- [root@linux ~]# fdisk -l
 - Disk /dev/sda: 8589 MB, 8589934592 bytes
 - 255 heads, 63 sectors/track, 1044 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 274 2096482+ 82 Linux swap / Solaris
 - /dev/sda3 275 1044 6185025 83 Linux
 - Disk /dev/sdb: 8589 MB, 8589934592 bytes
 - 255 heads, 63 sectors/track, 1044 cylinders
 - Units = cylinders of 16065 * 512 = 8225280 bytes
 - Device Boot Start End Blocks Id System
 - Disk /dev/sdc: 8589 MB, 8589934592 bytes
 - 255 heads, 63 sectors/track, 1044 cylinders
 - Units = cylinders of 16065 * 512 = 8225280 bytes
 - Device Boot Start End Blocks Id System
 - Disk /dev/sdd: 8589 MB, 8589934592 bytes
 - 255 heads, 63 sectors/track, 1044 cylinders
 - Units = cylinders of 16065 * 512 = 8225280 bytes
 - Device Boot Start End Blocks Id System
 - Disk /dev/sde: 8589 MB, 8589934592 bytes
 - 255 heads, 63 sectors/track, 1044 cylinders
 - Units = cylinders of 16065 * 512 = 8225280 bytes
 - Device Boot Start End Blocks Id System
 - Disk /dev/sdf: 8589 MB, 8589934592 bytes
 - 255 heads, 63 sectors/track, 1044 cylinders
 - Units = cylinders of 16065 * 512 = 8225280 bytes
 - Disk /dev/sdf doesn't contain a valid partition table
 
下面是我希望做成的 RAID 5 环境:
	 利用 4 个磁盘组成 RAID 5;
	 每个磁盘约为 8GB 大小,需确定每个磁盘一样大较佳;
	 利用 1 个磁盘设定为 spare disk
	 这个 spare disk 的大小与其他 RAID 所需磁盘一样大!
	 将此 RAID 5 装置挂载到 /mnt/raid 目录下
	最终我需要 5 个 8GB 的磁盘。
- [root@linux ~]# mdadm --create --auto=yes /dev/md0 --level=5 --raid-devices=4 --spare-devices=1 /dev/sd{b,c,d,e,f}
 - mdadm: array /dev/md0 started.
 - [root@linux ~]# mdadm --detail /dev/md0
 - /dev/md0: --RADI设备名
 - Version : 0.90
 - Creation Time : Thu Feb 16 19:11:44 2012 --RAID被创建的时间
 - Raid Level : raid5 --RAID等级为RAID 5
 - Array Size : 25165632 (24.00 GiB 25.77 GB) --此RAID的可用磁盘容量
 - Used Dev Size : 8388544 (8.00 GiB 8.59 GB) --每个设备的可用容量
 - Raid Devices : 4 --用作RAID的设备数量
 - Total Devices : 5 --全部设备的数量
 - Preferred Minor : 0
 - Persistence : Superblock is persistent
 - Update Time : Thu Feb 16 19:14:22 2012
 - State : clean
 - Active Devices : 4 --启动的设备数量
 - Working Devices : 5 --可动作的设备数量
 - Failed Devices : 0 --出现错误的设备数量
 - Spare Devices : 1 --预备磁盘的数量
 - Layout : left-symmetric
 - Chunk Size : 64K
 - UUID : 84c5171f:50290a3e:8673f81b:4cc9501b --此设备的RAID标识符
 - Events : 0.2
 - Number Major Minor RaidDevice State
 - 0 8 16 0 active sync /dev/sdb
 - 1 8 32 1 active sync /dev/sdc
 - 2 8 48 2 active sync /dev/sdd
 - 3 8 64 3 active sync /dev/sde
 - 4 8 80 - spare /dev/sdf
 
也可以查阅如下的档案杢看看系统软件磁盘阵列的情况:
- [root@linux ~]# cat /proc/mdstat
 - Personalities : [raid6] [raid5] [raid4]
 - md0 : active raid5 sde[3] sdf[4](S) sdd[2] sdc[1] sdb[0] --第一行
 - 25165632 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU] --第二行
 - unused devices: <none>
 
第一行部分:指出 md0 为 raid5 ,丏使用了 sdb, sdc, sdd, sde 等四颗磁盘装置。每个装置后面的中括号 [] 内的数字为此磁盘在 RAID 中的顺序 (RaidDevice);至亍 sdf 后面的 [S] 则代表 sdf 为 spare 之意。
第二行:此磁盘阵列拥有 25165632 个block(每个 block 单位为 1K),所以怪容量约为24GB, 使用 RAID 5 等级,写入磁盘的小区坑 (chunk) 大小为 64K,使用 algorithm 2 磁盘阵列算法。 [m/n] 代表此数组需要 m 个装置,且 n 个装置正常运作。因此本 md0 需要 4 个装置且这 4 个装置均正常运作。 后面的 [UUUU] 代表的是四个所需的装置 (就是 [m/n] 里面的 m) 的启劢情况,U 代表正常运作,若为 _ 则代表不正常。
格式化与挂载使用RAID
- [root@linux ~]# mkfs -t ext3 /dev/md0
 - mke2fs 1.39 (29-May-2006)
 - Filesystem label=
 - OS type: Linux
 - Block size=4096 (log=2)
 - Fragment size=4096 (log=2)
 - 3145728 inodes, 6291408 blocks
 - 314570 blocks (5.00%) reserved for the super user
 - First data block=0
 - Maximum filesystem blocks=0
 - 192 block groups
 - 32768 blocks per group, 32768 fragments per group
 - 16384 inodes per group
 - Superblock backups stored on blocks:
 - 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
 - 4096000
 - Writing inode tables: done
 - Creating journal (32768 blocks): done
 - Writing superblocks and filesystem accounting information: done
 - This filesystem will be automatically checked every 22 mounts or
 - 180 days, whichever comes first. Use tune2fs -c or -i to override.
 - [root@linux ~]# mkdir /mnt/raid
 - [root@linux ~]# mount /dev/md0 /mnt/raid/
 - [root@linux ~]# df
 - 文件系统 1K-块 已用 可用 已用% 挂载点
 - /dev/sda3 5991232 2656564 3025420 47% /
 - /dev/sda1 101086 11373 84494 12% /boot
 - tmpfs 517548 0 517548 0% /dev/shm
 - /dev/md0 24770748 176200 23336268 1% /mnt/raid
 
仿真 RAID 错误的救援模式
- # mdadm --manage /dev/md[0-9] [--add 设备] [--remove 设备] [--fail 设备]
 - 参数:
 - --add :会将后面的设备加入到这个 md 中!
 - --remove :会将后面的设备从这个 md 中移除
 - --fail :会将后面的设备设定成为出错的状态
 
设置磁盘为错误
- [root@linux raid]# cp -a /etc/ /var/log/ /mnt/raid/ --先复制一些数据
 - [root@linux raid]# df /mnt/raid/
 - 文件系统 1K-块 已用 可用 已用% 挂载点
 - /dev/md0 24770748 279932 23232536 2% /mnt/raid
 - [root@linux raid]# du -sm /mnt/raid/*
 - 106 /mnt/raid/etc --看吧!确实有数据在里面
 - 2 /mnt/raid/log
 - 1 /mnt/raid/lost+found
 - [root@linux raid]# ll /mnt/raid/
 - 总计 40
 - drwxr-xr-x 101 root root 12288 02-16 20:37 etc
 - drwxr-xr-x 16 root root 4096 02-16 18:24 log
 - drwx------ 2 root root 16384 02-16 20:36 lost+found
 - [root@linux raid]# mdadm --manage /dev/md0 --fail /dev/sdb --假设这个磁盘设备出错了。
 - mdadm: set /dev/sdb faulty in /dev/md0
 - [root@linux raid]# mdadm --detail /dev/md0
 - /dev/md0:
 - Version : 0.90
 - Creation Time : Thu Feb 16 19:11:44 2012
 - Raid Level : raid5
 - Array Size : 25165632 (24.00 GiB 25.77 GB)
 - Used Dev Size : 8388544 (8.00 GiB 8.59 GB)
 - Raid Devices : 4
 - Total Devices : 5
 - Preferred Minor : 0
 - Persistence : Superblock is persistent
 - Update Time : Thu Feb 16 20:51:49 2012
 - State : clean, degraded, recovering
 - Active Devices : 3
 - Working Devices : 4
 - Failed Devices : 1 --出错的磁盘有一个
 - Spare Devices : 1
 - Layout : left-symmetric
 - Chunk Size : 64K
 - Rebuild Status : 16% complete
 - UUID : 84c5171f:50290a3e:8673f81b:4cc9501b
 - Events : 0.4
 - Number Major Minor RaidDevice State
 - 4 8 80 0 spare rebuilding /dev/sdf
 - 1 8 32 1 active sync /dev/sdc
 - 2 8 48 2 active sync /dev/sdd
 - 3 8 64 3 active sync /dev/sde
 - 5 8 16 - faulty spare /dev/sdb
 - [root@linux raid]# cat /proc/mdstat
 - Personalities : [raid6] [raid5] [raid4]
 - md0 : active raid5 sde[3] sdf[4] sdd[2] sdc[1] sdb[5](F)
 - 25165632 blocks level 5, 64k chunk, algorithm 2 [4/3] [_UUU]
 - [======>..............] recovery = 34.3% (2878256/8388544) finish=3.2min speed=28577K/sec
 - unused devices: <none>
 
重建完毕的RAID 5情况
- [root@linux raid]# cat /proc/mdstat
 - Personalities : [raid6] [raid5] [raid4]
 - md0 : active raid5 sde[3] sdf[0] sdd[2] sdc[1] sdb[4](F)
 - 25165632 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]
 - unused devices: <none>
 - [root@linux raid]# mdadm --detail /dev/md0
 - /dev/md0:
 - Version : 0.90
 - Creation Time : Thu Feb 16 19:11:44 2012
 - Raid Level : raid5
 - Array Size : 25165632 (24.00 GiB 25.77 GB)
 - Used Dev Size : 8388544 (8.00 GiB 8.59 GB)
 - Raid Devices : 4
 - Total Devices : 5
 - Preferred Minor : 0
 - Persistence : Superblock is persistent
 - Update Time : Thu Feb 16 21:02:31 2012
 - State : clean
 - Active Devices : 4
 - Working Devices : 4
 - Failed Devices : 1
 - Spare Devices : 0
 - Layout : left-symmetric
 - Chunk Size : 64K
 - UUID : 84c5171f:50290a3e:8673f81b:4cc9501b
 - Events : 0.12
 - Number Major Minor RaidDevice State
 - 0 8 80 0 active sync /dev/sdf
 - 1 8 32 1 active sync /dev/sdc
 - 2 8 48 2 active sync /dev/sdd
 - 3 8 64 3 active sync /dev/sde
 - 4 8 16 - faulty spare /dev/sdb
 
将错误的磁盘删除并加入新磁盘
- [root@linux raid]# mdadm --manage /dev/md0 --remove /dev/sdb
 - mdadm: hot removed /dev/sdb
 - [root@linux raid]# cat /proc/mdstat
 - Personalities : [raid6] [raid5] [raid4]
 - md0 : active raid5 sde[3] sdf[0] sdd[2] sdc[1]
 - 25165632 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]
 - unused devices: <none>
 - [root@linux raid]# mdadm --detail /dev/md0
 - /dev/md0:
 - Version : 0.90
 - Creation Time : Thu Feb 16 19:11:44 2012
 - Raid Level : raid5
 - Array Size : 25165632 (24.00 GiB 25.77 GB)
 - Used Dev Size : 8388544 (8.00 GiB 8.59 GB)
 - Raid Devices : 4
 - Total Devices : 4
 - Preferred Minor : 0
 - Persistence : Superblock is persistent
 - Update Time : Thu Feb 16 21:06:32 2012
 - State : clean
 - Active Devices : 4
 - Working Devices : 4
 - Failed Devices : 0
 - Spare Devices : 0
 - Layout : left-symmetric
 - Chunk Size : 64K
 - UUID : 84c5171f:50290a3e:8673f81b:4cc9501b
 - Events : 0.14
 - Number Major Minor RaidDevice State
 - 0 8 80 0 active sync /dev/sdf
 - 1 8 32 1 active sync /dev/sdc
 - 2 8 48 2 active sync /dev/sdd
 - 3 8 64 3 active sync /dev/sde
 - [root@linux raid]# mdadm --manage /dev/md0 --add /dev/sdb
 - mdadm: added /dev/sdb
 - [root@linux raid]# mdadm --detail /dev/md0
 - /dev/md0:
 - Version : 0.90
 - Creation Time : Thu Feb 16 19:11:44 2012
 - Raid Level : raid5
 - Array Size : 25165632 (24.00 GiB 25.77 GB)
 - Used Dev Size : 8388544 (8.00 GiB 8.59 GB)
 - Raid Devices : 4
 - Total Devices : 5
 - Preferred Minor : 0
 - Persistence : Superblock is persistent
 - Update Time : Thu Feb 16 21:06:32 2012
 - State : clean
 - Active Devices : 4
 - Working Devices : 5
 - Failed Devices : 0
 - Spare Devices : 1
 - Layout : left-symmetric
 - Chunk Size : 64K
 - UUID : 84c5171f:50290a3e:8673f81b:4cc9501b
 - Events : 0.14
 - Number Major Minor RaidDevice State
 - 0 8 80 0 active sync /dev/sdf
 - 1 8 32 1 active sync /dev/sdc
 - 2 8 48 2 active sync /dev/sdd
 - 3 8 64 3 active sync /dev/sde
 - 4 8 16 - spare /dev/sdb
 - [root@linux raid]# cat /proc/mdstat
 - Personalities : [raid6] [raid5] [raid4]
 - md0 : active raid5 sdb[4](S) sde[3] sdf[0] sdd[2] sdc[1]
 - 25165632 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]
 - unused devices: <none>
 
开机自动启动RAID并自动挂载
- [root@linux raid]# mdadm --detail /dev/md0 | grep UUID
 - UUID : 84c5171f:50290a3e:8673f81b:4cc9501b
 - [root@linux raid]# vi /etc/mdadm.conf
 - ARRAY /dev/md0 UUID=84c5171f:50290a3e:8673f81b:4cc9501b
 - [root@linux raid]# vi /etc/fstab
 - /dev/md0 /mnt/raid ext3 defaults 1 2
 - [root@linux ~]# umount /dev/md0
 - [root@linux ~]# df
 - 文件系统 1K-块 已用 可用 已用% 挂载点
 - /dev/sda3 5991232 2655024 3026960 47% /
 - /dev/sda1 101086 11373 84494 12% /boot
 - tmpfs 517548 0 517548 0% /dev/shm
 - [root@linux ~]# mount -a --参数 -a:依照配置文件 /etc/fstab 的数据将所有未挂载的磁盘都挂载上来
 - [root@linux ~]# df
 - 文件系统 1K-块 已用 可用 已用% 挂载点
 - /dev/sda3 5991232 2655024 3026960 47% /
 - /dev/sda1 101086 11373 84494 12% /boot
 - tmpfs 517548 0 517548 0% /dev/shm
 - /dev/md0 24770748 279936 23232532 2% /mnt/raid
 
关闭软件RAID
除非你未来就是要使用这颗 software RAID (/dev/md0),否则你势必要将这个 /dev/md0 关闭!如果你只是将 /dev/md0 卸除,然后忘记将 RAID 关闭, 结果就是....未来你在重新分割 /dev/sb* 时可能会出现一些莫名的错错误状况啦!
- # 1. 先卸载且删除配置文件内与这个 /dev/md0 有关的设置:
 - [root@linux ~]# umount /dev/md0
 - [root@linux ~]# vi /etc/fstab
 - /dev/md0 /mnt/raid ext3 defaults 1 2 --将这一行删除掉!或者是批注掉也可以!
 - # 2. 直接关闭 /dev/md0 的方法!
 - [root@linux ~]# mdadm --stop /dev/md0
 - mdadm: stopped /dev/md0 --这样就关闭了!
 - [root@linux ~]# cat /proc/mdstat
 - Personalities : [raid6] [raid5] [raid4]
 - unused devices: <none> --看吧!确实不存在仸何数组设备!
 - [root@linux ~]# vi /etc/mdadm.conf
 - ARRAY /dev/md0 UUID=84c5171f:50290a3e:8673f81b:4cc9501b --同样啦!删除他或是批注他!
 
软件磁盘阵列 (Software RAID)的更多相关文章
- Linux学习-软件磁盘阵列 (Software RAID)
		
什么是 RAID 磁盘阵列全名是『 Redundant Arrays of Inexpensive Disks, RAID 』,英翻中的意思是:容错式廉价磁盘阵列.RAID 可以透过一个技术(软件或硬 ...
 - 软件磁盘阵列(RAID)
		
RAID软件磁盘阵列 RAID 即廉价磁盘冗余阵列,其高可用性和可靠性适用于大规模环境中,相比正常使用,数据更需要被保护.RAID 是将多个磁盘整合的大磁盘,不仅具有存储功能,同时还有数据保护功能. ...
 - 软件源(Software Sources)
		
写在前面:浏览了很多国内外的网站,看了很多关于软件源(Software Sources)设置的文章,发现有很多文章中对软件源的设置存在误解,为了让新人能顺利进入Ubuntu的大家庭,特地作此文,详细地 ...
 - Ubuntu 16.04系统下软件中心Software闪退解决办法
		
按住Ctrl+Alt+T打开终端输入: sudo apt-get update //更新 sudo apt-get dist-upgrade //升级 sudo apt-get install --r ...
 - CentOS 6.3下配置软RAID(Software RAID)
		
一.RAID 简介 RAID 是英文Redundant Array of Independent Disks 的缩写,翻译成中文意思是“独立磁盘冗余阵列”,有时也简称磁盘阵列(Disk Array). ...
 - 磁盘阵列(RAID)
		
RAID 0亦称为带区集.它将两个以上的磁盘并联起来,成为一个大容量的磁盘.在存放数据时,分段后分散存储在这些磁盘中,因为读写时都可以并行处理,所以在所有的级别中,RAID 0的速度是最快的.但是RA ...
 - 一张“神图”看懂单机/集群/热备/磁盘阵列(RAID)
		
单机部署(stand-alone):只有一个饮水机提供服务,服务只部署一份 集群部署(cluster):有多个饮水机同时提供服务,服务冗余部署,每个冗余的服务都对外提供服务,一个服务挂掉时依然可用 热 ...
 - 【转载】一张“神图”看懂单机/集群/热备/磁盘阵列(RAID)
		
单机部署(stand-alone):只有一个饮水机提供服务,服务只部署一份 集群部署(cluster):有多个饮水机同时提供服务,服务冗余部署,每个冗余的服务都对外提供服务,一个服务挂掉时依然可用 热 ...
 - 计算机的组成 —— 磁盘阵列(RAID)
		
磁盘阵列(Redundant Arrays of Independent Disks,RAID),有"独立磁盘构成的具有冗余能力的阵列"之意.(另外一种常见阵列,FPGA:Fiel ...
 
随机推荐
- 使用nginx反向代理jenkins
			
1.在Jenkins 官方网站(http://jenkins-ci.org/)下载最新版本war包.拷贝到 $TOMCAT_HOME/webapps 下(不用解压).启动tomcat服务. 2.找到n ...
 - IPC之binder机制
			
我们知道,在Android系统中,每一个应用程序都运行在独立的进程中,这也保证了当其中一个程序出现异常而不会影响另一个应用程序的正常运转.在许多情况下,我们activity都会与各种系统的servic ...
 - python-tornado-hello,world
			
#!/usr/bin/python import tornado.httpserver import tornado.ioloop import tornado.options import torn ...
 - 解决: selenium webdriver unable to find Mozilla geckodriver
			
1 安装 sudo apt-get install libqt4-dev libqtwebkit-dev 2 gem install capybara-webkit 3 在rails-helper.r ...
 - Oracle 创建表空间和用户
			
创建用户: 建立表空间和用户的步骤: 用户 建立:create user 用户名 identified by "密码"; 授权:grant create session to 用户 ...
 - [心平气和读经典]The TCP/IP Guide(000)
			
The TCP/IP Guide [Page 39] The TCP/IP Guide: Introduction and "Guide to The Guide" | 第1章 概 ...
 - Scrum 冲刺博客第七篇
			
一.当天站立式会议照片一张 二.每个人的工作 (有work item 的ID),并将其记录在码云项目管理中 昨天已完成的工作 对排行榜的界面和功能进行初步设计 今天计划完成的工作 重新对界面进行美化 ...
 - switch   case   :在JDK 7中,又加入了对String类型的支持,从此不用再写If-Else来判断字符串了
			
switch的case语句可以处理int,short,byte,char类型的值, 因为short,byte,char都会转换成int进行处理,这一点也可以从生成的字节码看出. char a = 'e ...
 - Redis(2):常用命令详解
			
redis命令不区分大小写 通用命令:1. 获得符合规则的键名列表: keys pattern 其中pattern符合glob风格 ? (一个字符) * (任意个字符) [] (匹配其中的任意一 ...
 - CentOS下安装Redis(转载)
			
Redis是一个高性能的,开源key-value型数据库.是构建高性能,可扩展的Web应用的完美解决方案,可以内存存储亦可持久化存储.因为要使用跨进程,跨服务级别的数据缓存,在对比多个方案后,决定使用 ...