Linux curl command examples – Part 2
http://ift.tt/2q9KsPV
curl, as we know, is very useful command line utility & is used to download/upload data from/onto server.
Linux
Linux
via LXer Linux News http://lxer.com/
May 6, 2017 at 01:53AM
Solutions for your Business
Linux curl command examples – Part 2
http://ift.tt/2q9KsPV
curl, as we know, is very useful command line utility & is used to download/upload data from/onto server.
Linux
Linux
via LXer Linux News http://lxer.com/
May 6, 2017 at 01:53AM
When you delete a line of code that you thought was useless…
http://ift.tt/2qGPeEj
Or when you run rm -rf / on Linux or Unix-like system 😉
Another gif showing the same issue:
Now, I am hitting u, u, u in vim to undo (ctrl-z in other IDE) like a maniac to get back that line or a code block. Lmao.
Linux
Linux
via [RSS/Feed] nixCraft: Linux Tips, Hacks, Tutorials, And Ideas In Blog Format http://ift.tt/Awfi7s
May 7, 2017 at 05:05PM
Graph Any Data with Cacti!
http://ift.tt/2qbLG9N
For the past few years, I’ve been trying to understand how to make graphs usingRRDtool (Round-Robin Database tool) after failing miserably to understand MRTG(Multi-Router Traffic Grapher) before that. The thing I like about RRDtoolis that it’s newer and supports a wider variety of data sources.
Linux
Linux
via LXer Linux News http://lxer.com/
April 27, 2017 at 04:43PM
How to install GoAccess web log analyzer with Nginx on Linux or Unix
http://ift.tt/2pLDvUM
oAccess is a real-time Apache/Nginx/Lighttpd web log analyzer and interactive viewer that runs in a terminal and provides fast and valuable HTTP statistics for system administrators that require a visual report on the fly. How do I install GoAccess on Ubuntu Linux server? How can I instal and use GoAccess on Linux or Unix-like system?
GoAccess is a free and open source real-time web log analyzer and interactive viewer that runs in a terminal in Linux/Unix/*BSD systems or through your browser. T
his tutorial shows how to install the GoAccess on Linux/Unix and how to use it on the *nix command line
.
You must install GoAccess as per your Linux or Unix distro.
Type the following apt-get command/apt command as follows:
$ sudo apt-get install goaccess
Sample outputs:
Type the following apt-get command/apt command as follows:
$ sudo apt-get install goaccess
Type the following apt-get command/apt command as follows:
$ sudo apt-get install goaccess
Type the following apk command as follows:
# apk add goaccess
First turn on the EPEL repo and type the following yum command as follows:
$ sudo yum install epel-release
$ sudo yum install goaccess
First turn on the EPEL repo and type the following dnf command as follows:
$ sudo dnf install epel-release
$ sudo dnf install goaccess
Type the following pacman command as follows:
# pacman -S goaccess
To install the port:
# cd /usr/ports/sysutils/goaccess/ && make install clean
OR To add the package:
# pkg install goaccess
Type the following brew command:
$ brew install goaccess
Type the following pkg_add command:
$ doas pkg_add goaccess
Type the following command to download and compile GoAccess on Unix-like system:
$ cd /tmp
$ wget http://ift.tt/2oMTfXs
$ tar -zxvf goaccess-1.2.tar.gz
$ cd goaccess-1.2/
$ ./configure --enable-utf8 --enable-geoip=legacy && make
$ sudo make install
The syntax is:
goaccess -f /path/to/nginx/access.log
goaccess -f /path/to/apache/access.log
goaccess -f /path/to/lighttpd/access.log
goaccess -f /path/to/lighttpd/access.log /path/to/lighttpd/access.log.1
zcat /path/to/nginx/access.log.*.gz | goaccess access.log -
goaccess [options] /path/to/lighttpd/access.log
Let us see some examples.
goaccess -f /var/log/nginx/access.log
You will be promoted to select “Log Format Configuration”:
Next you will see a report as follows:
You can use the following keys:
The syntax is:
goaccess -f /var/log/nginx/access.log --log-format=COMBINED -o http://ift.tt/2oYHv05
Sample outputs:
Parsing... [669] [1112]
You can view report with your web-browser. Here is a sample report:
http://ift.tt/2oYOw13
The syntax is:
$ ssh [email protected] 'cat /var/log/nginx/access.log'|goaccess --log-format=COMBINED -a -
$ ssh [email protected] 'cat /var/log/nginx/access.log'|goaccess --log-format=COMBINED -
$ ssh [email protected] 'cat /var/log/nginx/access.log'|goaccess --log-format=COMBINED -o http://ift.tt/2oYNodZ -
Run it as follows:
$ goaccess -f access.log -o report.html --real-time-html --addr=192.168.1.254 --port=8022
See man page or project page for more info.
Linux
Linux
via [RSS/Feed] nixCraft: Linux Tips, Hacks, Tutorials, And Ideas In Blog Format http://ift.tt/Awfi7s
April 30, 2017 at 12:49PM
How to Install Invoice Ninja on Ubuntu 16.04
http://ift.tt/2oTY4um
Invoice Ninja is a web-based open source software for invoicing, payments, time tracking and much more. You can create Invoices online in seconds, interact with payments gateways like Stripe, PayPal, WePay, and others. Invoice Ninja can show you a live invoice preview in PDF format. You can change the company logo in templates easily yourself. Invoice Ninja is based on PHP, build with the Laravel Framework and can be installed on Linux and Windows.
In this tutorial, I will show you how to install Invoice Ninja on Ubuntu 16.04. I will use Nginx as the web server and MariaDB as Database system.
Prerequisite
In this step, we will install the Nginx web server. Connect to your server with your ssh root account (or login with another user and use ‘sudo -s’ to become root) and update the repository.
ssh [email protected]
apt-get update
Install Nginx with the apt command below:
apt-get install -y nginx
When the nginx installation is finished, start Nginx and add it to start at boot time.
systemctl start nginx
systemctl enable nginx
Make sure nginx is running. Check the port used by nginx, the default web server port is 80.
netstat -plntu
After installing Nginx, we need to install the package mariadb-server on the system. It’s available in the Ubuntu repository. Install mariadb-server and its dependencies with the command below.
apt-get install -y mariadb-server
When the installation is done, start the mariadb service and enable it to start at boot time with these systemctl commands.
systemctl restart mysql
systemctl enable mysql
MariaDB is started, now you can set the root password for mariadb with the command below.
mysql_secure_installation
Set your new MariaDB root password.
Set root password? [Y/n] Y
New password:
Re-enter new password:
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
Next, try to connect with the mysql shell as root user.
mysql -u root -p
TYPE YOUR ROOT PASSWORD
You will see MySQL shell when everything worked correctly.
Now we need to create a new database and a new user for Invoice Ninja. I will create a new database named ‘ninjadb‘, a new user ‘ninja‘ with password ‘aqwe123‘. Please choose a different and secure password for your installation!
Create them with the mysql query below. Create a new database, create new user and password, grant database to the new user with a password.
create database ninjadb;
create user [email protected] identified by ‘aqwe123’;
grant all privileges on ninjadb.* to [email protected] identified by ‘aqwe123’;
flush privileges;
MariaDB has been installed and a new database and user for Invoice Ninja were created.
Invoice Ninja is based on PHP, so we need to install PHP to the system. We will use PHP7.0-FPM for this Invoice Ninja installation.
Install PHP7.0-FPM and other PHP extensions needed by Invoice Ninja with the command below.
apt-get install -y php7.0-fpm php7.0-gd php7.0-xml php7.0-mysql php7.0-zip php7.0-mbstring php7.0-mcrypt php7.0-curl php7.0-gmp
After the installation, go to the PHP configuration directory and edit the php.ini file.
cd /etc/php/7.0/
vim fpm/php.ini
Uncomment the CGI line below and change the value to 0.
cgi.fix_pathinfo=0
Save and exit.
Edit php.ini file in the cli directory.
vim cli/php.ini
Uncomment the CGI line below and change the value to 0.
cgi.fix_pathinfo=0
Save and exit.
Next, start PHP7.0-FPM and enable it to start at boot time.
systemctl restart php7.0-fpm
systemctl enable php7.0-fpm
By default, PHP7.0-FPM is running with a socket file, check it with the command below and you will see the PHP socket file as shown in the screenshot.
netstat -pl
PHP7.0-FPM and all extensions needed by Invoice Ninja are installed.
In this step, we will download and configure Invoice Ninja. First, install unzip on your system.
apt-get install -y unzip
Go to the ‘/var/www’ directory and download the Invoice Ninja source code with the wget command.
cd /var/www/
wget http://ift.tt/2p2Pzzr
Extract the Invoice Ninja zip file and go to the ‘ninja’ directory.
unzip ninja-v3.1.0.zip
cd ninja/
For the Laravel project, we need to install the composer dependency manager for PHP. It’s available in the Ubuntu repository, so we can install it with the apt command.
apt-get install -y composer
Next, install Invoice Ninja dependencies with the composer command below.
composer install –no-dev -o
When the dependency installation is done, copy the .env file and edit with vim.
cp .env.example .env
vim .env
Change the value of database settings below.
DB_DATABASE=ninjadb
DB_USERNAME=ninja
DB_PASSWORD=aqwe123
Save and exit.
Next, edit the database configuration in the config directory.
vim config/database.php
We are using MariaDB/MySQL database, go to the MySQL line 55.
‘database’ => env(‘DB_DATABASE’, ‘ninjadb’),
‘username’ => env(‘DB_USERNAME’, ‘ninja’),
‘password’ => env(‘DB_PASSWORD’, ‘aqwe123’),
Replace the password with the one that you have set for the ninja user!
Save and exit.
All configuration files are edited. Next, migrate the database with the command below.
php artisan migrate
You will be asked to run the command, type ‘yes‘ and press Enter.
Next, seed the database with all records.
php artisan db:seed
Type ‘yes‘ and press Enter to confirm.
Generate a new application key for the Laravel project Invoice Ninja.
php artisan key:generate
You will see the application key.
Edit the app.php file with vim.
vim config/app.php
Go to the APP_KEY line 85 and paste the key we generated.
‘key’ => env(‘APP_KEY’, ‘base64:0o5QLWbNeDCNer064+600Hl8oJ20OPCIymadKJQ1RGo=’),
Save and exit.
Finally, change the owner of ‘/var/www/ninja‘ directory to ‘www-data‘ user and group.
cd /var/www/
chown -R www-data:www-data ninja/
Invoice Ninja is configured and ready for the installation.
In this step, we will generate an SSL Certificate file with the OpenSSL command and create new virtual host configuration for Invoice Ninja. If you are on a live server, you can use a free SSL from Let’s Encrypt instead of generating a self-signed SSL cert with OpenSSL.
Create a new ‘cert‘ directory for the SSL files.
mkdir -p /etc/nginx/cert/
Run the openssl command below to generate the certificate files.
openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/ninja.crt -keyout /etc/nginx/cert/ninja.key
Change the permission of the certificate files to ‘600’.
chmod 600 /etc/nginx/cert/*
Next, go to the Nginx directory and create a new virtual host configuration file named ‘ninja‘.
cd /etc/nginx/
vim sites-available/ninja
Paste virtual host configuration below.
server {
# Your Domain Name - hakase-labs.co
listen 80;
server_name ninja.co www.ninja.co;
# Rewrite redirect to https
add_header Strict-Transport-Security max-age=2592000;
rewrite ^ https://$server_name$request_uri? permanent;
}
server {
# Your Domain Name - hakase-labs.co
listen 443 default;
server_name ninja.co www.ninja.co;
# Enable SSL for Invoice Ninja
ssl on;
ssl_certificate /etc/nginx/cert/ninja.crt;
ssl_certificate_key /etc/nginx/cert/ninja.key;
ssl_session_timeout 5m;
ssl_ciphers 'AES128+EECDH:AES128+EDH:!aNULL';
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
# Invoice Ninja web root files
root /var/www/ninja/public;
index index.html index.htm index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
# Access and Error Log for Invoice Ninja
access_log /var/log/nginx/ininja.access.log;
error_log /var/log/nginx/ininja.error.log;
sendfile off;
# Handle PHP Applications
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
}
location ~ /\.ht {
deny all;
}
}
Save and exit.
Enable the ninja virtual host and test the Nginx configuration, make sure there is no error.
ln -s /etc/nginx/sites-available/ninja /etc/nginx/sites-enabled/
nginx -t
Now restart the nginx web server.
systemctl restart nginx
The Invoice Ninja virtual host configuration is finished.
Open your web browser and type in the Invoice Ninja URL: ninja.co. You will be redirected to the https connection and setup page.
Type in the Application Settings, Database Connection, Email Settings, User Details and check the Invoice Ninja TOS.
Click ‘Submit‘ and you will be redirected to the login page of Invoice Ninja.
Type in your email and password, then press ‘LOGIN‘.
You will see the Invoice Ninja Dashboard.
Invoice Ninja Settings Page.
Invoice Ninja Installed with Nginx and MariaDB on Ubuntu 16.04.
Linux
Linux
via LXer Linux News http://lxer.com/
April 28, 2017 at 04:17PM
neofetch: Awesome system info bash script that supports Linux, MacOS, and Unix-like systems
http://ift.tt/2qfEOHT
The neofetch command written in a bash shell. The main purpose of neofetch is to be used in screenshots to display other users what operating system or Linux distro you are using including theme, icons and more. This command shows info about your system next to an image, your operating system logo and other info. Neofetch version 3.1.0 has been released. Let us see how to install the latest version and use it.
Type the following wget command to grab the latest tar ball:
$ wget http://ift.tt/2pjNcXo
Install it:
$ tar -zxvf 3.1.0.tar.gz
$ cd neofetch-3.1.0
$ sudo make install
Type the following apt command:
$ sudo apt install neofetch
Type the following apt-get command:
$ sudo apt-get install neofetch
Type the following brew command:
$ brew install neofetch
Open the terminal app and type the command:
$ neofetch
$ neofetch options
$ neofetch --config off --bold off --colors 4 1 8 8 8 7
Sample outputs from macOS:
Sample outputs from Ubuntu Linux desktop:
Type the following command:
$ neofetch --help
$ neofetch --help | more
Usage: neofetch --option "value" --option "value" Neofetch is a CLI system information tool written in BASH. Neofetch displays information about your system next to an image, your OS logo, or any ASCII file of your choice. NOTE: Every launch flag has a config option. Options: INFO: --disable infoname Allows you to disable an info line from appearing in the output. NOTE: You can supply multiple args. eg. 'neofetch --disable cpu gpu disk shell' --os_arch on/off Hide/Show OS architecture. --speed_type type Change the type of cpu speed to display. Possible values: current, min, max, bios, scaling_current, scaling_min, scaling_max NOTE: This only supports Linux with cpufreq. --speed_shorthand on/off Whether or not to show decimals in CPU speed. --cpu_shorthand type Shorten the output of CPU Possible values: name, speed, tiny, on, off --cpu_cores type Whether or not to display the number of CPU cores Possible values: logical, physical, off NOTE: 'physical' doesn't work on BSD. --cpu_speed on/off Hide/Show cpu speed. --cpu_temp C/F/off Hide/Show cpu temperature. NOTE: This only works on Linux and BSD. NOTE: For FreeBSD-based systems, you need to enable coretemp kernel module. --distro_shorthand on/off Shorten the output of distro (tiny, on, off) NOTE: This option won't work in Windows (Cygwin) --kernel_shorthand on/off Shorten the output of kernel NOTE: This option won't work in BSDs (except PacBSD and PC-BSD) --uptime_shorthand on/off Shorten the output of uptime (tiny, on, off) --refresh_rate on/off Whether to display the refresh rate of each monitor Unsupported on Windows --gpu_brand on/off Enable/Disable GPU brand in output. (AMD/NVIDIA/Intel) --gpu_type type Which GPU to display. (all, dedicated, integrated) NOTE: This only supports Linux. --gtk_shorthand on/off Shorten output of gtk theme/icons --gtk2 on/off Enable/Disable gtk2 theme/font/icons output --gtk3 on/off Enable/Disable gtk3 theme/font/icons output --shell_path on/off Enable/Disable showing $SHELL path --shell_version on/off Enable/Disable showing $SHELL version --disk_show value Which disks to display. Possible values: '/', '/dev/sdXX', '/path/to/mount point' NOTE: Multiple values can be given. (--disk_show '/' '/dev/sdc1') --disk_subtitle type What information to append to the Disk subtitle. Takes: name, mount, dir 'name' shows the disk's name (sda1, sda2, etc) 'mount' shows the disk's mount point (/, /mnt/Local Disk, etc) 'dir' shows the basename of the disks's path. (/, Local Disk, etc) --ip_host url URL to query for public IP --song_shorthand on/off Print the Artist/Title on separate lines --install_time on/off Enable/Disable showing the time in Install Date output. --install_time_format 12h/24h Set time format in Install Date to be 12 hour or 24 hour. TEXT FORMATTING: --colors x x x x x x Changes the text colors in this order: title, @, underline, subtitle, colon, info --underline on/off Enable/Disable the underline. --underline_char char Character to use when underlining title --bold on/off Enable/Disable bold text COLOR BLOCKS: --color_blocks on/off Enable/Disable the color blocks --block_width num Width of color blocks in spaces --block_height num Height of color blocks in lines --block_range num num Range of colors to print as blocks BARS: --bar_char 'elapsed char' 'total char' Characters to use when drawing bars. --bar_border on/off Whether or not to surround the bar with '[]' --bar_length num Length in spaces to make the bars. --bar_colors num num Colors to make the bar. Set in this order: elapsed, total --cpu_display mode Bar mode. Possible values: bar, infobar, barinfo, off --memory_display mode Bar mode. Possible values: bar, infobar, barinfo, off --battery_display mode Bar mode. Possible values: bar, infobar, barinfo, off --disk_display mode Bar mode. Possible values: bar, infobar, barinfo, off IMAGE BACKEND: --backend backend Which image backend to use. Possible values: 'ascii', 'caca', 'catimg', 'jp2a', 'iterm2', 'off', 'sixel', 'tycat', 'w3m' --source source Which image or ascii file to use. Possible values: 'auto', 'ascii', 'wallpaper', '/path/to/img', '/path/to/ascii', '/path/to/dir/' --ascii source Shortcut to use 'ascii' backend. --caca source Shortcut to use 'caca' backend. --catimg source Shortcut to use 'catimg' backend. --iterm2 source Shortcut to use 'iterm2' backend. --jp2a source Shortcut to use 'jp2a' backend. --sixel source Shortcut to use 'sixel' backend. --termpix source Shortcut to use 'termpix' backend. --tycat source Shortcut to use 'tycat' backend. --w3m source Shortcut to use 'w3m' backend. --off Shortcut to use 'off' backend. NOTE: 'source; can be any of the following: 'auto', 'ascii', 'wallpaper', '/path/to/img', '/path/to/ascii', '/path/to/dir/' ASCII: --ascii_colors x x x x x x Colors to print the ascii art --ascii_distro distro Which Distro's ascii art to print NOTE: Arch and Ubuntu have 'old' logo variants. NOTE: Use 'arch_old' or 'ubuntu_old' to use the old logos. NOTE: Ubuntu has flavor variants. NOTE: Change this to 'Lubuntu', 'Xubuntu', 'Ubuntu-GNOME', 'Ubuntu-Studio' or 'Ubuntu-Budgie' to use the flavors. NOTE: Alpine, Arch, Crux, Gentoo, OpenBSD, and Void have a smaller logo variant. NOTE: Change this to 'alpine_small', 'arch_small', 'crux_small', 'gentoo_small', 'openbsd_small', and 'void_small' to use the small logos. --ascii_bold on/off Whether or not to bold the ascii logo. -L, --logo Hide the info text and only show the ascii logo. Possible values: bar, infobar, barinfo, off IMAGE: --size 00px | --size 00% How to size the image. Possible values: auto, 00px, 00%, none --crop_mode mode Which crop mode to use Takes the values: normal, fit, fill --crop_offset value Change the crop offset for normal mode. Possible values: northwest, north, northeast, west, center, east, southwest, south, southeast --xoffset px How close the image will be to the left edge of the window. This only works with w3m. --yoffset px How close the image will be to the top edge of the window. This only works with w3m. --bg_color color Background color to display behind transparent image. This only works with w3m. --gap num Gap between image and text. NOTE: --gap can take a negative value which will move the text closer to the left side. --clean Delete cached files and thumbnails. SCREENSHOT: -s, --scrot /path/to/img Take a screenshot, if path is left empty the screen- shot function will use $scrot_dir and $scrot_name. -su, --upload /path/to/img Same as --scrot but uploads the scrot to a website. --image_host imgur/teknik Website to upload scrots to. --scrot_cmd cmd Screenshot program to launch OTHER: --config /path/to/config Specify a path to a custom config file --config none Launch the script without a config file --help Print this text and exit --version Show neofetch version -v Display error messages. -vv Display a verbose log for error reporting. DEVELOPER: --gen-man Generate a manpage for Neofetch in your PWD. (Requires GNU help2man)
See neofetch project home page for more info or to download the latest version.
Linux
Linux
via [RSS/Feed] nixCraft: Linux Tips, Hacks, Tutorials, And Ideas In Blog Format http://ift.tt/Awfi7s
April 26, 2017 at 02:37PM
Microsoft Will Block Desktop ‘Office’ Apps From ‘Office 365’ Services In 2020
http://ift.tt/2p8vk3J
An anonymous reader writes:
Microsoft is still encouraging businesses to rent their Office software, according to TechRadar. "In a bid to further persuade users of the standalone versions of Office to shift over to a cloud subscription (Office 365), Microsoft has announced that those who made a one-off purchase of an Office product will no longer get access to the business flavours of OneDrive and Skype come the end of the decade." PC World explains that in reality this affects very few users. "If you’ve been saving all of your Excel spreadsheets into your OneDrive for Business cloud, you’ll need to download and move them over to a personal subscription — or pony up for Office 365, as Microsoft really wants you to do." Microsoft is claiming that when customers connect to Office 365 services using a legacy version of Office, "they’re not enjoying all that the service has to offer. The IT security and reliability benefits and end user experiences in the apps is limited to the features shipped at a point in time. To ensure that customers are getting the most out of their Office 365 subscription, we are updating our system requirements." And in another blog post, they’re almost daring people to switch to Linux. "Providing over three years advance notice for this change to Office 365 system requirements for client connectivity gives you time to review your long-term desktop strategy, budget and plan for any change to your environment." In a follow-up comment, Microsoft’s Alistair Speirs explained that "There is still an option to get monthly desktop updates, but we are changing the 3x a year update channel to be 2x a year to align closer to Windows 10 update model. We are trying to strike the right balance between agile, ship-when-ready updates and enterprise needs of predictability, reliability and advanced notice to validate and prepare."
Read more of this story at Slashdot.
Linux
Fun-Time Waste
via Slashdot https://slashdot.org/
April 22, 2017 at 10:08PM
How to execute sudo without password?
http://ift.tt/2oKSbjy
If you are the only sysadmin or developer, you can skip password when you run sudo command. By default, sudo asks for the password. Here is how you can run sudo without having to enter your password.
I’m a new Unix system user. How do I use sudo command without a password on a Linux or Unix-like systems? I log in as tom@my-cloud-server-ip and disabled root login for ssh. After login, I need to run some commands as root user. I am the only sysadmin using my server. How do I run or execute sudo command without a password for a user named Tom under Debian/Ubuntu/CentOS Linux cloud server?
How to run sudo command without a password on a Linux or Unix
Linux
Linux
via [RSS/Feed] nixCraft: Linux Tips, Hacks, Tutorials, And Ideas In Blog Format http://ift.tt/Awfi7s
April 18, 2017 at 05:28PM
Termbox – An Easy way to Access Preconfigured Linux Command-Line Workspaces via Web Browser
http://ift.tt/2oJtSVo
Folks, today we are going to show you about the fantastic website called Termbox where users can test/work almost six Operating systems through browser. It’s similar to Ubuntu online tour website which you might tried earlier. The main difference here is that offers only command line interface not for GUI.
Whoever wants to learn Linux without spending money & efforts (i mean no need to install Virtual Machine and Linux operating system on it) termbox is a right choice, only you should have a working internet connection that’s it. Also people who aren’t familiar with the command line to have a practice without damaging their own systems. This is the right place to kick start the Linux learning.
You can Launch a Linux box with two clicks from termbox, How ? It’s very simple, just select the distribution which you want to test then validate captcha finally click on launch button to launch the distribution.
After launch, you will get a Linux Terminal screen with root privilege. So play whatever you want and the session remains alive for 3 hours. Each boxes are securely isolated in their own virtual machine. Boxes and all their data are automatically deleted after 3 hours.
The termbox team is currently working on a new version in the name of FastStack that is built on LXD.
The following Linux distributions are supported as of now.
It’s completely free, no sign up required and you don’t want to pay even single penny.
Visit termbox website and choose the distribution which you want to test then validate captcha finally click on launch button to launch the Linux Terminal.
We can change the terminal theme if we get bored.
Termbox using HyperContainer in the backend and hterm as a front end. Each box connected through a single public port which you can see at the botttom of the terminal page. Additionally you can’t use systemd command like systemctl to start or stop the services. Instead, look for the service file in /usr/lib/systemd/system/ and execute the ExecStart command manually.
HyperContainer Hyper is a Hypervisor-agnostic Docker Runtime which Make VM run like Container, by combining container & Isolated by VM.
Hterm hterm is a JS library that provides a fast & portable terminal emulator across browsers. It only provides the platform for rendering terminal output and accepting keyboard input.
Linux,Gray Matters
Linux
via LXer Linux News http://lxer.com/
April 15, 2017 at 01:13AM
Learn Swift Programming with No-Charge Books
http://ift.tt/2p4FjrF
Swift is a powerful and intuitive general-purpose programming language for the OS X, iOS, watchOS, and Linux operating systems. It is developed by Apple Inc. Swift is intended to be more resilient to erroneous code (“safer”) than Objective-C, and more concise.
Swift is a new language, first appearing in 2014. It is friendly to new programmers, feels familiar to Objective-C developers, and the language is optimized for development. It was launched under a proprietary license, but Apple made the language open source in December 2015 by releasing Swift 2.2 and later under the Apache License 2.0. By open-sourcing Swift, developers are able to use the language for their own purposes and go beyond OS X, iOS and watchOS apps.
Besides the official Swift Programming Language book (featured below), there are no other good quality open source Swift books. Given the short passage of time since Apple open sourced the language, this isn’t that surprising. There was an interesting ‘The Swift Book’, which is available under the MIT license, but it is mostly incomplete and updates have stalled. Fortunately, there are some excellent Swift books which can be read without charge which fill the void.
This article is referenced in OSSBlog’s series of open source programming books.
By Apple Inc. (525 pages) The Swift Programming Language is the authoritative reference for Swift, offering a guided tour, a comprehensive guide, and a formal reference of the language. The book is available as a ePub, but there are PDF versions available to download. This book is made available under the Creative Commons Attribution 4.0 International (CC BY 4.0) License. Unfortunately, the rest of the books featured in this article are not released under an open source license. |
|
By Anthony Gray (186 pages) This pocket reference sets out Swift’s modern language features, including type safety, generics, type inference, closures, tuples, automatic memory management, and support for Unicode. Topics include:
NOTE: This book is not released under an open source license. |
|
By Aidan Finn (HTML) The aim of this book is to quickly and succinctly introduce and demonstrate all the major features of the Swift programming language. Chapters cover:
NOTE: This book is not released under an open source license. |
|
By Paris Buttfield-Addison, Jon Manning, Tim Nugent (39 pages) This book offers a concise tour of Swift 3 and its growing ecosystem. The book highlights the new features of Swift 3, and using it on non-Apple platforms. This book helps the reader to:
NOTE: This book is not released under an open source license. |
|
By Paul Hudson (HTML) Hacking with Swift is designed for beginners to intermediate programmers wishing to learn Swift 3 and iOS development with real-world, practical projects. The e-book contains the following projects.
NOTE: This book is not released under an open source license. |
Linux
Linux
via LXer Linux News http://lxer.com/
April 15, 2017 at 03:14AM