Linux下硬件管理(4)

本章学习目标
       使用 kudzu 重新配置硬件
配置模块
基本磁盘管理
高级磁盘管理
外挂设备的使用
 
 
4.1 配置硬件
Linux 下设备的配置过程是指在检测到设备类型、设备当前工作参数等信息之后,使用这些信息来配置设备的驱动程式,工作方式等。要完成这样的任务,需要做两方面的工作:
其一是需要一个详尽的设备信息文档,这个文档描述了设备标识、和设备标识对应的设备驱动程式、设备配置参数(设备选项)、设备配置的周详描述、设备配置方法描述、设备对应的别名、设备的主设备号等信息。
现在的 Linux 内核中使用 kmod 来完成设备模块的自动加载,他的一般工作机制是:在第一次引用设备模块时,内核使用系统命令 /sbin/modprobe 加载这个设备模块。为了使这种机制正常工作,您首先需要使用 depmod -a 建立表述模块之间依赖关系的文档 modules.dep ,然后在 /etc/modules.conf 中配置正确的设备别名,假如还需要配置设备对应的参数。举例来说,在配置网卡时网卡的驱动程式是 ne2k-pci ,网卡的设备别名是 eth0 ,则在文档 /etc/modules.conf 中加入别名 alias eth0 ne2k-pci ,就配置了 ne2000 兼容的 PCI 网卡,这样当有程式要尝试访问网络时,内核会自动加载网卡驱动程式 ne2k-pci
其二是需要根据设备的类型,连同安装的 Linux 系统版本(不同的 Linux 发行版对于同一设备的配置脚本文档存在差异),配置设备对应的配置脚本文档。
4.1.1 检测系统硬件
一、自动检测过程介绍
一般而言,在 Linux 下进行设备自动检测是根据设备的总线类型进行的。现在的微机系统上最常见的总线类型有 PCI SERIAL USB PCMCIA PARPORT ISA SCSI 等。对于检测过程,一般不是通过 c 语言的库函数直接对设备进行访问,并读取设备的信息,而是通过内核的 /proc 文件系统进行。这种检测方式,充分利用了内核中关于硬件的多种检测函数,具有高效、稳定的特点,并且在内核版本升级之后,使程序的变化也为最 小。对于大多数现在流行的系统硬件,在插入适当的模块之后,内核会在 /proc 文件系统中生成相应的描述文件。检测过程就是读取这样的文件,并将其信息进 行相应的处理,从中提取出设备标识、设备描述、设备工作状态等信息。
由于涉及到对 /proc 文件系统的访问,并可能在检测过程开始时插入需要的设备模块,所以需要用户以 root 用户方式执行下面所说的操作。
在检测过程结束的时候,用户一般能够得到设备的唯一标识(制造商标识和设备标识)和设备的当前的状态信息。这时就需要一个设备数据库,这个数据库将设备的 唯一标识和对应的设备驱动程序对应起来,然后由此生成 /etc/modules.conf 中的对应表项及其他配置脚本,完成整个的硬件配置过程。
 
二、在 Linux 中查看硬件信息的工具
Linux 中,并不是没有工具可以查看硬件的芯片信息,应该说 Linux 的工具能把硬件信息查看的更清楚;下面介绍几个常用的工具:
1 lspci 列出所有 PCI 设备;
lspci - list all PCI devices ,主要是有来列出机器中的 PCI 设备,比如声卡、显卡、猫、网卡等,主板集成设备也能列出来; lspci 是读取 hwdata 数据库
#lspci
 
2 、存储设备查看和操作工具; dl.bitsCN.com 网管软件下载
我们查看存储设备的工具主要有 fdisk parted cfdisk 等;最常用也是最方便的就是 fdisk
#fdisk -l
 
3 、通过查看 /proc 目录的相应文件获取一些硬件信息
我们可以通过 cat 命令来读取 /proc 目录下的文件,比如 cpu 的信息;
# cat /proc/cpuinfo
 
4 dmesg play.bitsCN.com 累了吗玩一下吧
dmesg 是一个显示内核缓冲区系统控制信息的工具;比如系统在启动时的信息会写到 /var/log/
dmesg 工具并不是专门用来查看硬件芯片组标识的工具,但通过这个工具能让我们知道机器中的硬件的一些参数;因为系统在启动的时候,会写一些硬件相关的日志到 /var/log/message* /var/log/boot* 文件中;
如果我们用这个工具来查看一些硬件的信息;这个工具信息量太大,的确需要耐心;
# dmesg
 
5 hwbrowser
hwbrowser 是您当前硬件配置的图形化浏览器 ,这个工具是图形的。可能系统在默认的情况下没有安装。需要您安装才行。
#hwbrowser
4.1 hwbrowser 的界面
6 lshal hal-device-manager
通过 lshal hal-device-manager 也能知道硬件相关信息。 hwbrowser lshal 的图形化界;可能系统在默认的情况下没有安装,需要您安装才行。
#lshal
 
4.1.2 kudzu 配置硬件
如果系统不能自动检测到硬件,我们可以考虑使用 kudzu 这个工具来检测连接到计算机上的硬件。
kudzu 的检测过程:
1 、检查连接到计算机的硬件
2 、发现的新硬件与保存在 /etc/sysconfig/hwconf 文件中的硬件信息数据库进行比较。
3 、根据检测到的新硬件或者移出的硬件,提示修改系统配置。
 
       kudzu 的使用方法
#reboot
#kudzu
 
使用 kudzu 配置好硬件之后,可以使用硬件信息查看工具检验是否正确安装了新的硬件设备。
4.1.3 配置模块
硬件驱动是必须由内核支持的,无论是我们自己安装驱动,还是内核自带的驱动都是如此。硬件驱动如果是以内核模块支持的(驱动通常都是模块化的),驱动目录位于: /lib/modules/ 内核版本 /kernel/ 目录 /lib/modules/ 内核版本 /kernel/drivers 目录中。
1 lsmod 列出已加载的模块
#lsmod
 
2 modinfo 查看模块信息
#modinfo             模块名
 
3 modprobe 加载模块
#modprobe   模块名
 
4 rmmod 移出模块
#rmmod              模块名
4.2 磁盘管理
我们知道, Linux 提供了各种建立分区的方法。为了帮助建立分区,可以使用几种标准分区模式。默认情况下,安装 RedHat Linux 时,至少要在不同分区建立两个目录:根目录 (/) /boot
在服务器配置中安装 RedHat Linux 时,默认包括几个挂载目录: /home /usr /var 。如果在不同物理硬盘中安装不同 Linux 目录,则可以用其他配置。表 4.1 包含了几个 Linux 分区配置。
4.1 几个 Linux 分区配置
挂载目录
说明
/ swap
一个硬盘的计算机上的典型配置
/ /boot swap
具有大硬盘的计算机上的典型配置,是配置 Red Hat Linux 9 个人桌面版与工作站版时的默认配置
/ /boot /var swap
日志文件长度造成问题时可用的配置 ( 如来自 Web 服务器 ) ,可以防止过大的日志文件抢占其他目录中的文件所要的空间
/ /boot /home swap
Linux 服务器中具有几个其他用户的主目录时可用的配置。利用配额之类的其他方法可以限制各个用户,与用的空间量
 
4.2.1 磁盘分区
将硬盘分区时,要将其组织成扇面,然后可以格式化。每个硬盘至少要有一个分区。事实上,可以把标准硬盘分成 15 个或 16 个不同分区,取决于它是 IDE 还是 SCSI 盘。
可以在硬盘上配置三种分区:
主分区   IDE SCSI 盘中可以建立最多四个主分区。一个主分区为活动分区,应包括引导装入器,如 GRUB Linux 引导装入器 (LILO) Windows NT/2000/XP 引导装入器。
扩展分区   如果需要更多分区,则可以将一个主分区变成扩展分区。然后可以将扩展分区进一步分解为逻辑分区。
逻辑分区   可以将扩展分区进一步分解为逻辑分区。 SCSI 盘最多可以有 11 个逻辑分区,而 IDE 盘最多可以有 12 个逻辑分区。
 
一、 fdisk 实用程序增加分区
fdisk 实用程序是管理分区的传统工具。尽管 Linux fdisk 实用程序的功能与同名的 DOS 工具相似,但样子不同,更加灵活,可以在现有盘上管理空余空间,可以在硬盘上配置最多四个主分区。利用 fdisk 实用程序可以改变分区类型,变成 100 多种不同类型,包括 FAT32 Novell NetWare Linux Logical Volume Manager Linux Swap 和标准 Linux 分区。
增加新硬盘
Linux 管理员要知道如何在服务器中增加新硬盘。实际连接硬件之后,确保 PC 机能通过 BIOS 或其他方法识别这个硬件。如果 PC 机不能识别这个硬件,则可能是新硬件或连接有问题。
增加新硬盘之后,要进行设置与配置。 fdisk 实用程序是基本硬盘配置工具,如图
4-2 所示,其中配置两个不同的物理硬盘。
4-2  fdisk 实用程序配置两个不同的物理硬盘
可以看出, fdisk -l 命令列出本地计算机上的分区表。这里有两个不同的物理 SCSI 硬盘,指定为 /dev/sda /dev/sdb /dev/sda 硬盘中有几个不同分区。
如图 4-1 所示,没有与 /dev/sdb 相关联的分区。从 fdisk -l 命令的输出可以看出,第二个 SCSI 硬盘没有包含有效分区表。现在要对其进行一些配置。用下列命令通过 fdisk 实用程序打开第二个 SCSI 硬盘:
# fdisk /dev/sdb
 
说明:根据 PATH 变量的值,可能要对 fdisk 之类的命令指定完全路径。如果 fdisk 命令本身不能工作,可以试试 /sbin/fdisk
如果这是全新的硬盘,则可以看到一个消息,表示硬盘不包含有效分区表。如果看不到消息,则可能是已经有人用过这个硬盘。无论如何,下面都会看到 fdisk 实用程序提示:
Command(m for help)
 
m 命令,可以看到 fdisk 实用程序的选项。表 4-2 列出了其中较重要的命令。
下面回到手头的工作:配置新硬盘。我们在 fdisk 实用程序中,首先要建立新分区。发出 n 命令。 fdisk 实用程序可以选择生成主分区或扩展分区。如果已经有扩展分区,则 fdisk 实用程序可以生成逻辑分区。
4-2  fdisk 实用程序命令
命令
结果
a
设置或清除可引导标志,至少要使前两个硬盘之一的一个主分区可引导
d
删除分区。实际删除分区之前,要选择分区号
l
列出已知分区类型,大约有 100 多种不同分区类型
m
显示可用的 fdisk 实用程序命令
n
配置新分区
p
列出当前分区表
q
退出 fdisk 实用程序而不保存改变
t
可以改变分区系统 ID 。还要有分区号和已知分区类型的分区类型可以用命令 l 列出
v
验证当前分区表
w
写入改变和退出 fdisk 实用程序。执行这个命令之后才能将改变写入分区表
 
Command(m for help) n
Command action
e extended
p   primary partition(1-4)
 
首先用 p 命令生成主分区,作为第一个主分区,从第一个可用柱面开始。可以用柱面 KB MB 数指定分区长度,见图 4-3 所示序列。第一个分区配置成 100MB ,从柱面 1 开始。可以看出,这里 100MB 对应于 13 个柱面。
                                  图 4-3  生成主分区
可以继续这个过程,直到配置了所需空间,或对新硬盘分配的所有空间。完成分区配置之后,用 w 命令保存改变。如果要重新开始,则用 q 命令退出而不保存改变。
使用新分区之前,要先将其格式化为 ext2 ext3 vfat 文件系统。这个过程将在本章稍后详细介绍。
 
二、管理现有硬盘
如果在很大的硬盘上安装 RedHat Enterprise Linux 5 ,则可能还会有一些多余空间。记住,硬盘上可以配置最多 15 16 个不同分区,取决于该盘是 IDE 还是 SCSI 盘。本节要切换可引导分区,增加一个新的扩展分区,然后增加和删除一个逻辑分区。
让分区可引导很简单。在 fdisk 实用程序中,运行 a 命令。选择相应主分区, fdisk 实用程序即会增加可引导标志。图 4-4 显示了这个过程。
4-4  让分区可引导
可以在计算机前两个硬盘之一的可引导分区上安装 GRUB LILO 之类的引导装入器。
根据图 4-2 所示的配置,新硬盘中还有多个自由柱面。 Boot 列下面的空间是空的,标为 Linux 分区。
熟悉 fdisk 实用程序后,生成扩展分区和逻辑分区很简单。但是,也可以选择不同柱面。
 
三、修改分区表
fdisk 实用程序可以配置 LVM 的交换空间分区,以及其他操作系统的分区。
Linux fdisk 实用程序生成新分区时,其默认建立带 Linux 标志的新分区。可以将每个分区配置成基本 Linux 格式: ext2 ext3 xfs reiserfs 等等。但是,还有几个其他标注分区的方法。
fdisk 实用程序打开要改变的分区所在的硬盘。
fdisk 实用程序中,用 t 命令改变分区标志。要选择分区名,然后输入所要系统的十六进制码。例如,下图命令将 /dev/sdb5 逻辑分区变成 Linux 交换系统:
 
   
4-5  生成扩展分区和逻辑分区
 
4.2.2 磁盘格式化
一、分区格式化
Linux 将使用 mkfs 命令进行格式化。如果已经正确地格式化分区,只要使用这个命令, Linux 就会将分区重新格式化为相同文件系统,否则要用 -t 选项指定要建立的文件系统类型。还可以先检查坏块,之后再格式化,为此要使用 -c 选项。
这些命令很简单。例如, -t 命令将 /dev/sdb1 分区格式化为指定的文件系统类型:
# mkfs -t ext2 /dev/sdb1
# mkfs -t ext3 /dev/sdb1
# mkfs -t vfat /dev/sdb1
# mkfs -t reiserfs /dev/sdb1
 
另一种格式化成 ext3 文件系统的方法是使用下列命令 (-i 生成日志 )
# mkfs -i /dev/sdb1
 
二、调整 分区格式
很容易将格式化为 ext2 文件系统的旧分区转换成 ext3 。事实上, ext3 文件系统与 ext2 基本相同,惟一的差别是 ext3 文件系统包括日志。
  因此,如果对 ext2 文件系统生成日志,则其自动变成 ext3 文件系统。只要使用 tune2fs -j 命令即可。例如,下列命令将格式化为 ext2 文件系统的 /dev/hda1 分区转换成 ext3
# tune2fs -j /dev/hda1
 
4.2.3 磁盘挂载
一、手动挂载与卸载
读取和写入 Linux 分区之前,首先要挂载目录。需要指定分区、所挂载目录和分区的格式、 mount 命令的典型语法如下:
# mount -t format partition directory
format 可以配置分区格式,如 ext2 ext3 vfat partition 是要挂载的硬盘设备,如 /dev/ sda1 /dev/hda1 directory 也称为挂载点,是对这个分区分配的 Linux 目录结构,如 /boot /home /var
换句话说,可以用下列命令将 /home/mj 目录挂载到格式化成 ext3 文件系统的 /dev/sdb1 分区:
# mount -t ext3  /dev/sdb1  /home/mj
这比通常的命令更复杂。 /etc/filesystems 配置文件中列出了格式, mount 命令可以检查这个文件,找出与 /dev/sdb1 分区相应的格式。因此只要使用下列命令即可:
# mount /dev/sdb1 /home/mj
还可以进一步简化。如果在 /etc/fstab 配置文件中增加下列语句,只要指定分区或目录即可:
/dev/sdb1  /home/mjext3  defaults  1 2
  这时可以使用下列命令:
# mount /dev/sdb1
# mount /home/mj
有时要卸载目录。例如,在许多计算机中, Linux 会锁定光碟驱动器, 直到用如下命令卸载目录:
# umount /mnt/cdrom
注意,这个命令是 umount ,而不是 unmount
 
二、开机自动加载
Linux 在引导过程中用 /etc/fstab 文件按不同方式挂载分区和目录。如图 4-6 所示,每个文件系统有几个相关的参数。这些参数确定文件系统如何挂载、数据如何读取、文件系统有哪些相关用户权限,等等。
  
4-6  /etc/fstab 确定文件系统如何挂载
可以看出, /etc/fstab 中每一行有六个不同字段。表 4.3 列出了这些字段,从左到右进行介绍。
大多数情况下,用 LABEL=/ 之类的清单检查计算机上的分区数据,寻找要挂载的实际分区设备,如 /dev/hda3
还有其他挂载选项,如 usrquota grpquota( 设置配额 ) noauto( 保证 Linux 引导时不寻找光碟或软盘 ) user( 让任何用户挂载文件系统,如光碟 )
4.3  /etc/fstab 字段
列号
字段
描述
1
Label
要安装的文件系统 ( /usr) 或分区 ( /dev/sdb1)
2
Mount Point
要挂载的分区或文件系统所在目录
3
Format
文件系统格式类型,如 ext2 ext3 reiserfs
4
Mount Options
默认选项包括 rw( 读写 ) suid(SUID 权限 ) dev( 终端与磁盘之类的块设备 ) exec( 二进制文件 ) auto( 自动挂载 ) nouser( 只有根用户可以挂载 ) async( 数据异步读写 )
5
Dump Value
1 表示文件系统自动写入磁盘
6
Filesystem Check Order
需要 fsck 的文件系统,根文件系统为 1 ,本地计算机上的其他文件系统为 2 ,交换、虚拟、光碟、软盘和远程目录为 0
 
       三、按需加载
1 、更改自动加载文件
#vi  /etc/auto.master 添加一行
/media/test    /etc/auto.misc        --timeout=15
#/media/test 是挂载的真实目录
2 、更改文件 /etc/auto.misc
#vi /etc/auto.misc
/abc             -fstype=ext3          :/dev/sdb5
#abc 是虚拟目录的名字
3 、重新启动自动加载服务
#service autofs     restart
4.3 磁盘管理扩展
对于磁盘,除去分区格式化之外,还有其他一些常见的操作,例如交换分区的增加与删除, Raid 的配置和 LVM 的管理等。
4.3.1 交换分区调整
Linux 的交换分区,相当于 Windows 系统的虚拟内存,通常来说,交换分区大一些好,所以,我们适时的需要增加交换分区。
实例,将交换分区增加 100M
1 、使用虚拟设备生成空文件
#dd  if=/dev/zero  of=/tmp/swapfile1  bs=10M  count=10
 
       2 、生成交换分区文件
#mkswap  /tmp/swapfile1
 
       3 、激活交换分区
#swapon       /tmp/swapfile1
 
       4 、交换分区永久生效
#vi /etc/rc.local 添加
swapon /tmp/swapfile1
4.3.2 配置 raid 磁盘
一、 RAID 简介
计算机制造商们全面打起了提速战。作为计算机最重要的外部存储设备,硬盘当然也不甘落后,相继推出速度更快的硬盘。即便如此,硬盘存储仍然摆脱不了系统性能瓶颈的角色。不仅如此,硬盘存储在数据安全上也是问题多多。现在人们的工作已无法摆脱计算机,这一方面使得人们的工作效率大大提高,但潜在的危险也是明摆着的:一旦硬盘的数据损坏,人们长时间的工作就可能毁于一旦。
  那么,有没有基于现在的硬盘提升存储性能和数据安全的技术呢?答案是肯定的,它就是 RAID 技术。
 RAID 是由美国加州大学伯克利分校的 D.A. Patterson 教授在 1988 年提出的。 RAID Redundent Array of  Inexpensive  Disks 的缩写,直译为 廉价冗余磁盘阵列 ,也简称为 磁盘阵列 。后来 RAID 中的字母 I 被改作了 Independent RAID 就成了 独立冗余磁盘阵列 ,但这只是名称的变化,实质性的内容并没有改变。简单地讲, RAID 技术就是利用多个硬盘的组合提供高效率及冗余的功能。
 
二、 Raid 的常用级别
具体实现起来, RAID 的级别很多,各级别有着各自的优缺点,用户可以根据不同的需求来选择合适的级别。
RAID 0
RAID 0 需要至少两个硬盘,是没有任何保护的,它只是将两个或多个相同型号及容量的硬盘组合起来,而当系统提取数据时,它可以同时由所有硬盘(同一个阵列里)读出数据,速度会比一个硬盘快得多。而亦因为它没有任何的数据保护,只要其中一只硬盘出事,所有数据便会被破坏。所以 RAID0 通常应用在一些非重要资料上,如影像撷取。磁盘阵列的总容量为各个硬盘容量之和。
RAID 1
这个级别由两个(只有两个)硬盘组成,亦可称为镜像( Mirroring )。每一个资料均会相同的写在两个硬盘上,镜像就是因为两个硬盘的内容将会一模一样,但对于系统来说都只会见到一个硬盘。当然,资料写入的时间可以会长一点,但读则没有影响,因为两个硬盘是可以同时读取资料的。磁盘阵列的总容量为其中一块硬盘的容量。
 RAID 5
  这个级别也是需要至少三个硬盘。数据会分割跟 RAID3 一样,但并不会有一个特定的硬盘将来储存校验值,所有数据及校验值都会分布在所有硬盘上。 RAID 5 消除了 RAID3 在写数据上的瓶颈,可以提供高速数据读取并针对多用户模式, RAID 5 所提供的功能及表现是有 RAID 级别之中最好的。 RAID5 常使用缓冲技术来降低性能的不对称性。与 RAID3 一样,如果组成磁盘阵列的硬盘相同,磁盘阵列的总容量也为各个硬盘容量之和减去一块硬盘的容量。 RAID5 级以合理的价位提供了最佳的性能和数据安全性,因此目前它很受欢迎。
三、 Raid 的种类
基于不同的架构, RAID 可以分为 :
软件 RAID ( 软件 RAID)
软件 RAID 很多情况下已经包含在系统之中,并成为其中一个功能,如 Windows Netware Linux 。软件 RAID 中的所有操作皆由中央处理器负责,所以系统资源的利用率会很高,从而使系统性能降低。软件 RAID 是不需要另外添加任何硬件设备,因为它是靠你的系统 主要是中央处理器的功能 提供所有现成的资源。
硬件 RAID ( 硬件 RAID)
硬件 RAID 通常是一张 PCI 卡,你会看到在这卡上会有处理器及内存。因为这卡上的处理器已经可以提供一切 RAID 所需要的资源,所以不会占用系统资源,从而令系统的表现可以大大提升。硬件 RAID 可以连接内置硬盘、热插拔背板或外置存储设备。无论连接何种硬盘,控制权都是在 RAID 卡上,亦即是由系统所操控。
在系统里,硬件 RAID PCI 卡通常都需要安驱动程序,否则系统会拒绝支持。磁盘阵列可以在安装系统之前或之后产生,系统会视之为一个(大型)硬盘,而它具有容错及冗余的功能。磁盘阵列不单只可以加入一个现成的系统,它更可以支持容量扩展,方法也很简单,只需要加入一个新的硬盘并执行一些简单的指令,系统便可以实时利用这新加的容量。
 
       四、 Redhat Enterprise Linux5 实现 raid
       1 、创建 Raid5 设备
mdadm  -C  raid 设备名   lraid 级别   nraid 磁盘数   磁盘分区 1  磁盘分区 2  磁盘分区 3
#mdadm              -C    raid0       -l5   -n3  /dev/sdb1       /dev/sdb2       /dev/sdb3
 
       2 、使用 Raid 设备和使用其它磁盘分区一样,先格式化,后挂载。
#mkfs.ext3   /dev/md0
#mount  /dev/md0        /mnt/aaa
 
       3 raid 设备的修复
#mdadm  raid0  -f   /dev/sdb3
# 标记损坏设备
#mdadm  raid0   -a   /dev/sdb5
# 添加新设备到阵列中
# mdadm   raid0 �Cr  /dev/sdb3
# 移出损坏的设备并查看
4.3.3 配置 LVM
如果没有逻辑卷管理系统 (LVM) ,则安装 RedHat Enterprise Linux 5 期间一定要确定如何将硬盘分区。一旦硬盘分区之后,就很难扩大各个分区的空间。
例如,假设在另一分区中建立 /home 目录。事先计划了 10 个用户所需的空间。但随着公司扩大,需要 20 个用户所需的空间。如果没有逻辑卷管理系统,则很难扩大 /home 分区长度,需要备份 /home 中的文件,寻找具有足够空间的分区,然后将文件恢复到这个分区。
逻辑卷管理系统可以在不同文件系统之间重新分析磁盘空间块。利用逻辑卷管理系统,就可以在 /var 之类的文件系统中还有多余空间时,将多余空间分配给 /home 目录。
可以在安装 RedHat Enterprise Linux 5 期间生成逻辑卷管理系统卷组,也可以用下面几节介绍的方法,生成和管理逻辑卷管理系统卷组。即使安装 RedHat Enterprise Linux 5 期间已经生成逻辑卷管理系统卷组,也请继续往下阅读。如果不能用本节介绍的命令增加与减少逻辑卷长度,则逻辑卷管理系统也没什么用。
4.5.1 LVM 基础
逻辑卷管理系统实际上是硬盘中不同物理段的映像。集合到一个逻辑卷之后, /home /usr 之类的文件系统可以挂载到这个卷中。逻辑卷可以重新组织,包括增加的硬盘空间。
下面简要介绍逻辑卷管理系统的功能,要了解逻辑卷管理系统的工作,首先要了解几个基本定义:
物理卷(PV Physical volume)   物理卷通常对应于硬盘上的标准主分区或逻辑分区。
物理块(PE Physical extent)   物理块是磁盘空间块。物理卷分成几个等长的物理块。
逻辑块(LE Logical extent)   逻辑块是磁盘空间块。逻辑卷管理系统中的逻辑块长度与这个系统中的物理块长度相同,每个逻辑块对应于特定物理块。
逻辑卷(LV Logical volume)   逻辑卷是逻辑块的集合,可以在逻辑卷中挂载 /usr /boot 之类的文件系统。
卷组(VG Volume group)   系统中的逻辑卷集合起来即可形成卷组。配置逻辑卷管理系统时,大多数命令那是针对卷组的。
4.5.2 生成物理卷
首次实现逻辑卷管理系统时,最好在新硬盘上配置。安装硬盘之后,先不要安装任何分区。可以在整个硬盘上建立一个逻辑卷管理系统。例如,如果硬盘是辅助 IDE 接头上的从盘。则 Linux 设备为 /dev/hdd ,要在这个盘上建立物理卷,用下列命令:
# pvcreate  /dev/hdd
 
如果已经用 fdisk 之类的实用程序建立分区,则可以在特定分区上建立物理卷。首先运行 fdisk 实用程序,改变所要分区的系统 ID 。进入 fdisk 实用程序菜单之后,可以用下列命令改变硬盘上的假想分区号:
Command(m for help) t
Partition number(1―15) 1
Hex code(type L to list codes) 8e
 
不要对需要保留数据的任何分区使用这个命令。一旦改变 Linux 逻辑卷管理系统类型,就可以用下列命令生成物理卷:
# pvcreate /dev/hdd1
 
配置两个或多个物理卷之后,下一步要生成卷组。
4.5.3 生成卷组
卷组是一个或几个硬盘上配置的物理卷的集合。增加更多物理卷时,可以将其加进现有卷组。
生成卷组很简单,甚至可以用下列命令指定所要的卷组名 ( programs)
# vgcreate programs /dev/sdc1 /dev/sdd1
 
生成卷组之后,可以用下列命令将物理卷加进现有卷组:
# vgextend programs /dev/sde1
 
然后可以将卷组组织成物理卷中可以建立的块。
4.5.4 生成逻辑卷
最后要生成逻辑卷,挂载 /home /var 之类的文件系统。们首先要知道卷中物理块的长度。为此可以使用 vgdisplay 命令。用上节生成的卷组时,命令如下:
# vgdisplay programs
 
可以看出,其中包括这个组的最大逻辑卷与物理卷个数、卷组长度和卷组中的物理块长度。
然后即可用下列命令生成所要长度的逻辑卷:
# lvcreate      -l     num_of_PEs   programs        -n    logicvol
 
上例中新的逻辑卷名为 logicvol 。由于物理块长度为 4MB ,因此,如果要建立 200MB logicvol 逻辑卷管理系统分区,则可以将 num_of_PEs 改成 50
这样就生成了新设备 /dev/programs/logicvol 。现在可以像任何其他硬盘分区一样,格式化和挂载这个设备。例如,下列命令将其格式化为 ext3 文件系统,将其挂载到 /tmp 目录:
# mkfs -j /dev/programs/logicvol
# mount -t     ext3 /dev/programs/logicvol   /tmp
 
现在很容易增加 /dev/programs/logicvol 设备长度。假设还有多余的物理块,只要用 lvextend 命令。下列命令将 /dev/programs/logicvol 长度增加到了 300MB
# lvextend     �CL   300M       /dev/programs/logicvol
4.4 使用外挂设备
4.4.1 U / 移动硬盘
RedHat Enterprise Linux 5 已经提供了移动存储设备的自动识别能力。将你的 U 盘或者移动硬盘插入 USB 口中,等待系统识别一小会,然后在控制台状态下输入如下命令:
#fdisk -l
 
则系统会将你的 U 盘以 sd? 的形式显示出来,这个?部分可能为 a b c 等,也可能为 a1 a2 a3 等,表示的是你的硬盘设备的顺序,你只需要根据你的 U 盘的容量找出对应的标示即可。
你如果您有多个 USB 设备话,则设备名在 Linux 下分别表示为 sda sdb sdc 等。
接着,在 /mnt 目录下建立一个挂装 USB 存储器的目录:
#mkdir /mnt/usb
然后再运行装载设备命令,将 USB 设备挂装到 /mnt/usb 目录下:
#mount -t msdos /dev/sda1 /mnt/usb
其中 sda1 标示你的 U 盘, usb 标示你的 U 盘被挂载的目标目录。
注意:如果在 fdisk 中显示您的 USB 设备的文件系统为 FAT32 ,请使用
#mount -t vfat /dev/sda1 /mnt/usb
命令装载 USB 设备。
运行如下命令即可查看 USB 存储器中的文件信息:
#ls /mnt/usb
然后你就可以像对待硬盘一样对 USB 存储器中的数据进行拷贝、删除等操作了。
使用完毕,不要忘了执行卸载任务,否则可能造成数据丢失。
执行
#umount /mnt/usb
即可,执行完毕就可以放心地取下 U 盘了。
4.4.2 刻录机的使用
1 、检查刻录机
#cdrecord     -scanbus
 
2 、刻录光盘
#cdrecord            -v    speed=4 dev=0,3,0 my.iso
 
3 、擦除光盘
#cdrecord --dev=0,3,0 --blank=fast
 
4.4.3 光盘使用
光盘格式是一种发行大型软件程序和多媒体游戏以及演示的常用格式,多数可从销售点中购买的软件都使用光盘形式。接下来将介绍如何在 Red Hat Linux 系统下使用光盘。按照默认设置,光盘会被自动挂载,桌面上还会出现一个光盘图标,用户可以使用这个图标来卸载并弹出光盘。右击光盘图标载弹出的快捷菜单中可以看到所有可用的选择,例如,要卸载并弹出光盘,在菜单上选择“弹出”命令即可。
也可以使用命令行的方式来挂载和卸载光盘:
#mount /mnt/cdrom      挂载光盘
#umount /mnt/cdrom     卸载光盘
 
4.4.4 ISO 镜像制作使用
1 ISO 镜像的制作
如果你从网络安装,通常会用到 ISO 镜像。
从光盘制作 ISO 镜像
#dd       if=/dev/cdrom        of=/mnt/iso.f1.iso
 
2 ISO 镜像文件的使用
#mount   -o  loop  /tmp/a.iso    /mnt/iso
这些文章很详细大家不看,一大损失啊!!!
这够长的了供大家支参考呵呵!!!!
留几个问题吧!!很常用!
 
       1 :磁盘和磁盘分区是如何在 linux 系统中表示的?
2 :如何在 linux 中添加一块硬盘?
       3 :什么是 LVM ?其优点是什么?如何使用 LVM 进行逻辑卷管理?
4 Raid 常用的分为几种?
5 ISO 镜像文件如何制作?

本文出自 “grant.blog.com” 博客,谢绝转载!

你可能感兴趣的:(linux,职场,休闲)