使用 Putty 登录 Solaris 10 后没有“$”或“#”符号

使用 Putty 登录 Solaris 10 后没有“$”或“#”符号

这是我的环境:

Solaris 版本 10;Sun OS 版本 5.10 Oracle 版本:11g Enterprise x64 版。

当我通过 putty 登录时,它给出了以下输出:

登录为:ora 使用键盘交互式身份验证。

密码:

上次登录:2014 年 11 月 2 日星期日 10:24:21 来自 abc

它没有显示“$”符号或任何东西。我无法在上面写字,但无法执行 linux 命令或从中获取任何输出。我甚至用 root 密码登录了,但情况仍然一样。有人能给我描述一下并指导一下吗?

我的基于 Oracle 的数据库正在其上运行,但我不想重新启动服务器。那么我该如何修复它并获取 $ 或 # 呢?

答案1

您几乎肯定会在登录过程中遇到失败。某些东西挂起并阻止您进入交互式 shell。

尝试以下技巧来重新进入:

  • 以其他用户身份登录/在服务器上找到其他具有登录名的用户,然后su <your username>(请注意 su 中没有“-”,这会跳过目标用户的环境)
  • 以 root 身份登录或请求系统管理员以 root 身份编辑您的个人资料
  • ftp通过或连接ftps
  • 通过非交互式链接试试运气,例如scprsync -e sshsftp

如果其中一种技巧能让你获得访问权限并获得一个交互式 shell,那么你应该把你的配置文件放在一边:

mkdir broken-profile-files ; mv .profile .bashrc .login .cshrc .bash_profile broken-profile-files

如果你有一个非交互式 shell,比如 ftp,使用lsls -a来识别任何配置文件,然后移动或删除它们(通常是renamedelete

如果您可以通过 rsync 之类的方式进入,您可以先通过执行 rsync pull 来备份文件的当前版本,然后将空文件推回去覆盖它。

返回并使用空配置文件运行后,请执行以下操作进行调试:

  • 打开一个新 shell,让它保持打开状态,不要碰它,不要关闭它。事实上,打开两个,为什么不呢?这将是你的“免费出狱”卡。
  • 现在逐个复制你的配置文件,每次尝试通过新窗口登录,直到问题再次出现
  • 要么在有问题的文件顶部添加 set -x,要么echo "Here"在其中添加几行来跟踪在文件冻结之前你执行了多少操作
  • 识别问题并根据需要进行调试/修剪

可能造成挂起的原因:

  • 尝试探索无效或陈旧的目录树(例如,在陈旧的 NFS 安装的 autohome 目录上 shell 扩展 *)

最后一个想法:也有可能您在某个全局配置文件中存在较大的错误,在这种情况下,我建议您进入单用户模式并通过这种方式进行修复。

答案2

我已经解决了这个问题。

由于硬件故障,服务器处于挂起状态。我让它保持登录状态超过 30 分钟,然后它就进入了终端。

但还是感谢您的建议,尤其是 Smiling Dragon!!

相关内容