标签: su

如何在不覆盖TTY的情况下将密码传递给su/sudo/ssh?

我正在写一个C Shell程序,它正在做su或者sudo或者ssh.他们都希望他们的密码在控制台输入(TTY)而不是stdin或命令行.

有人知道解决方案吗?

设置无密码sudo不是一种选择.

可能是一个选择,但它在我的精简系统中不存在.

linux passwords ssh sudo su

141
推荐指数
10
解决办法
29万
查看次数

如何以没有密码的其他用户身份运行脚本?

我有必须以user2身份运行的script.sh.但是,此脚本只能在我的应用程序中的user1下运行.

我想要运行以下命令:

su user2 -C script.sh
Run Code Online (Sandbox Code Playgroud)

但能够无密码运行.

我也希望这是非常严格的,因为在user1中只能在user2下运行script.sh而不是其他任何东西.

我试过用sudoers文件做这件事,经过几个小时的尝试后就无休止地混淆了.

如果有人可以提供一个如何实现这一点的明确示例(而不是像使用sudoers那样的通用),那将非常感激.

linux bash sudo su sudoers

139
推荐指数
2
解决办法
27万
查看次数

如何使用su来执行该用户的其余bash脚本?

我编写了一个脚本,它接受一个字符串作为参数,该字符串是用户名和项目的串联.该脚本应该切换(su)到用户名,cd到基于项目字符串的特定目录.

我基本上想做:

su $USERNAME;  
cd /home/$USERNAME/$PROJECT;  
svn update;  
Run Code Online (Sandbox Code Playgroud)

问题是,一旦我做了su ...它只是在那里等待.这是有道理的,因为执行流程已经转移到用户.一旦我退出,其余的东西都会执行,但它不能按预期工作.

我将su添加到svn命令,但命令失败(即它没有更新所需目录中的svn).

如何编写允许用户切换用户并调用svn(以及其他内容)的脚本?

permissions bash sudo su user-permissions

116
推荐指数
7
解决办法
19万
查看次数

如何通过多个sudo和su命令找到原始用户?

通过sudo或su运行脚本时我想获得原始用户.这应该发生在不管多个sudosu彼此内部并且特别是在内部sudo su -.

unix linux bash sudo su

79
推荐指数
6
解决办法
6万
查看次数

如何在Bash中作为另一个用户执行一组命令?

这里已经存在一些关于将命令作为另一个用户运行的问题.但是,问题和答案集中在单个命令而不是一组长命令上.

例如,请考虑以下脚本:

#!/bin/bash
set -e

root_command -p param1  # run as root

# these commands must be run as another user
command1 -p 'parameter with "quotes" inline'
command2 -p 'parameter with "quotes" inline'
command3 -p 'parameter with "quotes" inline'
Run Code Online (Sandbox Code Playgroud)

这里有几点需要注意:

  • 最后三个命令必须作为另一个用户使用su或运行sudo.在示例中有三个命令,但假设还有更多...

  • 命令本身使用单引号和双引号.

上面的第二点阻止使用以下语法:

su somebody -c "command"
Run Code Online (Sandbox Code Playgroud)

...因为命令本身包含引号.

什么是"分组"命令并在另一个用户帐户下运行它们的正确方法?

bash su

65
推荐指数
2
解决办法
9万
查看次数

OSX su命令问题

所以我无法获得su在终端上工作的命令.我只需输入"su"并按回车键,它会输入密码并输入我当前登录的用户密码.它总是给出这个错误.我发誓过去常常工作,不知道发生了什么.

su: Sorry
Run Code Online (Sandbox Code Playgroud)

我正在运行Mac OSX 10.7.1(Lion).谁知道什么可能是错的?我正在输入正确的密码.

macos su osx-lion

40
推荐指数
2
解决办法
5万
查看次数

su postgres:对不起?

我的新Mac OSX Lion机器上的postgreSQL设置有问题.

我似乎无法连接到该服务

$ createuser -a -d _postgres
Password: 
createuser: could not connect to database postgres: FATAL:  password authentication failed for user 
Run Code Online (Sandbox Code Playgroud)

我没有机会找到正确的密码.知道那可能是什么.我有一个localhost服务器的默认设置.当我尝试通过pgAdmin连接时也会发生同样的情况.

$ su postgres
Password:
su: Sorry
Run Code Online (Sandbox Code Playgroud)

我没有机会发现什么是错的?

database postgresql console su

20
推荐指数
2
解决办法
3万
查看次数

通过Android上的Java代码运行Shell命令?

我有一个应用程序应该使用一些shell命令将文件从SD卡复制到/ system/media /.它将需要root,我正在root设备上进行测试.我正在使用运行时来执行shell命令,但它不起作用.这是我的运行时间

public void RunAsRoot{String[] commands = {"sysrw", "rm /data/local/bootanimation.zip", "sysro"};{
    Process p = Runtime.getRuntime().exec("su");
    DataOutputStream os = new DataOutputStream(p.getOutputStream());            
    for (String tmpCmd : commands) {
    os.writeBytes(tmpCmd+"\n");
    }           
    os.writeBytes("exit\n");  
    os.flush();
}
Run Code Online (Sandbox Code Playgroud)

但我的logcat只显示其中两个没有被拒绝

07-30 03:14:11.112: WARN/su(3593): request rejected (10047->0 /system/bin/sh)
07-30 03:14:11.132: DEBUG/su(3592): 10047 com.bba.stormdroid executing 0 /system/bin/sh using shell /system/bin/sh : sh
07-30 03:14:11.152: WARN/su(3594): request rejected (0->0 /system/bin/sh)
07-30 03:14:11.182: WARN/su(3595): request rejected (0->0 /system/bin/sh)
07-30 03:14:11.202: WARN/su(3596): request rejected (0->0 /system/bin/sh)
07-30 03:14:11.242: DEBUG/su(3597): 10047 com.bba.stormdroid executing …
Run Code Online (Sandbox Code Playgroud)

java shell android exec su

17
推荐指数
1
解决办法
3万
查看次数

在shell脚本中更改为root用户

我有一个shell脚本,需要非root用户帐户才能运行某些命令,然后将用户更改为root以运行脚本的其余部分.我正在使用SUSE11.我用expect期望自动化密码提示.但是当我使用spawn su - 并且命令被执行时,提示符将以root身份返回,并且脚本的其余部分不会执行.

例如.

< non-root commands>
 spawn su -
<root commands>
Run Code Online (Sandbox Code Playgroud)

但在su之后 - 提示以root身份返回用户.如何执行剩余的脚本.

sudo -S选项没有帮助,因为它没有运行sudo -S ifconfig命令,我需要找到机器的IP地址.

我已经浏览了这些链接但找不到解决方案: 在shell脚本中将脚本目录更改为用户的homedir

在shell脚本中更改unix用户

shell su

16
推荐指数
3
解决办法
7万
查看次数

插入墙壁充电器时自动启动

我正在开发一个Android应用程序,它需要3件事: -

  1. 要使应用程序保持运行特定时间,然后手机将关闭(工作正常)
  2. 当手机从插座充电时,我希望手机能够自动开机而不需要按任何电源按钮.(不使用墙壁插座,但通过笔记本电脑连接USB电缆时工作).
  3. 启动后我的应用程序应该自动开始工作(工作正常)

你必须知道: - 我的手机是Moto E(已植根),并希望第二步完成.尝试了一些代码,但这对moto E不起作用.当连接USB时,它提供2作为响应,当与墙壁插座充电器连接时,它说1

任何帮助将不胜感激

PS: - 自动启动使用与笔记本电脑连接的USB电缆,但不与插座充电器连接

更新-1:1-发现fastboot oem off-mode-charge 0使用Nexus 7但不在Moto e上.

2-连接到路由器(USB加密狗端口)时的Moto e靴子

android su

15
推荐指数
2
解决办法
5万
查看次数