Re: [问题] 系统遗失许多重要档案?

楼主: vu037 (向阳山我来了!)   2016-03-11 20:22:12
※ 引述《HuangTzHuan ()》之铭言:
: ※ 引述《vu037 (向阳山我来了!)》之铭言:
: : 我是从别人那接手的系统
: : 还在用freebsd 5.1
: : 之前好像硬盘排线有问题,偶尔会死当,
: : 后来换新的线以后还是会有很多异常现象
: : 例如无法正常登入,只能用single user mode
: : 正常登入会卡在要读信件的地方,
: : 画面上显示you got new mail
: : 下一行就是/lib/xxxxxx.so not found
: 那个 xxxxxx 很重要啊!要看清楚才知道要补什么给它
因为缺太多种
不同的指令会缺不同的library档
现在是连ls都不能用
所以我才没有一个一个写出来
是说ls也不能用 我可能也会不知道要把该补的档案补到哪里去 Orz
: : 之后就跳回
: : login:
: : 然后进single user mode要检查哪边出问题也是困难重重
: : mount好像没有问题,但是没办法用df跟ls看硬盘或档案资讯
: : df跟ls一样会跳/lib/xxxxx.so not found
: : 简单说就是部分指令的lib档好像遗失了
: : 此外用fsck检查硬盘 s1b显示档案系统不明,连phase 1都不会进入
: s1b 是 swap,fsck 本来就不认得它,这是正常的
: swap 不必 fsck
原来如此 我本来以为是类似windows独立弄一槽 整个都是swap档
所以说他的swap根本没有建立档案系统是吧!
: : 其他有几个正常,有几个会因为内存不足(或swap error?)让fsck自动被kill掉
那这一点呢?
有些槽的fsck会自己被kill掉
这不应该是因为缺档案或硬盘有问题对吧?
: : 这台电脑目前只有一条32MB内存
: : 我用win上面的硬盘救援软件看似乎大部分档案是正常的,磁盘分割好像也没问题
: : 但是系统本身以前应该没有备份过
: : 我本来想是不是能直接看缺什么档案就一个一个copy回去
: : 可手边没有windows以外的其他电脑
: : 目前想不到我还能怎么处理了 Orz
: : 想问一下这状况比较有可能的问题是啥
: : 有什么方法可以确认问题点然后解决
: 32MB 的内存,这恐怕是 486~pentium 年代的硬件了吧?
: 现在大概也很难有备料可以交插测试是否所有硬件部份都还是好的
其实硬件应该没旧到那个地步
本来是32+256 但是256那条貌似因为太久没开机坏掉了
插著开机都会逼逼叫
所以才只剩32MB,忘记是SDRAM还是DDR1了
: 所以我个人会建议把硬盘里的资料备份出来
: 然后找新的硬件重装吧
这个我也想过要试
但是我尝试用windows靠软件读ufs档案系统
可是似乎只能读不能存?
所以用windows备份的话 就没办法重灌后再传回去了
而且其实好像浏览的时候也怪怪的,也许是软件的问题?
是不是只能先用一台新系统灌好FreeBSD后再把旧硬盘的东西丢进去?
想顺便问一下,是否有可能在维持某几槽的档案不变的情况下重灌呢?
不过这跟下面的建议2好像很类似
: 如果不管硬件好坏一定要尝试修复的话
: 下面是几个建议:
: - /rescue 下有 static linked 的常用指令,df ls tar 之类的都有
: 先用这边的代替
这段的意思是把这些系统指令改为使用/rescue下的吗?
是需要用挂载的方式还是怎么做呢?
很复杂的话可以给个术语让我自己查就好 感谢XD
: - 先确定系统的版本,如果是 5.1-release 的话,缺 library 可以从
: FreeBSD 5.1-release 的光盘里找,理论上可以直接把 base 解开来
: 直接盖掉整个系统,不过如果只缺一两个 lib 的话,就把 base 解开
: 放在别的地方,再 copy 过去吧
(思) 光盘应该网络上还载的到 这ok
光驱理论上应该随便一台插上去就能动(吧?)
解开base这点可以稍微说明一下要怎么做吗?
是原本系统档案全部都压在同一个gz之类的档案里
然后我直接用安装的方式盖掉旧的系统资料夹这个意思对吧
不好意思我没有自己安装过FreeBSD或软件,
不太知道光盘内的档案结构是怎样
: - 如果缺的 lib 在 FreeBSD 5.1-release 光盘里找不到的话,有可能是
: patch 过的新版,这时就要看你的 gcc 还能不能动了,能动的话可以到
: /usr/src 下把缺的 lib 编出来
我的ls不能用,没法看,
但请问是不是所有lib都一定会在src里面有原始档?
档名会完全一样吗?
所以只要到/usr/src gcc lib档档名就可以编译出来再copy回需要的位置了?
还是说在src下也是一堆子目录结构呢?
: - 如果 gcc 不能动的话,看一下缺的 lib 是否系统里有较旧的版本,有时
: 候把旧的版本 symbolic link 过去是会动的,如果能用这招让 gcc 能动
: 的话就可以到上一步
旧版本通常会放在哪呢?
symbolic link跟copy的差别是?
以win系统来说,symbolic link是不是像是
改登录档或ini档去让软件使用不同位置的系统档?
具体来说需要怎样的步骤勒?
: - 如果还是不行的话,我想不到还有什么招可以不透过别的电脑来修复了 orz
给这些方向已经很有帮助了!
这些都是我原本想尝试的方法
只是因为不太熟还不知道该怎么动手做
而且就跟前一位版友说的一样,有些东西真的不太好估狗 Orz
有劳各位先进再帮忙一下了
非常感谢

Links booklink

Contact Us: admin [ a t ] ucptt.com