Ubuntu 18.04服务注册方法

systemd is now used for user sessions. System sessions had already been provided by systemd in previous Ubuntu releases.

Ubuntu-18.04用 systemctl 命令来替换了 service 和 chkconfig 的功能。
比如以前启动mysql服务,命令为:

service mysql start

在Ubuntu-18.04启动mysql服务的命令则是:

systemctl start mysqld.service

systemd 默认读取 /etc/systemd/system 下的配置文件,该目录下的文件会链接/lib/systemd/system/下的文件。执行 ls /lib/systemd/system 你可以看到有很多启动脚本,其中就有我们需要的 rc.local.service。
打开rc.local.service脚本中的内容如下所示:

[Unit]
Description=/etc/rc.local Compatibility
ConditionFileIsExecutable=/etc/rc.local
After=network.target
[Service]
Type=forking
ExecStart=/etc/rc.local start
ExecStop=/etc/rc.local stop
ExecReload=/etc/rc.local restart
TimeoutSec=0
RemainAfterExit=yes

启动脚本的组成

一般启动脚本的由三个部分组成:
[Unit] 段: 主要是对这个服务的说明,内容包括Description和After。Description 用于描述服务,After用于描述服务类别。

[Service] 段: 是服务的一些具体运行参数的设置。
Type=forking是后台运行的形式,
User=users是设置服务运行的用户,
Group=users是设置服务运行的用户组,
PIDFile为存放PID的文件路径,
ExecStart为服务的具体运行命令,
ExecReload为重启命令,
ExecStop为停止命令,
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错!

[Install] 段: 服务安装的相关设置,即怎样做到开机启动。可设置为多用户的。

开机启动服务注册步骤

  1. 从脚本中可以看出,/etc/rc.local 的启动顺序是在网络后面,但是显然它少了 Install 段,也就没有定义如何做到开机启动,所以显然这样配置是无效的。 因此我们就需要在后面帮他加上 [Install] 段:

[Install]
WantedBy=multi-user.target

  1. 需要注意一下,ubuntu-18.04 默认是没有 /etc/rc.local这个文件的,需要自己创建。把需要启动的脚本放在/etc/rc.local中,此处作为测试,仅放入一段测试脚本。
touch /etc/rc.local   //创建rc.local
vi /etc/rc.local
		//启动脚本的内容
		#!/bin/sh -e
		echo "看到这行字,说明添加自启动脚本成功。" > /usr/local/test.log
        exit 0
  • 修改启动脚本的执行权限
  • chmod +x /etc/rc.local
    
    1. 做完这一步,还需要最后一步 前面我们说 systemd 默认读取 /etc/systemd/system 下的配置文件, 所以还需要在 /etc/systemd/system 目录下创建软链接
    ln -s /lib/systemd/system/rc.local.service /etc/systemd/system/ 
    
    1. 接下来,重启系统,然后看看 /usr/local/text.log 文件是否存在就知道开机脚本是否生效了。

    附录

    以rc.local.service为例,介绍部分systemctl命令

    1. 从服务角度
    systemctl start rc.local.service    #启动服务
    systemctl stop rc.local.service    #停止服务
    systemctl restart rc.local.service    #重启服务
    systemctl status rc.local.service    #查看服务当前状态
    systemctl is-active rc.local.service    #查看服务是否处于启动状态
    systemctl daemon-reload    //修改脚本后重新加载
    
  • 从系统角度
  • systemctl enabled rc.local.service    #设置为开机自动启动
    systemctl disabled rc.local.service    #设置为开机禁用
    systemctl list-units --type=service    #显示所有已经启动的服务
    

    关于service文件里的一些选项,参考
    http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 对于需要安装 Ubuntu 18.04 版本的用户来说,获取该版本镜像文件是必不可少的一步。如果想要快速下载并且不用担心网络问题,最好的方法就是使用网盘进行下载。下面介绍一些可行的选择: 1. 腾讯云镜像库:在腾讯云的 Ubuntu 镜像库中,既有最新版的镜像文件,也有历史版本的镜像文件。用户可以选择自己需要的版本进行下载,下载速度很快。 2. 百度云:百度云也有 Ubuntu 18.04 版本的镜像文件,但需要注意的是,该网盘的下载速度有时会受到网络影响,导致下载速度变慢。 3. 阿里云镜像库:阿里云中同样有 Ubuntu 18.04 版本的镜像文件,下载速度也较快。但该库需要用户进行账号验证才能进行下载。 4. 国内 Ubuntu 镜像站:国内有一些镜像站专门提供 Ubuntu 镜像文件的下载,例如 USTC、清华大学等。这些镜像站提供的文件通常速度较快,而且下载地址并不需要进行验证。 总体来说,如果需要 Ubuntu 18.04 镜像文件,可以选择比较有名的网盘或者镜像站进行下载。下载完成之后,需要检查文件的完整性,确保镜像文件没有被篡改或损坏。 ### 回答2: Ubuntu 18.04镜像文件网盘是大家在下载Ubuntu 18.04系统的时候可以使用的一个网盘平台。该平台存储了大量的Ubuntu 18.04系统的镜像文件,这些文件是用户在下载和安装Ubuntu时所必需的文件。通过使用这个网盘平台,用户无需担心镜像文件下载速度过慢或者下载不稳定的问题,用户可以很方便地从网盘中下载所需的镜像文件。 Ubuntu 18.04镜像文件网盘是一个免费的平台,并且不需要注册账号,用户可以直接搜索所需的镜像文件进行下载。不仅如此,该平台还提供了多种下载方式,用户可以通过迅雷、QQ旋风等下载工具进行下载,也可以使用自带的下载工具直接下载。同时,网盘上还有许多实用的软件和教程供用户参考,这大大地方便了用户在使用Ubuntu系统时的学习和使用。 总之,Ubuntu 18.04镜像文件网盘是一个非常实用的平台,通过使用它,用户可以很快地获取到所需的Ubuntu 18.04系统镜像文件,进而更为方便地使用该系统进行工作和学习。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值