Atom – A Hackable Text and Source Code Editor for Linux

These days Atom text editor is making a lots of news. Atom is a free and open-source text and source code editor, available for cross platform Operating Systems – Windows, Linux and Mac OS X. It is released under MIT License, written in C++, HTML, CSS, JavaScript, Node.js and Coffee Script, Atom is based on Chromium.

Atom Editor

Atom Editor

A Quick Time Travel

Atom project was started by the founder of GitHub, Chris Wanstrath in the mid of year 2008. Nearly 6 years later, the first public beta was released on February 26, 2014. Nearly 15 months later the release of first public beta (and 7 years since the idea was conceived), on June 25, 2015 Atom got a stable release.

Features of Atom text/source code Editor.

  1. Cross Platform support (Linux/OS X/Windows)
  2. Polished edges
  3. Modern and approachable editor that can be customized to core.
  4. Built in Package Manager – Search and install from within. You may develop your own package.
  5. Smart Approach – Ensures you write code with speed, flexibility and auto-completion.
  6. Embedded File System Browser – Browse and open file/project/group of projects with ease in one window.
  7. Split Panel – Multi-panel feature to compare and edit code from single window. No more switching between windows.
  8. Find and replace text in one file or all your projects.
  9. There are some 2,137 Free and open-source Packages, that you can use.
  10. As of Now it supports some 685 themes to pick from.
  11. Plug-ins supported
  12. Can be used as IDE (Integrated Development Environment)
Prerequisite
  1. C++
  2. Git
  3. node.js version 0.10.x or node.js Version 0.12.x or io.js (1.x) [Any one of three]
  4. npm Version 1.4.x
  5. Gnome Keyring (libgnome-keyring-dev or libgnome-keyring-devel)

How to Install Atom Editor in Linux

There are binary package available for DEB and RPM based distributions for 64 bit architecture only, hence no need to compile it from source.

However if you want to compile it from source for any system including DEB and RPM based distribution, follow the below instructions.

Installing from Binary Packages

To install Atom on Linux, you can download DEB or RPM binary package for Debian and RedHat based systems from the main Atom website or use following wget command to directly download the packages into your terminal.

$ wget https://atom.io/download/deb		[On Debain based systems]
$ wget https://atom.io/download/rpm		[On RedHat based systems]

On Debian based systems, use dpkg -i command to install the binary package.

$ sudo dpkg -i deb
[sudo] password for tecmint: 
Selecting previously unselected package atom.
(Reading database ... 204982 files and directories currently installed.)
Preparing to unpack deb ...
Unpacking atom (1.0.0) ...
Setting up atom (1.0.0) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu1) ...
Processing triggers for mime-support (3.54ubuntu1) ...

On RedHat based systems, use rpm -ivh command to install the binary package.

# rpm -ivh rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:atom-1.0.0-0.1.fc21              ################################# [100%]

Installing from Source

If you just want to build Atom from source, you can do by following up-to-date detailed build instructions on Linux systems.

To build Atom from source, you need to have following required packages to be install on the system, before building the Atom from source.

On Debian / Ubuntu
$ sudo apt-get install build-essential git libgnome-keyring-dev fakeroot
$ curl --silent --location https://deb.nodesource.com/setup_0.12 | sudo bash -
$ sudo apt-get install --yes nodejs
$ sudo apt-get install npm
$ sudo npm config set python /usr/bin/python2 -g
On RHEL, CentOS or Fedora
# yum --assumeyes install make gcc gcc-c++ glibc-devel git-core libgnome-keyring-devel rpmdevtools
# curl --silent --location https://rpm.nodesource.com/setup | bash -
# yum install --yes nodejs
# yum install npm
# npm config set python /usr/bin/python2 -g

Once the required packages has been installed, now clone the Atom repository from git.

$ git clone https://github.com/atom/atom
$ cd atom

Checkout the latest Atom release and build it.

$ git fetch -p
$ git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
$ script/build

Note: If Atom build process failed with below error message:

npm v1.4+ is required to build Atom. Version 1.3.10 was detected.

That means you must have latest version npm (i.e v1.4) installed on the system, to get the latest version of npm you need to add node.js PPA to your system to get the latest version of Nodejs and NPM.

$ sudo apt-get install python-software-properties
$ sudo apt-add-repository ppa:chris-lea/node.js
$ sudo apt-get update
$ sudo apt-get install nodejs

Next, install the atom and apm commands to /usr/local/bin directory by executing following command:

$ sudo script/grunt install

Atom Testing and Usage

1. Fire Atom from Application Menu, or by typing command ‘atom, in the command prompt.

$ atom

When you launch Atom for the first time, you should see a Welcome screen of atom something like below.

Atom Text Editor

Atom Text Editor

This welcome screen gives you a brief idea about on how to get started with Atom editor.

You may Download your favorite flavor theme and native packages from the links below and install it using Settings Menu.

  1. https://atom.io/themes
  2. https://atom.io/packages
Just for Information
  1. Atom send usages data to Google Analytics. It does so to collect information about those features that are mostly used. These information will be used to enhance the user experience in further release.
  2. GitHub Reports Atom has been downloaded 1.3 million times and is used by more than 350,000 users per month.

Conclusion

Atom is a wonderful source code (and Text) editor. It functions like IDE. Supports of nearly 700 themes, ensures we have a lot to choose from. 2K+ packages makes it possible to customize Atom, as per user’s need. It has been developed by GitHub Founder and other developers/contributors, so we can expect it to be more than just a normal editor.

Though it be a nightmare for a lots of people since HTML, JavaScript, node.js and CSS have been used in the project. The fact is all these Programming/scripting languages are not appreciated by advanced users. At times the above languages have shown flaws, attack and even compromised.

Source

Basic Guide on IPTables (Linux Firewall) Tips / Commands

This tutorial guides you how firewall works in Linux Operating system and what is IPTables in Linux? Firewall decides fate of packets incoming and outgoing in system. IPTables is a rule based firewall and it is pre-installed on most of Linux operating system. By default it runs without any rules. IPTables was included in Kernel 2.4, prior it was called ipchains or ipfwadm. IPTables is a front-end tool to talk to the kernel and decides the packets to filter. This guide may help you to rough idea and basic commands of IPTables where we are going to describe practical iptables rules which you may refer and customized as per your need.

Different services is used for different protocols as:

  1. iptables applies to IPv4.
  2. ip6tables applies to IPv6.
  3. arptables applies to ARP.
  4. ebtables applies to Ethernet frames..

IPTables main files are:

  1. /etc/init.d/iptables – init script to start|stop|restart and save rulesets.
  2. /etc/sysconfig/iptables – where Rulesets are saved.
  3. /sbin/iptables – binary.

There are at present three tables.

  • Filter
  • NAT
  • Mangle

At present, there are total four chains:

  1. INPUT : Default chain originating to system.
  2. OUTPUT : Default chain generating from system.
  3. FORWARD : Default chain packets are send through another interface.
  4. RH-Firewall-1-INPUT : The user-defined custom chain.

Note: Above main files may slightly differ in Ubuntu Linux.

How to start, stop and restart Iptabe Firewall.

# /etc/init.d/iptables start 
# /etc/init.d/iptables stop
# /etc/init.d/iptables restart

To start IPTables on system boot, use the following command.

#chkconfig --level 345 iptables on

Saving IPTables rulesets with below command. Whenever system rebooted and restarted the IPTables service, the exsiting rules flushed out or reset. Below command save TPTables rulesets in /etc/sysconfig/iptables file by default and rules are applied or restored in case of IPTables flushes out.

#service iptables save

Checking the status of IPTables / Firewall. Options “-L” (List ruleset), “-v” (Verbose) and “-n” (Displays in numeric format).

[root@tecmint ~]# iptables -L -n -v

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    6   396 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 5 packets, 588 bytes)
 pkts bytes target     prot opt in     out     source               destination

Display IPTables rules with numbers. With the help of argument “–line-numbers” you can append or remove rules.

[root@tecmint ~]# iptables -n -L -v --line-numbers

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1       51  4080 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
2        0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0
3        0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
4        0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
5        0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 45 packets, 5384 bytes)
num   pkts bytes target     prot opt in     out     source               destination

Flushing or deleting IPTables rules. Below command will remove all the rules from tables. Take rulesets backup before executing above command.

[root@tecmint ~]# iptables -F

Deleting or appending rules, let us first see the rules in chains. Below commands shall display rulesets in INPUT and OUTPUT chains with rule numbers which will help us to add or delete rules

[root@tecmint ~]# iptables -L INPUT -n --line-numbers

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
5    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited
[root@tecmint ~]# iptables -L OUTPUT -n --line-numbers
Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

Let’s say if you want to delete rule no 5 from INPUT chain. Use the following command.

[root@tecmint ~]# iptables -D INPUT 5

To insert or append rule to INPUT chain in between 4 and 5 ruleset.

[root@tecmint ~]# iptables -I INPUT 5 -s ipaddress -j DROP

We have just tried to cover basic usages and functions of IPTables for begineer. You may create complex rules once you have complete understanding of TCP/IP and good knowledge of your setup.

Source

Cloud Commander – Web File Manager to Control Linux File and Programs via Browser

Cloud Commander (cloudcmd) is a simple open source, traditional yet useful cross-platform web file manager with console and editor support.

It is written in JavaScript/Node.js and enables you manage a server and work with files, directories and programs in a browser from any computer, mobile or tablet.

Features

It offer some cool features:

  • Client works in web browser.
  • It’s server can be installed in Linux, Windows, Mac OS and Android (with help of Termux).
  • Enables you to view images, text files, playing audio and videos from within a browser.
  • Can be used local or remotely.
  • Supports adapting to screen size.
  • Offers Console with support of default OS command line.
  • Ships in with 3 built-in editors with support of syntax highlighting, which include: Dword, Edward and Deepword.
  • It also supports optional authorization.
  • Offers hot/shortcut keys.

How to Install Cloud Commander in Linux

First, install the latest version of node.js with the instructions below.

On Debian/Ubuntu/Linux Mint

$ curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -

-------- For Node.js v7 Version -------- 
$ curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
$ sudo apt-get install -y nodejs 

On RHEL/CentOS/Fedora

$ curl - -silent - -location https://rpm.nodesource.com/setup_6.x | bash -

-------- For Node.js v7 Version -------- 
$ curl - -silent - -location https://rpm.nodesource.com/setup_7.x | bash -
$ yum -y install nodejs
$ dnf -y install nodejs [Fedora 22+]

On Gentoo and Arch Linux

$ emerge nodejs         [On Gentoo]
$ pacman -S nodejs npm  [On Arch Linux]

Once you have installed nodejs and npm packages, next, install cloud commander file manager with the following command with root permissions:

$ npm i cloudcmd -g
OR
$ npm i cloudcmd -g --force

How to Use Cloud Commander in Linux

To start it, simply run:

$ cloudcmd

By default, Cloud Commander reads configurations in ~/.cloudcmd.json if no command options are set. It uses port 8000, in case the port variables PORT or VCAP_APP_PORT don’t exist.

You can start using it by opening the URL in your browser:

http://SERVER_IP:8000

Cloud Commander File Manager

Cloud Commander File Manager

View File Menu

To view menu; file operation options, simply select the file and right click on it, you’ll view the options shown in the screen shot below.

Cloud Commander File Menu

Cloud Commander File Menu

View Files and Directories

To open it with a single panel, use the --one-panel-mode flag or simply resize the browser interface:

$ cloudcmd --one-panel-mode

The screenshot below shows viewing of an image file.

Cloud Commander File Preview

Cloud Commander File Preview

Edit Files in Browser

The following screenshot shows opening a script file for editing.

Cloud Commander Edit Files

Cloud Commander Edit Files

Access Linux Terminal from Browser

Press ~ button to open the Linux terminal or console.

Linux Commander Web Console

Linux Commander Web Console

Terminal Interface

By default, the terminal is disabled and not installed, to use it you should install gritty as follows with root user privileges:

$ npm i gritty -g

Then set the path of a terminal and save configuration like so:

$ cloudcmd --terminal --terminal-path "gritty --path here" --save

Update Cloud Commander

To update Cloud Commander use this command:

$ npm install cloudcmd -g

Use Hot/Shortcut Keys.

  • F1 – View help
  • F2 – Rename a file
  • F3 – View a file
  • F4 – Edit a file
  • F5 – Copy a file
  • F6 – Move a file
  • F7 – Create a new directory
  • F8 – Delete a file
  • F9 – Open menu
  • F10 – View file configurations/permissions plus many more.

You can run this for help:

$ cloudcmd --help

You can find a comprehensive usage guide and configuration information at https://cloudcmd.io/.

In this article, we reviewed Cloud Commander, a simple traditional yet useful web file manager with console and editor support for Linux. To share your thoughts with us, make us of the comment form below. Have you come across any similar tools out there? Tell us as well.

Source

Wikit – A Command Line Tool to Search Wikipedia in Linux

Wikit is a free and open source command line program for easily viewing Wikipedia summaries of search queries; it is built using Nodejs. The verb Wikit (derived from “wikipedia it“) means looking up something on wikipedia.org, the popular and remarkable open source encyclopedia on the Internet.

Read AlsoGoogler: A Command Line Tool to Do ‘Google Search’ from Linux Terminal

To install Wikit on Linux systems, you must have nodejs and npm installed, if not install it using your default package manager as shown.

$ sudo apt install nodejs	#Debian/Ubuntu
$ sudo yum install nodejs npm	#RHEL/CentOS
$ sudo dnf install nodejs npm	#Fedora 22+

Installing nodejs and npm from the default repositories, will give you the little older version. Therefore, read our article to get more recent version of nodejs and npm in Linux.

After installing the necessary dependencies, run the following command to install wikit in Linux (the -g flag tells npm to install wikit globally).

$ sudo npm install wikit -g

Once Wikit installed on your system, you can run it using following syntax.

$ wikit Linux

Wikipedia Command Line View

Wikipedia Command Line View

The output shown is the paragraphs of the wikipedia article before the table of contents and the line length is neatly wrapped based on your terminal’s window size, with a max of about 80 characters.

If you are running wikit on a desktop computer with a web browser installed, you can open the full Wikipedia article in a browser using the -b flag as below.

$ wikit linux -b

To define the line wrap length to number (minimum 15), use the -l option as shown.

$ wikit linux -l 90

For more information, go to the Wikit Github repository.

Lastly, do check out these fancy command line based tools for various tasks.

  1. 5 Linux Command Line Based Tools for Downloading Files and Browsing Websites
  2. Install YouTube-DL – A Command Line Video Download Tool for Linux
  3. 8 Command Line Tools for Browsing Websites and Downloading Files in Linux
  4. Trash-cli – A Trashcan Tool to Manage ‘Trash’ from Linux Command Line
  5. Fasd – A Commandline Tool That Offers Quick Access to Files and Directories
  6. Inxi – A Powerful Feature-Rich Commandline System Information Tool for Linux

You can use the comment form below to ask any questions or share any useful thoughts with us.

Source

Googler: A Command Line Tool to Do ‘Google Search’ from Linux Terminal

Today, Google search is a well known and the most-used search engine on the World Wide Web (WWW), if you want to gather information from millions of servers on the Internet, then it is the number one and most reliable tool for that purpose plus much more.

Many people around the world mainly use Google search via a graphical web browser interface. However, command line geeks who are always glued to the terminal for their day-to-day system related tasks, face difficulties in accessing Google search from command-line, this is where Googler comes in handy.

Read AlsoWikit – A Command Line Tool to Search Wikipedia in Linux

Googler is a powerful, feature-rich and Python-based command line tool for accessing Google (Web & News) and Google Site Search within the Linux terminal.

NoteGoogler is not in any way associated to Google.

How Does Googler Works?

It provides an interface from the command line to Google search and displays results inform of title, URL and abstract information in pages, with page navigation similar to that on a GUI web browser.

Watch the quick demo of Googler.

Google Search from Linux Terminal

Users can integrate it with a text-based web browser and open the result directly in the web browser.

It supports sequential searches in a single instance and importantly, users do not need to master any usage options as the shell completion scripts automatically invokes them.

Features of Googler

  1. Offers access to Google Search, Google Site Search, Google News.
  2. It is fast and clean with custom colors and no ads, stray URLs or clutter included.
  1. Allows navigation of search result pages from omniprompt.
  2. Supports fetching of number of results in a go, users can start at the nth result.
  3. Users can disable automatic spelling correction and search exact keywords.
  4. Supports limiting of search by attributes such as duration, country/domain specific search (default: .com), language preference.
  5. Supports Google search keywords in the form filetype:mimesite:somesite.com and many others.
  6. Permits non-stop searches: start new searches at omniprompt without exiting.
  7. Supports HTTPS proxy services.
  8. Ships in with a man page which includes examples, shell completion scripts for Bash, Zsh and Fish.
  9. Users can optionally open first search result in a web browser.

How To Install Googler in Linux

Users of Ubuntu Linux and its derivatives such as Linux MintXubuntu can install it via this PPA by executing the commands below:

$ sudo add-apt-repository ppa:twodopeshaggy/jarun
$ sudo apt-get update
$ sudo apt-get install googler

Important: If in case above installation instructions fails to install Googler, then you need to install it from source using latest version as shown.

Other distributions can install Googler from source using following instructions.

First download the latest version of Googler (at the time writing the latest version is v2.9).

$ cd Downloads
$ wget -c https://github.com/jarun/googler/archive/v2.9.tar.gz
$ tar -xvf  v2.9.tar.gz
$ cd  googler-2.9
$ sudo make install 
$ cd auto-completion/bash/
$ sudo cp googler-completion.bash  /etc/bash_completion.d/

How to Use Googler in Linux Terminal

The following are some examples showing how Googler works in Linux, the basic command below will show information about tecmint.com:

$ googler tecmint.com

Search Google from Linux Commandline

Search Google from Linux Commandline

At the end of the search result page, you can view the omniprompt help page by entering the “?” character and pressing Enter. Each key has a detailed functionality description alongside it.

Google Search Options

Google Search Options

In the example, we will search for the quoted words (Linux command line tricks) on tecmint.com.

$ googler -n 8 -w tecmint.com \"Linux command line tricks\"

where the options:

  1. -n num – tells googler to display at most 8 results per a page (default is 10).
  2. -w – enables Google site(tecmint.com) search.

Google Site Search Results

Google Site Search Results

You can as well display results of latest news concerning Linux from the Google search news section by using the -N switch as follows:

$ googler -N Linux 

Search Linux News from Commandline

Search Linux News from Commandline

Set an alias to get four results showing the meaning of a word (tecmint in this case) like so:

$ alias tecmint='oogler -n 4 tecmint'
$ tecmint 

Google Search for Keyword

Google Search for Keyword

Visit the Googler Github repository for more information and usage or view the Googler man page.

$ man googler 

Googler is a handy tool, it works perfectly and reliably for Linux users who spend most of their time on the terminal and want to search the web from a text-based interface. Remember to share your thoughts about Googler in the comments.

Source

9 Most Popular Download Managers for Linux in 2019

Download managers on Windows are one of the most things that are missed for every new comer to Linux world, programs like Internet Download Manager & Free Download Manager are very wanted, too bad they are not available under Linux or Unix-like systems. But fortunately, there are many alternative download managers under the Linux desktop.

Read Also5 Command Line Based Tools for Downloading Files in Linux

In this article, we’re going to talk about the best download managers available for the Linux OS. Those download managers are:

  1. XDM
  2. SteadyFlow
  3. DownThemAll
  4. uGet
  5. FlareGet
  6. Persepolis
  7. MultiGet
  8. Pyload
  9. KGet

Read AlsoBest Command Line Download Accelerators for Linux

1. XDM – Xtreme Download Manager

As it’s developers says, “XDM can speed up download speed up to 500%”, for sure, it’s one of the best download managers available under the Linux desktop. XDM was written in Java.

Features of XDM
  1. Supports pausing / resuming the downloaded files later.
  2. Supports 32 segments for every downloaded file which makes the downloading process even faster.
  3. Supports capturing multimedia files from the famous websites like Youtube, MetaCafe, Vimeo and others in many formats like webm, MP4, AVI.. etc.
  4. Support for many protocols like HTTP, HTTPS, FTP.
  5. Support for most Linux distributions beside Windows support.
  6. Support for taking URLs from the clipboard quickly.
  7. There’s an integration extension available for most web browsers like Firefox, Chrome / Chromium, Safari..
  8. A very nice GUI, similar to Internet Download Manager.
  9. Many other features..

To install under Ubuntu/Linux Mint distributions, open terminal by hitting “Ctrl+Alt+T” and run the following commands to install the latest XDM (i.e. version 3.03).

$ wget http://xdman.sourceforge.net/xdman_mint_ubuntu.deb
$ sudo dpkg -i xdman_mint_ubuntu.deb
$ xdman

Install XDM in Ubuntu

XDM Download Manager

VisitXDM Homepage

2. SteadyFlow

SteadyFlow is a very simple download manager in fact, which is its goal, it supports downloading multiple files in once beside stopping it and resuming it later, it’s GUI is very clean.

Features of SteadyFlow
  1. A very simple, easy to use, nice GUI built with GTK+ library.
  2. Support for Google Chrome/Chromium integration via an official extension called “ChromeFlow”.
  3. Support to capture URLs from the clipboard automatically.
  4. Ability to run specific command when the downloaded file is completed.

SteadyFlow is available (recent version 0.2.0) to download from the official repositories for Ubuntu/Linux Mint, to install it.

$ sudo add-apt-repository ppa:sikon/steadyflow
$ sudo apt-get update
$ sudo apt-get install steadyflow

SteadyFlow is also available in Fedora repositories.

$ su -
# yum install steadyflow

Install SteadyFlow in Ubuntu

Steadyflow Download Manager

For other distributions, you may download the program at https://launchpad.net/steadyflow

3. DownThemAll

Unlike the other programs on this list, DownThemAll is not a program in fact, it’s a Firefox plugin, but it’s very amazing in downloading files and very effective, and because it’s a Firefox plugin, it can be installed on all available platforms like Windows, Linux, BSD, Mac OS X.. etc.

Features of DownThemAll
  1. Like the developers say: “DownThemAll can speed your download speed up to 400%”.
  2. Support for downloading all the images & links in a web page.
  3. Support for downloading multiple files at once with support for setting the download speed for each one.
  4. Support for auto-grabbing downloaded links from Firefox browser.
  5. Ability to customize a lot of settings for integration between Firefox and DownThemAll.
  6. Ability to check SHA1, MD5 hashs automatically after downloading.
  7. A lot more..

DownThemAll Firefox Plugin

DownThemAll Plugin

To download and add “DownThemAll” plugin for your Firefox, head over to https://addons.mozilla.org/addon/downthemall/.

4. uGet Download Manager

One of the most famous download managers out there, uGet is really a good download manager which was built using the GTK+ library, it’s available for both Windows & Linux.

Features of uGet
  1. Support for downloading many files at once with ability to set the maximum download speed for all the files together or for each one of them.
  2. Support for downloading torrent and metalink files.
  3. Support for downloading files from anonymous FTP or by using a user name and a password.
  4. Support for grabbing URLs list from local files to download them all.
  5. Support for downloading files via the command line interface.
  6. Supports 20 segments for every downloaded file.
  7. Ability to grab URLs from the clipboard automatically.
  8. Ability to integrate with FlashGot add-on for Firefox.
  9. Many other features..

uGet is available (recent stable version 1.10.4) to download from the official repositories for most Linux distributions, in Debian/Ubuntu/Mint.

$ sudo add-apt-repository ppa:plushuang-tw/uget-stable
$ sudo apt-get update
$ sudo apt-get install uget

In RedHat/Fedora/CentOS based systems, you can easily install uGet from official repositories.

# yum install uget

Install uGet in Ubuntu

uGet Download Manager

VisituGet Homepage

5. FlareGet Download Manager

FlareGet is another download manager, there are 2 version from it, one is free and the other one is paid, but they are all closed-source, but they work on both Windows and Linux.

Features of FlareGet
  1. Multi-thread support.
  2. Support up to 4 segments per file (in the free version, in the paid version it can go up to 32).
  3. Support for most Linux distributions and support for integration with most web browsers.
  4. Support for HTTP, HTTPS, FTP protocols.
  5. Support for auto-grabbing the URLs from the clipboard.
  6. Support for auto-grabbing videos from Youtube.
  7. The GUI is available in 18 different languages.
  8. Many other features.

Install FlareGet in Ubuntu

FlareGet Download Manager

Follow the link for FlareGet installation at Install FlareGet in Red Hat and Debian Systems

6. Persepolis Download Manager

Persepolis is a free, open source and cross-platform download manager and a GUI for aria2 (a command-line download manager). It is written in Python language and developed for GNU/Linux Distributions, BSDs, macOS and Microsoft Windows.

  • Multi segment downloading
  • Scheduling downloads
  • Download queuing
  • Searching and downloading video from Youtube, Vimeo, DailyMotion, and more.

To install Persepolis download manager on Debian/Ubuntu and other Debian distributions, use the following commands.

$ sudo add-apt-repository ppa:persepolis/ppa
$ sudo apt update
$ sudo apt install persepolis

Persepolis Download Manager

Persepolis Download Manager

7. MultiGet Download Manager

MultiGet is another free, open source and an easy to use GUI (based on wxWidgets) file download manager for Linux, written in C++ programming language.

  • Supports HTTP and FTP protocols
  • Supports multi-task with multi-thread
  • Supports resuming file downloads
  • Clipboard monitoring – means copy a URL and prompt for download.
  • Also support SOCKS 4,4a,5 proxy, ftp proxy, http proxy

To install MultiGet download manager on Debian/Ubuntu and other Debian distributions, use the following commands.

$ sudo apt-get install multiget

Multiget File Download Manager

Multiget File Download Manager

8. KGet Download Manager

KGet is a functional and user-friendly file download manager for Linux with support for FTP and HTTP(S) protocs, pausing and resuming of downloading files, metalink support which includes multiple URLs for downloads and more.

To install KGet download manager on Debian/Ubuntu and other Debian distributions, use the following commands.

$ sudo apt-get install kget

KGet Download Manager for Linux

KGet Download Manager for Linux

9. PyLoad Download Manager

PyLoad is a free and open source file download manager for Linux, written in Python programming language and created to be immensely lightweight, easily expandable and fully manageable via web.

Pyload Download Manager

Pyload Download Manager

These are one of the best download managers available for Linux . Have you tried any one of them before? How did it go with you? Do you know any other download managers that should be added to this list? Share your comments with us.

Source

8 Command Line Tools for Browsing Websites and Downloading Files in Linux

In the last article, we have covered few useful tools like ‘rTorrent‘, ‘wget‘, ‘cURL‘, ‘w3m‘, and ‘Elinks‘. We got lots of response to cover few other tools of same genre, if you’ve missed the first part you can go through it..

  1. 5 Command Line Tools for Downloading Files and Browsing Websites

This article aims at making you aware of several other Linux command Line browsing and downloading applications, which will help you to browse and download files within the Linux shell.

1. links

Links is an open source web browser written in C programming Language. It is available for all major platforms viz., Linux, Windows, OS X and OS/2. This browser is text based as well as graphical. The text based links web browser is shipped by most of the standard Linux distributions by default. If links is not installed in your system by default you may install it from the repo. Elinks is a fork of links.

# apt-get install links
# yum install links

After installing links, you can browse any websites within the terminal as shown below in the screen cast..

# links www.tecmint.com

Use UP and DOWN arrow keys to navigate. Right arrow Key on a link will redirect you to that link and Left arrow key will bring you back to the last page. To QUIT press q.

Here is how it seems to access Tecmint using links tool.

links: Commandline Web Browsing

If you are interested in installing GUI of links, you may need to download latest source tarball (i.e. version 2.9) from http://links.twibright.com/download/.

Alternatively, you may use following wget command to download and install as suggested below.

# wget http://links.twibright.com/download/links-2.9.tar.gz
# tar -xvf links-2.9.tar.gz
# cd links-2.9
# ./configure –enable-graphics
# make
# make install

Note: You need to install packages (libpng, libjpeg, TIFF library, SVGAlib, XFree86, C Compiler and make), if not already installed to successfully compile the package.

2. links2

Links2 is a graphical web browser version of Twibright Labs Links web browser. This browser has support for mouse and clicks. Designed specially for speed without any CSS support, fairly good HTML and JavaScript support with limitations.

To install links2.

# apt-get install links2
# yum install links2

3. lynx

A text based web browser released under GNU GPLv2 license and written in ISO C. lynx is highly configurable web browser and Savior for many SYSAdmin. It has the reputation of being the oldest web browser that is being used and still actively developed.

To install lynx.

# apt-get install lynx
# yum install lynx

After installing lynx, type the following command to browse the website as shown below in the screen cast..

# lynx www.tecmint.com

lynx: Command Line Web Browsing

If you are interested in knowing a bit more about links and lynx web browser, you may like to visit the below link:

  1. Web Browsing with Lynx and Links Command Line Tools

4. youtube-dl

youtube-dl is a platform independent application which can be used to download videos from youtube and a few other sites. Written primarily in python and released under GNU GPL License, the application works out of the box. (Since youtube don’t allow you to download videos, it may be illegal to use it. Check the laws before you start using this.)

To install youtube-dl.

# apt-get install youtube-dl
# yum install youtube-dl

After installing, try to download files from the Youtube site, as shown in the below screen cast.

# youtube-dl https://www.youtube.com/watch?v=ql4SEy_4xws

youtube-dl: Download Youtube Videos in Commandline

If you are interested in knowing more about youtube-dl you may like to visit the below link:

  1. YouTube-DL – A Command Line Youtube Video Downloader for Linux

5. fetch

It is a command utility for unix-like operating system that is used for URL retrieval. It supports a lot of options like fetching ipv4 only address, ipv6 only address, no redirect, exit after successful file retrieval request, retry, etc.

Fetch can be Downloaded and installed from the link below

http://sourceforge.net/projects/fetch/?source=typ_redirect

But before you compile and run it, you should install HTTP Fetcher. Download HTTP Fetcher from the link below.

http://sourceforge.net/projects/http-fetcher/?source=typ_redirect

6. Axel

Axel is a command-line based download accelerator for Linux. Axel makes it possible to download a file at much faster speed through single connection request for multiple copies of files in small chunks through multiple http and ftp connections.

To install Axel.

# apt-get install axel
# yum install axel

After axel installed, you may use following command to download any given file, as shown in the screen cast.

# axel http://mirror.cse.iitk.ac.in/archlinux/iso/2015.04.01/archlinux-2015.04.01-dual.iso

Commandline File Download Accelerator for Linux

7. aria2

aria2 is a command-line based download utility that is lightweight and support multi-protocol (HTTP, HTTPS, FTP, BitTorrent and Metalink). It can use metalinks files to simultaneously download ISO files from more than one server. It can serve as a Bit torrent client as well.

To install aria2.

# apt-get install aria2
# yum install aria2

Once aria2 installed, you can fire up the following command to download any given file…

# aria2c http://cdimage.debian.org/debian-cd/7.8.0/multi-arch/iso-cd/debian-7.8.0-amd64-i386-netinst.iso

Aria2: Command Line Download Manager for Linux

Aria2: Command Line Download Manager for Linux

If you’re interested to know more at aria2 and their switches, read the following article.

  1. Aria2 – A Multi-Protocol Command-Line Download Manager for Linux

8. w3m

w3m is a another open source text-based web browser very similar to lynx, which runs on a terminal. It uses emacs-w3m an Emacs interface for w3m to browse web sites within emacs interface.

To install w3m.

# apt-get install w3m
# yum install w3m

After installing w3m, fire up the following command to browse the website as shown below.

# w3m www.tecmint.com

w3m Terminal Browser

w3m Terminal Browser

That’s all for now.

Source

Browsh – A Modern Text Browser That Play Videos and Everything

Browsh is an open source, simple and modern text-based browser that renders in TTY terminal environments. It is made up of a minimal Golang CLI front-end and a browser web-extension (headless Firefox) which actually offers most of the functionality to create a purely text-based version of web pages and web apps.

This browser renders anything that a modern browser can; HTML5, CSS3, JS, video as well as WebGL. It is importantly a bandwidth-saver, designed to run on a remote server and accessed via SSH/Mosh or the in-browser HTML service so as to notably reduce bandwidth.

Read AlsoCommand Line Web Browsing with Lynx and Links Tools

Browsh is useful only when you don’t have good Internet connection. It also helps you to avoid battery-drain of a modern browser from your laptop or low-powered device such as a Raspberry Pi.

Live SSH Demo – Just point your SSH client to ssh brow.sh, no authentication needed and session last 5minutes and are logged.

How to Install Browsh Text-Based Browser in Linux

Browsh’s requirements are a latest version of Firefox and a terminal client with true colour support. Once you have those you can download the suitable binary or package for your Linux distribution using following commands.

Install Browsh on RHEL/CentOS & Fedora

--------- On 64-bit --------- 
# wget https://github.com/browsh-org/browsh/releases/download/v1.4.12/browsh_1.4.12_linux_amd64.rpm
# rpm -Uvh browsh_1.4.12_linux_amd64.rpm

--------- On 32-bit ---------
# wget https://github.com/browsh-org/browsh/releases/download/v1.4.12/browsh_1.4.12_linux_386.rpm
# rpm -Uvh browsh_1.4.12_linux_386.rpm

Install Browsh on Debian/Ubuntu & Linux Mint

--------- On 64-bit --------- 
$ wget https://github.com/browsh-org/browsh/releases/download/v1.4.12/browsh_1.4.12_linux_amd64.deb
$ sudo dpkg -i browsh_1.4.12_linux_amd64.deb 

--------- On 32-bit ---------
$ wget https://github.com/browsh-org/browsh/releases/download/v1.4.12/browsh_1.4.12_linux_386.deb
$ sudo dpkg -i browsh_1.4.12_linux_386.deb 

If you don’t want to install .deb and .rpm versions, you can download static binaries and execute it as shown.

--------- On 64-bit --------- 
$ wget https://github.com/browsh-org/browsh/releases/download/v1.4.12/browsh_1.4.12_linux_amd64
$ chmod 755 browsh_1.4.12_linux_amd64
$ ./browsh_1.4.12_linux_amd64

--------- On 64-bit --------- 
$ wget https://github.com/browsh-org/browsh/releases/download/v1.4.12/browsh_1.4.12_linux_386
$ chmod 755 browsh_1.4.12_linux_386
$ ./browsh_1.4.12_linux_386

There are also a Docker image that comes with the latest version of Firefox bundled, all you need to do is just pull and run the TTY client with.

$ docker run -it --rm browsh/browsh

How to Use Browsh Text-Based Browser in Linux

Once you have Browsh installed, you can run browsh on the terminal as shown.

$ browsh

Browsh Text Browser

Browsh Text Browser

Most keys and mouse gestures should work as you would expect on a desktop browser, the following are the basic ones for you to get started.

  • F1 – opens the documentation
  • ARROW KEYSPageUPPageDown – scrolling
  • CTRL+l – focus the URL bar
  • CTRL+r – reload page
  • CTRL+t – open new tab
  • CTRL+w – close a tab
  • BACKSPACE – go back in history
  • CTRL+q – exit the program

Browsh Web Browsing

Browsh Web Browsing

Browsh - Watching Youtube Video

Browsh – Watching Youtube Video

You might also like to read these following related articles.

  1. 8 Command Line Tools for Browsing Websites and Downloading Files in Linux
  2. Googler: A Command Line Tool to Do ‘Google Search’ from Linux Terminal
  1. Cloud Commander – Web File Manager to Control Linux File and Programs via Browser
  2. Tig – A Command Line Browser for Git Repositories

For more information, go to: https://www.brow.sh/

That’s all! Browsh is a simple, fully-modern text-based browser that runs in TTY terminal environments and in any browser, and can render anything that a modern browser can. In this guide, we have explained how to install and use Browsh in Linux. Try it out and share your thoughts with us in the comments.

Source

How to Check Bad Sectors or Bad Blocks on Hard Disk in Linux

Let us start by defining a bad sector/block, it’s a section on a disk drive or flash memory that can not be read from or written to anymore, as a result of a fixed physical damage on the disk surface or failed flash memory transistors.

As bad sectors continue to accumulate, they can undesirably or destructively affect your disk drive or flash memory capacity or even lead to a possible hardware failure.

It is also important to note that the presence of bad blocks should alert you to start thinking of getting a new disk drive or simply mark the bad blocks as unusable.

Therefore, in this article, we will go through the necessary steps that can enable you determine the presence or absence of bad sectors on your Linux disk drive or flash memory using certain disk scanning utilities.

That said, below are the methods:

Check Bad Sectors in Linux Disks Using badblocks Tool

badblocks program enables users to scan a device for bad sectors or blocks. The device can be a hard disk or an external disk drive, represented by a file such as /dev/sdc.

Firstly, use the fdisk command with superuser privileges to display information about all your disk drives or flash memory plus their partitions:

$ sudo fdisk -l

List Linux Filesystem Partitions

List Linux Filesystem Partitions

Then scan your Linux disk drive to check for bad sectors/blocks by typing:

$ sudo badblocks -v /dev/sda10 > badsectors.txt

Scan Hard Disk Bad Sectors in Linux

Scan Hard Disk Bad Sectors in Linux

In the command above, badblocks is scanning device /dev/sda10 (remember to specify your actual device) with the -v enabling it to display details of the operation. In addition, the results of the operation are stored in the file badsectors.txt by means of output redirection.

In case you discover any bad sectors on your disk drive, unmount the disk and instruct the operating system not to write to the reported sectors as follows.

You will need to employ e2fsck (for ext2/ext3/ext4 file systems) or fsck command with the badsectors.txt file and the device file as in the command below.

The -l option tells the command to add the block numbers listed in the file specified by filename (badsectors.txt) to the list of bad blocks.

------------ Specifically for ext2/ext3/ext4 file-systems ------------ 
$ sudo e2fsck -l badsectors.txt /dev/sda10

OR

------------ For other file-systems ------------ 
$ sudo fsck -l badsectors.txt /dev/sda10

Scan Bad Sectors on Linux Disk Using Smartmontools

This method is more reliable and efficient for modern disks (ATA/SATA and SCSI/SAS hard drives and solid-state drives) which ship in with a S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology) system that helps detect, report and possibly log their health status, so that you can figure out any impending hardware failures.

You can install smartmontools by running the command below:

------------ On Debian/Ubuntu based systems ------------ 
$ sudo apt-get install smartmontools

------------ On RHEL/CentOS based systems ------------ 
$ sudo yum install smartmontools

Once the installation is complete, use smartctl which controls the S.M.A.R.T system integrated into a disk. You can look through its man page or help page as follows:

$ man smartctl
$ smartctl -h

Now execute the smartctrl command and name your specific device as an argument as in the following command, the flag -H or --health is included to display the SMART overall health self-assessment test result.

$ sudo smartctl -H /dev/sda10

Check Linux Hard Disk Health

Check Linux Hard Disk Health

The result above indicates that your hard disk is healthy, and may not experience hardware failures any soon.

For an overview of disk information, use the -a or --all option to print out all SMART information concerning a disk and -x or --xall which displays all SMART and non-SMART information about a disk.

In this tutorial, we covered a very important topic concerning disk drive health diagnostics, you can reach us via the feedback section below to share your thoughts or ask any questions.

Source

Learn The Basics of How Linux I/O (Input/Output) Redirection Works

One of the most important and interesting topics under Linux administration is I/O redirection. This feature of the command line enables you to redirect the input and/or output of commands from and/or to files, or join multiple commands together using pipes to form what is known as a “command pipeline”.

All the commands that we run fundamentally produce two kinds of output:

  1. the command result – data the program is designed to produce, and
  2. the program status and error messages that informs a user of the program execution details.

In Linux and other Unix-like systems, there are three default files named below which are also identified by the shell using file descriptor numbers:

  1. stdin or 0 – it’s connected to the keyboard, most programs read input from this file.
  2. stdout or 1 – it’s attached to the screen, and all programs send their results to this file and
  3. stderr or 2 – programs send status/error messages to this file which is also attached to the screen.

Therefore, I/O redirection allows you to alter the input source of a command as well as where its output and error messages are sent to. And this is made possible by the “<” and “>” redirection operators.

How To Redirect Standard Output to File in Linux

You can redirect standard output as in the example below, here, we want to store the output of the top command for later inspection:

$ top -bn 5 >top.log

Where the flags:

  1. -b – enables top to run in batch mode, so that you can redirect its output to a file or another command.
  2. -n – specifies the number of iterations before the command terminates.

You can view the contents of top.log file using cat command as follows:

$ cat top.log

To append the output of a command, use the “>>” operator.

For instance to append the output of top command above in the top.log file especially within a script (or on the command line), enter the line below:

$ top -bn 5 >>top.log

Note: Using the file descriptor number, the output redirect command above is the same as:

$ top -bn 5 1>top.log

How To Redirect Standard Error to File in Linux

To redirect standard error of a command, you need to explicitly specify the file descriptor number, 2 for the shell to understand what you are trying to do.

For example the ls command below will produce an error when executed by a normal system user without root privileges:

$ ls -l /root/

You can redirect the standard error to a file as below:

$ ls -l /root/ 2>ls-error.log
$ cat ls-error.log 

Redirect Standard Error to File

Redirect Standard Error to File

In order to append the standard error, use the command below:

$ ls -l /root/ 2>>ls-error.log

How To Redirect Standard Output/ Error To One File

It is also possible to capture all the output of a command (both standard output and standard error) into a single file. This can be done in two possible ways by specifying the file descriptor numbers:

1. The first is a relatively old method which works as follows:

$ ls -l /root/ >ls-error.log 2>&1

The command above means the shell will first send the output of the ls command to the file ls-error.log (using >ls-error.log), and then writes all error messages to the file descriptor 2 (standard output) which has been redirected to the file ls-error.log (using 2>&1). Implying that standard error is also sent to the same file as standard output.

2. The second and direct method is:

$ ls -l /root/ &>ls-error.log

You can as well append standard output and standard error to a single file like so:

$ ls -l /root/ &>>ls-error.log

How To Redirect Standard Input to File

Most if not all commands get their input from standard input, and by default standard input is attached to the keyboard.

To redirect standard input from a file other than the keyboard, use the “<” operator as below:

$ cat <domains.list 

Redirect Standard Input to File

Redirect Standard Input to File

How To Redirect Standard Input/Output to File

You can perform standard input, standard output redirection at the same time using sort command as below:

$ sort <domains.list >sort.output

How to Use I/O Redirection Using Pipes

To redirect the output of one command as input of another, you can use pipes, this is a powerful means of building useful command lines for complex operations.

For example, the command below will list the top five recently modified files.

$ ls -lt | head -n 5 

Here, the options:

  1. -l – enables long listing format
  2. -t – sort by modification time with the newest files are shown first
  3. -n – specifies the number of header lines to show

Important Commands for Building Pipelines

Here, we will briefly review two important commands for building command pipelines and they are:

xargs which is used to build and execute command lines from standard input. Below is an example of a pipeline which uses xargs, this command is used to copy a file into multiple directories in Linux:

$ echo /home/aaronkilik/test/ /home/aaronkilik/tmp | xargs -n 1 cp -v /home/aaronkilik/bin/sys_info.sh

Copy Files to Multiple Directories

Copy Files to Multiple Directories

And the options:

  1. -n 1 – instructs xargs to use at most one argument per command line and send to the cp command
  2. cp – copies the file
  3. -v – displays progress of copy command.

For more usage options and info, read through the xargs man page:

$ man xargs 

tee command reads from standard input and writes to standard output and files. We can demonstrate how teeworks as follows:

$ echo "Testing how tee command works" | tee file1 

tee Command Example

tee Command Example

File or text filters are commonly used with pipes for effective Linux file operations, to process information in powerful ways such as restructuring output of commands (this can be vital for generation of useful Linux reports), modifying text in files plus several other Linux system administration tasks.

To learn more about Linux filters and pipes, read this article Find Top 10 IP Addresses Accessing Apache Server, shows a useful example of using filters and pipes.

In this article, we explained the fundamentals of I/O redirection in Linux. Remember to share your thoughts via the feedback section below.

Source

WP2Social Auto Publish Powered By : XYZScripts.com