Ubuntu开机自启动脚本/命令的几种方案

测试脚本:

#!/bin/bash

# test.sh

cd /home/Desktop/
ls
echo "OK!"

exit 0
1. /etc/init.d方法
sudo mv test.sh /etc/init.d/
sudo chmod 777 test.sh
sudo update-rc.d test.sh defaults

如果需要设置启动优先级: ```bash # 100表示优先级,数越大,执行的越晚 sudo update-rc.d test.sh defaults 100 ```
如果要移除脚本:
cd /etc/init.d
sudo update-rc.d -f test.sh remove
2. gnome-terminal方法
间接启动法:

新建终端时,终端会自动执行~/.bashrc,应用该方法可实现开机自启动

# 将命令写入~/.bashrc
source ~/.bashrc

启动ubuntu应用程序首选项管理:

gnome-session-properties

在这里插入图片描述
命令(M) 写入:gnome-terminal,→添加,重启即可生效。

直接启动法:

在这里插入图片描述
命令(M) 写入:

gnome-terminal -x bash -c "/home/User/Desktop/test.sh"

添加,重启即可生效。

使用工控机时,可设置为用户自动登录

3. rc.local方法

rc.local脚本会在ubuntu开机后自动执行,因此我们可以将启动命令写在此文件中,例如:

#!/bin/sh -e
#
# rc.local
#
# ……
#

cd /home/User/Desktop/ && ./test.sh

exit 0

注意:编辑时需要root权限,如果该方法没有正确启动,检查log内容。需要注意的一个点:rc.local中的脚本会在系统登录前执行,这是我们还没进入桌面,因此有可能会执行失败


update-rc.d的详细参数

使用update-rc.d命令需要指定脚本名称和一些参数,它的格式看起来是这样的(需要在 root 权限下):

  • update-rc.d [-n] [-f] <basename> remove
  • update-rc.d [-n] <basename> defaults
  • update-rc.d [-n] <basename> disable|enable [S|2|3|4|5]
  • update-rc.d <basename> start|stop <NN> <runlevels>
  • -n: not really
  • -f: force

其中:

  • disable|enable:代表脚本还在/etc/init.d中,并设置当前状态是手动启动还是自动启动。
  • start|stop:代表脚本还在/etc/init.d中,开机,并设置当前状态是开始运行还是停止运行。(启用后可配置开始运行与否)
  • NN:是一个决定启动顺序的两位数字值。(例如90大于80,因此80对应的脚本先启动或先停止)
  • runlevels:则指定了运行级别。

参考文献:

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值