惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Security Latest
Security Latest
Recorded Future
Recorded Future
人人都是产品经理
人人都是产品经理
S
SegmentFault 最新的问题
Hacker News - Newest:
Hacker News - Newest: "LLM"
C
CXSECURITY Database RSS Feed - CXSecurity.com
博客园 - 三生石上(FineUI控件)
博客园 - 聂微东
P
Privacy & Cybersecurity Law Blog
WordPress大学
WordPress大学
Know Your Adversary
Know Your Adversary
Spread Privacy
Spread Privacy
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
量子位
L
LINUX DO - 热门话题
L
Lohrmann on Cybersecurity
博客园 - Franky
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tor Project blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
雷峰网
雷峰网
阮一峰的网络日志
阮一峰的网络日志
V
Visual Studio Blog
T
Threatpost
T
Tenable Blog
有赞技术团队
有赞技术团队
大猫的无限游戏
大猫的无限游戏
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI
C
Cisco Blogs
H
Heimdal Security Blog
Attack and Defense Labs
Attack and Defense Labs
A
About on SuperTechFans
Last Week in AI
Last Week in AI
N
News and Events Feed by Topic
T
Threat Research - Cisco Blogs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
I
Intezer
V
V2EX
Cyberwarzone
Cyberwarzone
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
B
Blog RSS Feed
V
Vulnerabilities – Threatpost
N
Netflix TechBlog - Medium
T
The Blog of Author Tim Ferriss
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
U
Unit 42
PCI Perspectives
PCI Perspectives
P
Privacy International News Feed
D
Docker

博客园 - CC

项目管理小记 聊聊程序员绩效那点事 救火队员的那些事(4)-关于流控 我对程序员身体健康的一点感悟 救火队员的那些事(3) 救火队员的那些事(2) 救火队员的那些事(1) jvm的代码缓存耗尽导致性能下降 几次印象深刻的网上事故 是时候对十二年的工作回顾了! 入园10年了 如何读程序设计艺术第1.2节 读TAOCP的算法形式化定义以及归纳法的一点感受 用了半年时间终于把具体数学看完了. 最近几个月潜心修练Concrete Mathematics的一点感想 Exercises of Concrete Mathematics 具体数学 一次LoadRunner的CPC考试经历 MFC的序列化的一点研究.
Solaris下误删除根目录下文件的解决之道
CC · 2008-03-30 · via 博客园 - CC

    记得几年以前刚接解UNIX操作系统的时候,学会了rm命令,还学会了rm  -rf *,我想很多人都经常这样使用,在UNIX下如果不用alias rm rm -i的话,删除根本不做任何提示,这也是UNIX设计的哲学,但是对于新手有时候会容易犯错误的.有时候后果是很严重 .以前在AIX下就一不小心把/目录下的东西删除的差不多,等会按Ctrl+C的时候已经迟了,被批评了一通,还好那个机器没什么东西,从那以后就非常小心了,后来只能重新安装操作系统了,从那以后我印象中这种总量只能重装操作系统了.
    这不,这几天这件事情又发生了,不过这次没那么简单了(不是我干的),这个机器是双机的主机,上面挂的磁阵,安装SC以及Veritas软件,还是数据库,不过这次尝试了一下重装以外的办法,最终花了两个小时(包括查资料时间搞定),当时的场景是这样的:
       话说一位高手在电脑前以无影手的速度击打键盘,突然停了下来,伴着一声惨叫"啊,怎么当前目录在根目录下",我一看高手输入的最后一个命令就是称为UNIX杀手锏的"rm -rf *",这时看了一下,好像只是bin目录没有了,因为bin只是链接到/usr/bin的符号链接,我重新建一个不就可以了,以为到此天下太平了.下午的时候,因为修改一些配置必须重新启动机器,平时几分钟就可以了,可以今天等了好久也没能连上,最后用串口线连上去一看,系统已经进入ok状态,这还不容易,把参数auto-reboot修改为true,再输入go,可是机器经过几分钟机器没有任何反应,我再重启,这样试了几次,还是没用,看来这次问题严重了.没办法只能重装操作系统(以前家里用Windows的时候,只要一中病毒且杀不掉或者系统变的很慢,一个办法重装,有时在想,这样的操作系统让生产硬件厂商也多卖点硬盘和内存之类,不过现在家里电脑早就换成Linux了,再也没有以前那种烦恼了!),费话少说: 把Solaris的安装盘插入光驱,在ok状态输入: boot cdrom -sw
,用光盘引导启动以后进入操作程系统.
    我们的思路是把原来的根分区挂载以后,找到根分区丢失的文件,把丢失的文件再补回来应该就可以了,好了.正式开始:
    用format命令找到原来根分区所使用的磁盘,我发现format里显示的磁盘顺序和正常启动时显示的磁盘顺序不一样,只能一个一个选中磁盘以后用p查询分区和挂载情况,比如:我发现c1t0d0s1是原来的根分区的话,退出format.
    在/tmp/root/下新建目录mytmproot,mkdir /tmp/root/mytmproot
    mount /dev/dsk/c1t0d0s1   /tmp/root/mytmproot
    可能觉得奇怪,为什么要挂到/tmp下,而不直挂载到/下,你要知道我们是光盘引导,所以根分区是只读的.
    上面的挂载成功以后,到/tmp/root/mytmproot看一下是不是你原来根目录的东东呀,这时我们要找到少了哪些文件,用了一个土办法,找另外一个同样的机器用du或者du -s查看目录下的文件个数和大小进行比较,最终发现/dev的dsk目录没有了,另外/devices下面也少了一些文件,可能大家都知道这下面的文件是干吗的吧?因为/dev/dsk下都是一些符号链接到/devices下的,想手工建立符号链接,但是因为每个机器可能有差别,直接照搬可能有风险,我想起来可以用: devfsadm -C -r /tmp/root/mytmproot, -r选项可以设定根目录的路径,执行完成以后,发现/dev/dsk下面的文件都回来了,心想这样应该差不多了(因为比较发现就这个下面的文件被删除了),重启以后出现一些网卡相关的错误,不管它,重启(从硬盘引导)以后发现以前配置的网卡都不在了,用ifconfig ce0 plumb提示没有这样的设备,一比较发现/devices下面丢失了一些网卡的设备文件,进入ok状态以后,输入probe-scsi-all,再输入watch-net-all,再power-off,重启重新检测硬件进入操作系统,以前丢失的东西都回来了,至此所有问题都解决了.
    可能我这个问题比较特殊,因为删除的文件特殊,希望能够起到一个抛砖引玉的作用吧!