/gnu/store should be able to be a symlink, but it can't

DoneSubmitted by Kragen JavierSitaker.
Details
4 participants
  • Claes Wallin (韋嘉誠)
  • Kragen JavierSitaker
  • Ludovic Courtès
  • Pjotr Prins
Owner
unassigned
Severity
normal
K
K
Kragen JavierSitaker wrote on 7 Aug 2015 18:03
(address . bug-guix@gnu.org)
20150807160308.GA13042@adjuvant
Apparently I can’t make /gnu/store a symlink:
: user@debian:~/pkgs/guix-0.8.1; time /usr/local/bin/guix pull guix pull: error: build failed: `/gnu/store' is not a directory
real 0m0.431s user 0m0.104s sys 0m0.036s : user@debian:~/pkgs/guix-0.8.1; ls -l /gnu/store lrwxrwxrwx 1 root root 9 Aug 7 12:56 /gnu/store -> /gnustore : user@debian:~/pkgs/guix-0.8.1; ls -Ldl /gnu/store drwxrwxr-t 40 root guix-builder 49152 Aug 7 12:56 /gnu/store
Is there a reason for this? It’s inconvenient. (My root SSD only hasa couple gigs left.)
I’m working around that by directly mounting the /gnustore partitionunder /gnu/store now.
: user@debian:~/pkgs/guix-0.8.1; sudo vi /etc/fstab : user@debian:~/pkgs/guix-0.8.1; grep store /etc/fstab /tb/gnustore.ext4 /gnu/store ext4 loop 2 3 : user@debian:~/pkgs/guix-0.8.1; sudo umount /gnustore : user@debian:~/pkgs/guix-0.8.1; sudo rm /gnu/store : user@debian:~/pkgs/guix-0.8.1; sudo mkdir /gnu/store : user@debian:~/pkgs/guix-0.8.1; sudo mount -a
C
C
Claes Wallin (韋嘉誠) wrote on 8 Aug 2015 06:51
(name . Kragen JavierSitaker)(address . kragen@canonical.org)(address . 21209@debbugs.gnu.org)
CAGv_=Bp5guTWzFGTfc+LkE1UG9LXLAT2xwsahoF_weHpriJfzw@mail.gmail.com
Not commenting on the underlying problem, but on your workaround.
On 07-Aug-2015 11:22 pm, "Kragen Javier Sitaker" <kragen@canonical.org>wrote:
Toggle quote (3 lines)>> Apparently I can’t make /gnu/store a symlink:
[ . . . ]
Toggle quote (3 lines)> I’m working around that by directly mounting the /gnustore partition> under /gnu/store now.
[ . . . ]
Toggle quote (2 lines)> /tb/gnustore.ext4 /gnu/store ext4 loop 2 3
You don't need to make a new file system and a loop mount. You could justmake a bind mount.
Attachment: file
K
K
Kragen JavierSitaker wrote on 8 Aug 2015 17:48
(name . Pjotr Prins)(address . pjotr2015@thebird.nl)
20150808154818.GA1808@adjuvant
On Sat, Aug 08, 2015 at 11:31:19AM +0200, Pjotr Prins wrote:
Toggle quote (2 lines)> it is by design that you can't symlink.
If that is true (and it seems like a rather strange design; why would somebodywant that?) I think that the error message should explain that rather thansimply complaining that /gnu/store is "not a directory".
Toggle quote (9 lines)> On Sat, Aug 08, 2015 at 06:51:17AM +0200, Claes Wallin wrote:> > On 07-Aug-2015 11:22 pm, "Kragen Javier Sitaker" <[1]kragen@canonical.org>> > wrote:> > > I’m working around that by directly mounting the /gnustore partition> > > under /gnu/store now.> > > > You don't need to make a new file system and a loop mount. You could just> > make a bind mount.
Indeed, but I had already made the new filesystem, for other reasons.
P
P
Pjotr Prins wrote on 8 Aug 2015 11:31
(name . Claes Wallin)(address . gnu@clacke.user.lysator.liu.se)
20150808093119.GA13194@thebird.nl
it is by design that you can't symlink.
On Sat, Aug 08, 2015 at 06:51:17AM +0200, Claes Wallin wrote:
Toggle quote (24 lines)> Not commenting on the underlying problem, but on your workaround.> > On 07-Aug-2015 11:22 pm, "Kragen Javier Sitaker" <[1]kragen@canonical.org>> wrote:> >> > Apparently I can’t make /gnu/store a symlink:> > [ . . . ]> > > I’m working around that by directly mounting the /gnustore partition> > under /gnu/store now.> > [ . . . ]> > >     /tb/gnustore.ext4 /gnu/store     ext4    loop            2       3> > You don't need to make a new file system and a loop mount. You could just> make a bind mount.> > References> > Visible links> 1. mailto:kragen@canonical.org
--
L
L
Ludovic Courtès wrote on 18 Aug 2015 19:52
(name . Kragen JavierSitaker)(address . kragen@canonical.org)(address . 21209@debbugs.gnu.org)
87r3n0iiwd.fsf@gnu.org
Kragen Javier Sitaker <kragen@canonical.org> skribis:
Toggle quote (15 lines)> Apparently I can’t make /gnu/store a symlink:>> : user@debian:~/pkgs/guix-0.8.1; time /usr/local/bin/guix pull> guix pull: error: build failed: `/gnu/store' is not a directory>> real 0m0.431s> user 0m0.104s> sys 0m0.036s> : user@debian:~/pkgs/guix-0.8.1; ls -l /gnu/store> lrwxrwxrwx 1 root root 9 Aug 7 12:56 /gnu/store -> /gnustore> : user@debian:~/pkgs/guix-0.8.1; ls -Ldl /gnu/store> drwxrwxr-t 40 root guix-builder 49152 Aug 7 12:56 /gnu/store>> Is there a reason for this?
Yes, the daemon requires the canonical file name of the store.
Toggle quote (2 lines)> It’s inconvenient. (My root SSD only has a couple gigs left.)
Then I would suggest using a bind mount instead of a symlink.
Does that work for you?
Thanks,Ludo’.
L
L
Ludovic Courtès wrote on 11 Sep 2015 19:24
control message for bug #21209
(address . control@debbugs.gnu.org)
87pp1oc1jf.fsf@gnu.org
tags 21209 notabug
L
L
Ludovic Courtès wrote on 11 Sep 2015 19:24
(address . control@debbugs.gnu.org)
87oah8c1j5.fsf@gnu.org
close 21209 0.8.3
?
Your comment

This issue is archived.

To comment on this conversation send email to 21209@debbugs.gnu.org