How to Find Large Files on Linux (find, du, ncdu)
Find the biggest files and directories on a Linux server with find, du, sort and ncdu, including deleted-but-open files and common space hogs to check.
VPS.DO Blog
Practical guides for deploying, securing and running your servers — written by the VPS.DO team.
Create Linux users with adduser and useradd, set passwords, home directories and shells, add sudo rights, create system users for services, and delete users.
Find the biggest files and directories on a Linux server with find, du, sort and ncdu, including deleted-but-open files and common space hogs to check.
Keep self-hosted apps updated safely: track releases, pin Docker image versions, back up first, update Compose apps, roll back, and automate with care.
Make Bash scripts fail safely: exit codes, set -e and its pitfalls, set -u, pipefail, trap for cleanup and error reporting, retries, and ShellCheck.
Connect to a Windows Server VPS over RDP from Windows, macOS or Linux, then secure it and fix the most common connection problems.
Move PHP sessions from files to Redis: load balancing and speed, php-redis install, php.ini settings, locking, Laravel and WordPress notes, and security.
Send password resets and receipts reliably: own mail server vs a service, Amazon SES, Postmark, SendGrid, Mailgun and Brevo, plus SMTP or API setup.
Put Varnish in front of your app with Nginx for TLS: install, backends and VCL rules, cookies and logged-in users, purging and when to skip it.
Use 7-Zip on Linux servers: install 7zip or p7zip, create and extract .7z and .zip archives, AES-256 passwords with encrypted names, split volumes, levels.
Proxy WebSocket connections through Nginx: Upgrade and Connection headers, the map pattern, timeouts, sticky load balancing and debugging.
Use the MySQL JSON type: insert and validate documents, extract with -> and ->>, update with JSON_SET, index with generated and multi-valued indexes.
Run GlitchTip on a small VPS with Docker Compose: requirements, settings, Nginx and HTTPS, first project and DSN, Sentry SDK setup, alerts and backups.
Add TimescaleDB to PostgreSQL, create hypertables, insert and query time-series data, use continuous aggregates, compression and retention policies.
Get started with Pulumi: infrastructure in TypeScript or Python, projects and stacks, self-managed S3 state, secrets, preview and up, vs Terraform.
Set up a fresh AlmaLinux server: dnf updates, a sudo user, SSH keys, firewalld, SELinux, EPEL, automatic security updates and time sync.
Understand Apache mod_rewrite: RewriteRule syntax, RewriteCond tests, flags like L, R, NC and QSA, back-references, context and debugging.
Fix WordPress login loops where wp-login.php keeps reloading: URL and cookie mismatch, HTTPS behind a proxy or Cloudflare, cached login pages, plugins.
Secure a new Ubuntu 24.04 VPS step by step: a sudo user, SSH keys, the UFW firewall, automatic security updates and swap.
Turn a Python script, bot or web app into a reliable systemd service: virtualenv paths, unbuffered output, environment files, restarts, hardening and timers.
Secure an Express API: helmet headers, trust proxy behind Nginx, rate limits, input validation, CORS, secure cookies, safe errors, audits, non-root.
Change your WordPress URL safely: Settings, wp-config.php, WP-CLI or SQL, then search-replace old URLs, update Nginx, and redirect the old domain.
WordPress vs Ghost for publishing: editor, speed, built-in newsletters and memberships, plugins vs integrations, SEO, self-hosting needs, and running costs.
Build a three-node MariaDB Galera Cluster: wsrep settings, bootstrapping, joining nodes, SST methods, firewall ports, quorum and recovery.
Use tr to change case, replace or delete characters, squeeze repeated spaces, strip Windows line endings, and generate random strings, with clear examples.