【问题标题】:List all possible owners and groups列出所有可能的所有者和组
【发布时间】:2011-12-31 18:28:08
【问题描述】:

使用 Java 或 bash 如何列出所有可能的所有者和组。

例如,如果我在具有明显错误所有者的 shell 中执行以下命令:

chown ljafdj ~/Desktop/test.txt

我的输出是

chown:无效用户:`ljafdj'

chgrp 也是如此

那么如何获取使用 bash 或 Java 的有效用户列表?

这是一个 Android 应用程序,我需要向我的用户展示可能性,以便他们可以根据需要进行更改。

【问题讨论】:

标签: java android bash owner


【解决方案1】:

【讨论】:

  • 不要将 Android 帐户与 linux 用户/组混淆。这些不相关。
【解决方案2】:

使用外壳(“bash”):

对于用户:

getent passwd

对于团体:

getent group

只需解析第一个字段(在冒号之前)以获取实际名称。

【讨论】:

  • 在 android 上工作,当我运行这个 getent 时,在我的设备上没有找到,也不是busybox的一部分。我检查了我在 /etc/passwd 中找到的 passwd 它只包含“root:x:0:0::/data/cron:/system/bin/sh 并且组在 /etc 中不存在任何其他想法?谢谢建议
  • 你看过/etc/nsswitch.conf吗?它将什么定义为用户名和组的有效来源? (即如果存在这样的文件)
  • 对不起 - 我不相信你的“android”标签,因为它是整个问题中唯一提到的 Android。 :-)
  • 抱歉,应该更详细地描述它是针对 android 的,@fge 该文件在我的设备上不存在,但会在我的设备上搜索它,但它不在您提供的路径上
  • 我建议您搜索 Android 查找其用户名和组的方式:它似乎没有使用 Linux 发行版上使用的标准机制。碰巧,你有一个/etc/pam.d 目录吗?也许查看这个目录中的文件会给你提示......
猜你喜欢
  • 1970-01-01
  • 2016-11-17
  • 1970-01-01
  • 2013-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多