Docker : An Introduction to LXC

Docker is an open source project, which packages applications and their dependencies in a virtual container that can run on any Linux server. Docker has immense possibilities as it facilitates the running of several OS's on the same server.


Technology is changing faster than styles in than fashion world, and there are many new entrants specific to the open source, cloud, virtualisation, and DevOps technologies. Docker is one of them. The aim of this article is to give you a clear idea of Docker, its architecture and its functions, before getting started with it. 
Docker is a new open source tool based on Linux container technology(LXC), designed to change how you think about workload/application deployments. It helps you to easily create light-weight, self-sufficient, portable application containers that can be shared, modified and easily deployed to different infrastructure such as cloud/compute servers or bare metal servers. The Idea is to provide a comprehensive abstraction layer that allows developers to 'containerise' or 'package' any application  and have it run on any infrastructure.
Docker is based on container virtualisation and it is not new. There is no better tool than Docker to help manage kernel level technologies such as LXC, cgroups and a copy-on-write filesystems. It helps us manage the complicated kernel layer technologies through tools and APIs.

How to Increase PhpMyAdmin Session Timeout from 1440 seconds


phpMyAdmin is one of my favorite tools and I use it all the time. But man, the 24-minute session timeout is a huge problem . A short cookie lifetime is all well and good on your production server, but what about when you’re just testing new things  away on the computer in your test envirnment?
Did a little grepping and found that you can override this setting, even though it’s not documented anywhere but in the codes (so far as I can tell). To override it, just open up config.inc.php in the root phpMyAdmin directory and add this setting (anywhere, but  mostly at end of file):
phpmyadmin config file for ubuntu Server : /etc/phpmyadmin/config.inc.php

$cfg['LoginCookieValidity'] = <your_new_timeout>;

Where <your_new_timeout> is some number larger than 1800. Personally, I chose 28800, which is 8 hours.

Define how long a login cookie is valid. Please note that php configuration option session.gc_maxlifetime might limit session validity and if the session is lost, the login cookie is also invalidated. So it is a good idea to set session.gc_maxlifetime at least to the same value of $cfg['LoginCookieValidity'].
php.ini file for ubuntu Server : /etc/php5/apache2/php.ini

Disclaimer! It should go without saying that increasing the timeout is a (comparatively minor) security risk (but a risk nonetheless). Obviously, do not do this on your production server. And as always, proceed with caution.

Setting up a SVN Server on a EC2 Instance (Ubuntu 14.04 LTS)

Setting up an SVN server on my EC2 instance (on AWS), is a major problem whenever we connect svn using key-file(key.pem for AWS).
Here’s my situation:
  • I have a micro EC2 instance hosted with Amazon.
  • I used a non-standard port for ssh access
  • I have a pem file provided by Amazon for access through ssh
  • I run Ubuntu 14.04 Server on my EC2 instance
  • On the client side, I’m running Ububtu 14.04 Desktop
With that out of the way, the first thing I had to do was insure svn was installed on my server and Desktop :
sudo apt-get install -y subversion

Then, on my EC2 instance, I want to create both the directory where I’ll store repositories, and the subsequently, create the repository itself. Permissions and ownership are of the utmost importance. This worked for me:
sudo mkdir -p /srv/svn/
sudo chown ubuntu:ubuntu /srv/svn/
svnadmin create /srv/svn/{repo_name}
Mind the {rep_name} placeholder above 

vim /svnrepos/conf/svnserve.conf
In that file add these three lines:
anon-access = none
auth-access = write
password-db = passwd
Create a password file:
vi /svnrepos/conf/passwd
In that file add a line for your user:
# add users in the format : user = password
tony = mypassword

Ubuntu : Netbeans Installation

This Guide is useful for Netbeans Installation on Ubuntu. Generally we face problems during installation of Netbeans like JDK path, package not available, permissions denied etc. This guide gives  you step by step instructions to easy installation of Netbeans. Hope so it helps you a lot !

1. Update your Ubuntu 14.04 :
Ubuntu is open-source operating system which provides updates frequently for users to overcome security breaches and enhance user experience. Just type this command on your terminal : (open terminal using Ctrl+Alt+t or type terminal in ubuntu search bar )       
sudo add-apt-update

For LAMP stack use following commands :
sudo apt-get install apache2
sudo apt-get install php5
sudo apt-get install mysql-server mysql-client
sudo apt-get install phpmyadmin
 
2. Download Netbeans from official website :  
Select your os type(32/64 bit) and download from following link :
                               https://netbeans.org/downloads/

Cloud Computing Basics Part - 1

CLOUD-COMPUTING ( New Era Of Computing )

Clearly, there is a need for a baseline definition and a discussion of the many aspects comprising cloud computing.I believes that a detailed characterization of cloud computing must include three things:
1. The consumption model. Cloud computing offers a unique way to consume compute, network, and storage resources.
2. The services model. Cloud computing can be used as a platform for different activities up and down the technology stack.
3. The deployment model. Cloud computing is not a one-size-fits-all platform.Rather, there are numerous ways to deploy and utilize clouds.


Linux Basic Tutorials Part - 8


UNIX/Linux Tutorial 

UNIX Variables

Variables are a way of passing information from the shell to programs when you run them. Programs look "in the environment" for particular variables and if they are found will use the values stored. Some are set by the system, others by you, yet others by the shell, or any program that loads another program. 
Standard UNIX variables are split into two categories, environment variables and shell variables. In broad terms, shell variables apply only to the current instance of the shell and are used to set short-term working conditions; environment variables have a farther reaching significance, and those set at login are valid for the duration of the session. By convention, environment variables have UPPER CASE and shell variables have lower case names.

Linux Basic Tutorials Part - 7


UNIX/Linux Tutorial

Other useful UNIX commands  

quota

All students are allocated a certain amount of disk space on the file system for their personal files, usually about 100Mb. If you go over your quota, you are given 7 days to remove excess files.
To check your current quota and how much of it you have used, type
% quota -v

Linux Basic Tutorials Part - 6


UNIX/Linux Tutorial 

File system security (access rights)

In your unixstuff directory, type
% ls -l (l for long listing!)
You will see that you now get lots of details about the contents of your directory, similar to the example below.
Each file (and directory) has associated access rights, which may be found by typing ls -l. Also, ls -lg gives additional information as to which group owns the file (beng95 in the following example):
-rwxrw-r-- 1 ee51ab beng95 2450 Sept29 11:52 file1
In the left-hand column is a 10 symbol string consisting of the symbols d, r, w, x, -, and, occasionally, s or S. If d is present, it will be at the left hand end of the string, and indicates a directory: otherwise - will be the starting symbol of the string. 

Linux Basic Tutorial Part - 5


UNIX/Linux Tutorial

Wildcards

The * wildcard

The character * is called a wildcard, and will match against none or more character(s) in a file (or directory) name. For example, in your unixstuff directory, type
% ls list*
This will list all files in the current directory starting with list....
Try typing
% ls *list
This will list all files in the current directory ending with ....list

Linux Basic Tutorials Part -4


UNIX/Linux Tutorial 

Redirection  

Most processes initiated by UNIX commands write to the standard output (that is, they write to the terminal screen), and many take their input from the standard input (that is, they read it from the keyboard). There is also the standard error, where processes write their error messages, by default, to the terminal screen.
We have already seen one use of the cat command to write the contents of a file to the screen.

Linux Basic Tutorials Part - 3


UNIX/Linux Commands

 Copying Files

cp (copy)

cp file1 file2 is the command which makes a copy of file1 in the current working directory and calls it file2 
What we are going to do now, is to take a file stored in an open access area of the file system, and use the cp command to copy it to your unixstuff directory.
First, cd to your test directory.
% cd ~/unixstuff
Then at the UNIX prompt, type,
% cp /vol/examples/tutorial/science.txt .
Note: Don't forget the dot . at the end. Remember, in UNIX, the dot means the current directory.
The above command means copy the file science.txt to the current directory, keeping the name the same.
(Note: The directory /vol/examples/tutorial/ is an area to which everyone in the school has read and copy access.

Linux Basic Tutorials Part - 2

After looking on Open Source and GNU . We look around basic command of the Linux/Unix.

1.1 Listing files and directories

ls (list)

When you first login, your current working directory is your home directory. Your home directory has the same name as your user-name, for example, john123, and it is where your personal files and subdirectories are saved.
To find out what is in your home directory, type
% ls
The ls command ( lowercase L and lowercase S ) lists the contents of your current working directory.
There may be no files visible in your home directory, in which case, the UNIX prompt will be returned. Alternatively, there may already be some files inserted by the System Administrator when your account was created.
ls does not, in fact, cause all the files in your home directory to be listed, but only those ones whose name does not begin with a dot (.) Files beginning with a dot (.) are known as hidden files and usually contain important program configuration information. They are hidden because you should not change them unless you are very familiar with UNIX!!!
To list all files in your home directory including those whose names begin with a dot, type
% ls -a
As you can see, ls -a lists files that are normally hidden.
ls is an example of a command which can take options: -a is an example of an option. The options change the behaviour of the command. There are online manual pages that tell you which options a particular command can take, and how each option modifies the behaviour of the command. (See later in this tutorial) 

Linux Basic Tutorials Part - 1

Welcomes you all to New and exciting world of Linux. Most used operating system by modern servers, super-computers and desktops. Now I am here to help to understand basic of Linux.

Open Source & GNU Foundation

Starting Linux before we learn some technologies and concepts behind it. Let's look about Open source and GNU Foundation.

Open source is an approach to the design, development, and distribution of software, offering practical accessibility to a software's source code. Some consider open source as one of various possible design approaches, while others consider it a critical strategic element of their operations. Before open source became widely adopted, developers and producers used a variety of phrases to describe the concept; the term open source gained popularity with the rise of the Internet, which provided access to diverse production models, communication paths, and interactive communities.
Software development costs in organizations have been touted as being approximately 15% of total costs. This indicates that the value of one over another development methodology is more of a marketing decision (which customers and pricing models) as much as it is about the design of software. The open source model of operation and decision making allows concurrent input of different agendas, approaches and priorities, and differs from the more closed, centralized models of development The principles and practices are commonly applied to the peer production development of source code for software that is made available for public collaboration. The result of this peer-based collaboration is usually released as open-source software, however, open source methods are increasingly being applied in other fields of endeavour, such as biotechnology 
The Open Source Definition is used by the Open Source Initiative to determine whether or not a software license can be considered open source.