Ubuntu终端安装ng-commom后执行script命令冻结无法恢复的求助
Ubuntu终端安装ng-commom后执行script命令冻结无法恢复的求助
兄弟,我太懂你这种终端突然彻底卡死、啥操作都没用的崩溃感了!先别慌,咱们一步步来救回你的终端,再排查问题根源:
第一步:先强制解除当前终端的冻结状态
如果现在连终端窗口都关不掉,试试这几个办法:
- 切换到虚拟终端:按下
Ctrl+Alt+F2(或者F3到F6之间的任意按键),会弹出一个纯文本的登录界面,输入你的用户名和密码登录。之后用ps aux | grep script找到卡死的script进程,记下它的PID,然后执行kill -9 [PID]强制杀掉进程。杀完后再按Ctrl+Alt+F1切回图形界面的终端,应该就能正常用了。 - 紧急安全重启(万不得已才用):如果连虚拟终端都打不开,按住
Alt+SysRq(SysRq就是键盘上的PrintScreen键),然后依次缓慢按下r、e、i、s、u、b——这是Linux系统的安全重启组合键,会先安全同步文件系统再重启,不会损坏你的数据。
第二步:排查为什么script命令会导致终端冻结
大概率是安装ng-common后,它修改了你的终端环境配置文件,导致script命令运行时触发了异常循环或者错误的输出逻辑。可以这么查:
- 先检查用户目录下的配置文件:打开终端(恢复正常后),查看
~/.bashrc、~/.profile这两个文件,看看里面有没有ng-common添加的陌生代码段,比如带无限循环、错误重定向的内容。如果找到可疑行,先注释掉(在行首加#),然后执行source ~/.bashrc刷新配置,再试试script output.txt看还会不会卡死。 - 用新用户测试:创建一个临时新用户
sudo adduser testuser,然后切换到这个用户su testuser,执行script output.txt。如果新用户下这个命令正常,那肯定是你当前用户的配置文件被ng-common搞坏了,回头再仔细排查自己的配置文件就行。
第三步:彻底解决问题
如果确定是ng-common的配置导致的,要么直接卸载它sudo apt remove ng-common,要么找到它添加的错误配置并修正。另外,以后执行script命令时,也可以加个参数避免异常:比如script -q output.txt(静默模式),看看会不会有改善。
备注:内容来源于stack exchange,提问作者Samuel Noah
相关产品推荐
相关产品推荐

