返回> 网站首页
Jetson开机自启动配置
yoours2023-04-03 20:17:30
简介一边听听音乐,一边写写文章。
1. 实现原理
systemd 默认会读取 /etc/systemd/system 下的配置文件,该目录下的文件会链接 /lib/systemd/system/ 下的文件。
一般系统安装完 /lib/systemd/system/ 下会有 rc-local.service 文件,即我们需要的配置文件。
2. 将 /lib/systemd/system/rc-local.service 链接到 /etc/systemd/system/ 目录下面来
ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service
3. 修改文件内容
sudo vim /etc/systemd/system/rc-local.service
4. 在文件末尾增加
[Install]
WantedBy=multi-user.target
Alias=rc-local.service
5. 创建/etc/rc.local文件
sudo vim /etc/rc.local
在里面添加如下内容,注意第一行要用bash,不要用sh:
#!/bin/bash -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
比如想把secbulk.ko模块加载为开机启动,如下
sudo insmod /home/nvidia/xxx/xxx.ko
比如想设置风扇开机自转,如下
sleep 30
echo "150" > /sys/devices/pwm-fan/target_pwm
exit 0
6. 加入系统程序中:
sudo systemctl enable rc-local #这条语句就是创建一个超链接,在系统启动服务程序中.
7. 给文件赋予可执行权限:
sudo chmod +x /etc/rc.local
8.测试
先执行如下命令,启动服务并检查状态,如果修改了rc-local.service文件,则需要用sudo systemctl daemon-reload重新加载.:
sudo systemctl daemon-reload
sudo systemctl stop rc-local.service
sudo systemctl start rc-local.service
sudo systemctl status rc-local.service
如果上面的命令不报错了,那说明设置成功了,然后可以重启看下效果,如果上面命令报错,则需要解决bug,否则重启后不会生效: