如何在mount命令后启动系统服务

时间:2017-01-14 04:53:56

标签: linux bash centos7 systemd

我正在为我的linux课程开设实验室,老师正在教我们关于Systemd的知识。

如何使用此命令创建在使用此命令装入特定设备时启动脚本的服务: mount /dev/xvdc1 /mnt/backup

我尝试了什么

  1. 使用计时器我检查/mnt/backup是否为挂载点。 (老师不会接受它。必须严格按事件驱动)
  2. 创建.mount单元并使.service单元需要.mount单元。执行命令时,此方法未启动脚本:mount /dev/xvdc1 /mnt/backup
  3. 我想我可能会以错误的方式处理这个问题。这是实验室问题。

      

    "创建一个单元文件,复制/mnt/backup中的所有文件   安装/dev/xvdc1后立即使用rsync。"

    我所知道的:

    1. 将要装载的设备始终为/dev/xvdc1
    2. 设备的安装点始终为/mnt/backup
    3. 必须根据/dev/xvdc1正在安装
    4. 启动服务

      这是我的.service单元文件

      [Unit]
      Description=Starts a backup for /dev/xvdc1 when mounted using the mount command.
      
      [Service]
      Type=simple
      ExecStart=/root/backupscript.sh
      ExecStop=/bin/kill -HUP $MAINPID
      
      [Install]
      WantedBy=multi-user.target
      

1 个答案:

答案 0 :(得分:0)

不管这在stackoverflow中是否合适,我都不认为Set systemd service to execute after fstab mount满足Ops的要求-我认为要求是systemd在执行挂载的时间点启动服务。鉴于此,我将让一个systemd服务单元执行命令findmnt -pmount -f /mount/point,并让另一个systemd服务单元等待。