Processes, Packages and the Network
Harry
· 14 Sep 2026
· 1 views
Advertisement
Processes
Every running program is a process with a numeric ID (PID). Inspect and control them:
ps aux # list all processes
top # live view of CPU/memory (q to quit)
htop # nicer interactive version (if installed)
kill 1234 # ask process 1234 to stop
kill -9 1234 # force-kill (last resort)
Background jobs and services
./server & # run in the background
jobs # list background jobs
nohup ./server & # keep running after you log out
Long-running programs are usually managed as systemd services rather than by hand:
sudo systemctl status nginx # is it running?
sudo systemctl restart nginx # restart it
sudo systemctl enable nginx # start on boot
journalctl -u nginx -f # follow its logs
Installing software
A package manager installs software and its dependencies. On Debian/Ubuntu it is apt; on Red Hat/Fedora, dnf:
sudo apt update # refresh the package list
sudo apt install nginx # install a package
sudo apt remove nginx # remove it
sudo apt upgrade # update everything
Networking basics
ping google.com # test connectivity
curl https://example.com # fetch a URL
curl -I https://example.com # headers only
ss -lntp # list listening ports and their processes
ssh user@host # log into a remote machine
Key points
- Processes have PIDs; inspect with
ps/top, stop withkill. - Manage long-running programs with
systemctland read logs viajournalctl. - Install software with the package manager (
aptordnf). ping,curl,ssandsshcover everyday network tasks.