avatar

tetsai

原创声明

本文由tetsai原创,转载请注明来源

我在上一篇帖子 https://tetsai.net/1045.html 已经写了,如何实现开机自动运行sh脚本

但是这仅限以当前登陆用户执行脚本,如果希望以root运行脚本又该怎么办呢?

众所周知,这个arch的系统是不支持rc.local的

倘若我们复活了rc.local 是不是就可以实现,开机以root执行了呢?

说干就干

复活rc.local

运行代码

# pacman -Sy systemd-rc-local
# systemctl enable rc-local.service

第一行代码是安装rc.local的支持(其实就是给systemd创建个文件,只是这里更方便)

第二行代码是启用rc.local服务,这样下次开机就可以执行了

创建rc.local

但是这仅仅是实现了开机自动执行rc.local,如果这个文件不存在,也白搭啊

所以要创建rc.local这个文件

# touch /etc/rc.local
# chmod 755 /etc/rc.local

创建文件并设置相关权限,然后编辑这个文件

# nano /etc/rc.local

这是cat的效果

[tetsai-pc tetsai]# cat /etc/rc.local
#!/bin/sh
mkdir /tmp/rc_done
[tetsai-pc tetsai]# 

这样开机就自动在tmp下以root权限创建一个文件夹 rc_done

看见这个文件夹就表示配置成功了.

然后在这个rc.local里添加自己想要执行的sh脚本即可.

2 对 “Manjaro 设置 rc.local 开机启动运行 root 脚本”的想法;

    1. 之前的教程https://tetsai.net/1045.html 是以普通身份运行开机的脚本,也就是说既然是普通身份,肯定要等普通用户到登录了,才会运行。
      但此教程是以root身份运行的,linux只要开机,肯定先登录的用户就是root,所以它的运行时机,肯定是在开机后的某段时间,在用户登录计算机之前,就会运行。
      啊也就是说在登录锁屏界面这脚本估计就已经运行了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注