• 5 Posts
  • 90 Comments
Joined 2 years ago
cake
Cake day: June 11th, 2023

help-circle

  • Explain how “freezed” are the system

    • is the freeze sudden or does the system gets progressively slower?
    • does the mouse cursor respond?
    • does the audio keep playing in the background? does it repeat a short time interval over and over again?
    • does the system respond to ping requests?
    • does the system accept incoming ssh connections?
    • how random is it? what time interval?
    • is the location random (think consistent wifi / bluetooth devices nearby)
    • is the freeze happening after going to sleep / hibernation / screen blank?
    • does this happen if you aggressively open a lot of apps at the same time? Try it.

    What to do before next system freeze

    • update and upgrade the system
    • create a working directory somewhere where you write down your findings. Does not have to be pretty or anything. Just for your own convenience.
    • Configure REISUB. check files in /etc/sysctl.d/*.conf and look for kernel.sysrq=0. Change it to 1.
    • Enable ctrl+alt+del spam reboot. Update /etc/systemd/system.conf so that you have a line looking like this:
    CtrlAltDelBurstAction=reboot-force
    
    • Reboot
    • Try spamming ctrl+alt+del quickly. Does the system reboot?
    • On next boot try switching to a random tty ctrl+alt+fN where N in {1…12}. You should see a login prompt. Try the REISUB sequence. Press and hold alt+print screen (might require some fn key combination on a laptop) then press, hold and release following letters one at a time: R E I S U B. You should see kernel messages appear on the screen each time you press a button. Don’t try to press them all at once or type them before the output is finished. Your system should reboot after this. Does it work?
    • make sure you can ping your computer from another computer.
    • Configure TCPKeepAlive=no for my-faulty-pc in your ssh config before connecting to avoid having the connection dropped. then run ssh my-faulty-pc journalctl -b0 -k -f > waiting_for_crash.log on another system that will capture the log

    reproduce Here is the easiest part. Make the system hang. Preferably with reproducible steps.

    System is now freezed

    • Go quickly through the first list
    • from the remote host that monitors the logs through ssh. You can close the ssh connection and inspect some of the last lines in the file. Don’t upload it anywhere before sanitizing it to avoid doxing yourself.
    • from the remote system try ssh and pinging.
    • on the frozen host try ctrl+alt+del burst first
    • then try REISUB combo if the burst didn’t work.

    What to do now This part depends a bit on what the outcomes were. At least we’ll know how “deep” the hang is and where it’s worth modifying stuff.

    You say in your post that you’ve tried ctrl+alt+del spam. But did you check that it works when the system is working as intended?

    Edit: minor typo


  • Learn different languages. A tool is good for problems it was designed to solve. Here is a list of programming languages i would recommend in addition to python.

    • c
    • elixir
    • rust
    • go This would give you different perspectives on how a problem can be solved. And stay far away from jacascript.

    Tutorials are nice to get the mechanics of the language but you should not stick with them for a long time. Start doing your own projects as soon as you feel comfortable with the language.