“10秒”问题。

“10秒”问题。

当我尝试登录时收到此消息。

/etc/mdm/Xsession: Beginning session setup...
/etc/mdm/Xsession: 1: /etc/profile: id: not found
/etc/mdm/Xsession: 12: [: Illegal number: 
/etc/mdm/Xsession: Executing default failed, will try to run x-terminal-emulator
/etc/mdm/Xsession: 205: exec: x-terminal-emulator: not found

我在这里发现了一个非常相似的问题:无法登录。xsession-errors 文件看起来如果我理解它可能会很有用Ctrl但是当我尝试按+ Alt+访问终端F1并键入命令时,出现以下错误:

me@me-ThinkPad-E520 / $ cat /etc/profile
Traceback (most recent call last):
file "/usr/lib/command-not-found", line 21, in <module>
     os.execvp("python3", [sys.argv[0]+sys.argv)
File "/usr/lib/python2,7/os.py, line 344, in execvp
    _execvpe (file,args)
File "/usr/lib/python2.7/os.py line 380, in _execvpe
    func (fullname, *argtest)
OSError: [Errno 2] No such file or directory

在此之前我正在安装 Maven。

答案1

由于您的 PATH 不正确,系统中缺少多个可执行文件或无法找到多个可执行文件:

-python3这就是为什么/usr/lib/command-not-found无法执行的原因。 - cat( /bin/cat),这就是command-not-found执行的原因 - id ( /usr/bin/id),如标准中使用的/etc/profile

第一个是链接,其可用性不太必要。您应该尝试使用ls来查看后两个命令是否可用(ls -l /bin/cat /usr/bin/id)。如果您没有这些文件,您可以尝试重新安装它们,但由于它们非常基本,您的系统可能无法做到这一点。安装两者的命令是apt-get install coreutils,但是,重复一遍,您的系统可能无法再执行此操作。

如果这些文件在那里,请检查您的 PATH 及其值的设置位置,以便它不再包含/usr/bin和/或/bin

如果这些文件不存在,您可能已经删除了它们,作为 root,卸载 core-utils 很困难,因为它有很多依赖项。

答案2

我想这个问题可能有很多原因,但我想我会分享我的解决方案。就我而言,这只是由于我的~/.profile文件中存在语法错误,基本上在某个地方缺少一个“=”。我已经通过进入恢复模式和 root 提示来修复它。然后我更新了文件,重新启动,它就工作了。

因此,如果您遇到此错误,可以检查一下。如果您最近修改了 .profile 文件,请检查它。

答案3

我有同样的问题和我找到了解决方案

我所说的还有许多其他变体

“10秒”问题。

我的情况和chleba 完全一样。我无法 ls 或 apt-get。所以我按下<ctrl>+<alt>+<F1>并进入 tty1,并以 root 身份登录。然而,我仍然可以echo $PATH,这给了我一些我昨天改变(搞砸了)的东西。然后我跑了

export PATH=$PATH:/home/[HomeDirectory]/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

(^ 抱歉,格式很糟糕。来源:wikihow.com/Change-the-Path-Variable-in-Linux)

现在,您可以ls,,,cat这一切。可是等等!不要按 退出<ctrl>+<alt>+<F7>!您需要首先更改~/.bashrc~/.profile文件以临时声明您希望系统能够直接访问哪些目录。如果您像我一样,您~/.bashrc的目录中可能还没有。另外,如果您以 root 身份登录,也就是说您输入了“用户名”或其他“root”身份,那么您将必须cd /home/[HomeDirName]到达那里。如果您使用常用的凭据登录,您就可以cd ~到达我们想要的位置。从这里开始,运行nano .profileorsudo nano .profile并在最底部添加export PATH=$PATH:...与上面相同的所有内容。然后 run [sudo] nano .bashrc.bashrc如果文件尚不存在(这对我来说就是这种情况),它会创建该文件,然后粘贴相同的 ol' export PATH=$PATH:... 内容。

现在你应该好了。

额外好礼

每个人都喜欢额外的好东西。

  1. 我敢打赌,您仍然可以运行lsapt-get等。您只需导航到 即可/etc/bin运行它们,或者运行./etc/bin/ls.sh或执行其他操作。我真的不知道 coreutils 位于哪里,但它看起来类似于上面的内容。

  2. 据我爸爸和我说,在 Linux Mint 17 中,您的$PATH变量位于/etc/environment。所以你可以改变它可能不是临时修复。如果您有时间对此进行研究,请发表评论以说明这是否是临时修复。只需在下载目录中创建一个 shell 脚本并将其粘贴到:~/[homeDirName]/Downloads环境文件中 $PATH 声明的末尾,然后看看是否可以像这样运行 shell 脚本:cd ~ ./[shellscriptname]

  3. 顺便说一句,我通过尝试向分散在我的计算机中的脚本和应用程序添加快捷方式而陷入了困境。系统

答案4

我在 ubuntu-7.10 上遇到了同样的问题。在我的虚拟机上,“/tmp”的权限以某种方式发生了更改。为了解决这个问题,我将“/tmp”的权限更改为777。

之后我就能够以普通用户身份成功登录。

相关内容