如何在Ubuntu中重置bashrc以删除用户编写的export $ path

时间:2014-01-22 12:52:12

标签: linux bash ubuntu environment-variables

我添加了一些环境变量作为bash shell的导出路径。不幸的是,我做错了,现在我无法登录Ubuntu中的帐户。

是否可以从.bashrc中删除这些导出命令,或者我们可以直接替换它 bashrc到系统定义的默认值?

即使输入正确的密码后我也无法登录,但同时我可以通过访客帐户登录。 这可能会对这个问题有所了解。我在登录界面使用 Ctrl + Alt + F1 得到了这个。

Last login: Wed Jan 22 13:17:57 CET 2014 on tty1
Welcome to Ubuntu 12.04.4 LTS (GNU/Linux 3.8.0-35-generic x86_64)

 * Documentation: https://help.ubuntu.com/

-bash: export: `:': not a valid identifier
-bash: export: `usr/local/SHTOOLS2.8/modules': not a valid identifier
-bash: export: `:': not a valid identifier
-bash: export' `usr/local/SHTOOLS2.8/lib': not a valid identifier

2 个答案:

答案 0 :(得分:3)

您需要获得错误配置的启动脚本(.bashrc)的写入权限。可以通过访客帐户实现吗?我对此表示怀疑。否则,只需使用sudo pico /home/user/.bashrc修改您的文件。

通过从Ubuntu启动盘启动运行时系统,您始终可以获得写访问权限。然后启动的即时系统可以挂载硬盘,以便您可以修改有问题的.bashrc。我祈祷你没有使用加密的主目录。

您还可以尝试通过ssh登录您的帐户(当然,您需要安装并运行sshd)。如果您可以连接但登录仍然存在,可能您至少可以通过sshssh user@host date执行命令(仅使用date进行测试)。如果至少有这个功能,我们可以通过命令开始修补损坏的脚本文件。

答案 1 :(得分:2)

你有两个问题: (1)您需要重新获得系统访问权限 (2)您需要修复.bashrc

解决方案: (1)问题#1:重新获得访问权限 (1)(a)如果有另一个用户具有sudoers权限(即用户可以执行“sudo”以root身份执行命令),则让该用户登录并且您将有权访问系统以执行问题的解决方案#2。 (1)(b)如果您在系统上没有其他用户帐户,则需要从Ubuntu或其他Live CD启动并将文件系统安装到问题#2进行修复操作。这超出了这个特定问题的范围,但是有大量的文档可以在线实现。

(2)问题#2:修复.bashrc (2)(a)最简单的方法是在你的主目录中制作.bashrc的备份副本,调用坏文件就像myBadbashrc。然后,您可以使用/ etc / skel中的新.bashrc替换该文件,或者从您的特定系统获取其新帐户模板。 (2)(b)如果您不想替换上述文件,可以进行编辑并继续迭代测试。

(3).bashrc或其他帐户维护的脚注。始终使用TEST帐户进行测试。如果您不能这样做,那么在您仍然登录的同时在另一个终端下登录以确保一切正常。好消息:我们已经完成了你刚才所做的事情并且艰难地学到了这一课。 ; - )

- 萨姆