all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY
@ 2016-02-07 21:21 Mark H Weaver
  2016-02-08  9:42 ` Ludovic Courtès
  2016-02-08  9:43 ` Ludovic Courtès
  0 siblings, 2 replies; 8+ messages in thread
From: Mark H Weaver @ 2016-02-07 21:21 UTC (permalink / raw)
  To: 22588

I've been bitten by this once before, and a user on #guix did as well.
When there are problems in the root filesystem that fsck doesn't want to
fix automatically, the user is dumped into a guile prompt where PATH is
not set, and it's very inconvenient to run fsck manually.

This is what I just suggested that the user type, with apologies:

  (use-modules (ice-9 ftw) (srfi srfi-26))
  (define dirs (scandir "/gnu/store" (cut string-suffix? "e2fsprogs-1.42.13" <>)))
  (define e2fsck (string-append "/gnu/store/" (car dirs) "/sbin/e2fsck"))
  (system* e2fsck "/dev/XXX")

Is there a better way?

Speaking from personal experience, it's very painful to do anything
non-trivial in that REPL.  Even just adding readline would help a lot.

Maybe we should at least set PATH to include the available /bin and
/sbin directories before entering the REPL.

We should probably also handle errors from fsck specially.

    Thoughts?
       Mark

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

end of thread, other threads:[~2016-02-08 22:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-07 21:21 bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY Mark H Weaver
2016-02-08  9:42 ` Ludovic Courtès
2016-02-08 13:49   ` Mark H Weaver
2016-02-08 16:48     ` Ludovic Courtès
2016-02-08 17:52       ` Mark H Weaver
2016-02-08 22:49         ` Ludovic Courtès
2016-02-08 19:42       ` Christopher Allan Webber
2016-02-08  9:43 ` Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.