Kernel modules are usually built out-of-tree, but for modules tightly coupled with kernel internals it's better to build them in-tree, as part of the kernel compilation itself, for header and config compatibility and automatic compilation during make . The example below uses linux-5.10/ as the so
Master C function pointers: learn syntax, typedef declarations, qsort() callbacks, POSIX signal handlers, kernel vtables, and memory mechanics.
Use grep , sed , and find to search and replace strings across a codebase instead of doing it manually. Step 1: Find a String with grep -r — recursive -n — shows line numbers -w — matches whole word -e — the pattern Step 2: Replace a String in One File with sed -i — edits in place s — subs
EC2 public IPs change on stop/restart, which breaks anything pointing at them. The fix is mapping a custom domain via an Elastic IP.
Inkscape is a free and open-source vector graphics editor for creating scalable, high-quality designs (SVG, PNG, EPS, PDF, AI). Ubuntu users can install it via APT, Snap, or Flatpak.
Setting up phpMyAdmin on an Amazon EC2 Linux instance lets you manage MySQL databases through a web-based interface. If you're running a Linux EC2 instance, installing phpMyAdmin is a crucial step for developers and administrators.
Recording screencasts on Ubuntu can be done using native GNOME desktop keybindings or third-party Linux utilities. Depending on whether you need a quick short clip or a full video tutorial with microphone audio, Ubuntu offers built-in tools as well as dedicated recording software.
Netdata is a lightweight, open-source system performance monitoring agent for Linux. It collects thousands of metrics per second—including CPU usage, RAM allocation, disk I/O, network throughput, and container stats—and renders them in a real-time web dashboard without high CPU overhead.
Brackets is an open-source code editor focused on web development and front-end design. Its standout feature, Live Preview, synchronizes changes made in HTML and CSS directly to Google Chrome in real time.
The iwlist command-line utility displays detailed diagnostic information from wireless network interfaces on Linux. It allows developers and sysadmins to scan for nearby access points, inspect signal quality, check operating frequencies, and verify encryption schemes without needing a graphical de
Cleaning raw logs or subscriber export files to get a unique list of email addresses is a common data cleanup task. Rather than importing large files into spreadsheets or writing custom scripts, standard Linux terminal utilities like grep , tr , sort , and uniq can extract and deduplicate thous
While out-of-tree loadable kernel modules ( .ko ) are useful for out-of-band development, integrating a driver into the Linux kernel source tree allows it to be configured via make menuconfig and compiled statically ( vmlinux ) or as a modular driver target. Step 1: Create driver directory and C s
An IP address is a starting clue, not a complete device identity. Correlate Linux routing and neighbour data with DNS, DHCP or cloud inventory, then use the smallest authorized Nmap probe that answers the remaining question.
Use `rsync` over SSH as a restartable transfer protocol: keep partial data, rerun the same command after a disconnect, publish only after checksum verification, and avoid exposing a temporary HTTP server.
Renaming `memory_map.c` to `memory_mapping.c` and changing identifiers inside source files are separate operations. This guide previews both, handles unusual filenames, refuses collisions, keeps backups, and makes rollback practical.
The error means the resolver could not return a usable address for the requested name and address family. Diagnose the same NSS path the application uses before editing `/etc/hosts`, changing DNS, or flushing caches.
Connect to an EC2 Linux instance without weakening its security: verify the instance and host key, protect the SSH private key, choose the correct AMI username and address, restrict ingress, and diagnose timeout versus authentication failures.
A high load average, low “free” memory, or busy disk is a clue—not a root cause. Use interval-based Linux tools to separate CPU saturation, memory reclaim, swap, storage latency, network load, process behavior, and cgroup pressure before restarting or killing anything.
ncdu turns a recursive disk-usage scan into a fast terminal browser, but its delete key deserves the same respect as `rm`. Start read-only, stay on the intended filesystem, export remote scans for offline analysis, and confirm why `df`, `du`, and ncdu may report different numbers.
Use scp for a straightforward one-off copy, rsync over SSH for repeatable or resumable directory synchronization, SFTP for interactive/file-oriented workflows, and a tar stream for carefully controlled archive pipelines. The protocol encrypts transport; you still need host verification, least privilege, safe destination semantics, and end-to-end validation.
Use the package database for installed ownership, repository content indexes for packages not installed, and archive queries for downloaded DEB/RPM files. These inventories describe packaged paths—not every file created later by services, scripts, or users.
`atexit()` registers no-argument callbacks for normal program termination. They run in reverse registration order after `main` returns or `exit()` is called—but not after `_Exit()`, `_exit()`, `abort()`, an unhandled fatal signal, a crash, or a forced kill.
This warning usually means the machine’s active hostname no longer resolves through its configured Name Service Switch sources. Diagnose the exact name first, correct `/etc/hosts` or hostname configuration safely, and verify through `getent` before changing DNS.
For a trusted local music folder, mpv can recurse and shuffle it directly. This article also preserves the MPlayer workflow, fixes fragile filename handling, shows reusable playlists, and explains playback controls and audio troubleshooting.