From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY Date: Sun, 07 Feb 2016 16:21:35 -0500 Message-ID: <874mdk2p40.fsf@netris.org> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:60554) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aSWmU-00033h-27 for bug-guix@gnu.org; Sun, 07 Feb 2016 16:22:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aSWmQ-00026F-QQ for bug-guix@gnu.org; Sun, 07 Feb 2016 16:22:05 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:57267) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aSWmQ-000269-N1 for bug-guix@gnu.org; Sun, 07 Feb 2016 16:22:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1aSWmQ-00022M-K3 for bug-guix@gnu.org; Sun, 07 Feb 2016 16:22:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: Received: from eggs.gnu.org ([2001:4830:134:3::10]:60433) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aSWmE-00030W-BJ for bug-guix@gnu.org; Sun, 07 Feb 2016 16:21:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aSWmB-0001zu-66 for bug-guix@gnu.org; Sun, 07 Feb 2016 16:21:50 -0500 Received: from world.peace.net ([50.252.239.5]:53411) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aSWmB-0001zq-2G for bug-guix@gnu.org; Sun, 07 Feb 2016 16:21:47 -0500 List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org To: 22588@debbugs.gnu.org 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