unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* no passwd command during installation
@ 2017-11-01 20:58 Marco van Hulten
  2017-11-02  1:09 ` Wayne DePrince Jr.
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Marco van Hulten @ 2017-11-01 20:58 UTC (permalink / raw)
  To: help-guix

Hello,

During the installation process of GuixSD 0.13.0, I'd like to login
from another system.  After setting up the network, I start the SSH
server through

    herd start ssh-daemon

as described on
https://www.gnu.org/software/guix/manual/html_node/Preparing-for-Installation.html .

Then I want to set the root password.  The manual tells me to use
passwd, but Bash returns "command not found".  There is also no
ssh-keygen to create SSH keys.


Additionally, it could be useful if the scp or ssh were available from
the installation prompt.  SSH in either direction would give me a way to
copy config.scm to a system where I can e-mail from.  That would be
useful, because I am having problems installing GuixSD (unionfs of 2.1G
gets full during guix system init /mnt/etc/config.scm /mnt --fallback;
the last option was suggested by guix when it couldn't fetch some
package).

-Marco

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: no passwd command during installation
  2017-11-01 20:58 no passwd command during installation Marco van Hulten
@ 2017-11-02  1:09 ` Wayne DePrince Jr.
  2017-11-02  5:59 ` Chris Marusich
  2017-11-07  9:16 ` Ludovic Courtès
  2 siblings, 0 replies; 7+ messages in thread
From: Wayne DePrince Jr. @ 2017-11-02  1:09 UTC (permalink / raw)
  To: Marco van Hulten, help-guix

[-- Attachment #1: Type: text/plain, Size: 863 bytes --]

ahoy Marco
Il giorno mer, 01/11/2017 alle 21.58 +0100, Marco van Hulten ha scritto:
> Hello,
> 
> During the installation process of GuixSD 0.13.0, I'd like to login
> from another system.  After setting up the network, I start the SSH
> server through
> 
>     herd start ssh-daemon
> 
> as described on
> https://www.gnu.org/software/guix/manual/html_node/Preparing-for
> -Installation.html .
> 
> Then I want to set the root password.  The manual tells me to use
> passwd, but Bash returns "command not found".  
	i am seeing the same issue w/ the missing passwd command, however i
did find it eventually in the install medium at
/gnu/store/f4dmmz51ljv1nmfy321np4d4ksfl8nqz-shadow-4.4/bin/passwd
perhaps ssh-keygen can be found that way as well, just not in front of my
GuixSD computer at the moment.
	hope this helps.
peace, w

-- 
http://waynedpj.ingiro.xyz

[-- Attachment #2: Type: text/html, Size: 1495 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: no passwd command during installation
  2017-11-01 20:58 no passwd command during installation Marco van Hulten
  2017-11-02  1:09 ` Wayne DePrince Jr.
@ 2017-11-02  5:59 ` Chris Marusich
  2017-11-02  8:34   ` Marco van Hulten
  2017-11-07  9:16 ` Ludovic Courtès
  2 siblings, 1 reply; 7+ messages in thread
From: Chris Marusich @ 2017-11-02  5:59 UTC (permalink / raw)
  To: Marco van Hulten; +Cc: help-guix

[-- Attachment #1: Type: text/plain, Size: 2366 bytes --]

Marco van Hulten <marco@hulten.org> writes:

> Hello,
>
> During the installation process of GuixSD 0.13.0, I'd like to login
> from another system.  After setting up the network, I start the SSH
> server through
>
>     herd start ssh-daemon
>
> as described on
> https://www.gnu.org/software/guix/manual/html_node/Preparing-for-Installation.html
> .
>
> Then I want to set the root password.  The manual tells me to use
> passwd, but Bash returns "command not found".  There is also no
> ssh-keygen to create SSH keys.

These commands are present in a recent version of the installation
image.  Perhaps the version you used is old enough that they are not
present?  Since Wayne also seems to have seen the same problem, I wonder
if perhaps it's an issue with an old image being hosted somewhere?
Where did you get the installation image?

I verified that the commands are present by running the following
commands from a system that has a recent version of Guix:

  $ guix system vm gnu/system/install.scm
  ...
  /gnu/store/zrcjqk520wlbq0m9rq8ss60sj24hjpjg-run-vm.sh
  $ /gnu/store/zrcjqk520wlbq0m9rq8ss60sj24hjpjg-run-vm.sh

The commands "passwd" and "ssh-keygen" were present at
/run/setuid-programs/passwd and
/run/current-system/profile/bin/ssh-keygen, respectively.

> Additionally, it could be useful if the scp or ssh were available from
> the installation prompt.

Similar to above, I can confirm that the programs "ssh" and "scp" are
present in a recent version of the installation image.

> SSH in either direction would give me a way to copy config.scm to a
> system where I can e-mail from.  That would be useful, because I am
> having problems installing GuixSD (unionfs of 2.1G gets full during
> guix system init /mnt/etc/config.scm /mnt --fallback; the last option
> was suggested by guix when it couldn't fetch some package).

That sounds frustrating!  Maybe you can try first installing the "bare
bones" operating system (the example file for this is located at
/etc/configuration/bare-bones.scm in the installation image). After
you've booted into that initial bare bones operating system, you could
run "guix system reconfigure" using the actual operating system
configuration file you want.  That might help if the issue is lack of
storage space in the installation image.

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: no passwd command during installation
  2017-11-02  5:59 ` Chris Marusich
@ 2017-11-02  8:34   ` Marco van Hulten
  2017-11-02  9:58     ` Chris Marusich
  0 siblings, 1 reply; 7+ messages in thread
From: Marco van Hulten @ 2017-11-02  8:34 UTC (permalink / raw)
  To: help-guix


[-- Attachment #1.1: Type: text/plain, Size: 3958 bytes --]

Chris-

Op 01 nov 22:59 schreef Chris Marusich:
> Marco van Hulten <marco@hulten.org> writes:
> 
> > Hello,
> >
> > During the installation process of GuixSD 0.13.0, I'd like to login
> > from another system.  After setting up the network, I start the SSH
> > server through
> >
> >     herd start ssh-daemon
> >
> > as described on
> > https://www.gnu.org/software/guix/manual/html_node/Preparing-for-Installation.html
> > .
> >
> > Then I want to set the root password.  The manual tells me to use
> > passwd, but Bash returns "command not found".  There is also no
> > ssh-keygen to create SSH keys.  
> 
> These commands are present in a recent version of the installation
> image.  Perhaps the version you used is old enough that they are not
> present?  Since Wayne also seems to have seen the same problem, I
> wonder if perhaps it's an issue with an old image being hosted
> somewhere? Where did you get the installation image?

I downloaded the latests System Distribution image at
https://alpha.gnu.org/gnu/guix/guixsd-usb-install-0.13.0.x86_64-linux.xz .
I just checked the signature, and it is in order.

> I verified that the commands are present by running the following
> commands from a system that has a recent version of Guix:
> 
>   $ guix system vm gnu/system/install.scm
>   ...
>   /gnu/store/zrcjqk520wlbq0m9rq8ss60sj24hjpjg-run-vm.sh
>   $ /gnu/store/zrcjqk520wlbq0m9rq8ss60sj24hjpjg-run-vm.sh
> 
> The commands "passwd" and "ssh-keygen" were present at
> /run/setuid-programs/passwd and

This directory in my image is empty.

> /run/current-system/profile/bin/ssh-keygen, respectively.

This directory contains 411 symlinks to binaries, none of which match
with ssh*.

> > Additionally, it could be useful if the scp or ssh were available
> > from the installation prompt.  
> 
> Similar to above, I can confirm that the programs "ssh" and "scp" are
> present in a recent version of the installation image.

Possibly, Wayne and I used the (experimental) GuixSD 0.13.0 image,
whereas you use the GuixSD 0.13.0 Virtual Machine Image.  I presume we
all are on amd64.

I did find the programs at the locations (with different hash in path)
that Wayne suggested; this issue could be solved by updating the manual
(updating the image can wait until the next release).

> > SSH in either direction would give me a way to copy config.scm to a
> > system where I can e-mail from.  That would be useful, because I am
> > having problems installing GuixSD (unionfs of 2.1G gets full during
> > guix system init /mnt/etc/config.scm /mnt --fallback; the last
> > option was suggested by guix when it couldn't fetch some package).  
> 
> That sounds frustrating!  Maybe you can try first installing the "bare
> bones" operating system (the example file for this is located at
> /etc/configuration/bare-bones.scm in the installation image). After
> you've booted into that initial bare bones operating system, you could
> run "guix system reconfigure" using the actual operating system
> configuration file you want.  That might help if the issue is lack of
> storage space in the installation image.

That's a useful tip for when I have a similar problem again.  Doing the
installation again results in a succesful installation (well, more or
less).  It is very likely that I forget

    herd start cow-store /mnt

which makes the installation use the harddisk instead of RAM.  However,
I always need to use --fallback.

In any case, thanks to you and Wayne for the useful tips.


Now for the "well, more or less".  When booting my system with a
freshly installed GuixSD, I get this output:

```
waiting for partition 'my-root' to appear...
waiting for partition 'my-root' to appear...
...
ERROR: In procedure scm-error:
ERROR: failed to resolve partition "my-root"
```

My etc/config.scm is here: http://paste.lisp.org/display/360070

- Marco

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: config.scm --]
[-- Type: text/x-scheme, Size: 2020 bytes --]

;; This is an operating system configuration template
;; for a "desktop" setup with GNOME and Xfce where the
;; root partition is encrypted with LUKS.

(use-modules (gnu) (gnu system nss))
(use-service-modules desktop)
(use-package-modules certs gnome)

(operating-system
  (host-name "watson")
  (timezone "Europe/Oslo")
  (locale "en_US.utf8")

  ;; Assuming /dev/sdX is the target hard disk, and "my-root"
  ;; is the label of the target root file system.
  (bootloader (grub-configuration (device "/dev/sda")))

  ;; Specify a mapped device for the encrypted root partition.
  ;; The UUID is that returned by 'cryptsetup luksUUID'.
  (mapped-devices
   (list (mapped-device
          (source (uuid "c0a2b51e-0c50-43e7-a56b-932061c00af8"))
          (target "my-root")
          (type luks-device-mapping))))

  (file-systems (cons (file-system
                        (device "my-root")
                        (title 'label)
                        (mount-point "/")
                        (type "ext4"))
                      %base-file-systems))

  (users (cons (user-account
                (name "marco")
                (comment "Marco van Hulten")
                (group "users")
                (supplementary-groups '("wheel" "netdev"
                                        "audio" "video"))
                (home-directory "/home/marco"))
               %base-user-accounts))

  ;; This is where we specify system-wide packages.
  (packages (cons* nss-certs         ;for HTTPS access
                   gvfs              ;for user mounts
                   %base-packages))

  ;; Add GNOME and/or Xfce---we can choose at the log-in
  ;; screen with F1.  Use the "desktop" services, which
  ;; include the X11 log-in service, networking with Wicd,
  ;; and more.
  (services (cons* (xfce-desktop-service)
                   %desktop-services))

  ;; Allow resolution of '.local' host names with mDNS.
  (name-service-switch %mdns-host-lookup-nss))


[-- Attachment #2: OpenPGP digitale handtekening --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: no passwd command during installation
  2017-11-02  8:34   ` Marco van Hulten
@ 2017-11-02  9:58     ` Chris Marusich
  2017-11-02 10:14       ` Chris Marusich
  0 siblings, 1 reply; 7+ messages in thread
From: Chris Marusich @ 2017-11-02  9:58 UTC (permalink / raw)
  To: Marco van Hulten; +Cc: help-guix

[-- Attachment #1: Type: text/plain, Size: 5436 bytes --]

Marco van Hulten <marco@hulten.org> writes:

> Chris-
>
> Op 01 nov 22:59 schreef Chris Marusich:
>> Marco van Hulten <marco@hulten.org> writes:
>> 
>> > Hello,
>> >
>> > During the installation process of GuixSD 0.13.0, I'd like to login
>> > from another system.  After setting up the network, I start the SSH
>> > server through
>> >
>> >     herd start ssh-daemon
>> >
>> > as described on
>> > https://www.gnu.org/software/guix/manual/html_node/Preparing-for-Installation.html
>> > .
>> >
>> > Then I want to set the root password.  The manual tells me to use
>> > passwd, but Bash returns "command not found".  There is also no
>> > ssh-keygen to create SSH keys.  
>> 
>> These commands are present in a recent version of the installation
>> image.  Perhaps the version you used is old enough that they are not
>> present?  Since Wayne also seems to have seen the same problem, I
>> wonder if perhaps it's an issue with an old image being hosted
>> somewhere? Where did you get the installation image?
>
> I downloaded the latests System Distribution image at
> https://alpha.gnu.org/gnu/guix/guixsd-usb-install-0.13.0.x86_64-linux.xz .
> I just checked the signature, and it is in order.

I checked this image, and I can confirm that "passwd" and "ssh-keygen"
are missing in it.  I ran the following command to test this:

  $ qemu-system-x86_64 -smp cpus=1 -net user -net nic,model=virtio -enable-kvm -m 512 guixsd-usb-install-0.13.0.x86_64-linux

> I did find the programs at the locations (with different hash in path)
> that Wayne suggested; this issue could be solved by updating the manual
> (updating the image can wait until the next release).

Upon further inspection, it looks like we explicitly added these tools
to the installation image in the following commits:

4e854b181 2017-09-12 install: Include the whole bare-bones OS in the image.
1e8d398ab 2017-09-10 install: Add OpenSSH to the global profile.

This occurred after the 0.13.0 release, which explains why the 0.13.0
release image doesn't contain the tools.  In the next release, the tools
should be present.

>> > SSH in either direction would give me a way to copy config.scm to a
>> > system where I can e-mail from.  That would be useful, because I am
>> > having problems installing GuixSD (unionfs of 2.1G gets full during
>> > guix system init /mnt/etc/config.scm /mnt --fallback; the last
>> > option was suggested by guix when it couldn't fetch some package).  
>> 
>> That sounds frustrating!  Maybe you can try first installing the "bare
>> bones" operating system (the example file for this is located at
>> /etc/configuration/bare-bones.scm in the installation image). After
>> you've booted into that initial bare bones operating system, you could
>> run "guix system reconfigure" using the actual operating system
>> configuration file you want.  That might help if the issue is lack of
>> storage space in the installation image.
>
> That's a useful tip for when I have a similar problem again.  Doing the
> installation again results in a succesful installation (well, more or
> less).  It is very likely that I forget
>
>     herd start cow-store /mnt
>
> which makes the installation use the harddisk instead of RAM.  However,
> I always need to use --fallback.

I have also made exactly this same mistake before.  :-)

> In any case, thanks to you and Wayne for the useful tips.

You're welcome!  I'm always glad to help.

> Now for the "well, more or less".  When booting my system with a
> freshly installed GuixSD, I get this output:
>
> ```
> waiting for partition 'my-root' to appear...
> waiting for partition 'my-root' to appear...
> ...
> ERROR: In procedure scm-error:
> ERROR: failed to resolve partition "my-root"
> ```
>
> My etc/config.scm is here: http://paste.lisp.org/display/360070

Your configuration contains the following:

--8<---------------cut here---------------start------------->8---
  ;; Specify a mapped device for the encrypted root partition.
  ;; The UUID is that returned by 'cryptsetup luksUUID'.
  (mapped-devices
   (list (mapped-device
          (source (uuid "c0a2b51e-0c50-43e7-a56b-932061c00af8"))
          (target "my-root")
          (type luks-device-mapping))))

  (file-systems (cons (file-system
                        (device "my-root")
                        (title 'label)
                        (mount-point "/")
                        (type "ext4"))
                      %base-file-systems))
--8<---------------cut here---------------end--------------->8---

This configuration promises to Guix that a LUKS-encrypted device exists
with the given UUID.  It says that you want to map this device to an
(unencrypted) device named "my-root", i.e., you want to map it to a
device at path "/dev/mapper/my-root".  It also promises that inside of
this newly mapped device, Guix will find an EXT4 file system with a
label that happens to also be "my-root".

If anything about this does not match reality, it could explain the
problem you're seeing.  In particular, you should double check that
there really is an EXT4 file system inside your encrypted device, and
that it really does have a label named "my-root".  You can check this by
first opening the device manually with "cryptsetup" and then using a
command such as "blkid" to inspect things.

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: no passwd command during installation
  2017-11-02  9:58     ` Chris Marusich
@ 2017-11-02 10:14       ` Chris Marusich
  0 siblings, 0 replies; 7+ messages in thread
From: Chris Marusich @ 2017-11-02 10:14 UTC (permalink / raw)
  To: Marco van Hulten; +Cc: help-guix

[-- Attachment #1: Type: text/plain, Size: 528 bytes --]

Chris Marusich <cmmarusich@gmail.com> writes:

> Upon further inspection, it looks like we explicitly added these tools
> to the installation image in the following commits:
>
> 4e854b181 2017-09-12 install: Include the whole bare-bones OS in the image.
> 1e8d398ab 2017-09-10 install: Add OpenSSH to the global profile.

Whoops!  I meant to say that we added them in these commits:

1e8d398ab 2017-09-10 install: Add OpenSSH to the global profile.
903ae630a 2017-09-10 install: Add 'passwd' to $PATH.

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: no passwd command during installation
  2017-11-01 20:58 no passwd command during installation Marco van Hulten
  2017-11-02  1:09 ` Wayne DePrince Jr.
  2017-11-02  5:59 ` Chris Marusich
@ 2017-11-07  9:16 ` Ludovic Courtès
  2 siblings, 0 replies; 7+ messages in thread
From: Ludovic Courtès @ 2017-11-07  9:16 UTC (permalink / raw)
  To: Marco van Hulten; +Cc: help-guix

Hi,

Marco van Hulten <marco@hulten.org> skribis:

> Then I want to set the root password.  The manual tells me to use
> passwd, but Bash returns "command not found".  There is also no
> ssh-keygen to create SSH keys.

The ‘passwd’ command was added quite recently to the installation image
(it’ll be in the forthcoming release):

  https://git.savannah.gnu.org/cgit/guix.git/commit/?id=903ae630a0ae0df9fabd5ebab7d44577d6e7d0fc

In the meantime, you’ll have to use one of the workarounds people
suggested.

Thanks for your report,
Ludo’.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-11-07  9:16 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-01 20:58 no passwd command during installation Marco van Hulten
2017-11-02  1:09 ` Wayne DePrince Jr.
2017-11-02  5:59 ` Chris Marusich
2017-11-02  8:34   ` Marco van Hulten
2017-11-02  9:58     ` Chris Marusich
2017-11-02 10:14       ` Chris Marusich
2017-11-07  9:16 ` Ludovic Courtès

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).