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.

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

                    Okay, though I had an idea as to what should cause that, but no, not it. I deleted my response shortly after posting it, if you already saw it.

                    Hmm. Well, how about this. It should be possible to run e2fsck directly, and you say that the binary is present. Try:

                    # /sbin/e2fsck /dev/sdd1
                    

                    If it says something about /dev/sdd1 being mounted, then don’t go ahead with the scan; you’ve got the wrong partition in that case.