Appendix A. Helpful Recipes

In this appendix, I’ve compiled a list of recipes for common tasks. This is just a selection of recipes that I’ve gathered over time, tasks that I often carry out and like to have handy as a reference. By no means is this a complete or deep coverage of Linux usage and admin tasks. For a comprehensive collection of recipes, I strongly recommend you check out Carla Schroder’s Linux Cookbook (O’Reilly), covering a range of recipes in great detail.

Gathering System Information

To learn about the Linux version, kernel, and other related information, use any of the following commands:

cat /etc/*-release
cat /proc/version
uname -a

To learn about basic hardware equipment (CPU, RAM, disks), do:

cat /proc/cpuinfo
cat /proc/meminfo
cat /proc/diskstats

To learn more about the hardware of your system, such as about the BIOS, use:

sudo dmidecode -t bios

Note for the previous command: other interesting options for -t include system and memory.

To query overall main memory and swap usage, do:

free -ht

To query how many file descriptors a process can have, use:

ulimit -n

Working with Users and Processes

You can list logged-in users with either who or w (more detailed output).

To show system metrics (CPU, memory, etc.) on a per-process basis for a specific user, SOMEUSER, use the following command:

top -U SOMEUSER

List all processes (for all users) in tree format with details by using:

ps faux

Find a specific process (python here):

ps -e | grep python

To terminate ...

Get Learning Modern Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.