For file system related errors, in one of the following circumstances, take the actions as indicated for the relevant situation.
(1) Restoring the file system created on the local volume
Explanation
This is the procedure to restore the file system created on the volume of the local class by using the fsck(8) command.
Take the same procedure when using the xfs_repair(8) command to restore the xfs file system.
Resolution
If the file system is located on the local volume, how to execute the fsck(8) command is equal to when restoring the file system created on the physical slice, with following three exceptions.
Start the volume before executing the fsck(8) command.
When executing the fsck(8) command, specify the device special file (/dev/sfdsk/class_name/dsk/volume_name) of the GDS volume.
The fsck(8) command cannot be executed in single user mode.
The following example shows the procedure when the class name is Class1, the volume name is Volume1, the mount point is /mount_point, and the file system type is ext4.
Stop applications that use the target file system.
Unmount the target file system if it is mounted.
# umount /mount_point |
Start the target volume.
If the volume is already started, skip this step.
# sdxvolume -N -c Class1 -v Volume1 |
Execute the fsck(8) command.
When executing the fsck(8) command, specify the device special file of the target volume.
# fsck -t ext4 /dev/sfdsk/Class1/dsk/Volume1 |
See
For more information such as fsck(8) command options, see the manual page of fsck(8).
(2) Restoring the file system created on the shared volume
Explanation
This is the procedure to restore the file system created on the volume of the shared class by using the fsck(8) command.
Take the same procedure when using the xfs_repair(8) command to restore the xfs file system.
Resolution
If the file system is located on the shared volume, how to execute the fsck(8) command is equal to when restoring the file system created on the physical slice, with following three exceptions.
Before executing the fsck(8) command, stop the target volume on any nodes except the node where the fsck(8) command is executed. Also, start the target volume on the node where the fsck(8) command is executed.
When executing the fsck(8) command, specify the device special file (/dev/sfdsk/class_name/dsk/volume_name) of the GDS volume.
The fsck(8) command cannot be executed in single user mode.
The following example shows the procedure when the class name is Class1, the volume name is Volume1, the mount point is /mount_point, and the file system type is ext4.
Take any one of the following two procedures suitable for each case:
The class is not registered to the cluster application.
The class is registered to the cluster application.
On all the nodes in the class scope, stop the applications that use the target file system.
On all the nodes in the class scope, unmount the target file system.
# umount /mount_point |
On all the nodes in the class scope, stop the target volume.
Log in to any one of the nodes in the class scope, and execute the sdxvolume -F -e allnodes command.
# sdxvolume -F -c Class1 -v Volume1 -e allnodes |
Start the target volume on any one of the nodes in the class scope.
# sdxvolume -N -c Class1 -v Volume1 |
Execute the fsck(8) command on the node where the volume has been started in step 4.
When executing the fsck(8) command, specify the device special file of the target volume.
# fsck -t ext4 /dev/sfdsk/Class1/dsk/Volume1 |
See
For more information such as fsck(8) command options, see the manual page of fsck(8).
Stop the applications that use the target class.
See
For how to stop the cluster application, see "PRIMECLUSTER Installation and Administration Guide."
Start the target volume on any one of the nodes in the class scope.
# sdxvolume -N -c Class1 -v Volume1 |
Execute the fsck(8) command on the node where the volume has been started in step 2.
When executing the fsck(8) command, specify the device special file of the target volume.
# fsck -t ext4 /dev/sfdsk/Class1/dsk/Volume1 |
See
For more information such as fsck(8) command options, see the manual page of fsck(8).
Stop the target volume on the node where the volume has been started in step 2.
# sdxvolume -F -c Class1 -v Volume1 |
(3) Restoring the file system created on the root volume
Explanation
This is the procedure to restore the file system created on the volume of the root class by using the fsck(8) command.
Take the same procedure when using the xfs_repair(8) command to restore the xfs file system.
Resolution
For file systems except / (root), /usr, and /var, how to restore the file system is equal to when restoring the file system created on the local class volume.
For details on the procedure, see "(1) Restoring the file system created on the local volume."
The / (root), /usr, and /var file systems cannot be unmounted during system operation. In this case, to execute the fsck(8) command, boot the system from the CD-ROM drive. Boot the system from the CD-ROM drive, execute the fsck(8) command for one of the mirrored physical slices, and then copy the data from that physical slice to another physical slice.
When taking this procedure to restore the file system created on the volume of the root class, check the following items when the system disk is registered to the root class, and write down them for later reference.
Physical disk information of the system volume
Slice number of the system volume
For details, see "6.5.4 Checking Physical Disk Information and Slice Numbers."
Turn on the server, and insert the installation CD into the CD-ROM drive.
From boot devices displayed in the boot option selection screen of the EFI boot manager, select the CD-ROM device, and boot the system in rescue mode. For details, see the OS manual.
Note
Do not mount a file system when booting in rescue mode in an environment where the system disk is mirrored.
Check the physical slice name of the target file system to be restored among the / (root), /usr, and /var file systems.
For the grep command arguments, specify the physical disk information confirmed in "6.5.4 Checking Physical Disk Information and Slice Numbers."
# ls -l /sys/block/sd* | grep 0000:06:02.0 | grep 0:0:0 (*1) (*1) lrwxrwxrwx 1 root root 0 Jun 1 2005 /sys/block/sda ->\ (*2) ../devices/pci0000:02/0000:02:1f.0/0000:06:02.0/host2/\ target0:0:0/0:0:0:0/block/sda # ls -l /sys/block/sd* | grep 0000:06:02:0 | grep 0:2:0 (*1) (*1) lrwxrwxrwx 1 root root 0 Jun 1 2005 /sys/block/sdb ->\ (*2) ../../devices/pci0000:02/0000:02:1f.0/0000:06:02.0/host2/\ target0:0:2/0:0:2:0/block/sdb |
(*1) Physical disk information (*2) Physical disk name
In this example, the physical disk names are sda and sdb.
By combining the physical disk name and the slice numbers confirmed in "6.5.4 Checking Physical Disk Information and Slice Numbers," you can get the physical slice names.
In this example, the physical slice names are as follows.
Use | Physical slice name | |
---|---|---|
/ | sda1 | sdb1 |
/var | sda2 | sdb2 |
/usr | sda3 | sdb3 |
Execute the fsck(8) command for one of the physical slices to restore the file system.
In this example, execute the fsck(8) command for the slice of the root file system (/) checked in step 3.
# fsck -t ext4 /dev/sda1 |
If the file system cannot be restored, execute the fsck(8) command for another physical slice.
See
For more information such as fsck(8) command options, see the manual page of fsck(8).
From the physical slice where the file system is restored in step 4., copy the data to another physical slice.
# dd if=/dev/sda1 of=/dev/sdb1 bs=1M |
Note
If the mirroring multiplicity is n, among n mirrored slices, copy data to all "n-1" slices other than the slice restored by the fsck(8) command in step 4.
See
Specify a correct option referring to the dd(1) command manual.
Exit the rescue mode, and start the system.
# exit |