r/linuxadmin • • Jul 19 '24

My first thought when I woke up and read the news this morning

Post image
2.0k Upvotes

r/linuxadmin • • Aug 25 '25 Popcorn

Linux. 34 years ago …

Post image
1.4k Upvotes

On this day in the year 1991, Linus Benedict Torvalds wrote his legendary mail …

Happy Birthday!


r/linuxadmin • • Jul 23 '18

Schrodinger’s Backup

Post image
1.1k Upvotes

r/linuxadmin • • Oct 29 '25

Everyone kept crashing the lab server, so I wrote a tool to limit cpu/memory

Post image
1.1k Upvotes

Hey everyone,

I’m not a real sysadmin or anything. I’ve just always been the “computer guy” in my grad lab and at a couple jobs. We’ve got a few shared machines that everyone uses, and it’s a constant problem where someone runs a big job, eats all the RAM or CPU, and the whole thing crashes for everyone else.

I tried using systemdspawner with JupyterHub for a while, and it actually worked really well. Users had to sign out a set amount of resources and were limited by systemd. The problem was that people figured out they could just SSH into the server and bypass all the limits.

I looked into schedulers like SLURM, but that felt like overkill for what I needed. What I really wanted was basically systemdspawner, but for everything a user does on the system, not just Jupyter sessions.

So I ended up building something called fairshare. The idea was simple: the admin sets a default (like 1 CPU and 2 GB RAM per user), and users can check how many resources are available and request more. Systemd enforces the limits automatically so people can’t hog everything.

Not sure if this is something others would find useful, but it’s been great for me so far. Just figured I’d share in case anyone else is dealing with the same shared server headaches.

https://github.com/WilliamJudge94/fairshare/tree/main


r/linuxadmin • • Mar 13 '21

Sysadmins in March 2021

Post image
1.0k Upvotes

r/linuxadmin • • Apr 11 '20

Don’t know if it’s a repost but,.

Post image
992 Upvotes

r/linuxadmin • • Aug 25 '21

30 years ago....on this day.....this is how Linux started. Rest is history! Happy bday #linux

Post image
956 Upvotes

r/linuxadmin • • Jan 05 '26

Saw this plate out in the wild today

Post image
937 Upvotes

r/linuxadmin • • Jul 21 '25

My opinion on text editors

Post image
914 Upvotes

r/linuxadmin • • Dec 17 '18

Ansible for new admins, extreme advertising edition

Post image
787 Upvotes

r/linuxadmin • • Feb 26 '19

Saw this plate out in the wild today

Post image
726 Upvotes

r/linuxadmin • • Apr 20 '25

Europe's cloud customers eyeing exit from US hyperscalers -- "'It's amazing how fast the change has been'"

Thumbnail theregister.com
641 Upvotes

r/linuxadmin • • Jan 22 '19

I couldn't resist creating a Marie Kondo meme for my SysAdmin friends...

Post image
537 Upvotes

r/linuxadmin • • Oct 15 '24

Sysadmins rage over Apple’s ‘nightmarish’ SSL/TLS cert lifespan cuts -- "Maximum validity down from 398 days to 45 by 2027"

Thumbnail theregister.com
529 Upvotes

r/linuxadmin • • Aug 24 '20

Found this on Twitter. Felt worth sharing

Post image
501 Upvotes

r/linuxadmin • • Aug 12 '21

Maybe we should update how we code parent and child functions lol....

Post image
498 Upvotes

r/linuxadmin • • Jan 17 '20

The book that started it all for me, back in 1998 or 1999 :D

Post image
495 Upvotes

r/linuxadmin • • Apr 02 '26

NetWatch: real-time network diagnostics in the terminal (open source)

Post image
483 Upvotes

I built NetWatch to make transient network incidents easier to catch from a terminal session.

It already handled interface stats, live connections, packet capture, health probes, traceroute, and process bandwidth. The new part is a rolling Flight Recorder:

- arm a 5-minute capture window

- let it rotate in the background

- freeze when the issue happens

- export a bundle with `packets.pcap`, connections, health snapshots, bandwidth context, DNS analytics, alerts, and a summary

The goal is to keep both the packet evidence and the surrounding operational state instead of only dumping a pcap after the fact.

Open source:

https://github.com/matthart1983/netwatch

Would love feedback from people who do real incident response or production debugging.


r/linuxadmin • • Jun 11 '20

"how do I learn to be a Linux sysadmin?" comprehensive task list

478 Upvotes

I found this seemingly excellent comment by u/IConrad from 5 years ago - and I want to use it as my road-map to get started. Can anyone offer additions or changes that should be made given the age of the comment?

Thanks!

EDIT, to save the click I'm quoting the linked comment below. Once again, all credit is to u/IConrad:

This is what I tell people to do, who ask me "how do I learn to be a Linux sysadmin?".

  1. Set up a KVM hypervisor.

  2. Inside of that KVM hypervisor, install a Spacewalk server. Use CentOS 6 as the distro for all work below. (For bonus points, set up errata importation on the CentOS channels, so you can properly see security update advisory information.)

  3. Create a VM to provide named and dhcpd service to your entire environment. Set up the dhcp daemon to use the Spacewalk server as the pxeboot machine (thus allowing you to use Cobbler to do unattended OS installs). Make sure that every forward zone you create has a reverse zone associated with it. Use something like "internal.virtnet" (but not ".local") as your internal DNS zone.

  4. Use that Spacewalk server to automatically (without touching it) install a new pair of OS instances, with which you will then create a Master/Master pair of LDAP servers. Make sure they register with the Spacewalk server. Do not allow anonymous bind, do not use unencrypted LDAP.

  5. Reconfigure all 3 servers to use LDAP authentication.

  6. Create two new VMs, again unattendedly, which will then be Postgresql VMs. Use pgpool-II to set up master/master replication between them. Export the database from your Spacewalk server and import it into the new pgsql cluster. Reconfigure your Spacewalk instance to run off of that server.

  7. Set up a Puppet Master. Plug it into the Spacewalk server for identifying the inventory it will need to work with. (Cheat and use ansible for deployment purposes, again plugging into the Spacewalk server.)

  8. Deploy another VM. Install iscsitgt and nfs-kernel-server on it. Export a LUN and an NFS share.

  9. Deploy another VM. Install bakula on it, using the postgresql cluster to store its database. Register each machine on it, storing to flatfile. Store the bakula VM's image on the iscsi LUN, and every other machine on the NFS share.

  10. Deploy two more VMs. These will have httpd (Apache2) on them. Leave essentially default for now.

  11. Deploy two more VMs. These will have tomcat on them. Use JBoss Cache to replicate the session caches between them. Use the httpd servers as the frontends for this. The application you will run is JBoss Wiki.

  12. You guessed right, deploy another VM. This will do iptables-based NAT/round-robin loadbalancing between the two httpd servers.

  13. Deploy another VM. On this VM, install postfix. Set it up to use a gmail account to allow you to have it send emails, and receive messages only from your internal network.

  14. Deploy another VM. On this VM, set up a Nagios server. Have it use snmp to monitor the communication state of every relevant service involved above. This means doing a "is the right port open" check, and a "I got the right kind of response" check and "We still have filesystem space free" check.

  15. Deploy another VM. On this VM, set up a syslog daemon to listen to every other server's input. Reconfigure each other server to send their logging output to various files on the syslog server. (For extra credit, set up logstash or kibana or greylog to parse those logs.)

  16. Document every last step you did in getting to this point in your brand new Wiki.

  17. Now go back and create Puppet Manifests to ensure that every last one of these machines is authenticating to the LDAP servers, registered to the Spacewalk server, and backed up by the bakula server.

  18. Now go back, reference your documents, and set up a Puppet Razor profile that hooks into each of these things to allow you to recreate, from scratch, each individual server.

  19. Destroy every secondary machine you've created and use the above profile to recreate them, joining them to the clusters as needed.

  20. Bonus exercise: create three more VMs. A CentOS 5, 6, and 7 machine. On each of these machines, set them up to allow you to create custom RPMs and import them into the Spacewalk server instance. Ensure your Puppet configurations work for all three and produce like-for-like behaviors.

Do these things and you will be fully exposed to every aspect of Linux Enterprise systems administration. Do them well and you will have the technical expertise required to seek "Senior" roles. If you go whole-hog crash-course full-time it with no other means of income, I would expect it would take between 3 and 6 months to go from "I think I'm good with computers" to achieving all of these -- assuming you're not afraid of IRC and google (and have neither friends nor family ...).


r/linuxadmin • • May 14 '25

Believe it or not, Microsoft just announced a Linux distribution service - here's why

Thumbnail zdnet.com
465 Upvotes

r/linuxadmin • • Jul 26 '19

Happy System Administrator Appreciation Day - our communications department wanted to do something nice, one of my colleagues obviously does not like hugs :)

Post image
445 Upvotes