Configuring NFS to access the files from remote Linux machine as a mount point

I have a 2Tb of storage on a linux box, and i want to use that storage as a mount point from another machine.
As a root user on the remote machine, specify the mount point details
$cat /etc/exports
/scratch *(rw)
/fusionapps *(rw,no_root_squash)
And restart the NFS
sudo /etc/rc.d/init.d/nfs restart (All services should be in  running condition)
sudo /etc/rc.d/init.d/nfs status (All services should be  in running condition)
And on the local machine, perfrom the following steps
1. Create the stage dir under / as a root user and assign 777 permissions
2. Ad the entry to /etc/fstab file /stage nfs rw,hard,nointr,rsize=131072,wsize=131072,timeo=600,noacl,noatime,nodiratime,lock 0 0
3. Then try “mount -a”
If there are any mount point issues, say even as root user, you are not able to modify the files

Unable to mount Read-Only file System

then use

sudo mount -n -o remount,rw /
Tagged : / / / / /

What is Inno Setup?

InstallerExpert created the topic: what is Inno Setup?
Inno Setup is an open source script-driven installation system created in Delphi by Jordan Russell. The first version was released in 1997.


Since Jordan Russell wasn’t satisfied with InstallShield Express which he had received upon purchase of Borland Delphi, he decided to make his own installer.[citation needed] At first, Inno Setup was little known. The first public version was 1.09.[citation needed].

To make an installation package with version 1.09, an “ISS.TXT” file needed to be created in the installation directory. In the file, the user needed to supply variables and values which are still used in Inno Setup today. These variables served as the configuration of the installation package but many other features could not be changed. The installation compiler had no editor and was more of a shell to compile scripts.

Throughout Inno Setup’s development, it was becoming more widely used. Since Inno Setup was and still is free and open source, many software companies started switching to the open source solution in software installation[citation needed]. Since Inno Setup was based around scripting, fans of Inno Setup started ISTool and ScriptMaker to aid in visual and simpler ways to make installations for Inno Setup.

Inno Setup has won many awards including the Shareware Industry Awards three times in a row – from 2002 to 2004.

Many people have taken Inno Setup source code and used it to develop third-party versions of Inno Setup. An example is My Inno Setup Extensions by Martijn Laan. In June 2003 My Inno Setup Extensions was incorporated into Inno Setup.


* Support for all modern versions of Microsoft Windows – 95, NT 4.0, 98, 2000, Me, XP, Server 2003, XP 64-bit, XP Professional and Vista. (No service packs are required.)
* Extensive support for installation of 64-bit applications on the 64-bit editions of Windows XP and Windows Server 2003. Both the x64 and Itanium architectures are supported.
* Prior versions supported Windows NT 3.51 (Before v3.0) and Windows 3.X (Before v1.3)
* Supports creation of a single EXE to install programs for easy online distribution.
* Supports disk spanning.
* Customizable setup types, e.g. Full, Minimal, Custom.
* Complete uninstall capabilities.
* Integrated support for “deflate”, bzip2, and 7-Zip LZMA file compression. The installer has the ability to compare file version info, replace in-use files, use shared file counting, register DLL/OCXs and type libraries, and install fonts.
* Creation of shortcuts, including in the Start Menu and on the desktop.
* Creation of registry and .INI entries.
* Integrated Pascal scripting engine.
* Support for multilingual installs.
* Support for passworded and encrypted installs.
* Silent install and uninstall.
* Full source code is available (Borland Delphi 2.0-5.0).
* Supports Unicode and right-to-left languages.

Missing features

* Does not support Modify/Repair type operations.
* Does not support Vista Administrator Elevation on demand (only when required for installation directory or registry manipulation).

Inno Setup is an open source script-driven installation system created in Delphi by Jordan Russell.

Inno Setup at Wikipedia

The Inno Setup Extensions Knowledge Base (ISXKB) aims to support users of this installation system by providing a source of information, code snippets, guide lines, and ready-to-use solutions.

There are currently 147 articles in the ISXKB. You can search the ISXKB, browse through a list with all articles, or view them sorted by category. A list sorted by article popularity is also available as well as all special pages.

If you would like to help improve and extend the ISXKB Help:Editing_pages is the place to go. Note that because of spamming now only trusted users can change and add pages, but it’s easy to become one (if you’re not a spammer ;-). Help:Editing_pages explains how.

If you are a developer and you’re using Inno Setup as your deployment application feel free to add your software to the subcategory it belongs to under the Inno Setup users category, or create a subcategory if you think it doesn’t fit anywhere else.

Tagged :

Nedd help using Inno Setup

InstallerExpert created the topic: Nedd help using Inno Setup
I’m creating a setup using Inno Setup.

I need to define a set of variables to manage ftp connection.

AppName=My Program
AppVerName=My Program version 1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program

The user can value this variables and this values need to start ftp.

How can I do it?

Thank you

Tagged :

Inno Setup

msiexpert created the topic: Inno Setup
This app is an installation builder. It allows you to create a single Windows executable install package. Its script based, it has a handy wizard to help you out.

I used this mainly with Delphi apps in my old job but its a very good tool. Click the image to go to the website or

Tagged :

Distributed Setup Development Revisited

rajeshkumar created the topic: Distributed Setup Development Revisited
Last summer I wrote an article talking about the advantages and disadvantages of InstallShield versus Windows Installer XML and a Setup Democratization journey I was about to embark on. Nine months later the battle has been won and I have a few high level observations to report.

Distributed Setup Development Can Work

Back in 2005 I was involved in a distributed setup development environment that was a complete disaster. The combination of vdproj/installutil and poor software architecture choices had resulted in me being very jaded against the notion of sharing responsibility of developing setup with the developers. Unfortunately, the model of centralized setup development can only scale so far before the quality of the installer declines not because the setup developers don’t know how to write good setup but because they just can’t keep up with the sheer size of the application domain. They simply don’t know enough to be able to help make good decisions. Eventually this becomes just as fatal as the very model that first jaded me into not sharing any responsibility.

In 2009 I found myself at this breaking point and decided to once again try setup democratization. This time, I wanted to find just the right blend between centralized and decentralized. I believe with WiX, InstallShield and a little out of the box thinking we’ve succeeded in doing just this and that we will be able to scale for many more years to come.


One of the biggest problems developers had was they couldn’t easily see into the structure of an installer or compare the installer to previous builds or other installers. Sure, I could try to teach them to use orca, perform administrative installs or do other tricks but what they really needed was a powerful “Google Earth” style tool that really lets them drill down through and search across to get situational awareness. Once they had this capability they could make better choices.


Application developers don’t have 6 months of free time to learn the Windows Installer . They need to be provided a short training session with an important set of rules to not break. The component rules can be basically explained by quoting The Highlander Movies: ‘There can only be one.’ Tell them that MSI is a declarative not imperative language. Relate it to things they understand like WPF and XAML. Explain to them to not ask for things like xcopy, regsvr32, regasm, gacutil or installutil. Instead ask them to ask for things at a higher level such as register a (un)managed file, deploy a file to the GAC or install/start a service. Finally provide tools that allow them to self-serve the majority of the heavy lifting: Files and Folders. Provide a tool that is simple to use yet still creates XML documents that follow the component rules and allow for adding in additional metadata by the setup experts. Finally, invest in making strong relationship with the developers. The setup developers will find themselves with more free time to go around and consult with the developers to help bridge the gap between application domain knowledge and setup domain knowledge. Both sides will gradually learn more about the other.


Entropy applies to setup. The best way to preserve the order that you fight so hard to create is to perform extensive validation with each build. Don’t allow one mistake to build upon another. Fail the builds and get your problems fixed ASAP. Make the mistake bubble up to the developer in a way he will understand and know to not repeat.

WiX and InstallShield can Complement Each Other

Usually one thinks about WiX *VS* InstallShield. I now no longer see it this way. I now see it as WiX *AND* InstallShield. Each tool has strengths and weaknesses but blended together result in a very powerful platform. However, I do believe that is time for a fully functional InstallShield style IDE to be built upon the WiX schema. I openly hope that InstallShield will take this challenge. Until then I will be building IsWiX and I hope others will either join me.
Rajesh Kumar
Twitt me @

Tagged :

Java Installation Process in Linux – Complete guide


Download, Install and Configure JDK 8 & JRE 8

Platfrom – Debian & Ubuntu

#JRE8 - Package contains just the Java Runtime Environment 8
$ sudo apt-get install openjdk-8-jre

#JKD8 - Package contains just the Java Developement Environment 8
$ sudo apt-get install openjdk-8-jdk

Platfrom – Fedora, Oracle Linux, Red Hat Enterprise Linux, etc

#JRE8 - Package contains just the Java Runtime Environment 8
$ su -c “yum install java-1.8.0-openjdk”

#JKD8 - Package contains just the Java Developement Environment 8
$ su -c "yum install java-1.8.0-openjdk-devel"

$ wget --no-cookies --no-check-certificate --header "Cookie:; oraclelicense=accept-securebackup-cookie" ""

$ wget -c --header "Cookie: oraclelicense=accept-securebackup-cookie"

curl -v -j -k -L -H "Cookie: oraclelicense=accept-securebackup-cookie" > jdk-8u112-linux-x64.rpm

Platfrom – All platforms of Linux, Windows and Mac in Tar ball format

$ wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie"

$ wget --no-cookies --no-check-certificate --header "Cookie:; oraclelicense=accept-securebackup-cookie" ""

$ wget -c --header "Cookie: oraclelicense=accept-securebackup-cookie"

How to set JAVA in Linux System?

$ export JAVA_HOME=/opt/jdk1.8.0_144/
$ export PATH=/opt/jdk1.8.0_144/bin:$PATH;

Download, Install and Configure JDK 7 & JRE 7

Platfrom – Debian & Ubuntu

#JRE7 - Package contains just the Java Runtime Environment 7
$ sudo apt-get install openjdk-7-jre

#JKD7 - Package contains just the Java Developement Environment 7
$ sudo apt-get install openjdk-7-jdk

Platfrom – Fedora, Oracle Linux, Red Hat Enterprise Linux, etc

$ su -c “yum install java-1.7.0-openjdk”

$ su -c “yum install java-1.7.0-openjdk-devel”

Platfrom – All platforms of Linux, Windows and Mac in Tar ball format

wget –no-cookies –header “Cookie:” “”

wget –no-check-certificate –no-cookies –header “Cookie: oraclelicense=accept-securebackup-cookie”

curl -v -j -k -L -H “Cookie: oraclelicense=accept-securebackup-cookie” > jdk-7u79-linux-x64.rpm

Debian, Ubuntu, etc.
On the command line, type:
$ sudo apt-get install openjdk-6-jre
The openjdk-6-jre package contains just the Java Runtime Environment.
$ sudo apt-get install openjdk-6-jdk
If you want to develop Java programs then install the openjdk-6-jdk package.
Fedora, Oracle Linux, Red Hat Enterprise Linux, etc.
On the command line, type:
$ su -c “yum install java-1.6.0-openjdk”
The java-1.6.0-openjdk package contains just the Java Runtime Environment.
$ su -c “yum install java-1.6.0-openjdk-devel”
If you want to develop Java programs then install the java-1.6.0-openjdk-devel package.



Tagged : / / / / / / / / / / / / /

How to Setup Puppet Learning VM – Complete Process/Guide

Download the VM(Zip File here)


Minimum requirements

  • Internet-enabled Windows, OS X, or Linux computer with 10GB free space and a VT-x/AMD-V enabled processor.
  • Up to date virtualization software. See the setup instructions below for details.

Setting up the Learning VM

  1. Before beginning, you may want to use the MD5 sum provided at the VM download page to verify your download. On Mac OS X and *nix systems, you can use the command md5 and compare the output to the text contents of file provided on the download page. On Windows systems, you will need to download and use a tool such as the Microsoft File Checksum Integrity Verifier.

  2. Get an up-to-date version of your virtualization software. We suggest using either VirtualBox or a VMware application appropriate for your platform. VirtualBox is free and available for Linux, OS X, and Windows. VMware has several desktop virtualization applications, including VMWare Fusion for Mac and VMware Workstation for Windows.

  3. The Learning VM’s Open Virtualization Archive format must be imported rather than opened directly. Launch your virtualization software and find an option for Import or Import Appliance. (This will usually be in a File menu. If you cannot locate an Import option, please refer to your virtualization software’s documentation.)

  4. Before starting the VM for the first time, you will need to adjust its settings. We recommend allocating 4GB of memory for the best performance. If you don’t have enough memory on your host machine, you may leave the allocation at 3GB or lower it to 2GB, though you may encounter stability and performance issues. Set the Network Adapter to Bridged. Use an Autodetect setting if available, or accept the default Network Adapter name. (If you started the VM before making these changes, you may need to restart the VM before the settings will be applied correctly.) If you are unable to use a bridged network, we suggest using the port-forwarding instructions provided in the troubleshooting guide.

  5. Start the VM. When it is started, make a note of the IP address and password displayed on the splash page. Rather than logging in directly, we highly recommend using SSH. On OS X, you can use the default Terminal application or a third-party application like iTerm. For Windows, we suggest the free SSH client PuTTY. Connect to the Learning VM with the login root and password you noted from the splash page. (e.g. ssh root@<IPADDRESS>) Be aware that it might take several minutes for the services in the PE stack to fully start after the VM boots. Once you’re connected to the VM, we suggest updating the clock with ntpdate

  6. You can access this Quest Guide via a webserver running on the Learning VM itself. Open a web broswer on your host and enter the Learning VM’s IP address in the address bar. (Be sure to use http://<ADDRESS> for the Quest Guide, as https://<ADDRESS> will take you to the PE console.



For the most up-to-date version of this troubleshooting information, check the GitHub repository. If nothing here resolves your issue, feel free to email us at and we’ll do our best to address your issue.

For issues with Puppet Enterprise that are not specific to the Learning VM, see the Puppet Enterprise Known Issues page.

The cowsay package won’t install

The Learning VM version 2.29 has an error in the instructions for this quest. The cowsay package declaration should includeprovider => 'gem', rather than ensure => 'gem'.

If you continue to get puppet run failures related to the gem, you can install the cached version manually: gem install /var/cache/rubygems/gems/cowsay-0.2.0.gem

I completed a task, but the quest tool doesn’t show it as complete

The quest tool uses a series of Serverspec tests for each quest to track task progress. Certain tasks simply check your bash history for an entered command. In some cases, the /root/.bash_history won’t be properly initialized, causing these tests to fail. Exiting the VM and logging in again will fix this issue.

It is also possible that we have written the test for a task in a way that is too restrictive and doesn’t correctly capture a valid syntactical variation in your Puppet code or another relevant file. You can check the specific matchers by looking at a quest’s spec file in the ~/.testing/spec/localhost/ directory. If you find an issue here, please let us know by sending an email

Password Required for the Quest Guide

The Learning VM’s Quest Guide is accessible at http://<VM's IP Address>. Note that this is http and not https which is reserved for the PE console. The PE console will prompt you for a password, while no password is required for the Quest Guide. (The Quest Guide includes a password for the PE console in the Power of Puppet quest: admin/puppetlabs)

I can’t find the VM password

The password to log in to the VM is generated randomly and will be displayed on the splash page displayed on the terminal of your virtualization software when you start the VM.

If you are already logged in via your virtualization software’s terminal, you can use the following command to view the password: cat /var/local/password.

Does the Learning VM work on vSphere, ESXi, etc.?

Possibly, but we don’t currently have the resources to test or support the Learning VM on these platforms.

My puppet run fails and/or I cannot connect to the PE console

It may take some time after the VM is started before all the Puppet services are fully started. If you recently started or restarted the VM, please wait a few minutes and try to access the console or trigger your puppet run again.

Also, because the Learning VM’s puppet services are configured to run in an environment with restricted resources, they are more prone to crashes than a default installation with dedicated resources.

You can check the status of puppet services with the following command:

systemctl --all | grep pe- 

If you notice any stopped puppet-related services (e.g. pe-puppetdb), double check that you have sufficient memory allocated to the VM and available on your host before you try starting them (e.g. service pe-puppetdb start).

If you get an error along the lines of Error 400 on SERVER: Unknown function union... it is likely because the puppetlabs-stdlib module has not been installed. This module is a dependency for many modules, and provides a set of common functions. If you are running the Learning VM offline, you cannot rely on the Puppet Forge’s dependency resolution. We have this module and all other modules required for the Learning VM cached, with instructions to install them in the Power of Puppet quest. If that installation fails, you may try adding the --force flag after the --ignore-dependencies flag.

I can’t import the OVA

First, ensure that you have an up-to-date version of your virtualization software installed. Note that the “check for updates” feature of VirtualBox may not always work as expected, so check the website for the most recent version.

The Learning VM has no IP address or the IP address will not respond.

If your network connection has changed since you loaded the VM, it’s possible that your IP address is different from that displayed on the Learning VM splash screen. Log in to the VM via the virtualization directly (rather than SSH) and use thefacter ipaddress command the check the current address.

Some network configurations may still prevent you from accessing the Learning VM. If this is the case, you can still access the Learning VM by configuring port forwarding.

Change your VM’s network adapter to NAT, and configure port forwarding as follows:

Name   -   Protocol - HostIP -   HostPort - GuestIP - GuestPort SSH        TCP  2222                 22 HTTP       TCP  8080                 80 HTTPS      TCP  8443                 443 GRAPHITE   TCP  8090                 90 

Once you have set up port forwarding, you can use those ports to access the VM via ssh (ssh -p 2222 root@localhost) and access the Quest Guide and PE console by entering http://localhost:8080 and https://localhost:8443 in your browser address bar.

I can’t scroll up in my terminal

The Learning VM uses a tool called tmux to allow us to display the quest status. You can scroll in tmux by first hitting control-b, then [ (left bracket). You will then be able to use the arrow keys to scroll. Press q to exit scrolling.

Running the VM in VirtualBox, I encounter a series of “Rejecting I/O input from offline devices”

Reduce the VM’s processors to 1 and disable the “I/O APIC” option in the system section of the settings menu.

Still need help?

If your puppet runs still fail after trying the steps above, feel free to contact us at or check the Puppet Enterprise Known Issues page.

Tagged : / / / / / / / / / /

How to Host your own Nuget Feed? | Step by Step Guide | Tutorial


Hosting your own Nuget Feed?

1. Local File Based Package Source

Limitation with fles based source –
It does not have nuget capable feed.
Can not push the package. We will have to copy into local directly
Can not use Nuget Gallery

2. Setup Nuget.Server

Step 1 – In Visual Studip, New Project and Select empty Empty Web Application and name and save it.
Step 2 – Using Package Manager console, install package Nuget.Server.
$ install-package nuget.server
Step 3 – Look at the property of the project, under bottom part of web tab – find a port number. i.e – 42386. and open the server.
Step 4 – Navigate the page and learn about how to user server.
Step 5 – Copy manually one nuget package and try using New NuGet Server using Visual Studip as source with http:localhost:42386/nuget
$ get-package -listavailable
Step 6 – Go to http:localhost:42386/nuget and Refresh the package feed.
Step 7 – How to access using command line – Modify the web.config and modify the apiKey as you want, Restart the application and to go http:localhost:42386/nuget to find the insructions to push the package.
$ nuget.exe push pack.nupkg -s http:localhost:42386/nuget SECRETKEY

3. Setup your Nuget Gallery

Step 1 – Download the zip software from

Step 2 – Unzip it under your visual studio project folder and setup with IIS.

Tools which is helpful to navigate the Nuget package feed.

Tagged : / / / / / / / / / / /

How to Setup AWS Credentials using AWS Command Line Interface?


Setup AWS Credentails using AWS Command Line Interface

Install the AWS CLI Using Pip
Please click here complete installation guide.

Test the AWS CLI Installation

 $ aws help

Environment Variables – 


Step 5: Get a key aws_access_key_id, aws_secret_access_key, region from AWS website, under your 

$ aws configure

Step 6: Setup AWS with key

$  aws configure
AWS Secret Access Key [None]: fDBVPhlHzMk70ip5FGHDl/AcmEyMnylwOllc+n4s
Default region name [None]: us-east-1
Default output format [None]:
$  aws s3 list

Step 7: Verify details in ~/.aws/credentials and ~/.aws/config

$ more ~/.aws/credentials
aws_access_key_id = AKIAJB6WCXXXXRKRT5SQ
aws_secret_access_key = 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

$  more ~/.aws/config
region = us-east-1

Step 8: Verify AWS CLI setup

$ aws ec2 describe-instances --output table --region us-west-2

The AWS credentials file –

Located at ~/.aws/credentials on Linux, OS X, or Unix, or at C:\Users\USERNAME \.aws\credentials on Windows. This file can contain multiple named profiles in addition to a default profile.

The CLI configuration file –

Typically located at ~/.aws/config on Linux, OS X, or Unix, or at C:\Users\USERNAME \.aws\config on Windows. This file can contain a default profile, named profiles, and CLI specific configuration parameters for each.


Tagged : / / / / / / / / / / / / / /

How to Setup SVN Server with Apache2 in Ubantu?


This tutorial is to setup the SVNServer from base using Apache2 in Ubantu only.

> sudo apt-get update

> sudo apt-get install subversion apache2 libapache2-svn apache2-utils

> sudo addgroup subversion

> sudo mkdir /home/svn

> sudo chown -R www-data:subversion /home/svn

> sudo chmod -R g+ws /home/svn

> sudo svnadmin create /home/svn/myWebsite

sudo vim /etc/apache2/mods-available/dav_svn.conf

& add the following entry at the end of file.

<Location /svn/myWebsite> DAV svn SVNPath /home/svn/myWebsite AuthType Basic AuthName "myWebsite subversion Repository" AuthUserFile /etc/subversion/passwd <LimitExcept GET PROPFIND OPTIONS REPORT> Require valid-user </LimitExcept> </Location>

sudo htpasswd -c /etc/subversion/passwd rajesh

sudo chown -R www-data:subversion /home/svn/myWebsite

sudo chmod -R g+rws /home/svn/myWebsite

sudo /etc/init.d/apache2 restart

sudo htpasswd /etc/subversion/passwd user1

sudo /etc/init.d/apache2 restart


Now you can access the SVN Server using….

If you are still not able to open the url, that means you have IPtables services running and stopping you to access the server. For testing, you can stop the sudo ufw stop

Tagged : / / / / / / / / / / / / / /