gpt4 book ai didi

linux - 通过shell脚本添加用户到sudoers

转载 作者:IT王子 更新时间:2023-10-29 00:14:30 25 4
gpt4 key购买 nike

是否可以通过 shell 脚本将用户添加到 sudoers 文件中?我一直在四处寻找,仍然找不到任何东西。

最佳答案

您可以简单地 echo(当然,具有提升的权限)直接到 /etc/sudoers 文件:

sudo -i
echo 'nickw444 ALL=(ALL:ALL) ALL' >> /etc/sudoers
# ^^
# tab

(注意用户名和第一个 ALL 之间的制表符)

或者,对于脚本:

#!/bin/bash
# Run me with superuser privileges
echo 'nickw444 ALL=(ALL:ALL) ALL' >> /etc/sudoers

然后保存到 somefile.shchmod a+rx 它,然后从终端窗口运行 sudo ./somefile.sh

要添加多个用户,把脚本改成这样;

#!/bin/bash

while [[ -n $1 ]]; do
echo "$1 ALL=(ALL:ALL) ALL" >> /etc/sudoers;
shift # shift all parameters;
done

然后,像这样运行脚本(假设您将其保存为 addsudousers.sh):

sudo ./addsudousers.sh bob joe jeff

即以空格分隔。

从文件中读取名字:

nickw444@laptop ~ $ sudo ./addsudousers.sh `cat listofusers.txt`

listofusers.txt 也应该以空格分隔。

编辑: Jappie Kirk rightly points out你不能直接调用 sudo echo ... >>/etc/sudoers 因为 >>> 重定向是由 shell 处理的,到那时它已经删除了 super 用户权限。但是,如果您运行包含 echo ... >>/etc/sudoers 的脚本并且该脚本本身具有 super 用户权限,那么一切都应该正常工作。

关于linux - 通过shell脚本添加用户到sudoers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8784761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com