Installing SHOUTCast Radio Server (Online Media Streaming) on Linux

SHOUTcast is a proprietary software used to stream media over Internet, especially used in music live streaming by the radio stations in Internet, and is developed by Nullsoft with versions for all major platforms, including Linux.

Install Shoutcast in CentOS

Install Shoutcast in Linux

This tutorial will guide you on how you can install The SHOUTcast Distributed Network Audio Server (DNAS 2.0) in CentOS 7, with the help of which you can use media players, like Winamp or Mixxx to connect to streaming server and broadcast your audio playlists to Internet listeners.

Requirements

  1. CentOS 7 Installation Guide

Although this tutorial only covers SHOUTcast server installation on a CentOS 7 machine, the same procedure can be applied on other Linux distributions such as RHELFedoraUbuntuDebianLinux Mint, etc. with the remark that you must adapt firewall commands to suit your Linux distribution.

Step 1: Download and Install SHOUTcast Server

1. Before proceeding with the installation of SHOUTcast server, create a local user from which you will run the server, because running the DNAS server
from root account can impose serious security issues to your system.

So, login on your system with root account, create a new user, called radio, after you’re done logout from root account and, then, login with your newly created user. Here are the following required commands that needs to be executed on the terminal.

# su -
# adduser radio
# passwd radio
# exit
# su - radio
$ pwd 

Add New User in Linux

Add New User radio

2. Once logged in on your system with the radio account, create two directories named download and server, then switch to download folder.

$ mkdir download
$ mkdir server
# cd download

3. Next, grab the last version of SHOUTcast server archive for Linux, depending on your system architecture, by visiting official Nullsot Download page at.

  1. http://download.nullsoft.com/shoutcast/tools

Alternatively, use following wget utility to download the archive from command line.

----------- For 32-bit -----------

$ wget http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux_09_09_2014.tar.gz
----------- For 64-bit -----------

$ wget http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux_x64_09_09_2014.tar.gz

Download Shoutcast Server

Download Shoutcast Server

4. After the download completes, extract the sc_serv2_linux_architecture_date.tar.gz archive, list the directory to locate sc_serv executable binary file and copy it to installation directory, located in server folder, then move to SHOUTcast installation path, by issuing the following commands.

$ tar xfz sc_serv2_linux_x64_09_09_2014.tar.gz
$ ls
$ cp  sc_serv  ../server/
$ cd  ../server/
$ ls

Extract Shoutcast Archive

Extract Shoutcast Archive

5. Now that you are located in server installation path, create two directories named control and logs and you’re done with the actual installation process. List your directory content to verify if everything is in place.

$ mkdir control
$ mkdir logs
$ ls

Confirm Shoutcast Files

Confirm Shoutcast Files

Step 2: Create SHOUTcast Configuration File

6. In order to run and operate the server you need to create a configuration file for SHOUTcast. Open your favorite text editor and create a new file, named sc_serv.conf.

Make sure that this file is created in the same path as your sc_serv e executable binary files are created. Using pwd command should show you this absolute path – /home/radio/server).

$ nano sc_serv.conf

Add the following statements to sc_serv.conf file (example configuration).

adminpassword=password
password=password1
requirestreamconfigs=1
streamadminpassword_1=password2
streamid_1=1
streampassword_1=password3
streampath_1=http://radio-server.lan:8000
logfile=logs/sc_serv.log
w3clog=logs/sc_w3c.log
banfile=control/sc_serv.ban
ripfile=control/sc_serv.rip

Configure Shoutcast Server

Configure Shoutcast Server

Some important settings that you should be aware on this file are password statements, which you must be changed accordingly:

  1. adminpassword – Admin password required to perform remote administration via the web interface to the server.
  2. streampassword_1 – Password required by remote media player to connect and stream media content to server.

Alternatively, if you want to create a configuration file for SHOUTcast server you can go to download directory and run builder.sh or setup.sh scripts, which will let you configure the server from a web interface that can be accessed from the following address.

http://localhost:8000
OR
http://ipaddress:8000

Once the configuration is created you can copy it to server installation directory.

7. To start the server execute sc_serv file from your current working directory, which must be the serverdirectory, put it on background with & bash operator and direct your browser to http://localhost:8000 URL. Also use netstat command to see if the server is running and on what port numbers it listens.

$ chmod +x sc_serv
$ ./sc_serv &
$ netstat -tulpn | grep sc_serv

Start Shoutcast Server

Start Shoutcast Server

Confirm Shoutcast Running

Confirm Shoutcast Running

Step 3: Open Firewall Connections

8. Now SHOUTcast server is up and running but it can’t be accessed yet from outside world due to CentOS Firewall restrictions. To open the server to external connections login with root account and add the rule that will open port 8000 TCP.

After the rule has been added reload the Firewall to apply changes and logout from your root account.

$ su -
# firewall-cmd --add-port=8000/tcp --permanent
# firewall-cmd --reload
# exit

Open Shoutcast Port

Open Shoutcast Port

9. Then open a browser from a remote machine and type your server IP Address on port 8000 on URL filed – http://192.168.1.80:8000 – and the SHOUTcast web interface should appear like in the screenshot below, with no live streams available.

Shoutcast Web Interface

Shoutcast Web Interface

Step 4: Manage SHOUTcast Server and Create Daemon script

10. The command used to manage SHOUTcast radio server is the binary file itself, which must be run from its installation path location in order to be
able to read configuration file. To run the server as a daemon use daemon command option.

You can also instruct the server to read its configurations from a different location by indicating where the configuration file resides, but be advised
that using this option requires the creation of logs and control directories, which can be confusing in practice and can lead to server inability to start.

$ pwd  ## Assure that you are in the right installation directory - /home/radio/server

$ ./sc_serv   ## Start the server in foreground – Hit Ctrl + c to stop

$ ./sc_serv daemon  ## Start the server as a daemon

$ Ps aux | grep sc_serv   ## Get Server PID

$ killall sc_serv  ## Stop server daemon

Shoutcast Start Script

Shoutcast Start Script

11. If you need a simplified command to start or stop SHOUTcast radio server, login as root again and create the following executable script on /usr/local/bin/ path as in the example below.

$ su -
# nano /usr/local/bin/radio

Now add the following excerpt to radio file.

#!/bin/bash
case $1 in
                start)
cd /home/radio/server/
./sc_serv &
              ;;
                stop)
killall sc_serv
                ;;
               start_daemon)
cd /home/radio/server/
./sc_serv daemon
               ;;
                *)
echo "Usage radio start|stop"
                ;;
esac

Shoutcast Binary Start Script

Shoutcast Binary Start Script

12. After the file was created, make it executable, exit root account and a new command shout be available for your SHOUTcast radio server management.

# chmod +x /usr/local/bin/radio
# exit

13. To manage the server from now on, use radio command with the following switches.

$ radio start_daemon		## Starts SHOUTcast server as a daemon

$ radio start                   ## Starts SHOUTcast server in foreground

$ radio stop                    ## Stops SHOUTcast server

Start Stop Shoutcast

Start Stop Shoutcast

14. If you want to automatically start the server after reboot, but only on user login (in this case the server was installed on the local user named radio) issue the following command from radio account home path, then logout and login again to verify the functionality, as presented in the screenshot below.

$ whoami  
$ echo “radio start_daemon” >> ~/.bashrc

Start Shoutcast at Reboot

Start Shoutcast at Reboot

That’s it! Now, SHOUTcast server is ready to receive sound or playlists from remote media players such as Winamp from Windows and Mixxx from Linux and broadcast all of the received audio content over Internet.

http://www.shoutcast.com/

Source

I-Nex – An Advanced Tool to Collect System/Hardware Information in Linux

It’s very daunting task to extract complete hardware information available on your system. I came across of this tool and found to be the best to get system information like CPU-Z in windows. We TecMint team would like to thank you I-Nex team for wonderful tool wherein we can collect information without typing complex commands at the command line.

Read Also10 Commands to Collect Linux System and Hardware Information

There are total 10 Tabs to gather system components details viz. CPU, GPU, Mobo, Audio, Drives, System, Kernel, Memory, Network and USB Input and hostname as well.

Besides that we can also generate advanced report and take screen print of each tab. I-Nex tool displays the details in organized manner and also present real time CPU and Memory utilization.

I-Nex Features

  1. CPU Info
  2. GPU Info
  3. Motherboard details
  4. Memory details
  5. Kernel version details
  6. Linux OS distro info
  7. Report generate
  8. It has option to take screenshot of each tab from application itself.
  9. System hostname

Installation of I-Nex in Ubuntu Derivatives

We need to add Gambas3 PPA to install I-Nex in Ubuntu. “Gambas” is a recursive acronym for “Gambas Almost Means Basic“. Use the below commands to add both PPAs and install I-Nex in Ubuntu derivatives.

$ sudo add-apt-repository ppa:i-nex-development-team/stable
$ sudo add-apt-repository ppa:nemh/gambas3
$ sudo apt-get update
$ sudo apt-get install i-nex

Some of I-Nex Screenshots.

Start I-Nex

Start I-Nex

Starting I-Nex Tool

CPU Information

Get Linux CPU Information

CPU Information

Linux OS Information

Linux System OS Information

Linux System OS Information

Kernel Information

Linux Kernel Information

Linux Kernel Information

Memory Information

Linux Memory Information

Linux Memory Information

Generate report

Custom Generate Report

Custom Report Selection

Taking Screenshot

Install I-Nex in Linux

I-Next Screenshot

Remove I-Nex from Ubuntu Derivatives

If in-case, you not liked the tool and want to remove it completely from the system, issue following commands.

$ sudo add-apt-repository --remove ppa:i-nex-development-team/stable
$ sudo add-apt-repository --remove ppa:nemh/gambas3
$ sudo apt-get update
$ sudo apt-get purge i-nex

Conclusion

There may be bundle of applications (CPU-GHardinfo etc.) available to collect system component details but on my personal opinion i liked I-Nex tool interesting because of simplicity, efficiency and easy-to-use interface.

Reference Links

Homepage I-Nex

Please share your views with us on below comment box if you are using any other such application.

Source

Setup Your Own “Speedtest Mini Server” to Test Internet Bandwidth Speed

Overwhelmed with the response we got on the previous article on how to test the bandwidth speed using command line tool speedtest-cli.py, this tutorial aims at providing you with the knowledge of setting your own speedtest mini server in 10 minutes.

  1. Check Your Internet Speed from Command Line Using ‘Speedtest-CLI’ Tool

Speedtest.net mini is a speed testing application which is used for hosting speed test server (Mini) on your own site/server. Another application from NetGuage serves the same purpose which primarily is designed for Corporate sites.

Speedtest.net Mini is available for free and it’s compatible with all major web servers. It measure ping by sending HTTP request to selected server and measures the time till it get response. For checking upload and download speed, it uploads and downloads small binary files from web server to client and vice-versa for upload.

Note: Speedtest Mini server may not be used for commercial use, nor on any commercial sites.

Install Speedtest Mini Server on Linux

Download speedtest Mini Server from the link below. You need to Login before you can download. If you don’t have an account, register first.

  1. http://www.speedtest.net/mini.php

Once downloaded mini.zip file, you need to unzip the archive file.

# Unzip mini.zip

Now you need to determine on which server you want to host the application. You can choose any of the following as your hosting server – PHP, ASP, ASP.NET and JSP. Here we will be using PHP and Apache as Server to host.

Let’s install Apache, PHP and all needed PHP modules using the following commands.

On Debian/Ubuntu/Mint
# apt-get install apache2
# apt-get install php5 php5-mysql php5-mcrypt php5-gd libapache2-mod-php5
On RedHat/CentOS/Fedora
# yum install httpd
# yum install php php-mysql php-pdo php-gd php-mbstring

After installing Apache and PHP with all required modules, restart the Apache service as shown below.

# service apache2 restart		[On Debian/Ubuntu/Mint]
# service httpd restart			[On RedHat/CentOS/Fedora]
# systemct1 restart httpd		[On RHEL/CentOS 7.x and Fedora 21]

Next, create a phpinfo.php file under Apache default directory, that we will use to check if PHP is rendering correctly or not.

# echo "<?php phpinfo(); ?>" > /var/www/phpinfo.php         [On Debian/Ubuntu/Mint]
# echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php [On RedHat/CentOS/Fedora]

Note: The default Apache root directory may be /var/www/ or /var/www/html/, please check the path before moving forward…

Now we will be uploading the extracted folder mini to the Apache default directory location.

# cp -R /[location to extracted folder]/mini /var/www/       [On Debian/Ubuntu/Mint]
# cp -R /[location to extracted folder]/mini /var/www/html   [On RedHat/CentOS/Fedora]

We need to rename a file hence Long list the contents of directory that was uploaded to the Apache directory /var/www/ or /var/www/html.

# ls -l /var/www/mini

OR

# ls -l /var/www/html/mini

Contents of Mini Server

Contents of Mini Server

Now rename index-php.html to index.html only and leave other files untouched.

# cd /var/www/
OR
# cd /var/www/html/

# mv mini/index-php.html mini/index.html

Rename Index File

Rename Index File

Note: If you’re using any other platform as your host, you need to rename respective file as shown below.

  1. Rename index-aspx.html to index.html, if you are using ASP.NET as your host.
  2. Rename index-jsp.html to index.html, if you are using JSP as your host.
  3. Rename index-asp.html to index.html, if you are using ASP as your host.
  4. Rename index-php.html to index.html, if you are using PHP as your host.

Now point your web browser to your local server IP address, which typically in my case is:

http://192.168.0.4/mini

Speedtest Mini Server Testing

Speedtest Mini Server Testing

Click Begin test and it start testing the speed Locally.

Test Internet Speed Locally

Test Internet Speed Locally

Now If you want to run the mini server over internet you need to forward your port in the firewall as well as in the router. You may like to refer to the below article to get a brief of how-to on the above topic.

  1. Create Your Own Web Server to Host Website

If everything goes fine you can check your bandwidth speed using mini server. But if the mini server and machine to be tested are on the same network you might need a proxy server like (kproxy.com), to test.

Test Internet Speed on Same Network

Test Internet Speed on Same Network

Also you can check the speed of Internet connection on headless server or Linux command Line using speedtest-cli tool.

# speedtest_cli.py --mini http://127.0.0.1/mini

Check Internet Speed Using Speetest-Cli

Check Internet Speed Using Speetest-Cli

Note: If you are on different network, you are supposed to use public ip address in web browser as well as command-line.

Furthermore, SYSAdmins can schedule the speedtest to run periodically in production, after setting up mini server.

Conclusion

The setup is too easy and took me less than 10 minutes of time. You may setup your own speedtest server to check the connection speed of your own production server, it is fun.

That’s all for Now. I’ll be coming up with another interesting article very soon. Till then stay tuned and connected to Tecmint. Don’t forget to provide us with your valuable feedback in the comments below. Like and share us and help us get spread.

Source

Install SuiteCRM (Customer Relationship Management) in Linux

CRM (Customer Relationship Management) refers to assortment of practices, policies and technologies that companies use to handle and review interaction with current and potential customers; with the major aim of boosting business relationships with customers, customer retention and driving sales growth.

SuiteCRM is a free and open source, fully-featured and highly-extensible CRM system that runs on any operating system with PHP installed. It is a fork of the well known open source SugarCRM Community Edition.

Do try out SuiteCRM Demo using credentials below to sign in:

Username: will 
Password: will

SuiteCRM Features:

  • Cross-platform: runs on Linux, Windows, Mac OSX and any system that runs PHP.
  • Efficient, powerful, and flexible workflow module.
  • Supports automation of repetitive tasks.
  • Supports quick and easy modeling of sales pipeline.
  • Enables creation of beautifully templated Quotations.
  • Allows managing of pricing strategies.
  • Supports customer self-service via an easy to setup and use website.
  • Instant notification of customer issues plus so much more.

Requirements:

  • Debian/Ubuntu or CentOS system installed with LAMP Stack.
  • PHP (JSON, XML Parsing, MB Strings, ZIP Handling, IMAP, cURL) modules.
  • ZLIB Compression library.
  • Sprite support.

In this article, we will explain how to install and configure SuiteCRM in CentOS/RHEL 7 and Debian/Ubuntu based systems.

Step 1: Installing LAMP Stack Environment

1. First update the system software packages to the latest version.

$ sudo apt update        [On Debian/Ubuntu]
$ sudo yum update        [On CentOS/RHEL] 

2. Once software packages updated, now you can install LAMP (Linux, Apache, MySQL & PHP) stack with all the required PHP modules as shown.

-------------- On Debian/Ubuntu -------------- 
$ sudo apt install apache2 apache2-utils libapache2-mod-php php php-common php-curl php-xml php-json php-mysql php-mbstring php-zip php-imap libpcre3 libpcre3-dev zlib1g zlib1g-dev mariadb-server

-------------- On CentOS/RHEL/Fedora -------------- 
# yum install httpd php php-common php-curl php-xml php-json php-mysql php-mbstring php-zip php-imap pcre pcre-devel zlib-devel mariadb-server

3. Once LAMP stack has been installed, start the Apache and MariaDB service and enable it to start automatically at system boot.

-------------- On Debian/Ubuntu -------------- 
$ sudo systemctl start apache mysql
$ sudo systemctl enable apache mariadb

-------------- On CentOS/RHEL/Fedora -------------- 
# systemctl start httpd mysql
# systemctl enable httpd mariadb

4. Now secure and harden database server installation by running the script below.

$ sudo mysql_secure_installation
OR
# mysql_secure_installation

After running the security script above, you will be asked to enter the root password, simply press [Enter]without providing it:

Enter current password for root (enter for none):

Again, you will also be asked to answer the questions below, simply type y to all the questions to set a root password, remove anonymous users, turn off remote root login, remove the test database and reload privilege tables:

Set root password? [Y/n] y Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y

5. Now you need to configure PHP to allow files of at least 6MB to be uploaded. Open your PHP configuration file (/etc/php.ini or /etc/php5/apache2/php.ini) with your choice of editor, search for the upload_max_filesize and set it like so.

upload_max_filesize = 6M

Save the file and close it, then restart the HTTP server.

$ sudo systemctl restart apache   [On Debian/Ubuntu]
# systemctl restart httpd         [On CentOS/RHEL]   

Step 2: Create SuiteCRM Database

6. In this step, you can create a database which will store data for suiteCRM. Run the command below to access the MariaDB shell (remember to use your own values for the database name, user and password).

$ mysql -u root -p
MariaDB [(none)]> CREATE DATABASE suitecrm_db;
MariaDB [(none)]> CREATE USER 'crmadmin'@'localhost' IDENTIFIED BY 'crmsys@dmin$12';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON suitecrm_db.* TO 'crmadmin'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit;

Step 3: Install and Setup SuiteCRM

7. First install Git to fetch and clone the latest version of SuiteCRM from its Github repository under Apache root directory (/var/www/html/) with appropriate permissions on the SuiteCRM folder.

$ sudo apt -y install git      [On Debian/Ubuntu]
$ sudo yum -y install git      [On CentOS/RHEL]

$ cd /var/www/html
$ git clone https://github.com/salesagility/SuiteCRM.git
$ sudo mv SuiteCRM suitecrm
$ sudo chown -R www-data:www-data suitecrm   [On Debian/Ubuntu]
$ sudo chown -R apache:apache suitecrm       [On CentOS/RHEL]
$ sudo chmod -R 755 suitecrm
$ ls -ld suitecrm

8. Now open your web browser and type the URL below to access the SuiteCRM web installer wizard.

http://SERVER_IP/suitecrm/install.php
OR
http://localhost/suitecrm/install.php

You will see the welcome page, which includes the SuiteCRM License Agreement. Read the license and check “I Accept”, and set the installation language. Click Next to continue.

SuiteCRM Web Installer

SuiteCRM Web Installer

9. You will see the pre-installation requirements page below. If everything is fine as shown in the screenshot below, click Next to proceed.

SuiteCRM System Environment Check

SuiteCRM System Environment Check

11. Next, provide the SuiteCRM database settings (database name, host, username and password).

SuiteCRM Database Settings

SuiteCRM Database Settings

In the same page, enter the site configurations (site name, admin username, password and email address).

You can as well configure more options:

  • Demo data (choose yes if you want to populate site with demo data).
  • Scenario selection – such as sales, marketing etc.
  • SMTP server specification – choose your Email provider, SMTP server, port, user authentication details.
  • Branding details – Organization name and logo.
  • System locale settings – date format, time format, timezone, currency, currency symbol and ISO 4217 Currency Code.
  • Site security settings.

Once you are done, click Next to start the actual installation process where the installer will create database tables and default settings.

SuiteCRM Site Configuration

SuiteCRM Site Configuration

12. Once the installation is complete, you are ready to login. Provide the admin username and password, then click on “Log In”.

SuiteCRM Login Interface

SuiteCRM Login Interface

SuiteCRM Dashboard

SuiteCRM Dashboard

SuiteCRM Homepage: https://suitecrm.com/

Enjoy! For any queries or thoughts that you want to share, please hit us up via the comment section below.

Source

Install NVIDIA Drivers in RHEL/CentOS/Fedora and Debian/Ubuntu/Linux Mint

During an interview, in Finland Linus Torvalds the man behind the exceptional idea of Linux and git source code management, gave his ‘Middle Finger Salute‘ to NVIDIA in frustration with the support provided by the company for the Linux platform.

Torvalds is depressed with the fact that NVIDIA is not supporting Linux, enough. It gets even more worse with the truth that NVIDIA is getting hot with every passing day in Android based mobile handset market which literally means that NVIDIA is not supporting Linux.

Install NVIDIA Drivers in Linux

Install NVIDIA Drivers in Linux

The outburst of anger and frustration was the result of the question asked by a Linux user. The question was ‘Optimus‘ feature of NVIDIA which lets the user to switch On/Off Graphics Processing Unit (GPU) to save power came late for Linux, as compared to other Operating Systems. NVIDIA was very much clear when asked about this, and clearly stated that NVIDIA is not going to support Linux to the point, Windows and Mac would get.

This issue of NVIDIA is not new and the users have been complaining for years regarding this. The Advanced Micro Devices (AMD) has tried to fill this with its own open source driver. NVIDIA refused to release Open Source driver saying that it can not make critical informations publicly available.

On the other hand, the act of Linus Torvalds of showing middle finger on camera was criticized, some said that it does not suit an intellectual like him, other said it was not professional at all, while some said that even Torvalds is a human and it was just an outburst.

Most of the today’s distro comes with an open source NVIDIA alternative called ‘Nouveau‘. Nouveau render graphics perfectly, however it lacks 3D support. Hence to Install Proprietary NVIDIA driver. Nouveau must be stopped from starting automatically, which we will be calling as blacklisting throughout the article.

Installation of NVIDIA Drivers in RHEL/CentOS and Fedora

First, install needed “Development” packages using YUM command as shown.

# yum groupinstall "Development Tools"
# yum install kernel-devel kernel-headers dkms

Before installing NVIDIA drivers, you need to know your driver product type by using following command.

# lspci -nn | grep VGA
Sample Output
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108GL [Quadro 600] [10de:0df8] (rev a1)

Once you know your driver name, then go to NVIDIA official website and download required drivers for your system. Download drivers using following link.

  1. http://www.nvidia.com/Download/index.aspx
Disable Nouveau Driver

open “/etc/modprobe.d/blacklist.conf” in your favourite editor and add “blacklist nouveau”, ofcourse without double-quotes.

blacklist nouveau

Next create a new “initramfs” file and taking backup of existing.

# mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak  
# dracut -v /boot/initramfs-$(uname -r).img $(uname -r)

Reboot the machine. Login into command mode using Alt+F4 / ALT+F5 as root.

# reboot

Once you in command line mode, next go to the folder where you’ve downloaded NVIDIA driver and run the script as show. If any dependency, you need to Yum the required packages.

./NVIDIA-Linux*.run

Once installation is complete, generate xorg.conf file using following command.

# X -configure

Copy xorg.conf.new as /etc/X11/xorg.conf.

# cp /root/xorg.conf.new /etc/X11/xorg.conf

Now switch to X Window as root user by typing.

# init 5

Launch NVIDIA configuration window and set the Resolution, manually, and at last click on ‘Save to X Configuration File‘ and quit. For reference, follow the screen shot added below.

Installation of NVIDIA Drivers Debian/Ubuntu/Linux Mint

First, check the information about your supported Graphics Card by issuing following command.

# lspci -nn | grep VGA
Sample Output
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108GL [Quadro 600] [10de:0df8] (rev a1)

Next add a repository under “/etc/apt/sources.list” file at the bottom. Save and close it.

deb http://ftp.debian.org/debian/ wheezy main contrib non-free
Disable Nouveau Driver

Open “/etc/modprobe.d/blacklist.conf” file and add the following line. Save and close the file.

blacklist nouveau

Next, do a system update and then install NVIDIA drivers and required Kernel packages using “apt-get” command.

# apt-get update
# apt-get install nvidia-kernel-dkms nvidia-glx nvidia-xconfig nvidia-settings 
# apt-get install nvidia-vdpau-driver vdpau-va-driver

Stop the X service (gdm3).

# service gdm3 stop

Generate new xorg.conf file using following command.

# X -configure

Copy xorg.conf.new as /etc/X11/xorg.conf.

# cp /root/xorg.conf.new /etc/X11/xorg.conf

Now switch to X Window as root user by typing.

# startx

Open NVIDIA configuration wizard and set the Resolution, manually, and at last click on ‘Save to X Configuration File‘ and quit.

Install NVIDIA Driver in Linux

NVIDIA Driver Settings

Congrats! Your installation and configuration of NVIDIA Graphics Driver is complete.

That’s all for now, If you gets stuck at a place during installation and could not fix it yourself, you can always ask for guidance in comment section. Do a favor for us by sharing the article.

Source

How to Install Skype 8.13 on Debian, Ubuntu and Linux Mint

Skype is a most popular software application developed by Microsoft that is largely used for Instant Messagingand for Audio and Video calls and Video conferencing call. Among these features, Skype can also be used for screen sharing, file sharing and text and voice messaging.

In this article we will cover the process of installing the most recent version of Skype (8.13) in DebianUbuntuand Linux Mint distributions.

Read AlsoHow to Install Skype 8.13 on CentOS, RHEL and Fedora

Update: The official Skype is now available to install from snap store on Ubuntu and other Linux distributions, including Linux Mint, which is maintained and updated by Skype themselves.

$ sudo apt install snapd
$ sudo snap install skype --classic

Source

How to Create Own Online Learning Management System Using Moodle in Linux

Moodle is a free, feature rich, open source learning management system (LMS). The platform is used by many online school and universities as well as private educators.

Create Own Learning Management System in Linux

Create Own Learning Management System Using Moodle in Linux

Moodle is extremely customizable and it is meant to meet the requirements of wide range of users including teachers, students or administrators.

Moodle Features

Some of the most noticeable features that Moodle has are:

  • Modern and easy to use interface
  • Personalized dashboard
  • Collaborative tools
  • All-in-one calendar
  • Easy file management
  • Simple text editor
  • Notifications
  • Progress tracking
  • Customizable site design/layout
  • Multiple supported languages
  • Bulk course creation
  • Quizzes
  • User roles
  • Plugins for additional functionalities
  • Multimedia integration

Of course the above are just small part of the features that Moodle has. if you want to see the complete list, you can check the Moodle docs.

Requirements

The latest stable Moodle version (3.0) was released just recently on November 16 2015. The release has the following requirements:

  • Apache or Nginx
  • MySQL/MariaDB version 5.5.31
  • PHP 5.5 and its extensions

In this tutorial, I will show you how to install Moodle LMS (Learning Management System) on RedHat based systems such as CentOS/Fedora and Debian its derivatives using LAMP or LEMP (Linux, Apache/Nginx, MySQL/MariaDB and PHP) stack with subdomain moodle.tecmint.com and IP address 192.168.0.3.

Important: The commands will be executed with root user or sudo privileges, so make sure that you have full access to your system.

Step 1: Installing LAMP or LEMP Environment

LAMP/LEMP is a stack of open source software designed to build and host websites. It uses Apache/Nginx as web server, MariaDB/MySQL for relational database management system and PHP as object oriented programming language.

You can use following one single command to install LAMP or LEMP stack in your respective Linux operating systems as shown:

Installing LAMP Stack

# yum install httpd php mariadb-server       [On RedHat/CentOS based systems] 
# dnf install httpd php mariadb-server            [On Fedora 22+ versions]
# apt-get install apache2 php5 mariadb-server     [On Debian/Ubuntu based systems]

Installing LEMP Stack

# yum install nginx php php-fpm mariadb-server            [On RedHat/CentOS based systems] 
# dnf install nginx php php-fpm mariadb-server            [On Fedora 22+ versions]
# apt-get install nginx php5 php5-fpm mariadb-server      [On Debian/Ubuntu based systems]

Step 2: Installing PHP Extensions and Libraries

Next, you need to install following recommended PHP extensions and libraries to run Moodle error free.

--------------------- On RedHat/CentOS based systems ---------------------
# yum install php-iconv php-mbstring php-curl php-opcache php-xmlrpc php-mysql php-openssl php-tokenizer php-soap php-ctype php-zip php-gd php-simplexml php-spl php-pcre php-dom php-xml php-intl php-json php-ldap wget unzip
--------------------- On On Fedora 22+ versions ---------------------
# dnf install php-iconv php-mbstring php-curl php-opcache php-xmlrpc php-mysql php-openssl php-tokenizer php-soap php-ctype php-zip php-gd php-simplexml php-spl php-pcre php-dom php-xml php-intl php-json php-ldap wget unzip
--------------------- On Debian/Ubuntu based systems ---------------------
# apt-get install graphviz aspell php5-pspell php5-curl php5-gd php5-intl php5-mysql php5-xmlrpc php5-ldap

Step 3: Configure PHP Settings

Now open and modify PHP settings in your php.ini or .htaccess (Only if you don’t have access to php.ini) file as shown below.

Important: If you’re using PHP older than 5.5, then some of the following PHP settings removed and you will won’t find in your php.ini file.

register_globals = Off
safe_mode = Off
memory_limit = 128M
session.save_handler = files
magic_quotes_gpc = Off
magic_quotes_runtime = Off
file_uploads = On
session.auto_start = 0
session.bug_compat_warn = Off
post_max_size = 50M
upload_max_filesize = 50M

On Nginx web server, you need to enable following variable in php.ini file as well.

cgi.fix_pathinfo=1

After making above changes, restart the web server as shown:

On Apache Web Server

--------------------- On SysVinit based systems ---------------------
# service httpd restart			[On RedHat/CentOS based systems]    
# service apache2 restart		[On Debian/Ubuntu based systems]
--------------------- On Systemd based systems ---------------------
# systemctl restart httpd.service	[On RedHat/CentOS based systems]    
# systemctl restart apache2.service 	[On Debian/Ubuntu based systems]

On Nginx Web Server

--------------------- On SysVinit based systems ---------------------
# service nginx restart		
# service php-fpm restart	
--------------------- On Systemd based systems ---------------------
# systemctl restart nginx.service	
# systemctl restart php-fpm.service	

Step 4: Install Moodle Learning Management System

Now we are ready to prepare our Moodle files for installation. For that purpose, navigate to the web root directory of your Apache or Nginx server. You can do this via:

# cd /var/www/html              [For Apache]
# cd /usr/share/nginx/html      [For Nginx]

Next go the Moodle download page and grab the latest Moodle (i.e. version 3.0 as the time of writing this article) archive or with the help of following wget command.

# wget https://download.moodle.org/download.php/direct/stable30/moodle-3.0.zip

Now unzip the downloaded archive, this will create a new directory called “moodle” and move all of it’s contents to web server’s root web directory (i.e. /var/www/html for Apache or /usr/share/nginx/html for Nginx) using following series of command.

# unzip moodle-3.0.zip
# cd moodle
# cp -r * /var/www/html/           [For Apache]
# cp -r * /usr/share/nginx/html    [For Nginx]

Now let’s fix the files ownership to webserver user, depending on your distribution Apache might be running with user “apache” or “www-data” and Nginx running as a user nginx.

To fix the file ownership, run the following command.

# chown -R apache: /var/www/html	[On RedHat/CentOS based systems] 
# chown -R www-data: /var/www/html 	[On Debian/Ubuntu based systems]
OR
# chown -R nginx: /usr/share/nginx/html/ 

Moodle also uses a data directory meant to keep teachers and students data. For example this directory will keep videos, documents, presentations and others.

For security purposes, you should create that directory outside of the web directory root. In this tutorial we will create a separate moodledata directory.

# mkdir /var/www/moodledata              [For Apache]
# mkdir /usr/share/moodledata            [For Nginx]

And again fix the folder ownership with:

# chown -R apache: /var/www/moodledata	        [On RedHat/CentOS based systems]    
# chown -R www-data: /var/www/moodledata 	[On Debian/Ubuntu based systems]
OR
# chown -R nginx: /usr/share/moodledata

Step 5: Create Moodle Database

Moodle uses a relational database to store its data and so we will need to prepare a database for our installation. This can be easily done with the following commands:

# mysql -u root -p

Enter your password and proceed. Now create new database called “moodle”:

MariaDB [(none)]> create database moodle;

Now let’s grant a user “moodle” with all privileges on database moodle:

MariaDB [(none)]> grant all on moodle.* to moodle@'localhost' identified by 'password';

Step 6: Start the Moodle Installation

We are now ready to continue with the installation of Moodle. For that purpose open your IP address or hostname in a browser. You should see the Moodle’s installer. It will ask you to choose the language for your installation:

Choose Moodle Language

Choose Moodle Language

On the next step, you will be selecting the path for your Moodle data directory. This directory will contain the files uploaded by teachers and students.

For example vidoes, PDF, PPT and other files you upload on your website. We have already prepared this directory earlier, you just need to set the Moodle data dir to /var/www/moodledata or /usr/share/moodledata.

Set Moodle Data Directory

Set Moodle Data Directory

Next you will be selecting the database driver.

  1. For MySQL – Select Improved MySQL driver.
  2. For MariaDB – Select native/mariadb driver.

Choose Moodle Database Driver

Choose Moodle Database Driver

After that you will be prompted for the MySQL credentials that Moodle will be using. We already prepared those earlier:

Database Name: moodle
Database User: moodle
Password: password

Moodle Database Settings

Moodle Database Settings

Once you have filled the details, continue to the next page. The page will show you the copyrights related to Moodle:

Moodle Copyright Notice

Moodle Copyright Notice

Review those and continue to the next page. On the following page, Moodle will perform system checks for your server environment. It will inform you if there are missing modules/extensions on your system. If such are to be found, click on the link next to each extension that is shown as missing and you will be provided with instructions how to install it.

Moodle Server Requirement Checks

Moodle Server Requirement Checks

If everything is good, proceed to the next page, where the installer will populate the database. This process may take longer than expected. After that you will be asked to configure the administrative user. You will need to fill in the following details:

  1. Username – the username with which the user will login
  2. Password – password for the above user
  3. Firstname
  4. Surname
  5. Email address for the administrative user
  6. City/town
  7. Country
  8. Timezone
  9. Description – enter information about yourself

Moodle User Information

Moodle User Information

After you have configured your site administrator’s profile, it’s time to setup some info about the site. Fill in the following information:

  • Full site name
  • Short name for the site
  • Front page summary – information that will be displayed on the site frontpage
  • Location Settings
  • Site registration – choose the registration type  be self-registration or via email.

Moodle Frontpage Settings

Moodle Frontpage Settings

When you have filled all that information, the installation is complete and you will be taken to the administrator profile:

Moodle Admin Dashboard

Moodle Admin Dashboard

To access the Moodle administrative dashboard go to http://your-ip-address/admin. In my case this is:

http://moodle.tecmint.com/admin

Moodle Admin Panel

Moodle Admin Panel

Now your Moodle installation is complete and you can start managing your website and create your first courses, users or simply customize your site settings.

In case you have any questions or comments related to Moodle’s installation, please submit them in the comment section below.

We can do it for you !

If you would like to have Moodle installed on a real Linux live server, you can contact us at admin@tecmint.comwith your requirements and we will provide custom offer just for you.

Referencehttps://docs.moodle.org/

Source

ttyload – Shows a Color-coded Graph of Linux Load Average in Terminal

ttyload is a lightweight utility which is intended to offer a color-coded graph of load averages over time on Linux and other Unix-like systems. It enables a graphical tracking of system load average in a terminal (“tty“).

It is known to run on systems such as Linux, IRIX, Solaris, FreeBSD, MacOS X (Darwin) and Isilon OneFS. It is designed to be easy to port to other platforms, but this comes with some hard work.

Some of its notable features are: it uses fairly standard, but hard-coded, ANSI escape sequences for screen manipulation and colorization. And also comes with (but doesn’t install, or even build by default) a relatively self-contained load bomb, if you want to view how things work on an otherwise unloaded system.

Suggested Read: GoTTY – Share Your Linux Terminal (TTY) as a Web Application

In this article, we will show you how to install and use ttyload in Linux to view a color-coded graph of your system load average in a terminal.

How to Install ttyload in Linux Systems

On Debian/Ubuntu based distributions, you can install ttyload from the default system respositores by typing the following apt-get command.

$ sudo apt-get install ttyload

On Other Linux distributions you can install ttyload from the source as shown.

$ git clone https://github.com/lindes/ttyload.git
$ cd ttyload
$ make
$ ./ttyload
$ sudo make install

Once installed, you can start it by typing the following command.

$ ttyload

ttyload - Graphical View of Linux Load Average

ttyload – Graphical View of Linux Load Average

Note: To close the program simply press [Ctrl+C] keys.

You can also define the number of seconds in the interval between refreshes. Default value is 4, and the minimum is 1.

$ ttyload -i 5
$ ttyload -i 1

To run it in a monochrome mode which turns off ANSI escapes, use the -m as follows.

$ ttyload -m

ttyload - Monochrome Mode

ttyload – Monochrome Mode

To get the ttyload usage info and help, type.

$ ttyload -h 

Below are some of its important features yet to be added:

  • Support for arbitrary sizing.
  • Make an X front end using the same basic engine, to have “3xload”.
  • Logging-oriented mode.

For more information, check out the ttyload Homepage: http://www.daveltd.com/src/util/ttyload/

Thats all for now! In this article, we showed you how to install and use ttyload in Linux. Write back to us via the comment section below.

Source

How to Record Programs and Games Using ‘Simple Screen Recorder’ in Linux

One of the best ways to learn a particular subject is by explaining it to others. Needless to say, each time I write an article I am first also teaching the topic to myself and making sure I am conveying it in a way that will be easy to understand and follow. Doing screencasts is a magnificient way to accomplish this goal.

Simple Screen Recording in Linux

Simple Screen Recording in Linux

At the same time, recording in video the steps you took to get something done will be a nice remainder should you need to perform the same operation in the future. In addition, you can also upload that file to video-sharing sites like YouTube to share with the community and the world.

Don’t Miss
Record Desktop Video and Audio Using “Avconv” Tool
Showterm.io – A Terminal Shell Recording Tool

Introducing and Installing Simple Screen Recorder

Simple Screen Recorder is a fantastic piece of software that was initially developed by its author to record output of programs and games. In time it became everything but ‘simple’, keeping its name not because of a lack in functionality but due to its easy-to-use interface.

Follow these steps to install Simple Screen Recorder:

On Debian/Ubuntu and Mint

The installation in Debian / Ubuntu / Linux Mint is pretty straightforward:

Add the repository to your sources.list:

$ sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder

Resynchronize the package index files from their sources and install:

$ sudo apt-get update
$ sudo apt-get install simplescreenrecorder

Within a matter of minutes, the program will be ready to launch:

Simple Screen Recorder Launcher

Simple Screen Recorder Launcher

On Fedora/CentOS and RHEL

In Fedora and derivatives (CentOS 7/RHEL 7, for example), several dependencies have to be installed first:

1. Add the ATRPMS repository (a generic 3rd party repository used for system and multimedia tools):

In /etc/yum.repos.d/atrpm.repo:

atrpm.repo
[atrpms]
name=Fedora Core $releasever - $basearch - ATrpms
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1

2. And the EPEL repository as well:

# yum install epel-release

3. Then install the rest of the dependencies:

# yum install ffmpeg ffmpeg-devel libX11-devel libXfixes-devel jack-audio-connection-kit-devel mesa-libGL-devel git

4. Clone the developer’s GitHub repository for Simple Screen Recorder:

# git clone https://github.com/MaartenBaert/ssr
# cd ssr

5. And finally, execute the installation script. Make sure you do this as a regular user (other than root), otherwise you will encounter permissions issues later down the road:

$ ./simple-build-and-install

If the installation does not create a launch icon in the Applications menu, you can start Simple Screen Recorder from the terminal.

$ simplescreenrecorder

Or create a symbolic link as a shortcut in your Desktop:

# ln –s $(which simplescreenrecorder) ~/Desktop/'Simple Screen Recorder'

How to Use Simple Screen Recorder

Once you have launched SSR, in the initial screen click Continue:

Simple Screen Recorder Setup

Simple Screen Recorder Setup

In the next screen you will choose options such as whether to record the entire screen, a fixed rectangle, or a specific window. To use any of this options, move the cursor away from the Simple Screen Recorder interface and select an area of the screen or click on a window of your choosing, respectively. You can also choose to record audio and include the cursor in the screencast (or not). Once done, click Continue:

Simple Screen Recorder Settings

Simple Screen Recorder Settings

Now it’s time to define the video output format and the location. Feel free to look around to find the settings that may be more adequate for your case (the settings below are just for your reference, and ensure that the video recording tools installed by default in the operating system will be able to play the recording), then click Continue again:

Set Video Format and Location

Set Video Format and Location

Finally, choose a keyboard shortcut to manage the user interface and click Start recording. When you’re done, save the video by clicking Save recording:

Linux Desktop Screen Recording

Linux Desktop Screen Recording

Alternatively, you can minimize Simple Screen Recorder so that it will not interfere with the screen cast, and start / stop the recording using the key combination selected earlier.

In our example let’s see what happens when we press Ctrl + R:

Control Desktop Screen Recording

Control Desktop Screen Recording

Then to pause the recording press the key combination again. The red circle will turn grey and you can finally stop the recording and save the file by clicking on it and choosing the corresponding menu:

Screen Recording On/OFF Settings

Screen Recording On/OFF Settings

Please keep in mind that the above trick will work as long as Simple Screen Recorder is running – it can be minimized but it has to be running.

Summary

At this point you must have already installed and try out what many Linux users out there consider the best screencrasting tool. Regardless of the reasons why you have chosen to do so, I can assure you you will never look back.

I highly recommend you take a look at the developer’s web site for further ideas and suggestions for improving your videos. Of course, you can also always reach us if you have questions or comments about this article or if you need help to set up Simple Screen Recorder in your computer and run into any issues, using the form below.

Source

6 Online Tools for Generating and Testing Cron Jobs for Linux

As a Linux system administrator, you can perform time-based scheduling of jobs/tasks using online cron job services or Cron, a powerful utility available in Unix/Linux systems.

In Linux, cron runs as a daemon and can be used to schedule tasks such as commands or shell scripts to perform various kinds of backups, system updates and much more, that run periodically and automatically in the background at specific times, dates, or intervals.

Scheduling a cronjob with the correct syntax can be confusing sometimes, wrong expressions can cause cronjobs to fail or not even run at all. In this article, we will list 6 useful online (web based) utilities for creating and testing cronjob scheduling syntax in Linux.

1. Crontab Generator

Crontab Generator is a useful online utility for generating a crontab entry to help schedule a job. It offers a simple, descriptive generator that can help you to produce a crontab syntax that you can copy and paste to your crontab file.

Crontab Generator

Crontab Generator

2. Cron Maker

Cron Maker is a web based utility which helps you to build cron expressions; it employs the Quartz open source library and all expressions are based on Quartz cron format. It also enables you to view next scheduled dates (simply enter a cronjob expression and calculate the next dates).

Cron Maker

Cron Maker

3. Crontab GUI

Crontab GUI is a great and the original online crontab editor. It works well (fully optimized) on mobile devices (you can generate cron syntax on your smart phone or tablet PC’s web browser).

Crontab GUI Tool

Crontab GUI Tool

4. CRON Tester

CRON Tester is a useful cron tester that allows you to test your cron time definitions. All you need to do is copy and paste your cron syntax in the cron definition field, then choose the number of iterations and click on “Test” to see the various dates on which it will run.

Cron Tester

Cron Tester

5. Crontab Guru

Crontab Guru is a simple online cron schedule expression editor. In addition, it provides a useful means of monitoring your cronjob. All you need to do is copy a command snippet provided and append at the end of the crontab definition. In case your cron job fails or doesn’t even start, you will receive an alert email.

Crontab Guru

Crontab Guru

6. Easycron

Easycron is a great web based cron scheduler for corntab.com cron editor. You can create a cron job by specifying a “URL to call”, set when it should be executed, specify a cron expression or add it manually from a descriptive form. Importantly, you can optionally use basic HTTP authentication for a small layer of security.

EasyCron

EasyCron

You might also like to read these following related articles on Cron scheduler utility.

  1. 11 Cron Job Scheduling Examples in Linux
  2. Cron Vs Anacron: How to Schedule Jobs Using Anacron on Linux
  3. How to Run PHP Script as Normal User with Cron

That’s all! If you know of any other useful web based cronjob expression generator or testers missing in the list above, let us know via the comment section below.

Source

WP2Social Auto Publish Powered By : XYZScripts.com