Today, we are going to learn about how to install and setup Sentrifugo HRMS on Ubuntu 18.04. Sentrifugo HRMS is a free and open-source human resource management system (HRMS) software that allows easy management of human resource process in small to mid-sized business across a variety of industries. It offers a number of adaptable features to meet the needs of both managers and employees including;
- It comes bundled with appraisal modules that enables managers to access the performance of their employees.
- Enables employees to access and manage individual information
- Helps in making hiring decisions through its comprehensive job candidate background checks.
- Provides leave management option for a department or an entire business unit.
Sentrifugo has got a handful of features which you can read more about here.
Installing Sentrifugo HRMS on Ubuntu 18.04
Pre-requisite
As a pre-requisite, Sentrifugo requires a LEMP/LAMP Stack. Therefore, before you can proceed with this guide, ensure that LEMP Stack in installed, at least in this guide since we are going to run Sentrifugo with Nginx web server.
Regarding PHP, ensure that the MySQL PDO as well as the GD libraries are installed. You can verify this as shown below;
php7.2 -m | egrep 'pdo_|gd' gd pdo_mysql
If the modules listed above are not available, install them as shown below;
sudo apt install php7.2-{mysql,gd}
Create a Database for Sentrifugo HRMS
Create a database that can be used to store Sentrifugo application data.
sudo mysql -u root -p
create database sentrifugo;
After that, you need to create a database user account for exclusively management of Sentrifugo. Be sure to grant this user all privileges on the Sentrifugo database;
grant all privileges on sentrifugo.* to hradmin@localhost identified by "PASSWORD";
Flush the database privileges to reload the database grant tables and exit the database;
flush privileges; quit
Download Sentrifugo application
Once your server has met the above per-requisites, go ahead and download the Sentrifugo application from Sentrifugo download page to your web root directory.
sudo wget http://www.sentrifugo.com/home/downloadfile?file_name=Sentrifugo.zip -O /tmp/sentrifugo.zip
After downloading it, unzip it to your web root directory as shown below.
unzip /tmp/sentrifugo.zip -d /var/www/html/
This will extract Sentrifugo application to Sentrifugo_3.2. Move this directory to sentrifugo and set the proper permissions for the application.
sudo mv /var/www/html/Sentrifugo_3.2/ /var/www/html/sentrifugo
sudo chown -R www-data.www-data /var/www/html/sentrifugo sudo chmod -R 755 /var/www/html/sentrifugo
Configure Nginx
After you have installed Sentrifugo and set the proper permissions, create Nginx server block for Sentrifugo application as shown below;
sudo vim /etc/nginx/sites-available/sentrifugo
# Server block configuration # server { listen 80; # # Define the web root directory; root /var/www/html/sentrifugo; # Add index.php to the list index index.php index.html index.htm; server_name hr.example.com; # Add nginx Rewrite Rules for Sentrifugo location / { try_files $uri $uri/ /index.php?$args; } # pass PHP scripts to FastCGI server location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Enable Sentrifugo server block and restart Nginx
sudo ln -s /etc/nginx/sites-available/sentrifugo /etc/nginx/sites-enabled/
Before you can restart Nginx, verify that the configuration has no syntax errors;
sudo nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
If all is well, go ahead and restart Nginx
sudo systemctl restart nginx
Configure PHP FPM to set the correct timezone. Edit the file /etc/php/7.2/fpm/php.ini
such that your configuration looks like;
[Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone ;date.timezone = date.timezone = Africa/Nairobi
Configure Sentrifugo HRMS
Once you are done with the configuration above, it is time to configure Sentrifugo. Most of the next configurations will be done from the web interface. Therefore, navigate to the browser and enter the IP/hostname address of your server in order to access Sentrifugo.
Since all the per-requisites are met, click Next to configure Sentrifugo database. Be sure to enter the database connection details set above.
Click Confirm to proceed and then confirm that you want to proceed.
Next, you need to configure Sentrifugo Applications settings and an email ID for authenticating to Mail Server.
Configure Mail Server settings.
Configuration final checks.
Click finish to finalize on the configurations. This will take you to a page where you are given the link to access the application and the login credentials.
The Sentrifugo has been successfully installed. If you login to your email account, you will see an email confirming the successful installation. Now, click on the link to access the Sentrifugo web login user interface.
Login with the credentials shown on the Finish configuration page. Once you login for the first time, you are welcomed by Sentrifugo default dashboard as shown below;
The default dashboard introduces you to a configuration wizard where you can enable modules essential to your human resource processes, configure the standards used in your organization, provide your organization information, configure business unit and departments and configure service request settings used in your organization.
Well, feel free to configure this amazing HRMS tool as it best suits you. We hope this was informative. Enjoy your resource management.