UP | HOME
Torresmo

Torresmo

Manjaro Installation Guide: From Bootable USB to System Persistence
Published on Oct 02, 2025 by math-almeida.

I created this comprehensive guide to help friends and newcomers to dive into amazing world of Arch Linux. We’ll walk througth every step of installing and configuring Manjaro.

Why Choose Manjaro Linux?

Before we dive into the installation process, let’s understand what makes Manjaro special. Unlike traditional Linux distributions that release major versions every few years, Manjaro follows a rolling release model. This means you get the latest software updates continuously without ever needing to reinstall your entire system.

Phase 1: The bootable drive

The journey begins with creating a bootable USB drive. This process transforms a regular USB stick into a portable installer that can boot your computer into Manjaro’s live environment.

What You’ll Need

  • A USB drive with at least 8GB of storage.
  • The Manjaro ISO file from manjaro.org
  • A USB creation tool appropriate for your current operating system

On Windows

For Windows I like to use Rufus a lightweight application to create bootable USB devices.

On Linux

We can use dd command to flash our drive

# First, identify your USB device
lsblk

# Then write the ISO (replace /dev/sdX with your actual device)
sudo dd if=/path/to/manjaro.iso of=/dev/sdX bs=4M status=progress oflag=sync

Note: The dd command is irreversible, so double-check your device identifier to avoid problems :D

Phase 2: The BIOS/UEFI Settings

In order to install Manjaro we need to disable secure boot and change boot prority.

  1. Access BIOS/UEFI: Restart your computer and press the appropriate key during startup. Common keys include F12, F2, Del or Esc
  2. Navigate to boot settings: Look for sections named “Boot” or “Boot priority”
  3. Disable secure boot: This Microsoft security feature often prevents Linux installations :(
  4. Set boot priority: Move your USB drive to the top of boot order
  5. Save and exit: Apply the changes and restart

Phase 3: Booting into Manjaro live environment

With all this things configured we can enter in a Manjaro live environment wich is a fully functional desktop environment where you can test hardware compatibility before installing.

Just insert the USB drive and select it from boot menu. After this you need to choose your boot option in Manjaro GRUB and that’s all, just wait for live environment!

Phase 4: The Installation

For installing Manjaro permanently in your computer you just need to launch the installer, there’s an icon on desktop for this. The installer application features a clean, intuitive interface that guides you into installation process.

Enjoy your Linux!

That’s it, you installed a Arch based distro in your computer, just restart and remove USB drive when prompted and wild GRUB appears. Just login and enjoy.

Now I will describe how to do certain things and optional configurations for enhance the divine experience of having a linux.

Updating

pacman is Manjaro’s package manager and unlike Ubuntu’s apt it uses a different syntax

# Install a package
pacman -S <pkg>

# Remove a package
pacman -R <pkg>

# Update the system (yes, no more auto updates who breaks UX)
pacman -Syu

I like to enable AUR (Arch User Repository) using yay.

sudo pacman -S yay 

Optional function to update and clean your system

I like to create functions to help in simple things :)

function update() {
  if command -v yay &> /dev/null; then
      echo "Updating system with yay."
      yay -Syu --noconfirm
      sudo pacman --noconfirm -Rns $(pacman -Qdtq) 2> /dev/null
  else
      echo "Updating system with pacman."
      sudo pacman -Syu --noconfirm
      sudo pacman --noconfirm -Rns $(pacman -Qdtq) 2> /dev/null
  fi
}

Optional explain function

I created this function to help newcomers understand commands and tools on linux. It is based in a public API and doesn’t replaces the need of consulting man or other sources, is just a helper to explain arguments and tools

function explain() {
    if [ "$#" -lt 1 ]; then
        echo -e "\nUsage: explain COMMAND [ARGS]" >&2
        echo -e "Example: explain tar -xzvf\n" >&2
        return 1
    fi

    local query="$(printf "%s " "$@" | sed 's/ $//')"
    local encoded_query="$(echo -n "$query" | sed -e 's/ /%20/g' -e 's/\"/%22/g' -e "s/'/%27/g")"

    local response=$(curl -s "https://explainshell.com/explain?cmd=$encoded_query")

    if [[ -z "$response" ]]; then
        echo "Error: Could not retrieve explanation." >&2
        return 1
    fi
    set -o pipefail && echo -e "$(echo "$response" | awk '
  BEGIN {print ""}
  /<pre class="help-box" id="help-0">/ {print substr($0, index($0, ">")+1, index($0, "</")-index($0, ">")-1); print "____________________________________________________"}
  /<pre class="help-box" id="help-[1-9]">/ {gsub(/<\/?[^>]+>/, ""); sub(/^[ \t]+/, ""); print $0; print "____________________________________________________"}
  END {print ""}
')\n"
}

To use you can just type the command you want explanation.

explain tar -xvf 

And the response is:

The GNU version of the tar archiving utility
____________________________________________________
-x, --extract, --get
____________________________________________________
-v, --verbose
____________________________________________________
-f, --file ARCHIVE
____________________________________________________