Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103667104
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-26 08:04:04

作者: Baidoa  出自:
  下午用vi编辑文件,保存退出时误按~键,按成wq~,结果目录下产生一个名为~的文件。因为以前经常按成wq1,发现错误后马上就会把名为1的文件删掉,所以今天一顺手就输入了rm -rf ~ 。结果,惨痛的事情发生了---root目录在没有任何提示跟预警的情况下被当场干掉!更惊奇的是当前目录下的~文件居然安然无恙,这是很让人气愤的!

  以前从没碰到过这种事,赶紧上百度,无果。~符号不能被搜索引擎识别。求助QQ群,得到的结果是重装系统!愤怒!只能硬着头皮自己干了。

  把~文件移动到根目录,~是被移动过来了,但cd ~ ,提示没有root目录。

  仔细想了下,root目录下其实也没多少东西,重要的就是那几个隐藏文件,但这几个文件都是配置方面信息,只要系统相同,我拷贝一份过来是不是也一样呢?于是打开另一台同样系统的机器,进入root目录 ls -al ,哈哈,都是些bash csh vim mysql历史命令记录等等的东西,Ok。退回到根目录,因为正常的拷贝是拷贝不到隐藏文件的,所以要先打个包: tar -zcvf root.tar.gz /root 生成root.tar.gz。拷贝这个压缩文件到被删除root目录的机器的根目录下,解压:

  tar -zvxf root.tar.gz root目录回来了。进入root目录,.bashrc等相同的系统基本是一样的,_history结束的文件都是记录的命令历史记录,没什么关系。好了,那就不用管了,重启机器,一切正常。

  正在心中窃喜,突然发现根目录下那个~文件依然存在,这下坏了,如果有不知情的人进入系统发现根目录下多出一个名为~的空文件觉得碍眼,再一顺手rm -rf...... 那岂不是又要折腾一番。于是mv rename ... ...但是百般用尽,~文件依然一动不动。NND,rm是不敢乱用了,但为什么在非根目录下删除~文件还会把root目录干掉呢?难道是因为没加路径?对了,以前删除、移动-i 、-j等文件时为了不让系统把“-” 作为命令的参数通常会在这些文件前加上路径 ./,这样会不会也能把~文件删掉呢?确认了一遍root.tar.gz还在,小心翼翼的rm -rf ./~ 。终于~被顺利干掉了。

  教训:如果无意中创建了名为~的文件,千万不能随便删除,一定要记得在前面加上路径。
阅读(283) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

jinyuliang2008-05-26 14:03:16

很好很有用。 不过,您经常用root登录啊,据说这个习惯也不好。