问题标签 [su]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
381 浏览

linux - 如何在脚本中以其他用户身份执行代码?

我正在编写一个自动安装邮件服务器的脚本,但是我的一些代码必须从源代码编译,因为它不在存储库中。我对此没有任何问题,但是,我不知道从以 root 身份运行的脚本中最好和最安全的方法是什么。我知道我必须创建一个非特权用户来进行构建,但是以下哪一个是推荐的方法?

1

2

3

理想情况下,我想在执行后以 root 身份继续我的脚本;我觉得选项 3 可能是最理想的,但我希望您能对此提出意见。

0 投票
4 回答
1717 浏览

android - 当 su 到 ssh 会话中的另一个用户时,Android 常规用户登录会丢失组信息

我在做什么:

  • 我已经在手机上构建了 GNU emacs 以供本机使用。
  • 我在手机上以守护程序模式运行 emacs,因此我随时使用 emacsclient 连接到它,以继续处理常规文件、运行进程等。
  • 从手机终端登录时,我目前是用户 10157,一切正常:

    $标识

    uid=10157(10157) gid=10157(10157) 组=10157(10157),1015(1015),1023(1023),1028(1028),3003(3003)

  • 当我通过 ssh 从 PC 连接到手机时(我在手机上使用 DigiSSHd),它以普通用户 10282 的身份登录,一切正常:

    $标识

    uid=10282 gid=10282 组=1015(1015),1023(1023),1028(1028),3003(3003)

Emacs 运行良好等。但是,这样我无法通过 emacsclient 连接到在用户 10157 下运行的 emacs 进程。这是可取的,因为我不想启动两个 emacs 进程,因为我想继续使用我在用户 10157 下的 emacs 中打开。

所以: $ su - 10157

很好,我可以运行 emacs 等。但是,我无法访问网络。

因此,除了其他组之外,我不再属于访问 Internet 所必需的组 3003。

为什么这个组信息会被删除,我该如何解决这个问题,所以当我在 ssh 下 su 作为这个用户时,我可以继续访问网络?

0 投票
2 回答
1424 浏览

java - 在Android中执行shell命令时避免“su” toast?

我正在开发一个简单的应用程序,它通过执行 shell 命令在 build.prop 上注入行。我的主要问题是,每次我检查创建函数的切换时,都会出现显示 shell 字符串的 toast。有没有办法避免这种情况?另外,如果您有任何建议清理一下代码,我们将不胜感激!(我的第一个应用程序)。

代码:

所以,我的主要问题是su -c显示令人讨厌的吐司。我试图将它传递给busybox或工具箱但没有成功,因为它们需要与su.

谢谢!

0 投票
2 回答
1620 浏览

android - 通过应用程序运行 shell 命令..无法正常工作

您好我正在尝试从应用程序执行 shell 命令。尽管代码运行没有任何错误,但看不到输出。例如,我正在尝试复制文件。此命令工作正常,同时通过 shell 命令提示符执行。这是我使用的代码。从 LogCat 中的调试语句,我可以知道所有的代码块都被覆盖了。但是文件没有被复制。请提出解决方案。PS:我通过模拟器运行这个..

}

}

0 投票
2 回答
1933 浏览

linux - 如何查看使用“su”的登录用户

如果我使用登录 shell 以 root 身份登录,那么“who”或“users”命令将显示 root 用户的条目。但是,如果我使用 user1 登录,然后使用:

然后“谁”和“用户”命令将不会显示根条目。

有没有办法找出我的系统中是否有登录用户当前已切换到 root(或任何其他帐户)?

0 投票
2 回答
2346 浏览

java - 无法从 SuperSU 获得权限提示

我有一个应该执行一些根命令的应用程序。SuperSU 版本是 1.04。苏版本是1.02。安卓 4.1.1。设备是三星 Galaxy S3 - 植根。

问题是我无法从 SuperSU 获得许可提示。我尝试了很多东西,但提示从未出现。

对于 RootChecker basic、ADB 和其他应用程序,它会显示出来。这是我的程序-也许我做错了什么。

InputStream 处理程序是:

任何人都知道为什么它会阻止它所以它不显示权限窗口?谢谢。

0 投票
1 回答
308 浏览

bash - 在 bash 脚本中缺少与 su -c 匹配的引号

我想写类似的东西

但我收到以下错误:

如果我在命令行上编写命令,它就会执行。如果我将它存储在一个变量中并试图推断它 - 它不会。为什么?

0 投票
1 回答
241 浏览

java - 为什么有些命令在 Unix 上需要锁而其他命令不需要?

最近,我在我们的环境 AIX 7.1 中观察到一些有趣的东西。为了追查这个问题,我用 Java 创建了一个小型锁定应用程序:

据我所知,这在 /etc/passwd 上获得了读写锁。如果我尝试运行此应用程序的两个实例,我只能按预期在一个实例中获得锁。同样,如果我运行此命令:

该命令挂起,直到我从 Java 应用程序释放锁定。另一方面,读取文件:

成功运行。甚至写入文件:

也很好。现在,显然 Java FileLock 实现依赖于系统,并且由于这种性质,没有指定的行为。然而,我很好奇的是为什么 'su' 需要等待。'cat' 重定向是否可能只是删除文件并使用新输出重新创建它,或者这仅仅是锁定机制在命令之间不一致的情况?

编辑:由于提出这个问题,我在 Java 应用程序中添加了一些写语句,所以程序的结构如下:

所有这些信息都反映在更新的 /etc/passwd 中,因此 IO-Redirection 似乎不仅仅是删除文件。因此,为什么 'su' 和 '>' (可能还有许多其他东西)之间的区别?

0 投票
2 回答
4369 浏览

android - 通过 android 应用程序执行时的“su”命令问题

您好我正在尝试通过应用程序执行以下“su”命令。

我得到退出值 1 ..它为其他命令(如“id”)返回 0

我通过命令提示符检查了它,它没有显示任何错误(如下所示)。

这是否意味着模拟器已植根?如果是,那么真正的问题是什么?谁能指导我..

0 投票
1 回答
12083 浏览

android - 未授予 Android 应用程序执行“su”命令的 Root 权限

我想从应用程序执行“su”命令..我已经植根了模拟器并安装了 Superuser.apk(superuser 2.3.6.1)

但是我得到 255 作为退出值,这似乎是执行“su”时的一些错误。我已经包含了 RootTools 库(http://code.google.com/p/roottools/)。当检查方法RootTools.isRootAvailable(), RootTools.isAccessGiven() ...它发现模拟器有 SU,但我的应用程序没有被授予 Root 权限。会是真正的问题吗??..如果是这样你能告诉我如何授予我的应用程序的Root权限吗?