linux 免密码执行脚本,Linux设置开机自动免密执行脚本

一、Linux开机自动执行脚本

Ubuntu开机之后会执行/etc/rc.local文件中的命令,所以,如果是想添加登陆用户所具有权限的操作,可以在文件中exit 0之前添加开机自动执行的脚本命令。

或者将执行脚本的权限修改为当前登录用户具有执行权限,命令为: chmod +x /home/xx/x.sh 再加入自动执行脚本: sudo vi /etc/rc.local 在exit 0的上面新起一行,写入/home/xx/x.sh

以上情况均适用于脚本中的执行命令都不需要root权限才能执行的操作,但是,如果x.sh脚本中具有只有root权限才能执行的操作时,以上的方式便不能生效。

二、开机免密自动执行脚本

某些操作只能root用户才能操作,比如挂载共享盘,当执行到挂载命令时,需要root用户密码方能执行。所以,需要修改/etc/sudoers这个文件。

Ubuntu默认不能直接用root帐户登录,必须从第一个创建的用户(既安装时创建的那个用户)通过su或sudo来获得root权限。

sudo 格式:sudo [其它命令]

sudo既为Super user do的意思。sudo在这个过程中只起一个调用root用户的作用,本次操作完成后,其作用就消失,如果要使用调用root权限操作的命令就必须再次使用sudo。

通常我们并不以root身份登录,但是当我们执行某些命令 (command)时需要用到root权限,我们通常都是用"sudo command"来执行command。由于使用Ubuntu,所以经常都都用sudo,而使用sudo时,又得输入密码,所以我就寻找sudo不输入密码的方法。

假设我的用户名为idu,使sudo不用密码的方法如下。 运行命令:sudo vi /etc/sudoers,如果vi来编辑,则保存时记得用"wq!"强制保存,否则会提示只读不能保存的。 就会编辑/etc/sudoers这个文件。 默认情况我们会看到有"%admin ALL=(ALL) ALL"一句话,就是允许admin组在所有主机上执行所有命令,当然是需要passwd的。

如果想把admin组的用户都sudo不用密码那么可以将这一行换为:"%admin ALL=(ALL) NOPASSWD: NOPASSWD ALL"即可。

如果仅仅想让idu用户sudo不需密码,则可添加"idu ALL = NOPASSWD: ALL"这样一行。

如果让idu用户sudo不用密码即可执行某几个命令,可这样写"idu ALL = (ALL)NOPASSWD: /usr/bin/abc.sh, /usr/sbin/adduser"

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要让Linux开机自动执行脚本,可以在/etc/rc.local文件中添加脚本命令。具体步骤如下: 1. 打开终端,输入命令sudo nano /etc/rc.local,进入rc.local文件编辑界面。 2. 在文件中添加要执行脚本命令,例如:/usr/local/bin/myscript.sh。 3. 保存文件并退出编辑界面。 4. 重启Linux系统,脚本将会自动执行。 需要注意的是,rc.local文件中的脚本命令必须是可执行的,否则无法执行。可以使用chmod命令给脚本添加执行权限,例如:chmod +x /usr/local/bin/myscript.sh。 ### 回答2: 在Linux系统中,可以通过在系统启动时自动执行脚本来增加系统的灵活性和自动化工作。以下是实现这个过程的步骤: 1. 创建脚本:首先,需要创建要自动执行脚本。比如,可以在/root目录下创建一个名为startup.sh的脚本,内容可以是以下命令:#!/bin/bash echo "Hello World" 2. 赋予执行权限:接下来,需要将该脚本赋予执行权限。在终端中输入命令:chmod +x /root/startup.sh 3. 修改/etc/rc.local文件:接下来,需要将该脚本添加到/etc/rc.local文件中。该文件在系统启动时会自动执行其中的命令。使用以下命令打开该文件:sudo nano /etc/rc.local 4. 添加脚本命令:在打开的文件中找到“exit 0”语句,在其前面添加要执行的命令。在本例中,需要添加以下命令:/root/startup.sh & 5. 保存更改并退出:保存更改并退出/etc/rc.local文件。在终端中按下“Ctrl+X”,然后按下“Y”来保存更改。最后按下“Enter”键退出编辑器。 现在,系统在启动时将自动执行脚本,并在终端中输出“Hello World”。如果需要执行其他操作,可以将脚本内容修改为相应的命令即可。验证操作是否成功,只要重启系统便可看到结果。 ### 回答3: 在Linux系统中,我们可以通过编辑一些配置文件来实现开机自动执行脚本的功能。下面我将分步骤介绍如何实现该功能。 1. 创建并编辑脚本文件 首先,我们需要创建一个需要开机自动执行脚本文件,该文件可以是Bash脚本、Python脚本等等。在这里以Bash脚本为例,我们可以使用命令`touch script.sh`来创建一个新文件,再使用命令`vim script.sh`来编辑文件。在编辑器中,我们可以输入需要执行的命令,比如`echo "hello world"`。 2. 将脚本文件移动至/etc/init.d目录下 在Linux系统中,开机自动执行脚本需要将脚本文件放置在`/etc/init.d`目录下。我们可以使用命令`sudo mv script.sh /etc/init.d/`来将刚才创建并编辑的脚本文件移动至目标目录。 3. 添加脚本文件到系统启动 接下来,我们需要将脚本文件添加到系统启动中。具体操作方式取决于Linux版本不同,但基本思路相同。在这里以Ubuntu18.04为例,我们可以使用命令`sudo update-rc.d script.sh defaults`来将脚本文件添加到启动列表里面。 4. 重启系统进行测试 最后,我们需要重启系统并进行测试。在系统重启后,我们可以查看日志文件或者在执行时输出相应信息来确认脚本是否被执行。在Ubuntu18.04中,我们可以查看`/var/log/boot.log`文件来查看启动脚本的日志信息。 综上所述,以上便是Linux开机自动执行脚本的基本操作流程。通过这种方式,我们可以方便地实现在开机自动执行某些命令或程序的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值