Articles by Dejan Panovski
How to Install and Use uv: Fast Python Package Manager
uv is a fast Python package and project manager written in Rust. This guide covers installation on Linux, creating projects, adding dependencies, managing virtual environments, and installing Python versions with uv.

SSH Permission Denied (publickey): Causes and Fixes
How to troubleshoot the SSH "Permission denied (publickey)" error in Linux. Covers file permissions, missing keys, SELinux, SSH agent issues, and server-side debugging.

Install and Configure Roundcube Webmail on Ubuntu 26.04
Install Roundcube Webmail on Ubuntu 26.04 with PHP-FPM, MySQL, Nginx, IMAP, SMTP submission, and server-side Sieve filters.

Install and Configure Postfix and Dovecot on Ubuntu 26.04
Postfix is an open-source mail transfer agent (MTA), a service used to send and receive emails. Dovecot is an IMAP/POP3 server and in our setup it will also handle local delivery and user authentication.

How to Install Python on Ubuntu 26.04
Install Python on Ubuntu 26.04 using the default Ubuntu packages, the deadsnakes PPA for alternate versions, or a source build. Includes pip and virtual environments.

fdisk Command in Linux: Create Disk Partitions
Use the fdisk command in Linux to list disks, create GPT or MBR partitions, change partition types, format new partitions, and mount them safely.

ps Command in Linux: ps aux and Common Options
Use ps aux and related ps command options in Linux to list running processes, read output columns, sort by CPU or memory, filter by PID or user, and show full command lines.

SSH Hardening Guide: Best Practices for Linux Servers
SSH hardening best practices for Linux servers, including sshd_config checks, key-only logins, root login restrictions, firewall rules, timeouts, and Fail2Ban.

Bash Split String: Split a String by Delimiter
How to split a string in Bash by a delimiter using read, IFS, tr, awk, and parameter expansion, with practical examples for scripts.

How to Install Docker on Debian 13 (Trixie)
Install Docker on Debian 13 from the official Docker repo. Set up the apt keyring, install Engine and Compose plugin, and fix common errors.

How to Add a User to a Group in Linux
Add users to Linux groups with usermod, verify group membership, change primary groups, and fix common issues when group changes do not apply.

How to Install Java on Ubuntu 24.04
Install Java 25, Java 21, and Oracle JDK on Ubuntu 24.04. This guide covers OpenJDK packages, default Java selection, and JAVA_HOME setup.

.gitignore: Ignore Files and Folders in Git
Use .gitignore to ignore folders, files, logs, and build output in Git. See folder patterns, global rules, tracked-file cleanup, and debugging commands.

Bash break and continue Statements
The break and continue statements in Bash control loop execution. Use break to exit a loop early and continue to skip the current iteration.

netstat Command in Linux: Network Connections and Statistics
Use the netstat command to list network connections, listening ports, routing tables, interface counters, and TCP states on Linux.

fsck Command in Linux: Check and Repair Filesystems
Use the fsck command in Linux to check and repair filesystems safely, run read-only checks, fix unmounted partitions, and schedule boot-time checks.

Netcat (nc) Command in Linux with Examples
Use the Netcat nc command in Linux to scan ports, listen for connections, transfer files, test TCP and UDP services, and set connection timeouts.

How to Use Linux Screen
GNU Screen is a terminal multiplexer for managing persistent sessions over SSH. This guide covers sessions, windows, detach/reattach, scrollback mode, and customization.

Things to Do After Installing Ubuntu 26.04
A practical checklist for setting up Ubuntu 26.04 after installation, including updates, drivers, codecs, Flatpak, backups, firewall settings, and desktop tweaks.

How to Install VirtualBox on Ubuntu 26.04
Install VirtualBox on Ubuntu 26.04 from the Ubuntu multiverse repository, add the Extension Pack, and fix common kernel module or Secure Boot issues.

