Wow! After years of hard work and countless commits, we have finally reached a huge milestone: GIMP 3.0 is officially released! I am excited as I write this and can't wait to share some incredible new features and improvements in this release. GIMP 2.10 was released in 2018, and the first development version of GIMP 3.0 came out in 2020. GIMP 3.0 released on 16/March/2025. Let us explore how to download and install GIMP 3.0, as well as the new features in this version.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Download of the day: GIMP 3.0 is FINALLY Here! appeared first on nixCraft.
Here is a quick list of all upgradeable packages on FreeBSD using pkg command. This is equivalent to apt list --upgradable command on my Debian or Ubuntu Linux system.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to list upgradeable packages on FreeBSD using pkg appeared first on nixCraft.
In a move that has sparked significant discussion within the Ubuntu Linux fan-base and community, Canonical, the company behind Ubuntu, has announced its intention to explore the potential replacement of GNU Core Utilities with the Rust-based "uutils" project. They plan to introduce new changes in Ubuntu Linux 25.10, eventually changing it to Ubuntu version 26.04 LTS release in 2026 as Ubuntu is testing Rust 'uutils' to overhaul its core utilities potentially. Let us find out the pros and cons and what this means for you as an Ubuntu Linux user, IT pro, or developer.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Ubuntu to Explore Rust-Based “uutils” as Potential GNU Core Utilities Replacement appeared first on nixCraft.
Installing KSH (KornShell) on FreeBSD can be done with either FreeBSD ports or the pkg command. The ports collection will download the KSH source code, compile it, and install it on the system. The pkg method is easier, and it will download a pre-compiled binary package. Hence, it is recommended for all users. KornShell (KSH) has a long history, and many older Unix systems and scripts rely on it. As a result, KSH remains relevant for maintaining and supporting legacy infrastructure. Large enterprises, especially those with established Unix-based systems, continue to use KSH for scripting and system administration tasks. Some industries where KSH is still commonly used include finance and telecommunications. While Bash has become the dominant shell in many Linux distributions, KSH still holds a significant presence in Unix-like environments, particularly in legacy systems. Therefore, installing KSH and practicing with it is worthwhile if you plan to work in such environments.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to install KSH on FreeBSD appeared first on nixCraft.
Sed is an acronym for "stream editor." A stream refers to a source or destination for bytes. In other words, sed can read its input from standard input (stdin), apply the specified edits to the stream, and automatically output the results to standard output (stdout). Sed syntax allows an input file to be specified on the command line. However, the syntax does not directly support output file specification; this can be achieved through output redirection or editing files in place while making a backup of the original copy optionally. Sed is one of the most powerful tools on Linux and Unix-like systems. Learning it is worthwhile, so in this tutorial, we will start with the sed command syntax and examples.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Linux Sed Tutorial: Learn Text Editing with Syntax & Examples appeared first on nixCraft.
Keeping your FreeBSD server or workstation updated is crucial for security and stability. However, after applying updates, especially kernel updates, you might wonder, "Do I need to reboot my system?" Let's simplify this process and provide a straightforward method for determining whether a reboot is necessary using the CLI, shell script, and ansible playbook.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to tell if FreeBSD needs a Reboot using kernel version check appeared first on nixCraft.
Rsync is a opensource command-line tool in Linux, macOS, *BSD and Unix-like systems that synchronizes files and directories. It is a popular tool for sending or receiving files, making backups, or setting up mirrors. It minimizes data copied by transferring only the changed parts of files, making it faster and more bandwidth-efficient than traditional copying methods provided by tools like sftp or ftp-ssl. Rsync versions 3.3.0 and below has been found with SIX serious vulnerabilities. Attackers could exploit these to leak your data, corrupt your files, or even take over your system. There is a heap-based buffer overflow with a CVSS score of 9.8 that needs to be addressed on both the client and server sides of rsync package. Apart from that info leak via uninitialized stack contents defeats ASLR protection and rsync server can make client write files outside of destination directory using symbolic links.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Critical Rsync Vulnerability Requires Immediate Patching on Linux and Unix systems appeared first on nixCraft.
Multiplexing will boost your SSH connectivity or speed by reusing existing TCP connections to a remote host. This is useful when you frequently connect to the same server using SSH protocol for remote login, server management, using IT automation tools over SSH or even running hourly backups. However, sometimes your SSH command (client) will not respond or get hung up on the session when using multiplexing. Typically, this happens when your public IP changes (IPv4 to IPv6 changes when using DNS names), VPN issues, or firewall cuts connections. Hence, knowing SSH client control commands can save you time and boost your productivity when such gotchas occur.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to control the SSH multiplexing with the control commands appeared first on nixCraft.
After years of development and testing, the ZFS raidz expansion is finally here and has been released as part of version 2.3.0. ZFS is a popular file system for Linux and FreeBSD. RAIDz is like RAID 5, which you find with hardware or Linux software raid devices. It protects your data by spreading it across multiple hard disks along with parity information. A raidz device can have single, double, or triple parity to sustain one, two, or three hard disk failures, respectively, without losing any data. Hence, expanding or adding a new HDD is a very handy feature for sysadmins in today's data-sensitive apps.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post ZFS Raidz Expansion Finally, Here in version 2.3.0 appeared first on nixCraft.
Incus and Docker both use Linux kernel features to containerize your applications. Incus is best suited when you need system-level containers that act like traditional VMs and provide a persistent developer experience. On the other hand, Docker containers are ephemeral, i.e., temporary in nature. All files created inside Docker containers are lost when your Docker container is stopped or removed unless you stored them using volumes in different directories outside Docker. Docker is created as a disposable app deployment system. Incus containers are not typically created as disposables, and data is kept inside when they are stopped. Because of the Linux kernel support nesting feature, you can run Docker inside Incus. This page explains how to run Docker inside Incus containers.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to run Docker inside Incus containers appeared first on nixCraft.
How do I change MySQL root password under Linux, FreeBSD, OpenBSD and UNIX-like like operating system over the ssh session?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post MySQL Change root Password Command appeared first on nixCraft.
Some Linux distro like Debian or specific BSD variants provide very little configuration support for mouse out of the box for Vim. Let us see how to paste in Vim using a mouse by enabling support, which is useful for new developers and sysadmin coming from Windows background.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to enable mouse to copy & paste in vim appeared first on nixCraft.
Do you need to keep track of the network traffic (bandwidth) usage for the Network interface controller (NIC) of your Debian Linux-based cloud or bare metal server? Look no forward. Try the vnStat, a free and open-source console-based network traffic monitor that keeps a log of 5-minute intervals, hourly, daily, monthly, and yearly network traffic for the selected interface. Once installed, vnStat can be used even without root permissions on most systems.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to install vnstat on Debian 12/11 to monitor network interface bandwidth usage appeared first on nixCraft.
You need to use the smartctl command to display the hard disk (SSD) serial numbers in Linux. This is useful when changing your hard disk if it goes bad.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to find hard disk (SSD) serial numbers in Linux appeared first on nixCraft.
The KVM-ok command command will tell you if your Debian or Ubuntu Linux-powered server can host hardware-accelerated KVM virtual machines. KVM (Kernel-based Virtual Machine) is a free and open-source virtualization technology that is used with every Linux kernel. In other words, KVM will make your Linux computer into a hypervisor, allowing you to run multiple isolated virtual machines (VMs) on a single physical machine. However, KVM depends upon CPU hardware virtualization extensions like Intel VT-x or AMD-V to provide high-performance virtual machines. This support must be enabled in the BIOS. Apart from that, some cloud service providers also allow nested virtualization that will help you to run VMs inside your instances. However, this may not be enabled in BIOS or instance configuration. Thus, you need to install the kvm-ok command to determine whether such support exists.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to install kvm-ok on Debian or Ubuntu Linux appeared first on nixCraft.

Linux and Unix like operating systems comes with z* commands. These commands allow you to read gzip compressed text files using zless, zcat, zmore, and friends commands. The gzip command reduces the size of the files using Lempel-Ziv coding (LZ77). Whenever possible, each file is replaced by one with the extension .gz while keeping the same ownership modes, access, and modification times. z* commands have some cool usage too, such as display the current time in different zonename.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post zcommands: Read gzip Compressed Text Files On a Fly on Linux and Unix appeared first on nixCraft.
I have lots of files in a directory called /disk2/images/. All files are in zip file format, so I am using the following command to extract zip files:
unzip *.zip
The command result into an error which read as follows:
caution: filename not matched
How do I unzip multiple or many zip files under a Linux/Unix-like system?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How do I unzip multiple / many files under Linux? appeared first on nixCraft.
Most Linux and UNIX-like system configuration files are documented using comments, but sometimes I just need to see a line of configuration text in a config file. How can I view just the uncommented configuration file directives from squid.conf or httpd.conf file? How can I strip out comments and blank lines on a Linux or Unix-like system?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Linux / UNIX View Only Configuration File Directives ( Uncommented Lines of a Config File ) appeared first on nixCraft.
The /etc/shadow file stores the actual password in encrypted format using a hash (salted) function for the user's account with additional properties related to the user passwords, such as password expiration date or password aging. The /etc/passwd stores usernames and their properties, such as home directory, login shell, and more. The password expiration information for a user is contained in the last six fields. The Linux password expiration for a select user can be disabled by editing the /etc/shadow file. However, I recommend using the chage command for safety reasons. The chage command changes the number of days between password changes and the last password change date. The Linux system uses this information to determine when users must change their passwords.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Linux turn OFF password expiration / aging appeared first on nixCraft.
How do I perform DNS lookup under Linux, UNIX, or Apple macOS (OS X) operating systems without using 3rd party websites for troubleshooting DNS usage?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Linux / UNIX: DNS Lookup Command appeared first on nixCraft.
How can I copy one hard disk to another using the dd, ddrescue, or dcfldd commands?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Linux Copy One Hard Disk to Another Using dd Command appeared first on nixCraft.
LXD or Incus is a Linux operating system-level container system. You can build over 25+ Linux distros for testing, fun, and profit. You can even run GUI apps inside those containers and get output displayed back to your X display easily. For example, you can run Firefox in one Linux container for banking needs with custom add-ons, including specific firewall rules just for allowing outgoing banking and nothing else. You can have another container to run Chromium/Edge/FF for social media. Of course, it is not a replacement for something like Qubes OS, but you can do many things in an isolated environment. You can try a new Linux distro without the VM's overheads and test new features offered by that distro. All Linux containers will share the same Linux kernel and hardware devices as your GPU. Here is a quick shell script to build a quick lab to test various Linux distros.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Shell script to set up an LXD / Incus (Linux Containers) lab for testing purpose appeared first on nixCraft.
Here is a quick and dirty shell script I put to check LXD or Incus container size and how much space they are taking on the BTRFS subvolume. Naturally, you must run the script as a root user, and LXD or Icnus must be configured with BTRFS storage backend on Linux operating systems. See how to set up and install LXD on Ubuntu 20.04 LTS or installing Incus on Debian 12/11 using the apt command.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How To check LXD/Incus container BTRFS disk usage on Linux appeared first on nixCraft.
Here is a handy and useful Linux and Unix shell script that reduce PDF file size using Ghostscript. No need to upload your PDF file to the shady third-party website. Just do it from the terminal. I tested it with both CentOS and Ubuntu/Debian Linux. It should work with macOS, FreeBSD and other Unix-like systems as long as you have the Ghostscript installed.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Linux shell script to reduce PDF file size appeared first on nixCraft.
Email alert example before FreeBSD-based laptop will be shutdown by the script Email alert example before FreeBSD-based laptop will be shutdown by the script Email alert example before FreeBSD-based laptop will be shutdown by the script Email alert example before FreeBSD-based laptop will be shutdown by the script Email alert example before FreeBSD-based laptop will […]
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to shutdown FreeBSD laptop when running out of battery power appeared first on nixCraft.
TTL is an acronym for Time-To-Live (TTL) in DNS. It sets the time in seconds that a DNS record is allowed to be cached by DNS resolvers (caching server) before it needs to be fetched again from the authoritative name server. In other words, longer TTL can reduce the load on authoritative DNS servers and improve response times by keeping records in the cache longer. The shorter TTL is useful for frequently changing DNS records, as it ensures that updates are propagated quickly across the Internet. Say you want to see the Time-To-Live (TTL) value for a given DNS record for A, AAAA, and MX. Here is a sample shell script that works on Linux, Unix, and macOS. You must have the bash and dig command installed.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Shell script to see Time-To-Live (TTL) for a DNS record on Linux, Unix, macOS and FreeBSD appeared first on nixCraft.
The minimal version of Debian Linux 12/11 does not support sudo. When performing a network installation for Debian, the usual approach is to use the minimum version, which only installs the essential packages. Most Linux container images based upon Debian also skip sudo, and if your project needs sudo, then read on how to install and configure sudo and grant access to a user on a Debian Linux version 12/11.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to install and configure sudo on Debian Linux appeared first on nixCraft.
Here is a simple shell script to notify secondary read-only replica (slave) MariaDB server health status failure via email and push notification. Master-slave data replication allows you to copy databases to multiple MariaDB servers. It is useful for backup, data recovery, load balancing, and much more. See how to configure SSL-protected MariaDB replication between a master and slave server.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Shell script to monitor MariaDB replication and send email alert about server health status appeared first on nixCraft.
Incus is a free and open-source project for the next-gen container management platform. It is a fork of LXD (the container hypervisor). It can manage both Linux containers and virtual machines. Let us see how to install the stable version of the Incus server on Debian 11 or 12 and deploy both containers and VMs for fun and profit.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to install incus server on Debian 12/11 appeared first on nixCraft.
The most recent release of OpenSUSE Linux, version 15.6 "Leap," is now available. This version incorporates the SUSE Linux Enterprise (SLE) source and community developments, making it the ideal option for a stable Linux experience for users, developers, and system administrators. This page provides instructions on upgrading from OpenSUSE version 15.5 to 15.6 using the command-line interface (CLI).
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to upgrade OpenSUSE 15.5 to 15.6 using the CLI appeared first on nixCraft.
It is no secret that whether you are a developer or sysadmin, you need to use log files to troubleshoot errors on your Linux and Unix systems. You use tools like grep, tail, cat, or journalctl to view log files. However, you may need help with so many log files. These essential Unix tools are suitable for basic text but fall short when dealing with many log files. You can get tired from sifting through endless lines of log files. The lnav utility is here to the rescue! It is a powerful log file viewer that goes beyond the basics. It understands your logs by identifying timestamps, log levels, and other vital details. You can run SQLite SQL queries against your standard log files and build reports for your needs. Let us see how to install and use the lnav tool quickly.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post lnav – Awesome terminal log file viewer for Linux and Unix appeared first on nixCraft.
AWS offers various instance types, and sometimes, you need to know which one you are using or which one has been deployed by someone else (another developer or sysadmin) for a project. Don't worry. Here are some commands to find the EC2 instance type over SSH without logging into the AWS console. These commands works with any Linux distro or FreeBSD Unix systems.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to find out AWS EC2 instances type over SSH appeared first on nixCraft.
vnStat is a network traffic monitor for Linux and Unix-like systems. It logs network traffic at different intervals and doesn't require root permissions to run. The implementation involves two commands: vnstat for querying traffic information and vnstatd for data retrieval and storage. Let's see how to add a network interface to vnstat after installation for monitoring purposes.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to add interface to vnstat to database for monitoring appeared first on nixCraft.
The sttr is a free and open-source command-line tool in Golang that lets you easily change and modify text. You can perform transformation operations on the string, such as hashing text, string manipulation, and more. sttr is beneficial for developers and *nix users requiring swift modification to strings or files directly via the command line or TUI. It is helpful in your scripting, data processing, and automation tasks at the CLI.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post sttr – Awesome Linux & Unix tool for transformation of the string appeared first on nixCraft.
I'm trying to login using ssh keys but server is only allows to login me using a password. The following message is logged into my Linux or Unix server /var/log/secure or /var/log/auth.log file:
Feb 25 06:36:50 ns5 sshd[26681]: Authentication refused: bad ownership or modes for file /home/user/.ssh/authorized_keys2
Here is another message:
May 24 18:28:35 ls-www-1 sshd[531320]: Connection closed by 18.1.2.3 port 43640 [preauth]
May 24 18:28:44 ls-www-1 sshd[531322]: Authentication refused: bad ownership or modes for file /home/admin/.ssh/authorized_keys
May 24 18:28:44 ls-www-1 sshd[531322]: Connection closed by authenticating user admin 18.1.2.3 port 43650 [preauth]
How do I fix this problem?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post SSH Authentication refused: bad ownership or modes for file /home/user/.ssh/authorized_keys appeared first on nixCraft.
I am using Alpine Linux v3.18 or v3.19 with my LXD/Incus server. How do I upgrade Alpine Linux v3.19 to Alpine Linux v3.20? How can I upgrade Alpine Linux v3.18 to Alpine Linux v3.20?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to upgrade Alpine Linux 3.19 to 3.20 appeared first on nixCraft.
In Debian and Ubuntu Linux, an "rc" status package means the package has been uninstalled, but its configuration files remain on the disk and take up space. Sometimes, certain directories are also in the /var/ directory. When you type the sudo apt remove pkg1 command, it deletes most of the data, but config files are left alone in case you reinstall that package again. You can free up disk space by removing unwanted config files.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to uninstall packages marked “rc” on Debian / Ubuntu Linux appeared first on nixCraft.
I am a new vim text editor user. I usually load ~/.vimrc using :vs ~/.vimrc for configuration. Once edited my ~/.vimrc file I need to reload it without having to quit Vim session. How do I edit my ~/.vimrc file and reload it without having to restart Vim on Linux or Unix-like system?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to reload .vimrc file without restarting vim on Linux/Unix appeared first on nixCraft.
Sometimes, you may need to temporarily disable IPv6 in the Linux using net.ipv6.conf.all.disable_ipv6 kernel variable for testing purposes. You can use the sysctl command to turn IPv6 connectivity on or off without rebooting the system. For example, observe how your app or network reacts when IPv6 connectivity is suddenly lost and only IPv4 is available.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to temporarily disable IPv6 in Linux appeared first on nixCraft.
How do I capture a specific protocol or port, such as 80 (HTTP) or 443 (HTTPS), using the TCPDump tool under Linux/UNIX? How do I record traffic with TCPDump and find problems later on with my network or server issues? Let's dive into the nitty-gritty of capturing and analyzing your network traffic for trapshooting network and server issues.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post TCPDump: Capture and Record Specific Protocols / Port Traffic appeared first on nixCraft.
A Ubuntu 24.04 LTS comes with UFW (uncomplicated firewall) that protects the desktop or server against unauthorized access. UFW is an easy-to-use frontend app for a Linux packet filtering system called Netfilter or nftables. Traditionally, Netfilter/nftables rules are set up or configured using the iptables command or nft command by developers and sysadmins. However, new Ubuntu Linux users and developers unfamiliar with firewall concepts find Netfilter/nft syntax confusing. Hence, the ufw project provides an easy-to-use frontend for Ubuntu 24.04 LTS Linux server and desktop. This quick guide makes setting up UFW on Ubuntu 24.04 LTS extremely simple. It provides step-by-step instructions for developers and sysadmins to secure their servers efficiently.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to Set Up UFW Firewall on Ubuntu 24.04 LTS in 5 Minutes appeared first on nixCraft.
I have log files created whenever I patch or rebuild Linux containers. They are taking disk space. The logs are helpful if something fails. Otherwise, after a few weeks, those log files have no usage for me. So here is a quick tip on how to use the find command to delete all *.log files created in the last 90 days except for the previous 7 or 10 days. The commands mentioned in these tips are compatible with the Linux, FreeBSD, and macOS versions of the find command.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to use find command to delete all *.log files created in last 90 days except for last 7 days appeared first on nixCraft.
An IP alias on Debian, Ubuntu, or any other Linux distros refers to assigning multiple IP addresses to a single network interface. A single network interface card (NIC) can respond to multiple IP addresses and configurations. IP aliases are commonly used for various purposes, such as network segmentation, virtual hosting, load balancing, VPN, split DNS, network testing, and more. Let us see how to add IPv6 and IPv4 IP addresses to your AWS EC2 or Lightsail instance using the CLI without disturbing the IPv4/IPv6 addresses assigned by the AWS DHCP server. These instructions will also work with all other cloud providers, as most providers use DHCP to give you a public IPv4/IPv6 address.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to add an IP alias to an EC2 instance on Debian/Ubuntu Linux appeared first on nixCraft.
DNSCrypt-proxy is an open-source and free software designed to encrypt DNS traffic, thus protecting it from eavesdropping and manipulation. This is also useful to evade DNS censorship when DNSCrypt-proxy is configured correctly with Wireguard or OpenVPN. Further, DNSCrypt-proxy can configured to block malware, trackers, and internet ads. In Debian 11 and 12, using DNSCrypt-proxy can enhance privacy and security by preventing DNS spoofing attacks, DNS hijacking, and surveillance of DNS traffic. It ensures that DNS queries are encrypted, authenticated, and secure, thereby safeguarding users' browsing activities and sensitive information. Let us see how to install dnscrypt-proxy on Debian Linux 11 and 12.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to install dnscrypt-proxy on Debian Linux 11/12 appeared first on nixCraft.
I am a new macOS Unix user. I am writing a small bash shell script. How do I download file directly from the command-line interface using curl? How can I download file with cURL on a Linux or Unix-like systems?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to download a file with curl on Linux/Unix command line appeared first on nixCraft.

I am a new Linux user. How do I display the process on the Linux based server or desktop/laptop in easy to read tree format using bash shell prompt?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post Linux/Unix: pstree Command Examples: See A Tree Of Processes appeared first on nixCraft.
The Debian Linux 12 backports repository offers updated versions of software packages for Debian Stable releases. These packages are sourced from Testing (and sometimes Unstable) branches of Debian, and then optimized and recompiled to function on the current Stable release, such as Bookworm. Let us see how to install and use Debian Linux 12 "Bookworm" Backports repository.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to enable Debian 12 Backports repository appeared first on nixCraft.
I need to copy or clone file ownership and permissions from another file on Linux. Is there a bash command line option to clone the user, group ownership and permissions on a file from another file on Linux operating system?
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to copy permissions from one file to another on Linux appeared first on nixCraft.
If you are writing a Bash shell script, you should read command-line arguments into an array for some time. This allows us to process any number of arguments provided when the script is run. This makes the script adaptable to different use cases. Instead of dealing with fixed variables like $1, $2, $3, etc., you can work with any number of arguments more dynamically using bash for loop or bash while loop, depending upon your needs. Arrays make it simple to loop through each argument and perform operations on them, whether basic printing or complex processing. Bash provides a mapfile (readarray command) internal built-in command to read lines from a file into an array variable. Let us see how to use mapfile to read all command line arguments into an array.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post A Bash Script to Read All Command Line Arguments into an Array: Simplify Argument Handling appeared first on nixCraft.
CentOS, RHEL (Red Hat Enterprise Linux), Fedora and other clones of RHEL, such as Oracle, Alma, and Rocky, offer support for version pinning. This feature allows developers and system administrators to lock a particular package to a specific version, preventing it from being automatically updated by yum or dnf commands. Sometimes, it is necessary to protect packages from being updated to newer versions to avoid incompatibility issues with your applications. For example, you can lock down PHP version 8.3.6 and avoid using updated PHP version 8.4. Let us see how to lock a package to a specific version, only exclude a package from yum update or dnf update on a CentOS, RHEL, Fedora, and friends.
Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit
The post How to Pin Versions in Yum or Dnf for RHEL or CentOS Linux appeared first on nixCraft.