Chinaunix首页 | 论坛 | 博客
  • 博客访问: 657970
  • 博文数量: 135
  • 博客积分: 5217
  • 博客等级: 大校
  • 技术积分: 1289
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-05 17:36
文章分类

全部博文(135)

文章存档

2016年(1)

2012年(5)

2011年(15)

2010年(63)

2009年(51)

分类: 系统运维

2012-05-31 19:58:40


没时间的读者直接看第7结论就可以了!

1.  今天我的同时找我讲到他的Ubuntu虚拟机,编译不正常,提升权限不的对了,我想肯定他们乱用了sudo的命令引致。 于是给了他一个治疗的命令方子: 
     1)  cd 
     2)  sudo chown -R realtop.realtop *  (注意空格,realtop 是他的用户名)
 2. 他没多久报告问题解了,没多久报告不能sudo poweroff关机了

 3. 我的cd /到他的系统的根目录,然后ls -l看到文件目录的属主都变成了这个realtop,

4. 然后history看他的操作命令序列:看到 ls  cd /home sudo chown -R realtop.realtop ....

5. 后来经过沟通,知道我误解了我说home目录的意思了,cd 到home目录不是指/home目录本身啊!
    但是即便如此也不会有这个结果。

6. 找个不要的虚拟机,按照我的上面序列,演练了一下,果然如此。从终端打印也能看出不少../usr/bin/......的路径,  说明跑到上级目录了(就是 /目录了),幸好不是删除命令。 通过chown -R  root.root /boot /usr /bin /sbin /lib /etc  修复了系统文件,chmod 4755 /usr/bin/sudo 给sudo设置用户id的属性


7. 结论.* 可以匹配..(上级目录), 所以要小心使用, 特别是在删除移动和更改系统文件属性操作时候。
     正确的做法是:cd; chown -R bill.bill * .[^.]*
阅读(1392) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~