加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 不能SUDO SU了,“没有tty存在且没有指定askpass程序”

发布时间:2020-12-13 16:59:53 所属栏目:Linux 来源:网络整理
导读:我有一个根服务器,我通过root用户禁用了登录,并创建了另一个位于sudoer列表中的用户.所以,当我想在服务器上工作时,我会: ssh myusername@IP_ADDRESS 在服务器上: sudo su 输入我的密码以获得root权限.这个工作正常6个月了.今天我在做sudo su时得到这条消息
我有一个根服务器,我通过root用户禁用了登录,并创建了另一个位于sudoer列表中的用户.所以,当我想在服务器上工作时,我会:
ssh myusername@IP_ADDRESS

在服务器上:

sudo su

输入我的密码以获得root权限.这个工作正常6个月了.今天我在做sudo su时得到这条消息:

sudo: no tty present and no askpass program specified

黑客正在发生什么?这个错误意味着什么,为什么我会得到它?没有root权限我在服务器上做不了多少.知道如何解决这个问题吗?

解决方法

sudo尝试打开/ dev / tty进行读写,如果失败则输出该错误.您已在评论中指出系统中缺少/ dev / tty.

Sudo有一个选项-S从标准输入而不是/ dev / tty读取密码.您应该能够运行sudo -S成为root用户.

关于如何恢复/ dev / tty,重启服务器就足够了;系统可能会在启动期间重新创建/ dev中的所有设备.或者,要创建设备,请使用mknod命令,但您需要知道tty设备的正确主要和次要编号.在我可用的Ubuntu系统上,我在/ dev中看到这些条目:

crw------- 1 root root      5,1 Apr 16 18:36 console
crw-rw-rw- 1 root tty       5,2 Sep 24 15:35 ptmx
crw-rw-rw- 1 root tty       5,0 Sep 24 14:25 tty

在这种情况下,主编号为5,次编号为0. / dev / console和/ dev / ptmx具有相同的主编号.所以我检查/ dev / console或/ dev / ptmx以找到正确的主号码,然后运行:

mknod /dev/tty c major 0

其中“主要”是正确的主要数字.

重新创建/ dev / tty后,请确保权限正确:

chmod 666 /dev/tty

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读