当前位置:首页 » 编程软件 » shell脚本切换root

shell脚本切换root

发布时间: 2022-08-19 13:37:15

1. linux shell脚本切换用户执行一段命令

ls -l /bin/echo 看看echo命令的权限是什么 如果其他用户没有执行权限,就切到root下加一下x权限
chmod o+x /bin/echo

2. 在Linux下能不能以shell脚本的形式由普通用户切换到root

执行 echo '$username ALL=(ALL) NOPASSWD:ALL'
>>/etc/sudoers 然后在$username账号下 编辑suroot.sh: #!/bin/bash sudo su -
执行 sh suroot.sh就切过去了.

3. shell脚本执行完后退出root用户,脚本应该怎么写

#!/bin/bash
su - test <<EOF
pwd;
exit;
EOF

4. 如何给一个shell脚本提权为root执行

第一步:安装USB驱动,进入设置-应用程序-开发-USB调试,将第一个选项打钩选中。然后通过USB线连接电脑,提示安装驱动。如果是32位的系统选择x86文件夹安装驱动,如果是64位系统选择amd64文件夹。
第二步:软件准备,将提供的软件工具包中的TMG文件夹,放到C盘根目录下。之所以放于此不是指定位置,只是为了后续在MS-DOS中进入文件夹带来方便。文件夹路径:C:\TMG\
第三步:检查adb.exe和fastboot.exe;确定TMG文件夹里的tools有adb.exe和fastboot.exe这两个文件,当然如果你按照前两步提示自然不会出错。
第四步:检查驱动安装情况,拔掉usb线,正常关机,然后按着后退键(就是右下角的那个带箭头的,一直按着)再按开机键会进入bootloader(白色背景)。然后连接电脑,手机上会出现fastboot usb(红字),注意不要点mount之类的。
打开开始-运行-CMD, 然后输入命令 cd C:\TMG (如果你解压的文件夹不是C:\TMG,则根据自己的位置修改命令)
命令运行成功会显示C:\TMG>_
然后输入命令 fastboot devices , 成功安装了驱动的话会出现一行字,以测试用机为例,出现“HT97FL900532 fastboot”
第五步:开始Rooting
开始进入正题,继续步骤4,在C:\TMG>后输入命令 fastboot boot cm-hero-recovery.img , 成功的话你应该看到你的手机进入了recovery模式。
进入Recovery模式后会看到7个选项,分别是:
[Home+Back]reboot system now \\重起
[Alt+S]apply sdcard:update.zip \\安装SD卡里的update.zip文件
[Alt+A]apply any zip from sd \\安装SD卡里的任意zip文件
[Alt+W]wipe data/factory reset \\清除数据
[Alt+B]nandroid v2.2 backup \\备份
[Alt+R]restore latest backup \\恢复最后的备份
[Alt+F]repair ext filesystems \\修复
建议你备份一下你的ROM,用轨迹球将光标移动到 [Alt+B]nandroid v2.2 backup 选项上,按一下选中,以后万一出现什么问题也可以用来恢复(备份会自动放在SD卡上)。
现在开始输入命令,一行是一个命令,注意大小写,注意空格
adb shell mount /system
adb push su /system/bin/
adb shell chmod 4755 /system/bin/su
adb push Superuser.apk /system/app/
adb shell reboot
成功的话手机会自动重启,这时候你的手机已经有root权限了。

5. shell中调用expect 我编写了一个普通用户切换到root的脚本。

在bash 中直接执行expect 应该使用 -c 选项,而不是使用重定向。
# expect -c '
spawn su -
expect ":" {
send "passwdXXXX\n"
}
interact
'
你这种想法也算不上托裤子放屁,既然expect 提供了 -c 选项,就说名直接在bash 中调用expect 的大有人在。

6. SHELL脚本切换用户需输入密码

正常情况下,使用su - username的方式,普通用户切换都需要输入密码的,只有root su的时候才不需要

7. 有没有办法在Shell脚本中切换到root用户

如果adsl-start不是脚本,则
chmod 4755 /usr/sbin/adsl-start
如果是脚本就找到对应的程序再 4755
或是用 expect 来搞也可以。看 expect 的例子。

8. linux中如何写shell脚本实现改变用户为root并且不需要手动输入密码

编辑/etc/sudoers,给用户设置免密码使用su命令的权限,执行
sudo su -
即可免密切换到root

9. 如何shell中不要输入密码自动切换到root

如何在shell总不要输入密码自动切换到root? Linux系统中,只要你有权限你就可以任意妄为。记得刚开始工作那会儿,对Linux不是很熟悉。但是在Linux做事情,少不了makefile。makefile中又少不了编写clean规则,于是就会有rm -rf 。有时候我们又会有rm -rf ${BUILD_DIR}/,做了一次痛快的clean。没想到有时候我们的BUILD_DIR是空的,于是我们就rm -rf /,我们的系统也就挂了。有几次这样的危险经历,幸亏老大对数据有备份。那么如何保证不出现这种情况呢,Linux给你最大的权限,当然你也就拥有给自己限制的能力了。使用Linux多年的人也会养成不到必须要使用root权限的时候尽量不要让程序在root权限下执行。于是我们就使用普通用户make,然后使用root用户的权限执行。如果我们想让脚本即编译程序,又执行程序。那么就需要在编译完成后使用root的身份来执行。我们想到了sudo!但是sudo需要我们人工输入密码,那么有没有一种解决办法呢?答案是肯定的:下面的方式可以绕过密码提示,让脚本自动运行畅行无阻。 usr$ echo passwd | sudo -S touch /root/myfile现在看一下,/root目录已经有了myfile这个文件了。

10. shell脚本,我从root用户切换到普通用户之后,新定义了一个变量,但打印变量的值是空的,怎么回事

在$前面加上转义, echo ${Result1} 替换成echo ${Result1}


这个问题跟root用户切换到普通用户什么的没关系,而是因为你在用here-document的时候,并没有用双引号或单引号将!引用起来,或用转义符将here-document中的元字符$转义,这时候here-document中的文本将被扩展,即参数替换被启用。

你运行一下这段脚本,看看Result1值的变化,就会明白了

#!/bin/bash
Result1="001"
echo "Parameter substitution is enabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
echo "Parameter substitution is disabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
bash<<'EOF'
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
热点内容
南通哪里有卖密码锁的 发布:2024-05-03 11:22:01 浏览:522
除法指算法 发布:2024-05-03 11:21:23 浏览:844
h265压缩 发布:2024-05-03 11:20:27 浏览:490
手机相机自拍时怎么看是否存储 发布:2024-05-03 11:08:49 浏览:544
安卓手机怎么登苹果手机上的号 发布:2024-05-03 10:48:54 浏览:694
压缩求极限 发布:2024-05-03 10:43:54 浏览:950
有向图遍历算法 发布:2024-05-03 10:43:06 浏览:961
收缩数据库的影响 发布:2024-05-03 10:27:24 浏览:743
python同步文件 发布:2024-05-03 10:27:19 浏览:782
磁盘不能存储 发布:2024-05-03 10:27:14 浏览:52