本章学习目标
使用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 –r /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 –L 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
镜像文件如何制作?