How should I run fsck on a Linux file system
2011-05-21 16:01
381 查看
Scenario / Question:
I need to check file system for errors using fsck. Can I run fsck on a mounted file system ?Solution / Answer:
Running fsck on a mounted file system can result in data corruption. The two options are:1) Change the running state of the system to single user mode and unmount the file system
What if you need to run fsck on the root / file system ?
2) Boot the computer into Rescue Mode using the installation CD
1) Single User Mode and umount the file system
Issue command to change run level and umount the /home file system that is mounted on /dev/sda2# init 1 # umount /home
Run fsck:
# fsck /dev/sda2
2) Rescue Mode using installation CD ( to run fsck on root /)
Insert the Installation CD into the drive and reboot your system:# shutdown -r now
After booting from the Installation CD and presented with the installation command prompt type:
linux rescue nomount
Once you are at the system command prompt you need to run mknod. Because we started Rescue Mode with the “nomount” option, no file systems were initialized and no device files were created. If we try to run fsck on a file system it will fail. We need to use mknod to create the block or character special file.
To use mknod we need to know the Minor and Major numbers of the device.
# ls -l /dev/sda 8 0 # ls -l /dev/sda2 8 2
# mknod /dev/sda b 8 0 # mknod /dev/sda2 b 8 2
Run fsck and force the check and attempt to automatically repair:
-y — cause the fs-specific fsck to always attempt to fix any detected filesystem corruption automatically.
-f — force a check even if reported in a clean state
-v — Produce verbose output, including all file system-specific commands that are executed.
# fsck -yvf /dev/sda2
LVM Partitions
In order to be able to run fsck on lvm partitions we need to find the pv’s, vg’s, lv’s and activate them.
# lvm pvscan # lvm vgscan # lvm lvchange -ay /dev/VolGroup00/LogVol_home # lvm lvscan # fsck -yfv /dev/VolGroup00/LogVol_home
LUKS Partition
In order to be able to access an encrypted LUKS partition user cryptsetup.
cryptsetup luksOpen <device> <name>
<device> – is the device path
<name> – is the name of the unencrypted mount that can be accessed by /dev/mapper/<name>
# cryptsetup luksOpen /dev/VolGroup00/LogVol_home home # Ener LUKS passphrase for /dev/VolGroup00/LogVol_home # fsck -yvf /dev/mapper/home
相关文章推荐
- How to programmatically clear the filesystem memory cache in C++ on a Linux system?
- How to run OpenMP on Linux?
- Manually and automatically mount windows file system on Linux
- Using the Oracle ASM Cluster File System (Oracle ACFS) on Linux,Part Two
- creat a run script file on linux
- How To Find Large File Size On Linux
- Create Linux Loopback File System On Disk File
- how to use systemctl on linux(debian)
- How to run program or process on specific CPU cores on Linux(转)
- How to install and run Microsoft Windows for free on Linux
- How to open a large text file on Linux
- How to set up a mail server on a GNU / Linux system
- How to mount Windows share on Red Hat Enterprise Linux system using CIFS
- [已解决]在VMware-server for linux 下装centos错误:an error has occurred. - no valid devices were found on which to create new file system
- Using the Oracle ASM Cluster File System (Oracle ACFS) on Linux, Part Three
- How statically linked programs run on Linux
- How to build and run ARM Linux on QEMU from scratch
- How to run ASP file on VS 2010
- How to rebuild RPM database on a Red Hat Enterprise Linux system?
- How to change the default run level of a RedHat 9.0 or Fedora Core Linux system