How to Install Backdrop CMS on Ubuntu 21.04

To Install Backdrop CMS on Ubuntu 21.04

Introduction

CMS means Content management system, a software that is used to manage the digital content. Backdrop CMS is a fork of the Drupal project and it is a fully-featured PHP Content Management System.

Prerequisites:

• Apache Web server

• Maria DB

• PHP and its Modules

Step 1: Check the OS version by using the below command

root@linuxhelp:~# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 21.04
Release:	21.04
Codename:	hirsute

Step 2: Download backdrop CMS by using the below command

root@linuxhelp:~# wget https://github.com/backdrop/backdrop/archive/1.16.2.zip
--2021-11-28 07:08:49--  https://github.com/backdrop/backdrop/archive/1.16.2.zip
Resolving github.com (github.com)... 13.234.210.38
Connecting to github.com (github.com)|13.234.210.38|:443... connected.


HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/backdrop/backdrop/zip/1.16.2 [following]
--2021-11-28 07:08:49--  https://codeload.github.com/backdrop/backdrop/zip/1.16.2
Resolving codeload.github.com (codeload.github.com)... 13.233.43.20
Connecting to codeload.github.com (codeload.github.com)|13.233.43.20|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/zip]
Saving to: ‘1.16.2.zip’

1.16.2.zip                         [       <=>                                        ]   9.33M  7.67MB/s    in 1.2s    

2021-11-28 07:08:51 (7.67 MB/s) - ‘1.16.2.zip’ saved [9778715]

Step 3: Extract the downloaded file in backdrop directory by using the below command

root@linuxhelp:~# unzip 1.16.2.zip 
Archive:  1.16.2.zip
50fd5d6b79a4c82a42cd203688d4ffe05a062fd4
   creating: backdrop-1.16.2/
  inflating: backdrop-1.16.2/.editorconfig  
  inflating: backdrop-1.16.2/.gitignore  
  inflating: backdrop-1.16.2/.htaccess  
  inflating: backdrop-1.16.2/README.md  
   creating: backdrop-1.16.2/core/
  inflating: backdrop-1.16.2/core/.jshintignore  
  inflating: backdrop-1.16.2/core/.jshintrc  
  inflating: backdrop-1.16.2/core/LICENSE.txt  
  inflating: backdrop-1.16.2/files/README.md  
  inflating: backdrop-1.16.2/index.php  
  creating: backdrop-1.16.2/layouts/
 inflating: backdrop-1.16.2/layouts/README.md  
  creating: backdrop-1.16.2/modules/
  inflating: backdrop-1.16.2/modules/README.md  
  inflating: backdrop-1.16.2/robots.txt  
  inflating: backdrop-1.16.2/settings.php  
   creating: backdrop-1.16.2/sites/
  inflating: backdrop-1.16.2/sites/README.md  
  inflating: backdrop-1.16.2/sites/sites.php  
   creating: backdrop-1.16.2/themes/
  inflating: backdrop-1.16.2/themes/README.md  

Step 4: Move the Extracted files to the Apache home directory by using the below command

root@linuxhelp:~# mv backdrop-1.16.2/ /var/www/backdrop

Step 5: Ownership to the backdrop directory by using the below command

root@linuxhelp:~# chown -R www-data. /var/www/backdrop

Step 6: Change Permission to the backdrop directory by using the below command

root@linuxhelp:~# chmod -R 775 /var/www/backdrop/

Step 7: Create Virtual Host for the backdrop CMS by using the below command

root@linuxhelp:~# vi /etc/apache2/sites-available/backdrop.conf

<virtualhost *:80>
servername www.linuxhelp1.com
documentroot /var/www/ backdrop
<Directory /var/www/ backdrop >
AllowOverride All
allow from all 
</Directory>
</virtualhost>

Step 8: Log in to the Maria DB by using the below command

root@linuxhelp:~# mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 30
Server version: 10.5.12-MariaDB-0ubuntu0.21.04.1 Ubuntu 21.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

Step 9: Create database for backdrop CMS by using the below command

MariaDB [(none)]> create database backdb;
Query OK, 1 row affected (0.001 sec)

Step 10: Select the backdrop database by using the below command

MariaDB [(none)]> use backdb;
Database changed

Step 11: Create a user named “buser” by using the below command

MariaDB [backdb]> create user buser@localhost identified by 'linuxc';
Query OK, 0 rows affected (0.005 sec)

Step 12: Grant all privileges on backdrop database for the user “buser” by using the below command

MariaDB [backdb]> grant all on backdb.* to buser@localhost;
Query OK, 0 rows affected (0.001 sec)

Step 13: Flush privileges to make changes effect by using the below command

MariaDB [backdb]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

Step 14: Exit from the Maria DB by using the below command

MariaDB [backdb]> exit
Bye

Step 15: Disable the default Virtual Host file of apache by using the below command

root@linuxhelp:~# a2dissite 000-default.conf
Site 000-default disabled.
To activate the new configuration, you need to run:
systemctl reload apache2

Step 16: Enable the Virtual Host by using the below command

root@linuxhelp:~# a2ensite backdrop.conf
Enabling site backdrop.
To activate the new configuration, you need to run:
systemctl reload apache2

Step 17: Enable the read write module of apache by using the below command

root@linuxhelp:~# a2enmod rewrite
Enabling module rewrite.
To activate the new configuration, you need to run:
systemctl restart apache2

Step 18: Restart the apache webserver by using the below command

root@linuxhelp:~# systemctl restart apache2

Step 19: Make host entry for backdrop CMS by using the below command

root@linuxhelp:~# vi /etc/hosts

Step 20: Ping server name in browser as shown in the below image

Step 21: Configure the Database credentials as shown in the below image

Step 22: Configure the Admin credentials as shown in the below image

Step 23: This is the Dashboard of backdrop CMS

By this, the process of installation of Backdrop CMS on Ubuntu 21.04 has come to an end.

FAQ
Q
Is Backdrop is same as Drupal CMS?
A
Backdrop CMS is a fork of Drupal CMS.
Q
What plugin allows to display of image layout in Backdrop CMS?
A
Masonry Gallery is a Views style plugin that allows displaying image layout in Backdrop CMS.
Q
Difference between restart and reload services?
A
Reload will tell the service to reload its configuration files with keeping the process running.
Restart tells it to shut down entirely, then restart.
Q
How to log in to the Maria DB?
A
To login into the Maria DB use command "mysql -u -p".
Q
From what Backdrop CMS is written?
A
Backdrop CMS is written in PHP.