An easy-to-follow guide for newbies and advanced users to learn Manjaro Linux for everyday tasks with practical examples
Key Features
• Explore Manjaro, from installation to using all its available applications
• Learn how to easily protect your privacy online, manage your system, and handle backups
• Master key Linux concepts such as file systems, sharing, systemd, and journalctl
Book Description
Manjaro Linux, renowned for its smooth installation, user-friendly interface, and robust security features, is an Arch-based fast Linux distro enhanced with multiple graphical environments, GUI modules, and a full application setup, resulting in a top Linux distribution. This book is your guide to unlocking its full potential.
Starting with an overview of the different editions and detailed installation instructions, the initial section offers insights into the GUI modules and features of each official edition. You’ll then explore the regular software, work with the Terminal, and cover topics such as package management, filesystems, automounts, storage, backups, and encryption. The subsequent chapters will help you get to grips with data sharing, security and networking, firewalls, VPNs, and SSH in depth. Finally, you’ll become well-versed in service and user management, troubleshooting, scripting, automation, and kernel switching.
The book’s modular structure allows you to quickly navigate to the specific information you need, and by its end, you’ll have gained an appreciation of what sets Manjaro Linux apart.
What you will learn
• Gain insights into the full set of Manjaro capabilities
• Install Manjaro and easily customize it using a graphical user interface
• Explore all types of supported software, including office and gaming applications
• Learn basic and advanced Terminal usage with examples
• Understand package management, filesystems, network and the Internet
• Enhance your security with Firewall setup, VPN, SSH, and encryption
• Explore systemd management, journalctl, logs, and user management
• Get to grips with scripting, automation, kernel basics, and switching
Who this book is for
While this book is primarily a reference guide for intermediate and advanced users who want to explore Linux via Manjaro’s top-notch distribution, it’s also a perfect guide for Linux enthusiasts and newbies in search of a stable and secure OS with plenty of flexibility. Whether you’re a student, new to Linux, or looking to migrate from Windows/macOS, this book will help you navigate easily. Prior Linux experience will help but is not required to get started with this book.
About the Author
Atanas G. Rusev is a senior software engineer with a master's degree in Embedded Electronics and vast experience in multiple device projects for the last 17 years. He has been a Linux user for over 13 years and the founder of an Embedded Linux startup company. After trying many distributions, he has been a dedicated Manjaro fan for the last five years. He enjoys writing articles and professionally has written thousands of pages of technical documentation. None of the topics presented in the book can be found covered online in one location; instead, those are spread in thousands of articles, manuals, and posts. As he believes Manjaro is great, writing a full reference guide for beginners and advanced users was his personal mission.
Author(s): Atanas Georgiev Rusev
Edition: 1
Publisher: Packt Publishing
Year: 2023
Language: English
Commentary: Publisher's PDF
Pages: 498
City: Birmingham, UK
Tags: Linux; Command Line; Unix; Filesystems; System Administration; Linux Kernel; Logging; Network Security; Encryption; Troubleshooting; Networking; SSH; Automation; VPN; Storage Management; Firewalls; User Management; Shell Scripting; Package Management; Backups; Operating Systems; File Sharing
Cover
Title Page
Copyright and Credits
Contributors
Table of Contents
Preface
Part 1: Installation, Editions, and Help
Chapter 1: Introduction to Manjaro and Linux
Book structure and contents
Versions
A polite request
Arch Linux and how Manjaro is related to it
What about Linux, Windows, macOS, and Unix/FreeBSD?
Linux
Windows
macOS
Unix/FreeBSD
A brief Linux history and what a distribution actually is
Key points for each major distribution
Summary
Chapter 2: Editions Overview and Installation
Editions overview
Xfce
The Plasma desktop
The GNOME desktop
Environments for ARM-based micro-computers
Preparing for any installation
Choosing the right image
The Calamares installer
Automatic HW recognition
Installing on a USB stick
How to choose the right tool
BIOS/UEFI setup for installation on a PC
How to understand whether your computer is BIOS/EFI or UEFI-based
What needs to be done for (U)EFI setup
What needs to be done for a pure BIOS system
What needs to be done for a (U)EFI system to boot in BIOS mode
The installation itself
Pure installation
GParted and partition management
Manual installation for EFI-based computers (for advanced users)
Manual installation for BIOS-based computers (for advanced users)
Installation on a virtual machine
Installation in parallel with Windows (also known as Dual Boot)
Installation on ARM platforms
Summary
Chapter 3: Editions and Flavors
A few important steps after installation
Xfce edition and settings
Xfce desktop and bottom panel bar right-click settings
Xfce application launcher and settings
KDE Plasma edition and settings
KDE Plasma desktop right-click menu
KDE Plasma application launcher
The KDE Plasma System Settings area
KDE Plasma general keyboard shortcuts
GNOME edition and settings
The other editions – Cinnamon, Lxde, Mate, and so on
Summary
Chapter 4: Help, Online Resources, Forums, and Updates
Help
Troubleshooting
Online resources
The news
The forum – the greatest collection of knowledge
Notices
Introduce Yourself
Non-technical Questions
Support
ARM
Announcements
Manjaro Development
Contributions
Languages
Feedback
The Rolling Release Development Model
Updates
Summary
Part 2: Daily Usage
Chapter 5: Officially Supported Software – Part 1
Pamac – the Add/Remove SW GUI application
The Flatpak, Snap, and AppImage containers
For advanced users
AUR
The Manjaro repositories
Office tools, calendars, and mail clients
Mail clients with calendars
Office
Browsers
Test results
Photo, video, image, and graphics
Photo/images
Graphics
Summary
Chapter 6: Officially Supported Software Part 2, 3D Games, and Windows SW
Music and audio
Classic audio players
Streaming players
Audio editors and DAWs
Music servers
Teams, Zoom, Viber, Spotify, WhatsApp, Signal, and Telegram
A note regarding Signal, Telegram, and WhatsApp
Text editors
Lightweight/simple editors
Sophisticated editors
IDEs
Terminal editors
Recommendations
Drivers, tools, and simple games
Drivers on Manjaro Linux
NVIDIA, open source, and other hardware drivers
Screenshot tools
Virtual machines
Education and Science
For video and/or audio conversion
Others
Simple Games
Advanced 2D/3D game support on Linux
Game controller support and further points
For advanced users
Creating application shortcuts, and converting .deb and .rpm packages
Converting .deb and .rpm packages
How to use Windows software on Linux
Short history recap
The Linux tools for Windows software
Summary
Chapter 7: All Basic Terminal Commands – Easy and with Examples
The most important commands for newbies
What are Shell, BASH, and Zsh?
What is a Terminal?
For beginners
A bit of advanced (and still easy) commands
Installing a missing command (application)
grep and more piping
touch, rm, mv, cp, reboot, and shutdown
nano, vi, and vim
find
Advanced find – execute a command for each result
Getting system information
Getting HW information
Piping and redirection
Investigating and killing running processes
Executing an application in the foreground and background
Getting advanced help directly in the Terminal
man
info
Summary
Part 3: Intermediate Topics for Daily Usage
Chapter 8: Package Management, Dependencies, Environment Variables, and Licenses
Dependencies
Pacman, pamac, Octopi, and package management
Pacman
pamac
Octopi
Environment variables and current context
Licenses
Summary
Chapter 9: Filesystem Basics, Structure, and Types, NTFS, Automount, and RAID
Linux filesystems basics
Linux/Unix file types
Drives and partitions
Inodes and links
Standard and extended attributes
Linux-supported FS types
Ext4 and a bit of history
XFS and ZFS
btrfs
Other FSs used rarely
Journaling, CoW, B-tree, and checksums
Healing and self-healing
Linux directory structure
External storage, NTFS, and automount
External storage
NTFS
Auto and manual mount
FS snapshots and RAID
Snapshots
RAID
Summary
Chapter 10: Storage, Mounting, Encryption, and Backups
Storage management, partitions, and mounting
Storage
Creating a new partition
Mounting
Shrinking/resizing root or home partitions to free space
Partition creation and encryption via a terminal
LUKS
Backups, tools, rsync, and recovery
What is a backup?
Deciding what to back up
Backing up SW, rsync, and recovery
Summary
Chapter 11: Network Fundamentals, File Sharing, and SSH
Network basics
IPv4 address
IPv6 address
Hostname
DNS and WWW
Local network configuration basics
Pinging a computer in our local network
Router
Static and dynamic IPs
Local and public IP
Scanning the network
Subnet mask of a network
Short network sharing introduction
A bit of NFS history and characteristics
Enabling time synchronization for NFS
Sharing on the server side
Essential commands for NFS status
Getting access to a shared directory on the client side
Synchronization on the client side
Mounting permanently on the client side based on a static IP
Automating all the commands
Accessing NFS shared data by server name
Accessing data via an encrypted connection
Windows clients
macOS clients
Sharing via Samba Server
Sharing directories by ourselves via Terminal and all configurations
Secure Shell (SSH) and working remotely
Enabling SSH on the server side
Connecting from another Linux machine locally
Connecting remotely from the internet
Connecting remotely from the internet through a VPN
Connecting from a Windows machine
Sharing via SSHFS
Summary
Chapter 12: Internet, Network Security, Firewalls, and VPNs
How the internet works, network protocols, and ports
TCP/IP and OSI network models
All types of network protocols and the ports for them
UDP versus TCP and others
A few other essential protocols
The Linux basic network modules and a port-scan tool
Attacks, security advice, and firewalls
When is a Linux distribution in danger?
When is a Windows machine in danger?
What about macOS?
Common types of attacks
Main advanced attacks that a firewall will not defend you from
General good advice against all regular attacks
Firewall types
Setting up your firewall from A to Z
ufw and firewall-cmd
Configuring ufw
Configuring firewalld
VPNs
The benefits for a single home user
For a business use case
Countries in which using a VPN is illegal
What are the potential drawbacks of using a VPN connection?
Measuring VPN connection quality
Is it possible to hack a VPN connection or a PC connected to it?
Considerations when choosing your VPN provider
Installing Surfshark and working with it
Installing ExpressVPN and working with it
What happens with my local IP address reports?
Setting up your own VPN connection
Summary
Part 4: Advanced Topics
Chapter 13: Service Management, System Logs, and User Management
Processes, daemons, and systemd
Processes
Daemons on Linux
systemd introduction and a bit of history
systemd configurations, units, and targets
Analyzing systemd’s init sequence
The most important systemctl command options
Linux virtual TTY consoles
journalctl and system logs
Inspecting logs with journalctl
journald.conf
Kernel ring buffer messages and dmesg
Other log systems and the KSystemLog GUI tool
User management, groups, ownership, and root privileges
Users and passwords
Groups
Changing file or directory mode, ownership, and group
Root user
Summary
Chapter 14: System Cleanup, Troubleshooting, Defragmentation, and Reinstallation
Cleaning unnecessary files, pacman, and caches
Where do unnecessary files come from?
When do we have a problem?
How to analyze space usage
What can we do on Manjaro?
Defragmentation – do we need it at all and how to do it
How to analyze the fragmentation and perform defragmentation
inxi, troubleshooting, and mhwd
How to ask for help with inxi data
A troubleshooting example for wireless not working on a new laptop
The mhwd tool
mhwd for graphics cards
A troubleshooting point on Secure Boot and monitors
Reinstalling and keeping your home partition
Summary
Chapter 15: Shell Scripts and Automation
The basics of BASH shell scripts
What a shell script is and how to run it
A simple script example and its contents
Considerations and limitations for script commands, comments, and syntax
Variables, arguments, and arithmetic calculations
Writing multiple commands on one line
Decision-making, file testing, arithmetic, and logical operators
Command substitution
Other constructs and where to learn more
Time-based execution of programs and scripts
Executing periodic tasks with cronie
Executing periodic tasks with systemd
Configuring systemd timer triggers related to system initialization via monotonic timers
Summary
Chapter 16: Linux Kernel Basics and Switching
Basic Linux kernel characteristics
Memory types
Kernel space, isolation, and user space
Architecture
The CPU, preemption, task scheduler, and CPU operations per second
The kernel from service, driver, and process perspectives
System Calls
Kernel modules and drivers
User space drivers
Kernel releases and development
Upgrading/changing the kernel release on Manjaro
Changing the kernel via terminal
Loading and unloading kernel modules
What is the Linux RT kernel?
Summary
Index
Other Books You May Enjoy