• UntouchedWagons@lemmy.ca
    link
    fedilink
    English
    arrow-up
    32
    arrow-down
    1
    ·
    edit-2
    2 years ago

    Here’s how to mount an nfs share:

    #cat /etc/systemd/system/mnt.data.mount
    
    [Unit]
    Description=nfs mount script
    
    [Mount]
    What=192.168.0.30:/mnt/tank/Media
    Where=/mnt/data
    Type=nfs4
    
    [Install]
    WantedBy=remote-fs.target
    
    • Technoguyfication@lemmy.ml
      link
      fedilink
      English
      arrow-up
      13
      ·
      edit-2
      2 years ago

      I’ve always mounted network shares in fstab, what’s the benefit to doing it with systemd?

      (Also, for those of you learning, this method only works on systemd-based distros)

      • Still@programming.dev
        link
        fedilink
        arrow-up
        6
        ·
        2 years ago

        you can stop and start it via systemctl and systemd is going to make mounts for fstab entries automatically, I just put local drives in my fstab so that way I can copy mount files between machines

      • UntouchedWagons@lemmy.ca
        link
        fedilink
        English
        arrow-up
        5
        ·
        2 years ago

        With these systemd mount files I don’t need to touch the fstab, I can use ansible to copy the file, enable the service then start it. I can also have other services like Docker, Jellyfin or whatever to depend on that service. If the nfs share can’t be mounted then systemd won’t try to start docker.

      • UntouchedWagons@lemmy.ca
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 years ago

        With these systemd mount files I don’t need to touch the fstab, I can use ansible to copy the file, enable the service then start it. I can also have other services like Docker, Jellyfin or whatever to depend on that service. If the nfs share can’t be mounted then systemd won’t try to start docker.

        • hemko@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          2
          ·
          2 years ago

          Oh that’s actually really good reason with docker containers that rely on the NFS share. Thanks, I’m gonna steal this

      • elscallr@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        2 years ago

        So you can easily start and stop it as a service and you get your logging easily accessible via journalctl as a unit. But practically speaking there’s not much difference.

    • Nine@lemmy.world
      link
      fedilink
      arrow-up
      6
      ·
      2 years ago

      Yeap! You can even make an automount unit too! That way it’s mounted on demand! Makes life sooo much easier. I even do it for my external drives I use for backups

    • Sanjoooo@feddit.deOP
      link
      fedilink
      arrow-up
      3
      ·
      2 years ago

      Meanwhile I found a solution using fstab.

      What’s the advantage of using a systemd script?

      I’ll probably switch to simple script, since I don’t like the idea of my laptop shouting my NAS access credentials into any available random network on startup.