AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1390303
Accepted
Minsky
Minsky
Asked: 2022-02-01 05:13:45 +0800 CST2022-02-01 05:13:45 +0800 CST 2022-02-01 05:13:45 +0800 CST

您可以将您的终端用户切换为 /etc/passwd 中定义的任何用户吗?

  • 772

语境

这是一个非常新手的问题,但我还没有完全掌握unix用户。

如果我cat /etc/passwd有不同的用户:

me:x:1000:1000:me,,,:/home/me:/bin/bash
systemd-coredump:x:999:999:systemd Core Dumper:/:/usr/sbin/nologin
sddm:x:127:134:Simple Desktop Display Manager:/var/lib/sddm:/bin/false
mongodb:x:128:65534::/home/mongodb:/usr/sbin/nologin
sshd:x:129:65534::/run/sshd:/usr/sbin/nologin
tftp:x:130:138:tftp daemon,,,:/srv/tftp:/usr/sbin/nologin
_rpc:x:131:65534::/run/rpcbind:/usr/sbin/nologin

他们中的大多数都没有登录用户(所以我们会说你不能登录,除非它是 /bash 用户),但是如果我尝试这个命令:

su - mongodb

它提示我输入密码。问题是在这种情况下我不知道密码。

问题

  • 但这是否意味着我可以在终端中切换到该用户,并可能像 systemd-service 那样运行该进程?
  • 所以我们会说你不能登录,除非它是 /bash 用户?
server
  • 1 1 个回答
  • 361 Views

1 个回答

  • Voted
  1. Best Answer
    AtomiX84
    2022-02-01T05:34:45+08:002022-02-01T05:34:45+08:00

    简短的回答:

    • 是的
    • 是的

    如果您是超级用户 (id=0) 或通常称为 root,如果 shell 设置为 /usr/sbin/nologin 或 /usr/bin/false,则无法登录

    根据 nologin 的联机帮助页描述:

       **DESCRIPTION**
       nologin displays a message that an account is not available and
       exits non-zero. It is intended as a replacement shell field to
       deny login access to an account.
    
       If the file /etc/nologin.txt exists, nologin displays its
       contents to the user instead of the default message.
    
       The exit status returned by nologin is always 1.
    

    但是(总是如果你是 root 或者可以 sudo 命令)你可以按照一个 noloign 用户执行 bash,以模拟他进行故障排除

    须藤:

    sudo -u mongodb /bin/bash 
    

    根:

    su -s /bin/bash mongodb
    

    上述命令不执行登录,而只是以用户权限执行 bash,在本例中为 mongodb 用户。

    注意:通常这些用户是无密码的,这意味着即使是su -进程也会要求您输入一个永远不会与空密码匹配的密码。

    • 3

相关问题

  • 使用 dpkg 手动安装软件包是否会阻止未来的升级路径?

  • 如何从命令行刻录双层 dvd iso

  • 如果在服务器机器上运行 Ubuntu 桌面版,性能损失是多少?

  • 将桌面版剥离为服务器版的最简单方法是什么?

  • 如何与无头服务器进行图形交互?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve