方法/步骤
Linux的硬盘识别
2.6 kernel以后,linux会将识别到的硬件设备,在/dev/下建立相应的设备文件.如:
sda 表示第1块SCSI硬盘.
hda 表示第1块IDE硬盘(即连接在第1个IDE接口的Master口上).
scd0 表示第1个USB光驱.
当添加了新硬盘后,在/dev目录下会有相应的设备文件产生.cciss的硬盘是个例外,它的
设备文件在/dev/cciss/目录下.一般使用”fdisk -l”命令可以列出系统中当前连接的硬盘
设备和分区信息.新硬盘没有分区信息,则只显示硬盘大小信息.
一、在虚拟机客户端扩充磁盘空间:1
打开VMware Workstation2
1、编辑虚拟机设置3
2、硬件-添加-硬盘-下一步
步骤阅读
4
3.然后出现如下图:选择“创建一个新的虚拟磁盘(V)”
步骤阅读
5
4.选择新磁盘的类型,设置默认如图:
步骤阅读
6
5.选择新硬盘所在的虚拟位置:
步骤阅读
7
6.设置新添加的硬盘的容量:
步骤阅读
二、磁盘分区
1.运行如下命令来检查当前磁盘空间大小。
# df -h
# fdisk -l
如图可以看到,虽然我们已经在后端给其增加到50 GB 的空间,但此时的总磁盘大小仍然为 10 GB。
步骤阅读3
2、扩展空间而无需重启虚拟机
现在运行如下命令,通过重新扫描 SCSI (注:Small Computer System Interface 小型计算机系统接口)总线并添加 SCSI 设备,系统就可以扩展操作系统的物理卷磁盘空间,而且不需要重启虚拟机。
查看主机总线号
# ls /sys/class/scsi_host/
重新扫描SCSI总线来添加设备
# echo "- - -" >/sys/class/scsi_host/host0/scan
# echo "- - -" >/sys/class/scsi_host/host1/scan
# echo "- - -" >/sys/class/scsi_host/host2/scan
带###部分可省略
###使用下面的命令来检查 SCSI 设备的名称,然后重新扫描 SCSI 总线。
###ls /sys/class/scsi_device/
### echo 1 > /sys/class/scsi_device/0\:0\:0\:0/device/rescan
### echo 1 >/sys/class/scsi_device/2\:0\:0\:0/device/rescan
如下图所示,会重新扫描 SCSI 总线,随后我们在虚拟机客户端设置的磁盘大小会正常显示。
步骤阅读
重新查看磁盘分区可以看见新加的盘
fdisk
3、创建新磁盘分区:
一旦在系统中可以看到扩展的磁盘空间,就可以运行如下命令来格式化您的磁盘以创建一个新的分区。请按如下操作步骤来扩充您的物理磁盘卷。
# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2)press the 'm' key for help
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibilityflag
d delete a partition
g create a new empty GPT partitiontable
G create an IRIX (SGI) partitiontable
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partitiontable
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (expertsonly)
Command (m for help):
5
键入'p'来查看当前的分区表信息,然后键入'n'键来创建一个新的主分区,选择所有可用的扇区,使用't'命令改变磁盘类型为'Linux LVM',然后选择编码 '8e' 或者默认不选,它默认的类型编码为 '83'。现在输入 'w' 来保存分区表信息并且退出命令环境,如下示:
Command (m for help): w
The partition table has beenaltered!
Calling ioctl() to re-read partitiontable.
WARNING: Re-reading the partition tablefailed with error 16: Device or resource busy.
The kernel still uses the oldtable.
The new table will be used at the nextreboot or after you run partprobe(8) or kpartx(8)
#############################################################################################################################################################################################
三、创建物理卷:
根据上述提示,运行'partprob'或'kpartx'命令以使分区表生效,然后使用如下的命令来创建新的物理卷。
# partprobe
# pvcreate /dev/sda3
要检查新创建的卷,运行如下的命令可以看出新的物理卷是否已经被创建,是否可用。接下来,我们就可以使用这个新的物理卷来扩展 'CentOS' 卷组了,如下示:
# pvdisplay
# vgextend centos /dev/sda3
步骤阅读
7
扩展逻辑卷:
现在我们使用如下的命令扩展逻辑卷,以增加我们系统正使用的磁盘空间。# lvextend -L +40G/dev/mapper/centos-root一旦返回增加成功的消息,就可以运行如下命令来扩展您的逻辑卷大小。
# xfs_growfs /dev/mapper/centos-root
此时df -h若没有生效,执行:
fsadm resize /dev/mapper/centos-root
或resize2fs-p /dev/mapper/centos-root(适于LVM格式虚拟机)
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/centos-root is mounted on /oradata; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 5
Performing an on-line resize of /dev/mapper/centos-root to 17300480 (4k) blocks.
The filesystem on /dev/mapper/centos-root is now 17300480 blocks long.
'/' 分区的大小已经成功的增加了,可以使用 'df' 命令来检查您磁盘驱动器的大小。如图示。
########################################################################################################################################
对要挂载的硬盘创建磁盘分区、格式化:
一、磁盘分区
fdisk /dev/vdb
Command (m for help):n回车
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):p回车
Partition number (1-4, default 1):1回车
Partition number (1-4): 1回车
First sector (2048-419430399, default 2048): 回车
Last cylinder, +cylinders or +size{K,M,G} (1-416101, default 416101):回车
Command (m for help): w
创建新硬盘分区命令参数:
fdisk可以用m命令来看fdisk命令的内部命令; |
a:命令指定启动分区; |
d:命令删除一个存在的分区; |
l:命令显示分区ID号的列表; |
m:查看fdisk命令帮助; |
n:命令创建一个新分区; |
p:命令显示分区列表; |
t:命令修改分区的类型ID号; |
w:命令是将对分区表的修改存盘让它发生作用。 |
fdisk -l
找到物理磁盘/dev/vdb下创建的分区,若找不到运行'partprob'或'kpartx'命令以使分区表生效。
二、格式化
mkfs.ext4 /dev/vdb1
格式化上述找到的分区。
Writing superblocks andfilesystem accounting information:回车(等待1~10分钟,视磁盘大小)
三、挂载磁盘:
1、创建目录mkdir -p /data
2、挂载分区mount /dev/vdb1 /data
3、查看硬盘大小以及挂载分区#df -h
4、查看分区UUID
##首先使用lsblk命令可以清晰的获取全局的块设备布局
##然后,使用blkid命令可以获取设备的UUID。复制记下sdb1的UUID。
Blkid
查看磁盘UUID及文件类型。
/dev/vdb1: UUID="f524c7a6-4fbb-41a9-8640-54e4e0ae69c1"TYPE="ext4"
5设置开机自动挂载:
vi /etc/fstab
编辑系统分区表(使系统启动后自动挂载),增加一条数据:
UUID=f524c7a6-4fbb-41a9-8640-54e4e0ae69c1 /dataext4 defaults 1 2
mount -a
##Linux中 UUID挂载的作用及意义
###原因1:它是真正的唯一标志符
###UUID为系统中的存储设备提供唯一的标识字符串,不管这个设备是什么类型的。如果你在###系统中添加了新的存储设备如硬盘,很可能会造成一些麻烦,比如说启动的时候因为找不###到设备而失败,而使用UUID则不会有这样的问题。
###原因2:设备名并非总是不变的
###自动分配的设备名称并非总是一致的,它们依赖于启动时内核加载模块的顺序。如果你在####插入了USB盘时启动了系统,而下次启动时又把它拔掉了,就有可能导致设备名分配不一###致。
###使用UUID对于挂载移动设备也非常有好处──例如我有一个24合一的读卡器,它支持各####种各样的卡,而使用UUID总可以使同一块卡挂载在同一个地方。
###原因3:ubuntu中的许多关键功能现在开始依赖于UUID
###例如grub──系统引导程序,现在可以识别UUID,打开你的/boot/grub/menu.lst,你可以####看到类似如下的语句:
title Ubuntu hardy (development branch), kernel 2.6.24-16-generic
root (hd2,0)
kernel /boot/vmlinuz-2.6.24-16-genericroot=UUID=c73a37c8-ef7f-40e4-b9de-8b2f81038441 ro quiet splash
initrd /boot/initrd.img-2.6.24-16-generic
quiet