system-administration

Configure Samba Shares for Active Directory Users on RHEL 10

Authorize Samba shares for Active Directory users and groups on a RHEL 10 Winbind member server: valid users, Unix permissions, POSIX ACLs, SELinux, firewall, and Windows access tests.

Omer Cakmak10 min read
system-administration

Join RHEL 10 to Active Directory with Samba Winbind

Join RHEL 10 to Active Directory with Samba Winbind using realm join or net ads join, verify wbinfo and getent, and publish an AD-authenticated Samba share.

Omer Cakmak9 min read
system-administration

Join RHEL 10 / Rocky Linux 10 to Active Directory with realmd and SSSD

Join RHEL 10 or Rocky Linux 10 to Windows Server 2025 Active Directory with realmd, adcli, and SSSD. Discover the domain, run realm join, verify Kerberos, and control AD logins.

Omer Cakmak14 min read
system-administration

Join RHEL to Active Directory with adcli and SSSD

Enroll RHEL 10 in Active Directory with adcli join, then configure SSSD, authselect, and NSS yourself—without realm join—for full control of the AD computer account.

Omer Cakmak10 min read
linux

Mount Remote Directory with SSHFS on Linux & Windows

Mount a remote Linux directory over SSH with SSHFS on RHEL, Ubuntu, and Windows. Covers install, user mounts, permissions, fstab, jump hosts, SSHFS-Win UNC paths, and troubleshooting.

Omer Cakmak16 min read
linux

How to Test SSH Connection in Linux (Port, Service & Login)

Test SSH connectivity in Linux step by step: check port 22, verify that sshd responds, test authentication, inspect server-side sshd status, and troubleshoot common SSH errors.

Omer Cakmak14 min read
system-administration

389 Directory Server Tutorial: Complete Administration Guide

Free 389 Directory Server course: dscreate, dsconf and dsidm, TLS, ACIs, password policy, replication, and LMDB tuning, tested on 389-ds-base 3.2.

Deepak Prasad1 min read
system-administration

OpenLDAP Tutorial for Beginners - Install, Configure, Replicate

Free OpenLDAP tutorial for Linux admins: cn=config and MDB, TLS, ACLs, password policy, SSSD clients, replication, and backup, tested on OpenLDAP 2.6.

Deepak Prasad1 min read
linux

Fix "watchdog: BUG: soft lockup - CPU stuck" on Linux

Diagnose watchdog BUG soft lockup CPU stuck on Linux from the kernel journal and stack trace. Separate VM starvation, workload pressure, storage stalls, and real driver bugs before changing watchdog_thresh.

Deepak Prasad20 min read
linux

Troubleshoot High Memory Usage in Linux

Troubleshoot Linux high memory usage by reading free and MemAvailable, ranking processes with ps and pidstat, checking swap and memory pressure, inspecting kernel slab usage, and deciding when low free RAM is normal …

Deepak Prasad10 min read
linux

Troubleshoot High I/O Wait in Linux

Troubleshoot Linux high iowait with mpstat and top, find the busy disk with iostat, name I/O-heavy processes with pidstat, check D state and swap activity, and match symptoms to the real storage bottleneck.

Deepak Prasad10 min read
linux

Troubleshoot High CPU Usage in Linux

Troubleshoot Linux high CPU usage with top, ps, mpstat, and pidstat to find runaway processes, read per-core utilization, split user and system time, inspect threads, and decide whether the workload is legitimate or a …

Deepak Prasad11 min read
linux

Troubleshoot High Load Average in Linux

Troubleshoot Linux high load average by comparing load to CPU count, reading mpstat and iowait, finding D state processes, checking disk and NFS blocking I/O, and identifying whether CPU, I/O, or locks are the …

Deepak Prasad10 min read
linux

Troubleshoot Default Routes in Linux

Troubleshoot Linux default route problems by reading ip route show default and ip route get, understanding route metrics, removing wrong gateways, fixing multiple default routes, and making the correct gateway persistent …

Deepak Prasad10 min read
linux

Troubleshoot Slow Network Speed in Linux

Troubleshoot Linux slow network speed by measuring throughput with curl and iperf3, checking latency and packet loss, verifying ethtool link speed and duplex, reading interface drops, testing MTU, reviewing routes, and …

Deepak Prasad9 min read
linux

Troubleshoot Packet Loss in Linux

Troubleshoot Linux packet loss by confirming drops with ping statistics, locating the failing hop with mtr, reading interface error counters, checking ethtool link state, testing MTU with ping, and comparing local LAN …

Deepak Prasad12 min read
linux

Fix NetworkManager Device Unmanaged on Linux

Fix NetworkManager device unmanaged on Linux by reading nmcli device state and reason codes, checking unmanaged-devices rules and NM_CONTROLLED, marking interfaces managed, and verifying with nmcli reload.

Deepak Prasad9 min read
linux

Fix Destination Host Unreachable on Linux

Fix destination host unreachable on Linux by identifying which host sent the ICMP error, checking interface IP and routes, resolving ARP neighbor failures, and restoring a reachable default gateway.

Deepak Prasad11 min read
linux

Fix Connection Refused on Linux

Fix connection refused on Linux for ssh, curl, and custom TCP ports by confirming host reachability, checking systemd and ss listeners, bind addresses, firewalld rules, and verifying with nc or curl.

Deepak Prasad10 min read
linux

Fix Linux: Can Ping IP but Not Hostname

Fix Linux hosts that ping IP addresses but not hostnames by confirming routing, testing DNS with getent and dig, checking resolv.conf and NetworkManager, and restoring working nameservers.

Deepak Prasad9 min read
linux

Fix No Route to Host on Linux

Fix no route to host on Linux for ssh, curl, and other TCP clients by checking ip route get, gateway and ARP neighbors, tracepath, and firewalld REJECT rules that return EHOSTUNREACH.

Deepak Prasad10 min read
linux

Fix Network Is Unreachable on Linux

Fix network is unreachable on Linux by checking link state and IP addresses, reading ip route get, restoring a missing default gateway, and correcting NetworkManager routes on RHEL, Ubuntu, and other distributions.

Deepak Prasad10 min read
linux

Fix Temporary Failure in Name Resolution on Linux

Fix temporary failure in name resolution on Linux by confirming IP connectivity, testing DNS with getent and dig, checking resolv.conf and NetworkManager DNS servers, and applying a working resolver configuration.

Deepak Prasad10 min read
linux

How to Find and Fix Memory Leaks in Linux Applications

Read LeakSanitizer and Valgrind reports down to the line that owns the memory, use the flags that add detail, attribute growth with Massif, and query a running process with vgdb so you fix the cause instead of only …

Omer Cakmak42 min read
linux

How to Install libc.so.6 on Linux (glibc Package, Not a Download)

Diagnose libc.so.6 errors by message type — GLIBC_2.xx not found, cannot open shared object file, wrong ELF class, or damaged system libc — then fix with the matching glibc package, multilib, rebuild, container, or …

Omer Cakmak12 min read
linux

Configure Fail2ban to Protect SSH on Linux

Install Fail2ban, enable the sshd jail with sane bantime and ignoreip values, verify bans after failed SSH logins on RHEL and Debian, and unban trusted client addresses when needed.

Omer Cakmak10 min read
linux

Found a Swap File by the Name: Fix Vim .swp Warnings (E325)

Fix Vim E325 Found a swap file by the name by reading the .swp prompt, recovering after a crash, or removing a stale swap file once no editor owns it — not Linux swap memory from mkswap.

Omer Cakmak9 min read
linux

Fix SSH No Route to Host: Routing, Firewall, and sshd Checks

Diagnose SSH no route to host with TCP port tests, ip route get, remote firewalld and sshd checks, and learn when the message means a firewall REJECT instead of a missing route.

Omer Cakmak10 min read
linux

Run Multiple Commands Over SSH on Linux

Chain remote commands over SSH with semicolons, &&, subshells, bash -s, and here documents, and pick the pattern that matches whether every step must run or stop on failure.

Omer Cakmak8 min read
linux

Long-Running Commands Over SSH: Keep Jobs Running After Disconnect

Run backups, builds, and other long jobs over SSH with explicit I/O redirection, nohup, setsid, tmux, or disown so work continues after the terminal closes and output lands in a log you can read later.

Omer Cakmak9 min read