My user account doesnt have sudo despite being in sudoers. I cant run new commands i have to execute the binary. Grub takes very long to load with “welcome to grub” message. I just wanted a stable distro as arch broke and currupted my external ssd

    • tal@lemmy.today
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      1 year ago

      If the partition in question is /dev/sdd1, what does fsck /dev/sdd1 give?

      Also, you shouldn’t need to specify the fs type to mount, as it’ll auto-detect it.

      • mariahOP
        link
        fedilink
        arrow-up
        2
        arrow-down
        1
        ·
        1 year ago

        /usr/sbin/fsck: 1: Syntax error: “(” unexpected

        • tal@lemmy.today
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          1 year ago

          looks puzzled

          /usr/sbin/fsck should be an executable. On my Debian Trixie system, it is. That sounds like it’s a script, and whatever interpreter is specified to run it by the shebang line at the top of the file doesn’t like the file’s syntax. I wouldn’t think that any Linux distro would replace that binary with a script, as it’s something that has to run when almost everything else is broken.

          On my system, I get:

          $ file /usr/sbin/fsck
          /usr/sbin/fsck: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked,   terpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=9d35c49423757582c9a21347eebe2c0f9dfdfdc4, for GNU/Linux 3.2.0, stripped
          $ strings -n3 /usr/sbin/fsck|head -n5
          ELF
          /lib64/ld-linux-x86-64.so.2
          GNU
          GNU
          #uu
          

          Do you get anything like that?

          EDIT: Oh, wait, wait, wait. /usr/sbin/fsck might be printing that message itself. I was gonna say that fsck shouldn’t be looking at any files, but the man page lists /etc/fstab as a file that it looks at. Looking at strace -e openat fsck on my system, it does indeed look at /etc/fstab. Maybe the contents of your /etc/fstab are invalid, have a parenthesis in it. Can you also try grep '(' /etc/fstab and see what that gives?

          EDIT2: I don’t think that it’s an fsck error message. When I replace the first line of my fstab with left parens, I get “fsck: /etc/fstab: parse error at line 1 – ignored”, which is a lot more reasonable.

          • mariahOP
            link
            fedilink
            arrow-up
            2
            arrow-down
            1
            ·
            1 year ago

            Sorry i was using sh. This is the output

            fsck: error 2 (No such file or directory) while executing fsck.ext2 for /dev/sdd1
            
            
            • tal@lemmy.today
              link
              fedilink
              arrow-up
              2
              ·
              edit-2
              1 year ago

              Sorry i was using sh.

              Ah, okay, that makes more sense.

              On my system, looks like fsck.ext2 is a symlink to e2fsck, which is provided by the e2fsprogs package:

              $ type fsck.ext2
              fsck.ext2 is /sbin/fsck.ext2
              $ dpkg -S /sbin/fsck.ext2
              e2fsprogs: /sbin/fsck.ext2
              

              Can you try:

              # apt install e2fsprogs
              

              And then run:

              # fsck /dev/sdd1
              

              Again?

                • tal@lemmy.today
                  link
                  fedilink
                  arrow-up
                  2
                  ·
                  edit-2
                  1 year ago

                  rubs chin

                  Okay. “error 2 (No such file or directory)” is the error code that perror() will print when it gets ENOENT.

                  checks

                  One way you can get that is if you attempt to execute a file that isn’t there, or execute or open a symlink that has a target that’s missing. Could be that fsck.ext2 is missing or is a symlink, and that the e2fsck binary that it points to isn’t there.

                  On my system, I get this:

                  $ ls -l /sbin/fsck.ext2 /sbin/e2fsck
                  -rwxr-xr-x 1 root root 356624 Sep  8 00:47 /sbin/e2fsck
                  lrwxrwxrwx 1 root root      6 Sep  8 00:47 /sbin/fsck.ext2 -> e2fsck
                  

                  Do you get something like that as well?

                  If they aren’t there, you can force reinstallation of e2fsprogs with # apt install --reinstall e2fsprogs and if the files are missing, that should add them, but I don’t know how one could wind up in a situation where the package database thinks that the package is installed but that the binaries aren’t present on a fresh Debian install.