Linux系统开机自启动程序设置

用户可以在Linux系统配置自启动的程序,可以通过多种方式来实现。

1. rc.local

系统启动阶段,系统根据启动层级运行/etc/rcN.d目录下脚本(N为0~6之间的数字,表示启动层级),之后会调用rc.local脚本。该脚本的目录在/etc或/etc/rc.d目录中。通过修改这个脚本可以添加自启动的程序

        /etc/rc.local

该脚本在系统启动运行,在运行rcN.d初始化程序之后,在进入运行终端程序之前运行。如果这个文件不存在,可以新生成一个,并赋予可执行权限,系统重启后会自动启动这个脚本。

在systemd启动的Linux系统(如Ubuntu 18.04等),系统保留了rc.local的支持,在system目录下包含了rc.local.service,里面指向rc.local的执行。如果这个脚本没有自动启动,可以使能这个服务使之有效。参考https://blog.csdn.net/djstavaV/article/details/88166805

2. /etc/profile,~/.profile

用户登录阶段,系统会自动执行全局的配置脚本文件

        /etc/profile

然后执行用户目录下的配置文件

        ~/.bash_profile
        ~/.bash_login
        ~/.profile

执行三个文件中按顺序先找到的那个。所以用户可以在/etc/profile文件中,或者在用户目录配置文件(如~/.profile)中添加需要执行的脚本,就会在登录阶段自动执行。

3. ~/.bashrc

bash启动阶段,在用户登录后,每次打开一个shell窗口或者执行一个shell脚本,bash会自动先运行~/.bashrc文件。

        ~/.bashrc

所以也可以通过修改这个文件,加入用户自己需要执行的程序或配置。

.bashrc和.profile的区别在于,.profile仅在登录时运行一次,.bashrc则在每次运行shell时都会运行。而在.profile文件中默认也执行了.bashrc文件。

4. crontab

这种方式用以设置定时启动的任务。Linux系统在/etc/contab等文件维护定时启动的程序的信息,由cron进程读取配置文件,并定时启动文件中定义的进程。通过编辑/etc/crontab文件可以看到里面的文件内容大致如下

里面任务定义行的格式如下

        m      h     dom    mon   dow    user     command
        分     时      日       月      天     用户     执行的命令

比如第2行任务定义行,表示每天6点25分执行run-parts命令,执行/etc/cron.daily目录下的文件。其中时间设定上可以用*,/,逗号(,)等符号来进行选择。*表示所有选择,逗号(,)表示多选,/表示每隔多少单位选择,类似Word文件打印中的页面选择。具体可以参考https://blog.csdn.net/this_capslock/article/details/46633953

 cron进程从三个地方读取配置文件,即

        /etc/crontab
        /etc/cron.d目录下所有文件
        /var/spool/cron/用户名

其中/var/spool/cron下的配置文件是属于用户独有的。crontab -e命令执行的就是这个文件的编辑。通过设置上述位置的配置文件,可以设置定时启动的程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值