其中一台服务器里面有一个用户,提出来了一个无理要求,想把他的用户目录全部清空,包括环境变量等隐藏文件。 我简单思考了一下,就进入了他的目录,敲下了如下的命令: sudo rm -rf .* 当时有一个警告,我没有细看: 幸好这个阻止了我,差一点就铸成大错!!! 这样用户目录下面是完全空白的目录,甚至连隐藏文件都没有,其实是没办法登陆的。所以我就去拷贝了一个空白用户下面的全部文件给它的用户目录,就是下面的文件: 拷贝到他的目录后,但是呢,需要修改权限,命令如下: sudo chown -R vip32 .* 然后,漫长的等待就开始了。 让我百思不得解,因为这些空白用户下面的隐藏文件并没有多少,不可能修改一下所有权耗费那么长时间。我就杀掉了这个命令,经过仔细的思考,终于意识到了问题所在,我使用了通配符,它居然匹配到了上层目录!!! 我连忙去检查,果然: 这些人的用户,因为我的错误操作, 文件的所有权被 vip32拿走了。可能某些文件会没办法删除了,因为不属于他们了。但是文件不会丢失,也不影响使用。因为这些用户都是vip32用户目录的上层目录,被我的通配符给覆盖到了,所以被上面的命令给执行了。 不过,经过简单思考,我解决了这个问题,把大家的文件所有权修改回来了。我先拿到这些用户的用户名制作成为了 patch.id 文件,然后修改权限,如下; cat ~/patch.id | while read id;do ( sudo chown -R $id /home/data/$id );done 一切恢复如初! 差一点就铸成大错!!!但是还是没有想明白,为什么我的命令 sudo rm -rf .* 会被阻止呢? rm: refusing to remove '.' or '..' directory: skipping '.' 虽然这个阻止其实是让我很开心! 学习资源推荐
写到最后如果你也想开启自己的生物信息学数据处理生涯,但是自学起来困难重重,还等什么呢,赶快行动起来吧!参加我们生信技能树官方举办的学习班:
生信技能树的粉丝都知道我们有一个全国巡讲的良心学习班,口碑爆棚,生物信息学入门省心省时省力!先看看大家的反馈吧: |
|