what-happens-when
util-linux
Our great sponsors
what-happens-when | util-linux | |
---|---|---|
76 | 35 | |
38,680 | 2,481 | |
- | 3.3% | |
0.0 | 9.9 | |
6 days ago | 3 days ago | |
C | ||
- | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
what-happens-when
- What-Happens-When: An attempt to answer an age-old interview question
- What Happens When
-
We have used too many levels of abstractions and now the future looks bleak
Agreed!
It reminds me of:
https://github.com/alex/what-happens-when
and how many of today’s CS-degree holders would barely understand any of it. As someone who has also “grown up with all the technology”, I’ve learned and experienced all that. But as a percentage of “software engineers”, there’s fewer and fewer that do every day.
- Step-by-step events when Browsing www.facebook.com after computer bootup.
-
I just blew my interview!
There is a pretty comprehensive answer to number 2 here
-
Are you skeptical about candidates that call themselves a "10x engineer"?
Ask them to describe what happens when you visit a website and grill them on every layer of abstraction, every implementation detail.
-
You and me Anon, you and me
This is a classic interview question and it basically means "How does internet work?" It is great because it allows to check how many levels of understanding it a developer has. The answer may be quite lengthy, for example: https://github.com/alex/what-happens-when
- Any course that actually teaches me how a website is built?
-
I have a question about subdomains and their DNS resolution
Perhaps you will find https://github.com/alex/what-happens-when useful.
- Tried and true interview questions/tasks
util-linux
-
The First Stable Release of a Rust-Rewrite Sudo Implementation
There are su and runuser in util-linux (GPL-2.0) [1].
[1]: https://github.com/util-linux/util-linux/tree/master/login-u...
-
Simula the Forgotten Programming Language
>It remained in the "getty" process for some time, well into the {Free,Net,Open}BSD era.
Still there in agetty: https://github.com/util-linux/util-linux/blob/master/term-ut... And, I imagine in other getty implementations.
-
Don't abuse su for dropping user privileges (2015)
TIOCSTI is irrelevant. When one is dropping privileges, in a system cron job or in a process supervised by one's favourite service management system, there is no terminal involved. TIOCSTI simply doesn't enter into the picture at all.
Only when one is in a terminal login session and using su to elevate / add privileges, does TIOCSTI become relevant. But no-one here is saying not to use su to add privileges.
People blame su, sudo, and (as the person at https://github.com/slicer69/doas/issues/110 did) doas for this feature of operating system kernels. The right thing to do with TIOCSTI it to just eliminate it from the kernel. OpenBSD did back in version 6.
Sadly, the argument from Alan Cox, Linux developer, when this was proposed years ago was that it should stay in Linux, and all of the programs like su, sudo, and doas should have even more things to do in the parent process that sticks around, namely pump I/O to and from a controlling pseudo-terminal that su/sudo/doas sets up for the shell subprocess, breaking (as the maintainer of OpenDoas pointed out) the long-standing notion that the child processes belong to the same terminal session and share things like a single getlogname() with the login shell.
6 years after https://www.openwall.com/lists/kernel-hardening/2017/05/10/3... and https://www.openwall.com/lists/oss-security/2017/06/03/9, there is no sign of anyone doing anything of the sort in any su or doas implementation. (It was briefly in one su implementation, but taken out in 2017 for being a "stupid hack": https://github.com/util-linux/util-linux/commit/23f75093264a...)
Fortunately, some six months ago Linux developers finally made TIOCSTI removable and the right course of action is available to those that want it: https://lore.kernel.org/lkml/20221228205726.rfevry7ud6gmttg5...
-
Desktop Suddenly Failing to Boot - what are these error messages?
Huh, I will try this later. Bit confused by the instructions on the Archwiki but I think I can figure it out. Thanks so much for the help. Btw, it seems you were right on what was wrong. Good eyes.
-
Capture your users attention with style
So, this script serves as a pretty good wall replacement (wall will strip all escape/control sequences other than \007, by the way).
-
How do you find the developers for obscure stuff
The login program (used for terminal logins) is part of the util-linux project: https://en.wikipedia.org/wiki/Util-linux
- hexdump nonsense error messages
-
Would you use/try snaps if it has open source backend?
if anbody actually at Canonical is reading this and wants me (and others) to take snaps seriously, please consider submitting pull requests to some of the core cli tool projects impacted by the way you guys abuse the loop device mechanism. Something simple like the ability to export HIDE_SNAP_MOUNTS=1 that gets picked up by the impacted tools in util-linux (lsblk, mount, blkid, fdisk, etc) and gnu coreutils (du, df) and simply hides the lines related to loop device mounts would go a long way - preferably only the ones added by snap but even an option to hide all of them would be better than nothing.
-
Best Way For Copying Between 2 PC's With Different UIDs via USB
Pick a different filesystem, or wait for this feature to land in util-linux.
-
Are DOS utilities open source.
Also a data format. Reasonably easy to find a spec (the wikipedia article should be sufficient to implement it). Also reasonably easy to find Free Software implementations, such as fdisk.
What are some alternatives?
tianocore
coreutils - upstream mirror
Essentials-of-Compilation - A book about compiling Racket and Python to x86-64 assembly
gimp - Read-only mirror of https://gitlab.gnome.org/GNOME/gimp
scrcpy - Display and control your Android device
bindfs - Mount a directory elsewhere with changed permissions.
sre-interview-prep-guide - Site Reliability Engineer Interview Preparation Guide
sanitizers - AddressSanitizer, ThreadSanitizer, MemorySanitizer
www.submarinecablemap.com - Comprehensive interactive map of the world's major operating and planned submarine cable systems and landing stations, updated frequently.
linuxgems - A succinct cheat sheet for newbie linux coders and system administrators, documenting some of the more obscure and useful gems of linux lore. Intended to be viewed in emacs org-mode, or VimOrganizer, though any text editor will suffice.
linux-insides - A little bit about a linux kernel
subsync - Subtitle Speech Synchronizer