linux修复
A. linux下怎么修复U盘坏块
U盘的坏块是无法修复的,唯一的办法就是屏蔽掉损坏了的坏块.使用一些磁盘操作软件就可以做到.
下载
DiskGenius
进行检测性修复,操作步骤如下。打开程序后的直界面,注意必须再确保U盘已经在我的电脑中识别到了。如果系统中就没显示U盘的
盘符
就是另外的情况了。
在识别到了U盘的情况下,就是下面的样子选中U盘的盘符右键U盘盘符,选择“坏道检测与修复"
出现下面的界面,依然可以选择不同的盘符。左下角有“开始检测”和“尝试修复”
下图是检测过程中
检测完毕会出现报告,我的检测见过是没有坏道,如果提示有坏道则再次选“尝试修复”即可。这款软件不仅仅是能恢复被删除的文件,还能恢复因为意外格式化的分区的文件。
选择上面的菜单那的选项后就会出现如下界面
选择你需要的就可以了恢复文件了,如果在意外操作过之后没有对硬盘分区做过任何其让的读写操作基本上就能100%恢复数据。
你可能还会关注:请推荐几款硬盘数据恢复软件希望以上信息对你的问题有所帮助。
B. Linux中文件系统受到破坏时,怎么修复系统
成功修复文件系统的前提是要有两个以上的主文件系统,并保证在修复之前首先卸载将被修复的文件系统。使用命令fsck对受到破坏的文件系统进行修复。fsck检查文件系统分为5步,每一步检查系统不同部分的连接特性并对上一步进行验证和修改。在执行fsck命令时,检查首先从超级块开始,然后是分配的磁盘块、路径名、目录的连接性、链接数目以及空闲块链表、i-node。希赛上又很多这种资料的
C. 如何修复Linux引导
多种方式安装Linux系统
1. 制作安装启动盘
方法一、在DOS/Windows下制做
G:\dosutils> rawrite
Enter dis image source file name:bootdisk.img
Enter target diskette drive:a
Please insert a formatted diskette into drive A:and press –ENTER--:[Enter]
注:光盘\images\有以下几个IMG文件
l bootdisk.img 安装引导盘映像文件
l drvnet.img 网卡驱动盘
l drvblock.img 块设备驱动盘
l pcmciadd.img PCMCIA设备驱动盘
方法二、在Linux下制做启动盘
#dd if=boot.img of=/dev/fd0 bs=1440
2. 光盘安装Linux系统
(1)使用1#光盘启动计算机
(2)直接按回车键/linux text选择安装界面
(3)开始安装向导
3. 硬盘安装Linux系统
(1)将安装光盘的ISO文件复制到硬盘的某个分区中
(2)利用1#光盘/安装启动盘启动计算机
(3)输入linux askmethod选择安装介质
(4)开始安装向导
4. FTP/HTTP安装Linux系统
(1)准备安装文件,制作HTTP/FTP服务器
(2)利用1#光盘/安装启动盘启动计算机
(3)输入linux askmethod选择安装介质
(4)开始安装向导
二.启动linux系统
1.Linux启动过程分析
(1)BIOS自检
l 硬件检测及初始化
l 引导启动设备
(2)引导启动设备
l 软盘(0磁道第一个扇区)
l 光盘(最外围存储轨道)
l 硬盘(MBR)
l USB存储设备
(3)调用Linux引导程序至内存中
l Linux的引导程序可以使用GRUB/LILO等引导软件
l GRUB/LILO可以安装在MBR/引导分区的引导扇区中
(4)运行Linux内核
l 内核放在/boot目录中,Linux系统可以同时支持多版本内核
l 解压缩内核
l 检测硬件
l 加载root文件系统
(5)执行init进程
l 启动新进程或关闭进程
l 选择启动模式
l 建立虚拟终端
(6)用户登录
l 输入用户名及口令
l 加载用户配置文件
l 加载shell程序
2.引导盘的创建
方法一:安装过程中创建
方法二:mkbootdisk
#mkbootdisk --device /dev/fd0 2.4.20-8
方法三:使用dd命令
# dd if=/boot/vmlinuz of=/dev/fd0
3.GRUB
(1)安装GRUB
l 安装软件包
#rpm –ivh grub-0.934.i386.rpm
l 使用安装命令安装GRUB到MBR
#grub
grub>root (hdx,y)
grub>setup (hdx[,y])
(2)GRUB的配置
#vi /boot/grub/grub.conf
grub.conf中常用的配置命令有:
default=菜单项序号/saved
设置启动菜单的默认启动项
hiddenmenu
隐藏菜单界面
splashimage =图像文件全路径名
指定某文件作为启动菜单的背景图像
timeout=延迟秒数
设置启动菜单的启延时
title 菜单项名称
开始一个菜单项的配置,设置菜单项的名称
root (hdx,y)
设置GRUB的根设备为linux内核所在的分区
kernel 内核文件名称
指定内核文件的名称及加载内核所需的参数
initrd initrd文件名
指定镜像文件的位置
map (hdx[,y]) (hdx[,y])
建立虚拟磁盘
rootnoverify (hdx,y)
指定windows启动引导器的位置
makeactive
标识指定分区为活动分区
chainloader +n/文件名称
调用指定windows启动文件
password 口令/--md5 口令密文
设置GRUB启动菜单和菜单项口令
lock
利用password设置的全局口令锁定菜单项
savedefault
保存当前启动菜单项为默认启动
文件实例:
# grub-md5-crypt(产生口令的MD5密文)
# vi /etc/grub.conf
default=0
timeout=50
splashimage=(hd0,0)/grub/splash.xpm.gz
password --md5 #!dfdasdf34123!#@$!#@
title RedHat Linux 9.0
root (hd0,2)
kernel /Vmlinuz-2.4.20-8 ro root=/LABEL=/
initrd /initrd-2.4.20-8.img
password linux
tile windows 2000
rootnoverify (hd0,0)
chainloader +1
lock
(3)GRUB的FAQ
l 编辑模式的使用
用于临时修改菜单的选项,在菜单界面中按E键进入
l 命令行模式的使用
利用命令行命令设置GRUB,在菜单界面中按C键进入
grub命令行中常用的命令有:
grub>root (hdx,y) //设置根设备所对应的分区
grub>kernel 内核文件 //设置内核文件的名称
grub>initrd 镜像文件名 //设置镜像文件名
grub>boot //启动指定操作系统
grub>rootnoveify (hdx,y) //设置根设备所对应的分区,但不检查加载点
grub>chainloader 文件名 //加载指定的文件
grub>help //获取帮助
grub>reboot //重启系统
grub>md5-crypt //生成口令的MD5密文
grub>setup (hdx[,y]) //安装GURB到MBR/指定分区的引导扇区中
grub>hide 分区 //隐藏分区
grub>cat 文件名 //显示文件内容
grub>find 文件名 //查找文件
l 如果MBR中的GRUB引导程序被其它程序覆盖,应该如该恢复
放入第一张安装启动盘,开始启动计算机:boot:linux rescue(启动linux的修复模式,加载硬盘上的LINUX系统到/mnt/sysimage)
#grub
grub>root (hdx,y)
grub>root (hdx)
l 恢复GRUB的配置文件
由于grub.conf设置的问题,可以采用以下方法进行恢复:
放入第一张安装启动盘,开始启动计算机:boot:linux rescue(启动linux的修复模式)
#vi /mnt/sysimage/boot/grub/grub.conf
l 如何利用GRUB进入单用户模式,找回丢失的root用户口令
在GRUB菜单界面中按e编辑linux菜单项,给内核添加参数single
l 如何卸载GRUB
#rpm -e grub
C:\>fisk/mbr
l 如何制作GRUB启动盘
#grub-install /dev/fd0
3.init 进程
(1)init进程的作用
init进程是系统启动第一个进程,它负责加载其它进程、管理系统的其它进程。
(2)init的配置-----inittab文件
/etc/inittab文件用于设置init进程在执行时加载哪些程序,inittab文件由若干个记录构成,每条记录格式如下:
ID:RUNLEVEL:ACTION:COMMAND
以下为默认inittab文件内容:
id:3:initdefault:
si::sysinit:/etc/rc.d/init.d/rc.sysinit
l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
pf::powerfail:/sbin/shutdown -f -h +2 “power failure;power shutting down”
pr:12345:powerokwait:/sbin/shutdown –c “power restored;shutdown cancelled”
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
x:5:respawn:/etc/X11/prefdm -nodaemon
说明:
(3) 修改/etc/inittab文件,可以设置默认启动模式、各运行级别所加载的程序、CTRLALTDEL的动作、开设虚拟用户终端
(4)/etc/rc.d 的目录内容
1)/etc/rc.d/init.d目录
l 保存所有运行等级需要的所有脚本
l 启动、停止、重启某些服务
2)/etc/rc.d/rc
l 系统改变运行等级,通过此脚本检查/etc/rc.d/rcX.d目录和文件可存在,以及是否正在运行等,以及运行/etc/rc.d/rcX.d中所有S开头的脚本
3)/etc/rc.d/rcX.d目录
l 存放每一运行等级默认启动项,该目录中的文件链接到:/etc/rc.d/init.d
l 文件名格式为K{Two-digit number} {script name}/S{Two-digit number} {script name},K:以stop参数运行,S:以start参数运行;Two:数字代表执行顺序
4)/etc/rc.d/rc.local
l 该脚本在2,3,5运行等级结束时执行
5)/etc/rc.d/rc.sysinit
l 系统初始脚本,用于设置系统的时钟、加载键盘、加载系统字体、加载其他文件系统、激活交换分区、生成日志文件
三.linux系统修复模式
1. 系统修复模式的简介
使用安装光盘启动修复模式,用于检测和加载硬盘上已安装的linux系统到/mnt/sysimage目录中。该模式主要用于修复损坏的系统,当系统出现故障时可使用修复模式.
2.启动修复模式
使用1#安装启动系统
在boot:提示符下输入linux rescue启动修复模式,按照启动向导启动系统
linux修复模式的应用
修复系统
找加丢失的用户口令
修复系统配置
D. 如何进入Linux单用户系统修复模式
工具/原料:
VM虚拟机
linux系统
1.操作系统启动加载内核之前按下键盘e。如下图所示:
6.登录单用户后,可以进行密码修改(passwd)或者磁盘分区修复(e2fsck-f/dev/systemvg/varlv)等等。操作完成,输入reboot重启即可。
E. linux系统起不来了,怎么修复
在C盘的根目录下,选择“工具”--“文件夹选项”--“查看”--去掉“隐藏受保护的操作系统文件”选取“显示所有文件和文件夹”,然后你就可以看到boot.ini了
另外,lz看看下面的内容:
修改c盘根目录下的boot.ini文件(系统文件,要调整文件查看选项才可以看到,方法为:我的电脑/选择顶部菜单栏的工具/文件夹选项/查看/隐藏受保护的操作系统文件),在最后面添加一行:c:\grldr = "Click this item to install linux."
修改boot文件夹里面的menu.lst(是字符L,而不是数字1)文件。在最后面添加下面的指令,保存退出,并重新启动系统。
title Click this item to install linux.
root (磁盘号,分区号)----即为vmlinuz和initrd.img所在分区
kernel /vmlinuz
initrd /initrd.img
boot
补充:若无法正确引导,则可以不用修改menu.lst文件,而改用手动设定方式来启动,步骤为:
当选择“Click this item to install linux.”,进入如下界面(如图一)。键入“p”并输入密码(默认为123456),取得特权控制功能,接着键入“c”,进入grub引导模式进行手工操作
F. 如何在Linux修复系统的MBR
给虚拟机增加一块硬盘,用于备份mbr的信息
fdisk -l 查看硬盘系统是否认识
fdisk /dev/sdb 进行分区
fdisk -l 查看分区是否出来
mkfs -t ext4 /dev/sbd1 进行格式化
mkdir /backup
mount /dev/sb1 /backup 挂载到backup下
破坏mbr之前先做做备份,后面恢复系统用:
dd if=/dev/sda of=/backup/sda.mbr.bak bs=512 count=1 将sda前面512个字节备份到backup的目录下
ls /backup 查看是否有备份的文件
模拟破坏mbr扇区
dd if=/dev/zero of=/dev/sda bs=512 count=1 通过zero文件把sda设备的前512字节毁掉。由于mdmdr存在这个磁盘的前512个字节上
reboot 启动系统 看会发现什么情况,不能进入系统。
进入修复模式,没有修复模式的可进入光盘系统。然后调出命令提示窗口。fdisk -l 查看有没有增加的磁盘。然后执行下列命令 恢复备份。重启 系统正常。
修复grub引导故障:
下面演示grub遭到破坏系统如何启动
vim /boot/grub/grub.conf 编辑这个文件
重启系统,在grub提示符下做操作
root (hd0,0)指定从哪一块硬盘的哪一个分区去引导操作系统
kernel /vmlinuz-(tab键) ro root=/dev/sda1(主文件系统) 执行从哪一个内核去引导系统 ro 后面挂载的文件系统以什么样的方式去挂载 root代表根分区所在的位置
initrd /initramfs-2.6.32
boot
G. 如何修复Linux无法正常启动故障
没有操作系统能够确保100%可靠。终有一天,即使Linux也会无法启动。本文为你提供一些在Linux工作站无法正常启动时所采用的策略。
不管你多么喜爱你的Linux机器,有时候你都必须恢复你的系统。是的,即使一台Linux机器也可能遭受系统崩溃:不管是由于视频配置错误、内核更新出错、或是由于init脚本配置错误,这种情况都是必然的。我看到过大量这种情况——即使在我自己的机器上,大多数是由于X配置出错——这确实令人沮丧。
在我看来,重新安装系统并不是最佳救援计划。有时候,最佳救援计划甚至不需要从救援磁盘启动。本文将为如何避免系统崩溃提供一些提示和诀窍,帮助你建立恢复崩溃的Linux机器所需的工具。
使用正确的运行级别
安装好一个新的Linux系统后,我立即采取措施以确保灾难不会轻易发生。其中一个措施就是编辑系统的运行级别。运行级别告诉系统离采用引导过程还有多远。运行级别分为六个等级:
0级:停止(不设置initdefault)
1级:单用户模式
2级:多用户模式,没有NFS(与3级相同,如果你没有建立网络)
3级:完整的多用户模式
4级:不使用
5级:X11
6级:重新启动(不设置initdefault)
新型的Linux系统几乎总是默认使用运行级5(X11),表示系统在引导完成后,将会在图形登录界面处停止。在某物(或某人)使用X配置前,系统一切正常。
然后你必须找到一个登录方法。你可以按下[Ctrl][Alt][F7]进入一个基于文本的虚拟窗口,但为什么要这么麻烦呢?相反,我总是在/etc/inittab文件中将运行级更改为3级。你更改的代码为:
id:5:initdefault:
它被更改为:
id:3:initdefault:
当X出错时,这是一个非常简单的系统恢复方法。
多内核
另一个明显的磁盘恢复方法是总是安装一个正常运转的内核。我通常在一个通过yum更新的内核上工作。有时候,内核会出现一些错误,使得我的一台或几台机器无法启动。
为避免这种情况,我一直保证在机器上使用至少一个正常运行的内核。要解决这个问题,首先应在/etc/yum.conf文件中添加plugins=1,然后应用这段脚本(由RedHat的Jeremy Katz编写),并将它命名为n-installonly.py,保存在/usr/lib/yum-plugins文件中。你可以通过修改tookeep变量(默认为2)的方法更新系统所使用内核的数量。
知道系统上有一个正常运转的内核,你就可以进行安全升级。如果新内核出错,只需启动旧内核就可以解决新内核上的问题(不管是删除、重新编译还是升级)。
救援模式
如果你在使用Red Hat和LILO引导加载器,你就可以插入产品光盘1,并在引导提示符下输入Linuxrescue进入救援模式。启动机器后,你就会看到bash#提示符。在这个模式下,你可以使用许多工具。
如你所见,有检查硬盘完整性、修复硬盘、检查内核模块、装配设备、以及创建文件系统等的工具。此时是进行救援尝试的最佳时机(如果你使用的是一个Red Hat,或基于Red Hat的系统)。
另一个救援方法是进入单用户模式,这里你的计算机引导进入运行级1。系统装配你的本地文件系统,但不激活网络。你得到一个可用的系统维护外壳。要进入单用户模式,在LILO提示符下输入:
Linuxsingle
或
Linuxemergency
建立一张救援CD
如果你正在使用LILO引入加载器,可以使用一个叫做mkrescue的强大工具。这个工具一般用于创建引导软盘,但也可用来创建ISO。其用法如下。
如果你使用Mandriva:
mkrescue --iso --initrd /boot/initrd-KERNEL-NUMBER.img --
kernel /boot/vmlinuz-KERNEL-NUMBER
注意:这里的KERNEL-NUMBER指内核的版本号。
如果你不能确定内核的版本,可以用以下命令找到intrd和vmlinuz的号码:
uname –r
运行这个命令后,你就会在运行mkrescue命令的目录中发现一个rescue.iso文件。现在你可以用以下命令建立镜像:
首先,检查建立CD的设备号码:
cdrecord –scanbus
然后用以下命令建立镜像:
cdrecord dev=0,0,0 rescue.iso
注意:这里的dev=0,0,0是用上面的scanbus命令查出的号码。
如果你使用Slackware,使用这些步骤建立一张引导CD:
mkrescue –iso
注意:Slackware自动获知在ISO中放入何种内核。
然后,你可以用建立Mandriva镜像同样的方法建立镜像。
SystemRescueCD
SystemRescueCD是一个保存在可引导光盘上的Linux系统,用于在系统崩溃后修复系统和数据。它还可在计算机上方便地执行管理任务,如建立和编辑硬盘分区。它由许多系统实用工具(parted、partimage、fstools)和基本实用工具(编辑器、midnight commander文件管理器和网络工具)构成。
它使用起来非常简单。只需要从光盘启动你就可以执行一切操作,就像从硬盘启动一样。系统内核支持大多数重要的文件系统(ext2/ext3, reiserfs, reiser4, xfs, jfs, vfat, ntfs, iso9660)和网络(samba和nfs)。
SystemRescueCD可能是市面上最优秀的救援系统。你不仅可以从光盘上使用这种救援方法,还可以将这个救援系统放在U盘上使用。
要在一个U盘上建立一个SystemRescueCD,你需要大于256MB的磁盘空间。从Sourceforge下载iso镜像并把它烧制到光盘上。现在你必须在U盘上创建文件系统。使用dmesg命令找出U盘名称,然后用以下代码擦写U盘:
dd if=/dev/zero of=/dev/sda
这里的/dev/sda是U盘的名称。
现在在U盘上安装主引导记录:
install-mbr /dev/sda
或
install-mbr --force /dev/sda(如果命令出错)
现在建立分散分区:
parted /dev/sda
(parted) mkpartfs primary fat32 0 100% // use help or help mkpartfs command to see help
(parted) print // check if the write was ok
(parted) quit
现在已经建立好文件系统,然后将用SystemRescueCD镜像烧制的CD中的文件复制到U盘中。保证你复制的文件等级和CD上的相同。
现在,使得U盘可以用sysLinux命令启动:
sysLinux/dev/sda1
这里的/dev/sda1是磁盘的名称。
现在你已经建立了一个你可以整天随身携带的救援U盘。由于你使用Linux,你并不需要经常用到它。
最后总结
Linux是一个非常稳定的环境,但由于该系统中还有许多其它系统,它们可能会出现错误。虽然我们很容易会由于使用Linux而洋洋自得(因为它存在诸多优点),但了解如何拯救一个系统崩溃的机器也不失为一种明智的做法。
当然,不是世界上所有的救援系统都能100%地恢复你的系统,因此你可能希望考虑为你的Linux服务器和桌面系统实施一个灾难恢复计划。
H. linux 文件系统损坏,如何修复
用fsck检查文件系统完整性文件系统很复杂,因此易于发生错误。可以用fsck 命令检查文件系统是否正确和有效。它可以根据指令修复找到的小错误,并将未修复错误报告用户。幸运的是,文件系统的代码非常有效,所以根本极少出现问题,并且问题通常原因是电源失败、硬件失败、或操作错误,例如没有正常关闭系统。 大多数系统设置为启动时自动运行fsck ,因此任何错误将在系统使用前被检测到(并根据希望修正)。使用有错误的文件系统可能使问题变得更坏:如果数据结构有问题,使用这个文件系统可能使之更糟,导致更多的数据丢失。当然,在大的文件系统上运行fsck 会花一定的时间,如果系统正常关闭,几乎从不发生错误,因此有一些方法可以不进行检查。如果文件/etc/fastboot 存在,就不检查。另外,如果ext2文件系统在超级快中有一个特定的标记告知该文件系统在上次mount后没有正常unmount. 如果标记指出unmount正常完成(假设正常unmount指出没问题),e2fsck (fsck 的ext2文件系统版) 就不检查系统。/etc/fastboot 是否影响系统依赖于你的启动手稿,但ext2标记则在你使用e2fsck 时发生作用--基于一个e2fsck 选项(参阅e2fsck 手册页) 自动检查只对启动时自动mount的文件系统发生作用。使用fsck 手工检查其他文件系统,比如软盘。 如果fsck 发现为修复的问题,你需要深入了解文件系统的一般工作原理和有问题的文件系统的细节,或好的备份。最后一个办法容易(虽然冗长)安排,如果你自己不知道,有时可以通过朋友、linux新闻组、电子邮件列表或其他支持源安排。我很想告诉你更多,但我对这的学习和实践也并不多。theodore t’so的debugfs 程序应该有用。 fsck 只能运行于未mount的文件系统,不要用于已mount的文件系统(除了启动时的只读根文件系统)。这是因为它存取原始磁盘,在操作系统不知道的情况下修改文件系统。 there will be trouble, if the operating system is confused.
I. u盘中的linux系统怎么修复
在 Linux 中修复闪存盘或其它类型驱动器简单的方法就是使用 fsck 工具,在此前需要先使用 lsblk 命令来确定好 U 盘,该命令可以列出当前 Linux 系统上连接的所有磁盘。要删除坏文件块,请在特定分区或整块磁盘上执行 fsck 命令, 一旦完成,你将获得一个健康的 Linux 分区。
当出现 U 盘已经完全不可读,里面的数据也无价值时,佳的修复办法就是使用 dd 命令将 U 盘完全清零。同样先使用 lsblk 命令找出 U 盘,再使用类似如下命令进行清零处理:
sudo dd if=/dev/zero of=/dev/sdb。清零操作完成后,需要用 fdisk 或其它工具对磁盘进行重新分区,之后再选择如下命令格式化之后即可正常使用:FAT32 sudo mkfs.msdosf 32 /dev/sdb1 EXT4 sudo mkfs.ext4 -f /dev/sdb1 NTFS sudo mkfs.ntfs -f /dev/sdb1
J. linux中检测、修复磁盘的命令是啥
chkdsk。
chkdsk的全称是checkdisk,就是磁盘检查的意思。这个东西是当你的系统崩溃或者非法关机的时候由系统来调用检查磁盘的,也可以由手工通过命令行调用来检查某一个磁盘分区。
该工具基于被检测的分区所用的文件系统,创建和显示磁盘的状态报告。Chkdsk 还会列出并纠正磁盘上的错误。如果不带任何参数,chkdsk 将显示当前驱动器中的磁盘状态。
(10)linux修复扩展阅读
chkdsk检查适用情况:
1、windows7系统进入到欢迎界面,无法输入用户密码,即键盘没反应,但键盘操作bios、F8功能键等进入欢迎界面之前的操作都正常,可以进入安全模式;
2、系统启动过程中蓝屏,即蓝底白字屏幕显示,低端显示stop:0x???????字样,即蓝屏代码。
3、磁盘分区变成ram格式。
4、突然断电,重启电脑无法进入系统;
5、电脑运行速度非常慢,磁盘指示灯非常忙,杀毒软件检测不到病毒。