生活随笔
收集整理的這篇文章主要介紹了
【LINUX】Oracle数据库 linux磁盘头数据损坏修复
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本次模擬 通過fdisk分區的磁盤頭損壞,造成文件目錄無法使用。 如果是asm磁盤,可通過asm相關命令進行修復
現有環境
[root@pgtest testdata]# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/vg_firsouler-lv_root9.5G 7.1G 2.0G 79% /tmpfs 996M 72K 996M 1% /dev/shm/dev/sda1 477M 42M 410M 10% /boot/dev/mapper/pgvg-lvpg19G 4.4G 14G 25% /pgdata/dev/sdc1 5.8G 12M 5.5G 1% /testdata[root@pgtest testdata]# lsanalyze_new_cluster.sh gp2020.cfg lost+found ojdbc6.jar[root@pgtest testdata]#
破壞/dev/sdc1磁盤
[root@pgtest testdata]# cd /[root@pgtest /]# dd if=/dev/zero of=/dev/sdc1 bs=1024 count=88+0 records in8+0 records out8192 bytes (8.2 kB) copied, 0.00100304 s, 8.2 MB/s#再次查看,testdata目錄下找不到文件 ,df -h也無法查看[root@pgtest /]# cd /testdata/[root@pgtest testdata]# ls[root@pgtest testdata]# cd /[root@pgtest /]# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/vg_firsouler-lv_root9.5G 7.1G 2.0G 79% /tmpfs 996M 72K 996M 1% /dev/shm/dev/sda1 477M 42M 410M 10% /boot/dev/mapper/pgvg-lvpg19G 4.4G 14G 25% /pgdata
嘗試卸載后再次掛載
[root@pgtest /]# umount /testdata/[root@pgtest /]# mount /testdata/mount: wrong fs type, bad option, bad superblock on /dev/sdc1,missing codepage or helper program, or other errorIn some cases useful info is found in syslog - trydmesg | tail or so
如上所示,提示有問題。
通過fsck命令修復磁盤(注意,fstab需要有相關配置信息)
[root@pgtest /]# fsck /dev/sdc1fsck from util-linux-ng 2.17.2e2fsck 1.41.12 (17-May-2010)fsck.ext4: Superblock invalid, trying backup blocks.../dev/sdc1 was not cleanly unmounted, check forced.Pass 1: Checking inodes, blocks, and sizesPass 2: Checking directory structurePass 3: Checking directory connectivityPass 4: Checking reference countsPass 5: Checking group summary informationFree inodes count wrong for group #0 (8181, counted=8178).Fix<y>? yesFree inodes count wrong (393205, counted=393202).Fix<y>? yes/dev/sdc1: ***** FILE SYSTEM WAS MODIFIED *****/dev/sdc1: 14/393216 files (0.0% non-contiguous), 60526/1572354 blocks[root@pgtest /]# mount /testdata/[root@pgtest /]# cd /testdata/[root@pgtest testdata]# lsanalyze_new_cluster.sh gp2020.cfg lost+found ojdbc6.jar[root@pgtest testdata]# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/vg_firsouler-lv_root9.5G 7.1G 2.0G 79% /tmpfs 996M 72K 996M 1% /dev/shm/dev/sda1 477M 42M 410M 10% /boot/dev/mapper/pgvg-lvpg19G 4.4G 14G 25% /pgdata/dev/sdc1 5.8G 12M 5.5G 1% /testdata[root@pgtest testdata]#
修復完成后,文件系統正常。
附
fsck 工具介紹
- -a:自動修復文件系統,不詢問任何問題;
- -A:依照/etc/fstab配置文件的內容,檢查文件內所列的全部文件系統;
- -N:不執行指令,僅列出實際執行會進行的動作;
- -P:當搭配"-A"參數使用時,則會同時檢查所有的文件系統;
- -r:采用互動模式,在執行修復時詢問問題,讓用戶得以確認并決定處理方式;
- -R:當搭配"-A"參數使用時,則會略過/目錄的文件系統不予檢查;
- -s:依序執行檢查作業,而非同時執行;
- -t<文件系統類型>:指定要檢查的文件系統類型;
- -T:執行fsck指令時,不顯示標題信息;
lvm方式元數據修復
#備份文件位置ls -lrt /etc/lvm/backup/#查看vg創建信息vgcfgrestore --list vg_backup#查看損壞的pv信息pvscan#通過備份修復 pv元數據pvcreate --uuid "9a2Lzl-B1Z0-zaR7-jgLj-9g72-u7PD-aYcjgh" --restorefile /etc/lvm/backup/vg_backup /dev/sdd#修復vg信息vgcfgrestore -f /etc/lvm/backup/vg_backup vg_backup#激活vg vgscanvgchange -a y vg_test
總結
以上是生活随笔為你收集整理的【LINUX】Oracle数据库 linux磁盘头数据损坏修复的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。