Showing posts with label Arch. Show all posts
Showing posts with label Arch. Show all posts

Tuesday, April 13, 2021

How to get started with the Linux terminal

The terminal may seem scary for new Linux users. However, it's one of the tools that has the biggest potential on your Linux journey. Learn why
The Linux terminal on Ubuntu

On a previous post we discussed the benefits of using the Linux terminal. Today, let's review how to get started with Bash, the most common shell in GNU/Linux operating systems.

The history of Bash

But before we get hands-on, let's learn more a little about Bash. Bash is a Unix shell and command language written by Brian Fox for the GNU Project as a free software replacement for the Bourne shell (which is located in your system under /usr/bin/sh and is still widely used, especially in containers).

First released in 1989, it has been used as the default login shell for most Linux distributions including the most popular distributions such as UbuntuFedora, Arch, Debian and even on the Raspberry Pi.

But bash is way beyond a simple place to enter commands. It's a powerful command processor where commands can be entered. Bash can also read and execute commands from a file, called a shell script. Like other shells, it supports filename globbing (wildcard matching), piping, command substitution, variables, and control structures for condition-testing and loops.

To finish our introduction, the name Bash is an acronym for Bourne Again Shell, a pun on the name of the Bourne shell that it replaces (and extends).

Why learn Bash

Due to its popularity, power and ubiquity, we strongly recommend that you learn it if you want to be comfortable in Linux and computers in general. Many skills you'll learn in your bash/OSS-journey will definitely carry over to Macs, Windows and well into your professional life.

Bash on Windows

Today, Bash can also be found on Windows via the Windows Subsystem for Linux (WSL for short). We will review how to get started on WSL real soon. Keep tuned!

Starting the Terminal

To start the terminal on Ubuntu (or any GNOME-based distro), simply type terminal on the Activities tab. KDE and Xfce users should also have equivalent terminal apps in their systems.

On Ubuntu, type terminal to open your first terminal

Clicking on the terminal icon should open a new terminal for you:

Your bash terminal on Linux

You can confirm that it's running bash by running the following command:

echo $SHELL
/bin/bash

Entering Commands

Entering commands in your terminal is straightforward, just type them. For example, here are some basic ones:

  • pwd - lists the current directory
  • ls - lists the files in the current directory
  • cd - change the current folder
  • cat - prints the contents of a file
  • cp - copies a file
  • mv - moves a file
  • rm - removes a file
  • mkdir - creates a new directory
Some simple commands on the terminal
The above list may seem a lot for a new user. Don't stress, with time you'll learn these tools and soon they'll be part of your muscle memory

Manual Page

Linux also has an interesting utility called man that is used for reading the manuals (documentation) of the programs, tools and libraries available on your system. To view Bash's manual, type:

man bash

To go the extra mile, we also recommend checking this related manual page:

man bash-builtins

Follow up video

To finish, we would like to point you to an online resource that will teach you Bash better than we could. Feel free to watch it at your own pace to get familiar with it. For the record, we have absolutely no affiliation we the video below, we just want you to learn Bash and Linux 😊

Conclusion

On this article we learned a little more about the Linux terminal and Bash. Bash is a fantastic tool that any Linux user should learn. We hope it helps!

See Also

Monday, March 22, 2021

Installing Manjaro on a Virtual Machine

If you're looking for a good, lightweight and solid Linux distribution, check Manjaro.
Manjaro's beautiful Xfce desktop

Before switching to Linux permanently, it's recommended to test it first on a virtual machine so that you can feel the experience before making permanent changes on your system. On this tutorial, we will continue revisiting the best lightweight distributions of 2021 and learn how to install Manjaro on VirtualBox in Windows 10.

Please note that this process should be pretty similar to accomplish in either VirtualBox or VMWare Workstation player.

About Manjaro

Manjaro is a free and open-source Linux distribution based on the venerable and community-based Arch Linux operating system. Manjaro has a focus on user friendliness and accessibility, and the system itself is designed to work fully "straight out of the box" with its variety of pre-installed software. It features a rolling release update model and uses Pacman as its package manager.

There are three official editions: GNOME, KDE and XFCE, being the latter the most lightweight and the one we'll review in this article.

Downloading Manjaro Xfce

Head to Manjaro download page an grab the ISO by clicking on Get Xfce 20.2.1 (or later). For this tutorial we'll use Manjaro Xfce 20.2.1 which's the a version supported until April 2023. The file should be around 2.8 Gb in size so go grab a coffee while it downloads.

An ISO is simply an image of the installer containing all the files needed to boot and install that distribution in your system.

Installing Manjaro

With the ISO downloaded, let's start the process. Open VirtualBox:

VirtualBox's main screen

Click New, enter the name of the VM, set Type = Linux and Version = Ubuntu (64-bit) and specify its save location:

Choose the memory size (4Gb or more is recommended):

Create a Virtual Hard Disk:

As Hard disk file type, Choose VDI (VirtualBox's default format):

Set it to Dynamically Allocated (slower) if you don't have much disk space or Fixed Size (faster) if you do:

Specify file location and size (recommended: 20GB), click Review > Create:

After clicking Create, you should see a summary of your new VM:


Booting the VM

Okay, so it's now time to boot (load) our VM so we can install it in the virtual hard drive. On the screen above click on Start to have your VM initialized. We'll first need to attach our ISO as if it were a virtual CD-ROM. Click Add and select your downloaded ISO from your Downloads folder and click Create to set it:

Installing Manjaro

Once your VM boots, you will be prompted with beautiful boot this menu. Click on Boot with open source drivers to start the installer:


As soon as the boot finishes, you will see this beautiful menu. Click on Launch Installer:

The Installation will start. Choose your language:


Next choose your location:

Next, choose your keyboard:


Select Bios, boot loader, encryption and partitioning:

Create users and set root password:

Choose an office suite (or none):

Review and if all looks good, click Install to proceed with the installation:

The installation starts:


Once it completes, it will ask to restart your system:

First Login

With the installation done, let's login the first time. Enter your password as specified during the installation on the login screen:

Default Desktop

After login, you should see Manjaro's beautiful Xfce desktop:

Next Steps

There you are! Feel free to have fun with your new Ubuntu VM! We will cover some more interesting topics in the future but we recommend that you play with it in the meanwhile.

Conclusion

On this tutorial we learned how to install Manjaro in a VirtualBox virtual machine (VM). Installing Linux on a VM is the first step you need to explore Linux in its multiple variations. The next step is obviously, replacing your Windows or Mac. But take your time!

See Also

Monday, March 1, 2021

The best lightweight Linux distributions of 2021

Looking for a lightweight Linux distribution to install on that old PC? Check our top picks for 2021
Photo by Naman Porwal on Unsplash

On a previous post we discussed the best Linux distributions for new users in 2021. While those distributions are fantastic, they demand moderately powerful hardware and a decent amount of storage. Today, let's discuss the best lightweight Linux distributions in 2021.

What's a lightweight Linux distribution?

As you probably expect, a lightweight Linux distribution is a distribution that does not require super-recent hardware and, as much as possible is friendly on storage and energy consumption.

What should you expect from these distributions

All of the presented distributions were chosen not only because they're stable and secure but because they're easy-to-use, powerful (with no compromises) and require modest hardware requirements. As a bonus, running on single board computers and IoT would be a plus.

So let's get started and review what are the best most recommended lightweight Linux distributions in 2021.

Ubuntu MATE

Ubuntu MATE is a lightweight and simplified Linux distribution based on Ubuntu. It's stable, easy-to-use and comes with the lightweight (and familiar) MATE desktop environment. It is ideal for those who want the most out of their computers and prefer a traditional. Another advantage is that it requires modest hardware requirements, running on modern workstations, to single board computers and IoT. Ubuntu MATE makes modern computers fast and old computers awesome again 😊.

Ubuntu MATE's default desktop

elementary OS

We ❤ elementary OS and pretty much anyone in the community. elementary (lowercase e please) was select as one of our best distros in 2021 an still shows up in this list. It's installation is super quick and its Pantheon desktop environment certainly offers a very polished experience while still being lightweight! Being also based on Ubuntu makes it a solid choice for your old PC.

       
The beautiful elementary OS desktop

Solus

Solus is another of the fast and lightweight Linux distros that we love. Built by community by passionate developers, the Solus OS is a beautiful, lightweight, innovative and rolling-release operating system that everyone should try at least once. Sure, it's not backed up by the likes of Canonical, Ubuntu's parent company but is built on strong (and innovative) technologies. Definitely worth trying out.

Source: Solus Project 

Fedora XFCE

Fedora XFCE is another of our favorite lightweight distros of 2021. Built by the an awesome of independent and (RH)-dependent Fedora developers, Fedora XFCE is definitely a distro for those working (or willing to) in the Enterprise Linux space since it shares roots with RHEL (Red Hat Enterprise Linux) and many of its forks (including CentOS, Rocky Linux and AlmaLinux). And as happens with every Fedora spin, you'll get as vanilla as possible from XFCE's original experience

Source: Fedora Project

Manjaro XFCE

If  you're looking for a little more action than why not try Manjaro XFCE? Running the XFCE desktop environment, the same desktop environment as the Fedora spin listed in this article, Manjaro is based on the venerable Arch Linux but presents a less steep learning curve and counts with a thriving and ever-growing community. Manjaro XFCE presents a very polished and fast experience that would suit well to new and experienced Linux users on modern and old hardware.

Manjaro's beautiful XFCE desktop environment

Conclusion

On this article we presented the lightweight Linux distributions in 2021. Lightweight Linux distros usually run super-well on old PCs or Macs guaranteeing you some good years of use still. Another idea would be spinning them up in less resourceful virtual machines so you can practice your Linux skills. More on that later.

See Also

Monday, October 26, 2020

What is a Linux Distribution (aka. Distro)?

New Linux users often encounter the expression "Distribution" (or distro). Learn what that means.
Photo by Derek Oyen on Unsplash

When getting started with Linux you'll often hear the term distribution (aka distro). But what does it means and how a Linux distro is made? First off, let's review how Wikipedia defines it:

A Linux distribution is an operating system made from a software collection that is based upon the Linux kernel and, often, a package management system. Linux users usually obtain their operating system by downloading one of the Linux distributions, which are available for a wide variety of systems ranging from embedded devices and personal computers to powerful supercomputers.

What's included in a Linux distribution

A Linux distribution (or distro) is composed of thousands of software packages which are usually built by the community or by the company maintaining that distribution, packaged and assembled in a live-CD (or iso) so it can be deployed somewhere (usually VMs or bare-metals).
 
Today, most distros (desktop or server) are composed of:
  • an installer: the tool you'll use to install the distro.
  • a boot loader: the tool that will initialize your system via its kernel.
  • the Linux kernel: the kernel is software that's responsible for interacting with and managing your hardware resources.
  • kernel modules: also known as drivers.  for common hardware: 
  • an init system: also known as PID 1, it's the first (and only) program executed by the kernel when loading your system. Today, systemd is the most widely used init system.
  • a daemon service: a service to manage background processes. systemd can also be used to be managed daemons (services).
  • a package management system: tooling to manage software (add/remove/search/etc). The most common package managers are Apt (Ubuntu/Debian/Mint), Yum/DNF (Fedora, CentOS, RHEL, SUSE) and pacman (Arch/Manjaro) are the most popular
  • general tools: general tools to interact with your system (ex. ls to list files, mkdir to create directories, ps to list the running processes, etc)
  • libraries: libraries (software extensions) that can be used and shared by multiple programs
  • documentation: software in Linux usually comes with its own documentation that can be consulted without access to the internet.
  • development tools (optional): depending on the vendor, development tools can be pre-installed with the system.
  • a graphical user interface (optional): if you're running a desktop install, most likely your system will be running GNOME or KDE. Servers frequently run GUI-less to reduce their attack surface.

Sustainability Model

It obviously requires money, time a lots of resources to built everything and to guarantee that everything will work on the users and companies' machines. So how do the distributions sustain themselves?

There are essentially three sustainability models for distributions today.

Community-based distributions

Community-based distributions are entities that survive off of donations and often require help from volunteers. The most popular ones these days are:

Commercially-sponsored distributions

Commercially-sponsored distributions are those distributions that receive grants from commercial companies to support the development and maintenance of those systems. Note that there's nothing wrong with this category since most of the distributions tend to run completely independently from their commercial institution. The most popular distributions today are:

Commercial/Enterprise distributions

The last category is the commercial/enterprise Linux distributions. Those are distributions that require a financial commitment from the user or organization that plans to use them. The advantage is bulletproof software and usually a dedicated support to help troubleshooting production issues. The most popular today are:

    Conclusion

    On this post we reviewed what's usually called a Linux distribution, also know as a distro. We also reviewed which components are included in a distribution and the most popular options on the market today. Is your favorite distribution on that list? Let us know!

    See Also

    Monday, October 12, 2020

    Why is Linux free?

    Linux is secure, fast, reliable and.. free? If that seems too good to be true you need to know more about Linux.
    Photo by Fabian Blank on Unsplash

    On previous posts, we discussed why use Linux and one of our most compelling arguments to use Linux is that Linux is free. But since Linux is so secure, fast, reliable, how can it be free? Let's understand what that means and how it happens.

    A little history

    Avoiding jumping too much back in history, it's important to understand the contribution model in which Linux was built. Once upon a time, there was a developer named Linus Torvalds who wanted to build a kernel to run a free Unix clone at home. He named the project Linux (Linux + Unix) and sent a message to the world looking for volunteers.

    That project attracted so much attention that soon, hundreds of other developers joined that cause forming a big network of contributors. Linux, the kernel was the missing piece to produce a completely free operating system as most of the tools were already built on the GNU operating system.

    The first distributions

    With all the pieces to build a free and open-source operating system available, developers started creating the first Linux distributions. Some of them you may have heard of: Debian, Red Hat and Slackware, the most popular ones.

    What about now?

    The fact that Linux runs everywhere and that thousands of successful products are built on top of it, is the biggest motivator to use it. It's estimated that today the Linux kernel be worth $5 billion dollars. Given its licensing model, companies building new products today (for example, Tesla, Google or even Microsoft) can leverage Linux and more quickly reach the market saving them literally millions of dollars.

    Today, Linux's development is supervised by Linus and sponsored by the Linux Foundation which employs Linus, Greg Kroah-Hartman (and others) to coordinate and foster the development of Linux around the world.

    But this model does not only apply to Linux itself. The GNU project and thousands of other larger and smaller projects are being developed every single day by anonymous contributors worldwide following the same methodology.

    But why is Linux is free?

    Because the Linux kernel, the GNU operating system and all other tools needed to create a free operating system are available as open-source software respecting the premises of the free-software movement fostered by the GNU foundation, it's guaranteed that, as long as there are volunteers to build the distributions, you'll have a free/open-source operating system to run wherever you want.

    And this is exactly what happens.

    Linux Distributions

    Today we have two different lines of Linux distributions being built and available for free: community-based distributions and enterprise-sponsored distributions. Let's review them.

    Community-based distributions

    Community-based distributions are Linux systems built by volunteers and living of donations. The most popular these days are:

    Commercially-sponsored distributions

    For brevity, let's define as commercially-sponsored, those distributions that receive grants from commercial companies to support the development and maintenance of those systems. Note that there's nothing wrong with this category since most of the distributions run completely independently from their commercial institution. The most popular are:

    But one could charge for it, couldn't they?

    The short answer is a definitely yes! And indeed some companies charge for it one way or another. And how do they make money? Well, read the next section to understand.

    How companies make money with Linux

    Differently from this blog, Linux is not all about charity. There's lots of money being made on it today. Essentially, companies can use Linux in virtually any line of business. Just to illustrate some:

    • support
    • training
    • certification
    • licenses
    • building products around it
    • cloud services
    • storage solutions
    • networking solutions
    • ads
    • social networks
    • cars
    • TVs
    • Watches
    • and more, much more! 😊

    Conclusion

    On this post we reviewed briefly how Linux was created and how it's license model guarantees that it will remain free for future generations. We also touched briefly on how companies leverage Linux to get faster to the market and to make money. Regardless of who builds your favorite distro, all of us benefit from this massive chain of anonymous contributions.

    Hope it helps!

    See Also

    Wednesday, September 9, 2020

    Hello World

    Hello world, hello from Linux4Us.
    Photo by Ian Parker on Unsplash

    Writing a simple Hello World program is the traditional way to learn a new programming language. It consists essentially in writing as little code as possible to print the "Hello World" sentence on the screen. In its simplicity lies its beauty: teaching a new programmer how to get the minimum in place to start interacting with the computer.

    Because this is a website, we'll skip the traditional C-based hello world program this time and use JavaScript, the programming language of the web. A typical hello world written in JavaScript is as simple as:

    console.log("Hello World")

    As strange as a hello world for a new website may seem, the core principle is the same: show (well, tell in our case) to the world that we're here, alive and ready for the challenge of teaching Linux for an even wider audience!

    About this site

    Our team has been discussing for some time how to approach building yet another website about Linux. Since we finally managed to gather the necessary resources (ant time!) to build this website and have lots of ideas for awesome and compelling posts, we decided to go forward and build yet another website about Linux (yawal). Yay!

    Why YAWAL?

    But why YAWAL (yet another website about Linux)? Despite growth, we think Linux could and should reach even wider audiences. Due to its open nature, diversity, inclusiveness, security, cost and affordability, we want it to be accessible from everyone's digital device.

    Plus, we love Linux so much so why not!? 😊

    Who are us?

    Our team is a community of dedicated open-source volunteers who use, write about and ❤ Linux. We plan to cover the most diverse topics ranging from very simple tutorials to as complex as it may be necessary to teach users how to use, learn and build awesome tools on/with Linux.

    What are we planning for this site?

    As previously stated, we're planning to share, foster, teach and reach as many people as possible. We'd like to help Linux (and its derivative operating systems such as Ubuntu, Fedora, Arch Linux, Mint, Manjaro, Elementary OS, etc), its ecosystem and related communities to reach even newer audiences.

    How will we achieve this?

    First, let's be honest: we don't can't know if we'll ever achieve this! Our success will be directly related to how much engagement we get from the public. The good news is that we don't have any grand ambitions. And since we love contributing to Linux, open-source and education in general, we believe there are big reasons to try!

    Our Commitment to Open-Source

    We also want to make public our commitment to open-source: we will donate half of our profits to serious open source communities around the world to help and support the growth of Linux. Read more on the about us page to learn more.

    How can you help

    Interested in helping? Check the how anyone can help. We'll resort from the help of the community (sharing posts, giving feedback, sponsorship this site, etc) so we can grow and reach even wider audiences.

    Final Thoughts

    Thanks for reading thus far! We'll do our best to foster, divulge and teach about Linux because we love it as much as you do and we want it to be available to everyone out that who has a digital device in their hands.

    All the best,
    The Linux4us team

    Featured Article

    Free Software, Open-Source, Libre, FOSS and FLOSS: what are the differences?

    Are these just different names for the same thing? Or there are differences? Photo by Romain Vignes on Unsplash We have been discussing...

    Popular this Week