Spawning subprocesses smartly and securely
As part of your code, you may be inclined to call a command to do something. But is it always a good idea? How to do it safely? What happens behind the scenes?
As part of your code, you may be inclined to call a command to do something. But is it always a good idea? How to do it safely? What happens behind the scenes?
You’ve just written a great Python web application. Now, you want to share it with the world. In order to do that, you need a server, and some software to do that for you.
The following is a comprehensive guide on how to accomplish that, on multiple Linux-based operating systems, using nginx and uWSGI Emperor. It doesn’t force you to use any specific web framework — Flask, Django, Pyramid, Bottle will all work. Written for Ubuntu, Debian, Fedora, CentOS 7, Alma Linux, Rocky Linux and Arch Linux (should be helpful for other systems, too). Now with an Ansible Playbook.
Revision 8 (2022-02-20): works with Fedora 35, AlmaLinux 8, RockyLinux 8
pass is the standard Unix password manager. And I just wrote a slightly friendlier, clickier interface with urwid and Python.
Are you executing a process that takes a long time? Do you want to know that it’s still working while you are in another terminal/making coffee? Do you have a favorite game show tune to play while doing something?
If yes: think
is just for you. For more details, read on or hop onto the GitHub page.
I recently switched distros on my server, from Debian to Fedora, to use
systemd
and keep it in line with my home Arch Linux system (which was
not reinstalled since 2010, by the way!) Why is systemd so awesome? Read
on to find out.
What’s the most important non-kernel piece of software in UNIX-like OSes? The shell. A good shell.
I’m using Linux since 2007. I’ve been on many distros (in order): Mandriva, Ubuntu, openSuSE, Fedora, and only in VirtualBox: Debian and Linux Mint. But since two months there is another distro in both lists (I tested it out on VirtualBox and then set it up on the actual machine): Arch Linux.