Answers:
我很好奇是否 chmod 000 /
行得通。
好吧,完美无缺。几分钟后,我正在寻找救援CD。
刚开始作为我所上大学的用户顾问工作时,我获得的sudo
权限有限,可以帮助他们丢失/忘记密码的学生。 sudo passwd <username>
是我的新朋友。入职培训一个小时后,我的好奇心得到了改善,我sudo passwd
打了个招呼,震惊地看着提示输入新密码。我有点害怕,^C
我想出了(错误地证明)我可能会将该帐户保留为暂时状态,所以我输入了密码,然后立即上楼来到校园超级用户,询问他是否想知道主系统的root密码。
passwd
以root身份运行时表现可笑。例如,当输入错误检查失败时,它将再次询问。
惊讶的是没有人提到这一点:
rm -rf .*
(在尝试删除所有隐藏文件和子目录时,完全忘记了它将递归到.
和中..
)
rm
现在不会这样做。我试过达尔文,并得到了错误rm: "." and ".." may not be removed
。
.
和以外的所有点文件..
,请使用.[^.]*
。(好吧,这实际上会丢失所有以开头的文件..
,但通常只有一个。)
.??*
,我发现它更容易键入。这个文件不会与像这样的两个字母的点文件相匹配.a
,但是这些文件也不寻常。例如,我在主目录中搜索config文件grep -r .??*
。
有一个朋友:() { :|:&}; :
在我们没有控制台访问权限的远程服务器上运行。完全冻结的生产服务器无法重新启动。
分解(根据请求)以使其更具可读性。
:() # Define ':' as a function. Every time we say ':' execute the following code block
{ # Start of code block
: # Call ':' again.
| # Pipe output to...
: # Another ':'
& # Disown process.
# All on one line this would read :|:&,
} # End of code block
; # End definition of ':' as a function
: # Call ':'
看起来可能会更容易
bomb() { bomb|bomb& }; bomb
:
则不会执行任何操作。而且它根本不使用内存,只是分叉了很多。[是的,我确实尝试过:)]。可以通过限制每个用户的进程数来阻止效果。
我的意思是,我确实做到了。尝试chmod
递归目录并最终./
与交换/
。
当然,作为根源,因为只有拥有根源,才能实现真正的痛苦(并因此获得启发)。
我偶然擦拭了主驱动器的分区表,以为我正在另一个驱动器上工作。
使用回滚时,请谨慎使用 df
,内存和运气,我能够准确地重新创建它,重写它,重新启动它,并希望...而且它起作用了。
dd
读取管道中每个圆柱的第一个4k块,file -
以查找超级块,从而找到文件系统的开始。这是在实时CD上,没有足够的RAM来完成我们需要做的所有事情(包括安装一两个软件包),因此我们将其传送到另一台计算机上以ssh运行的进程中。
sfdisk -O
备份分区表的原因。仅供参考:cgsecurity.org/wiki/TestDisk可以自动执行@Neil Mayhew的操作。
testdisk
保存了我的盒子
gpart
,它寻找可能类似于文件系统的东西,并从中构造一个分区表。
不是我的时刻,而是其他人的时刻。
回到我在核科学研究所工作时,我们曾经运行过许多SunOS,Ultrix和Linux计算机,研究人员必须在这些计算机上共享CPU。随着各个研究小组获得自己的研究资助,他们购买了自己的计算机(主要是SparcStation),并且自己进行了系统管理。
SunOS曾经随OpenView桌面和一个不错的文件管理器一起提供,看起来是这样的:
我们的大多数研究人员都以root身份运行,并且不止一次,我们不得不重新安装操作系统,因为有人决定整理根目录,并将/ bin,/ etc,/ tmp以及其他所有使视图混乱的内容移动到垃圾桶或某些子文件夹。
其他用户选择整理/ bin目录并删除他们不知道的任何命令。
幸运的人有备份,大多数人购买了磁带机,但没有自己运行备份的传统。
早在90年代中期至后期,我的一个朋友和我正在讨论rm -rf *
Linux 的愚蠢之处,到什么时候Linux盒子就会崩溃。我们进入了静态链接库还是动态链接库,我认为该系统可以很好地运行/lib
,然后在工作站上对其进行重命名。 发生了不好的事情,但是我们留下了几个打开的控制台窗口,可以用来修复损坏(不再可以选择关闭)。没有任何编辑器可以运行。您可以在echo
命令中找到深奥的用法,这令人惊讶。
vi
和Caps-Lockvs./etc/passwd
su -
vi /etc/passwd
。没有vipw
,无论如何都“我们只是在进行小的修改”。我做了一次。令人惊讶的是,该系统可以运行几个月。Cronjobs运行良好,日志文件中没有出现任何错误。
几个月后我们重新启动系统并且无法登录控制台,我们才注意到此问题。ps
显示了一堆属于UID'0'而非用户'root'的作业。
您无法以root用户身份登录,也无法运行su
或su -
,并且sudo
此框上没有任何内容。没有软盘驱动器,CD-ROM损坏,没有USB端口(因此没有外部CD-ROM)。单用户模式不起作用,因为您需要输入root的密码,该密码来自/etc/passwd
。
一个简单的halt
识别几秒钟后,我不在本地shell上,并且无法再次打开生产服务器的电源。
得到教训?机器的提示现在看起来像
[ --> root <-- @kompost:/home/echox] #
有一些漂亮的红色标记;-)
molly-guard
,用于检查您是否远程登录并询问您是否真的要这样做。
或另一种经验,如何通过几个简单的步骤感觉真正的愚蠢,而这些似乎并没有那么愚蠢。
第一步:为孩子准备一个帐户,以防他想使用Linux盒子。给它一个平凡的密码,因为毕竟这是一个家庭系统,并且不会暴露在网上。
第二步:花些时间,所以您不记得第一步了。
第三步:打开防火墙中的SSH端口(实际上是路由器上的NAT)以进行SSH加密。毕竟,我的帐户具有非常好的密码,这并不意味着有任何非常有价值的东西。
第四步:从ISP收到通知,有某种DOS活动正在瑞典站点进行。假设可能是Windows框,然后检查并加固它们。
第五步:从ISP处获取通知它仍在继续。要求提供一些详细信息,获取瑞典站点的IP地址,启动Wireshark,找到攻击来自哪个盒子。
第六步:清理Linux盒子,感觉很蠢。查找登录名来自罗马尼亚地址。删除没有良好密码的帐户。
我删除了/ etc,然后恢复了它。我认为我没有吸取教训...我也必须从已删除内容中恢复/bin
。我一直在用电脑工作似乎发生了chroot
。
在我学习计算机科学的第二年,我们被分配了一项作业,以C语言编写一个程序,该程序将产生许多子过程, fork
并使它们与管道“圆”通信,并确定哪个管道应作为“领导者”。 ”。
那时我们还算是新手,大多数peple都没有任何Linux机器,因此我们在教职员的主服务器(也托管官方站点和员工账户以及站点)上处理帐户。大多数人在尝试做作业的某个阶段写下了前炸弹。我小组中超过一半的人都参加了会议abusers
。这是该服务器在最近时间内的最高负载:)
我是Linux班的实验助手。其中一个学生给我打电话是因为她不能su -
因为她越来越来而不再permission denied
。好的,她忘记/输入了错误的密码。重新启动进入单用户模式并重置。什么?!su
仍然不起作用?!它必须屈服于我的意志!因此,我重新启动进入单用户模式以了解她的所作所为。我意识到她跑了chmod -R 777 /var/www/html/drupal-6.19 /
请注意目录名称和最后一个斜杠之间的空格。
在“我真的不想重新安装她,那么这是怎么做的以及如何做。”几分钟后,我设法找到了/ bin / su现在具有的文件许可权777
。也可以将其读取为的文件权限0777
,从中删除setuid位/bin/su
。快速chmod u+s /bin/su
,我是英雄。
我曾经工作过的一家公司在SCO上运行其产品。我正在做一些调试,以使我们的演示服务器上的应用程序变得非常缓慢,同时,还向大量客户提供了有关即将推出的新功能的演示/讲座。
因此,我运行了曾经被卡住的应用程序,对其进行了处理以验证根本原因,但是由于它仍然被“卡住”,因此我试图杀死它:
pkill -9 mytestapplication
我学到的是pkill在SCO上的功能与在linux上的功能完全不同=)
...它基本上杀死了用户有权访问的所有内容,并且具有root用户……这就是一切=)
我从Debian切换到Ubuntu的那天是我尝试删除一些文件和目录(即键入
rm -r /var/tmp/*
不幸的是,我在“ / var / tmp /”和“ *”之间插入了一个空格,更糟糕的是,我位于文件系统的根目录中。
root@workstation:/# rm -r /var/tmp/ *
请不要在家尝试!
我一次安装了两个驱动器,第二个驱动器的根文件系统安装在的目录中/mnt
。我在该目录中,试图删除var
但最终却输入了rm -rf /var
。某种本能似乎在说那var
必须在前面加上一个斜线!
当我意识到自己做了什么时,我立即击中了,Ctrl-C但为时已晚。我的rpm
数据库离开大楼很久了。我花了很长时间使一切恢复正常。
现在是痛苦的部分。
我回到那个目录 /mnt
以恢复我一直在做的事情。我要输入什么?好吧,让我们再说一次本能。
至少我第二次能够更快地恢复系统;)
rm
命令。或难过。