代码改变世界

WARNING: Re-reading the partition table failed with error 22: Invalid argument

2017-05-18 17:19  潇湘隐者  阅读(14062)  评论(0编辑  收藏

在划分磁盘分区时,遇到错误“WARNING: Re-reading the partition table failed with error 22: Invalid argument” 如下所示:

[root@DB-Server u02]# fdisk -l
 
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 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       60801   488279610   8e  Linux LVM
[root@DB-Server u02]# fdisk /dev/sda2
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
 
 
The number of cylinders for this disk is set to 60788.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
 
Command (m for help): m
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   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 (experts only)
 
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1-60788, default 1): 
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-60788, default 60788): 
Using default value 60788
 
Command (m for help): w
The partition table has been altered!
 
Calling ioctl() to re-read partition table.
 
WARNING: Re-reading the partition table failed with error 22: Invalid argument.
The kernel still uses the old table.
The new table will be used at the next reboot.

 

image

 

出现这个错误,是因为没有在有效的设备(valid device)上进行分区操作(太久没有玩这台测试服务器了,忘记当初如何划分存储,测试一个备份的过程急于需要磁盘空间,没有检查情况,就动手了),实际上这个分区类型为 Linux LVM。已经划给VolGroup00了。后续处理如下。

 

[root@DB-Server ~]# pvscan
  PV /dev/sda2   VG VolGroup00   lvm2 [465.66 GB / 413.94 GB free]
  Total: 1 [465.66 GB] / in use: 1 [465.66 GB] / in no VG: 0 [0   ]
[root@DB-Server ~]# lvscan
  ACTIVE            '/dev/VolGroup00/LogVol00' [45.97 GB] inherit
  ACTIVE            '/dev/VolGroup00/LogVol01' [5.75 GB] inherit
[root@DB-Server ~]# more /etc/fstab 
/dev/VolGroup00/LogVol00 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0
[root@DB-Server ~]# vgdisplay
  --- Volume group ---
  VG Name               VolGroup00
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               465.66 GB
  PE Size               32.00 MB
  Total PE              14901
  Alloc PE / Size       1655 / 51.72 GB
  Free  PE / Size       13246 / 413.94 GB
  VG UUID               EYKFmq-O1Ko-0z94-Os3P-AKfC-0bG9-9oTQDh
   
[root@DB-Server ~]# lvextend -L 80G /dev/VolGroup00/LogVol00
  Extending logical volume LogVol00 to 80.00 GB
  Logical volume LogVol00 successfully resized
[root@DB-Server ~]# resize2fs /dev/VolGroup00/LogVol00
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/VolGroup00/LogVol00 is mounted on /; on-line resizing required
Performing an on-line resize of /dev/VolGroup00/LogVol00 to 20971520 (4k) blocks.
The filesystem on /dev/VolGroup00/LogVol00 is now 20971520 blocks long.
 
[root@DB-Server ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                       78G   32G   42G  44% /
/dev/sda1              99M   13M   82M  14% /boot
tmpfs                 1.9G 1023M  916M  53% /dev/shm
/tmp/rhel-server-5.7-x86_64-dvd.iso
                      3.6G  3.6G     0 100% /mnt/cdrom
[root@DB-Server ~]# 

 

clip_image002