Skip to content

[Bug]: File System going read only breaks your terminal. #3377

@valarauca

Description

@valarauca

What did you expect to happen?

The system should have something like

pub fn is_fs_error(err: &std::io::Error) -> bool {
    matches!(err.raw_os_error(), Some(30))
}

This is, because at least on POSIX compliant systems code 30 is EROFS (Error Read Only FileSyystem).

So instead of failing to open the journal, crashing, and blocking terminal access. The system continues, it simply doesn't log the error.

What happened?

mdadm kicked itself into a protected state after a drive faulted.

My / was still healthy, but mounted read-only. Atuin was unable to journal to commands, so my terminal would just show generic errors about Atuin journal being unable to open with error code 30. Which given

Atuin was returning error code 30, and my whole terminal would not work.

Atuin doctor output

I literally could not run shell commands to check.

I also apologize but I will not be attempting to recreate this problem. 

---

As for system information:

1. GNU Bash
2. Bash preexec
3. No I will not be testing alternative configurations.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions