"bad interpreter: Input/output error"

Jeffrey Walton noloader at gmail.com
Sun Jan 14 14:14:13 UTC 2024


On Sat, Jan 13, 2024 at 4:51 PM Jeff <atrocity at wywh.com> wrote:
>
> On 1/13/24 09:01, Ian Bruntlett wrote:
> [...]
>  > 2. When you run test.py, and get the Input/Output error, what is the
> output of this command:
>  > echo $?
>
> 126

I don't think this is a hardware problem. According to the Bash manual
under Exit Codes,[0] 126 means:

    If a command is not found, the child process created to
    execute it returns a status of 127. If a command is found
    but is not executable, the return status is 126.

A more interesting question might be, what is setting the error code.
POSIX has well defined error codes for [failed] operations. However,
AppArmour and SELinux hijack some of those error codes. So you can't
tell if you have a simple POSIX error code as detailed in the various
manuals (like EPERM), or an injected error code from unknown origin
(like SELinux setting EPERM).

[0] https://www.gnu.org/software/bash/manual/html_node/Exit-Status.html

Jeff



More information about the ubuntu-users mailing list