guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Allow nfs filesystems to be automatically mounted.


From: Ludovic Courtès
Subject: Re: [PATCH] gnu: Allow nfs filesystems to be automatically mounted.
Date: Wed, 23 Nov 2016 23:07:27 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

John Darrington <address@hidden> skribis:

> How about this, then?
>
>
>
>
>
> * gnu/build/file-systems.scm (mount-file-system): Append target addr= when
> mounting nfs filesystems.
> ---
>  gnu/build/file-systems.scm | 16 +++++++++++++++-
>  1 file changed, 15 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm
> index 0d55e91..c6fc784 100644
> --- a/gnu/build/file-systems.scm
> +++ b/gnu/build/file-systems.scm
> @@ -481,7 +481,21 @@ run a file system check."
>               (call-with-output-file mount-point (const #t)))
>             (mkdir-p mount-point))
>  
> -       (mount source mount-point type flags options)
> +       (mount source mount-point type flags
> +              (cond
> +               ((string-match "^nfs.*" type)
> +                (let* ((host (car (string-split source #\:)))
> +                       (aa (car (getaddrinfo host #f)))
> +                       (sa (addrinfo:addr aa))
> +                       (inet-addr (inet-ntop (sockaddr:fam sa)
> +                                             (sockaddr:addr sa))))
> +                  (string-append "addr="
> +                                 inet-addr
> +                                 (if options
> +                                     (string-append "," options)
> +                                     ""))))
> +               (else
> +                options)))

Looking at mount(8), it seems that the normal way is for ‘source’ to be
something like “knuth.cwi.nl:/dir”.  The kernel then takes care of
parsing that and doing name resolution somehow.

In that case, we don’t have anything to do, good for us.

mount(8) doesn’t mention ‘addr’.  Do you have documentation about it?

Thanks,
Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]