Mirror SVN to GIT with History

By polfilm,

This is actually a quite simple procedure:

apt-get install git git-svn
mkdir SVN
cd SVN
mkdir Project01
mkdir Project01Tmp
git svn clone --stdlayout --no-metadata -A users.txt https://192.168.1.xxx:8443/svn/Project01/ Project01
git clone --bare Project01 Project01Tmp
cd Project01Tmp
git push --mirror ssh://git@192.168.1.yyy/Project01.git
mv Project01 old-Project01
mv Project01Tmp old-Project01Tmp
git clone ssh://git@192.168.1.yyy/Project01.git

users.txt file should be in the following format

user1=First Last <first.last@example.com>
VisualSVN Server = Visual SVN Server <svn@example.com>

Webmin Add System User and Roles

By polfilm,
===== Add User =====

===== Add Roles for User =====

Note: nano line cut (CTRL-K) nano paste (CTRL-U)

Jenkins-Tomcat manual upgrade script

By polfilm,
 echo "stopping tomcat"
 sh /etc/init.d/tomcat6 stop
 cd /var/lib/tomcat6/webapps
 echo "removing jenkins"
 rm -rf jenkins
 rm -rf jenkins.war
 echo "downloading latest jenkins"
 wget http://mirrors.jenkins-ci.org/war/latest/jenkins.war
 echo "starting tomcat"
 sh /etc/init.d/tomcat6 start
 cd ~
 echo "done"

Credit: http://www.christianoestreich.com/2011/03/jenkins-upgrade-script/
In ubuntu old jenkins.war is in /usr/share/jenkins/ folder
In ubuntu use “service tomcat6 stop” to stop the service

OpenVPN Ubuntu 12.04 Autostart

By polfilm,
sudo update-rc.d openvpn enable 2345

/etc/openvpn/ (config files go here)
	>> change config extension client.ovpn to client.conf
	>> change group=nobody to group=nogroup
/etc/default/openvpn (file)

Knife EC2 [official]

By polfilm,

This is the official Opscode Knife plugin for EC2. This plugin gives knife the ability to create, bootstrap, and manage EC2 instances.


knife ec2 server create -r "role[ubuntu]" -I ami-399ca94d -f m1.small -S knife -i ~/.ssh/knife.pem --ssh-user ubuntu --region eu-west-1 -Z eu-west-1a

knife ec2 server list --region eu-west-1

NLTK 2.0 – Natural Language Toolkit

By polfilm,

NLTK is a leading platform for building Python programs to work with human language data. It provides easy-to-use interfaces to over 50 corpora and lexical resources such as WordNet, along with a suite of text processing libraries for classification, tokenization, stemming, tagging, parsing, and semantic reasoning.


Machine Learning Methods for Personalized Email Prioritization

By polfilm,

Email is one of the most prevalent communication tools today, and solving the email overload problem is pressingly urgent. A good way to alleviate email overload is to automatically prioritize received messages f1ording to the priorities of each user. However, research on statistical learning methods for fully personalized email prioritization has been sparse due to privacy issues, since people are reluctant to share personal messages and priority judgments with the research community. It is therefore important to develop and evaluate personalized email prioritization methods under the assumption that only limited training examples can be available, and that the system can only have the personal email data of each user during the training and testing of the model for that user.

We focus on three aspects: 1) we investigate how to express the ordinal relations among the priority levels through classification and regression. 2) we analyze personal social networks to capture user groups and to obtain rich features that represent the social roles from the viewpoint of a particular user. 3) We also developed a semi-supervised (transductive) learning algorithm that propagates importance labels from training examples to test examples through messages and user nodes in a personal email network. These methods together enable us to obtain both a better modeling priority and an enriched vector representation of each new email message.

Our contribution is as follows. First, we have successfully collected multiple users’ private email data with their fine grained personal priority labels. Second, we apply and propose learning approaches from multi-type  information such as text, and sender / recipients information. Third, to supplement additional information to sparse training data, we identify the importance of a contact and similar contacts from social networks. Fourth, we exploit a semi-supervised learning on the personal email networks. Finally, we conducted and completed systematic evaluations with respect to email prioritization, targeting the discovery of better modeling of email priorities. Through our suggested approaches, email prioritization alleviates email glut and should help our daily productivity.


Information Security

By polfilm,

CISSP – Certified Information Systems Security Professional

CEH – Certified Ethical Hacker

CHFI – Certified Hacking Forensic Investigator

CISA – Certified Information Systems Auditor

CIA – Confidentiality, Integrity and Availability


By polfilm,

Cobbler is a Linux installation server that allows for rapid setup of network installation environments. It glues together and automates many associated Linux tasks so you do not have to hop between lots of various commands and applications when rolling out new systems, and, in some cases, changing existing ones. It can help with installation, DNS, DHCP, package updates, power management, configuration management orchestration, and much more.


Cobbler, kickstart, and PXE boot


By polfilm,

Collins consists of the core application, a set of client libraries, the collins-shell, and an automation toolchain. Nothing but collins core is required.

Documented, consistent REST API
Client API libraries in Ruby, Python and Bash
A collins command line shell for scripting and automation
A callback system for hooking into asset lifecycle events
Multiple authentication backends (LDAP, files, etc)
Per-feature and per-endpoint configurable permissions
Flexible Web and API based provisioning (PXE, SSH/grub/kickstart, API (e.g. AWS))
Power management support
IP Address allocation and management support
Support for running collins in distributed mode across multiple datacenters
Flexible data-model supporting multi-dimensional keys/values per asset
Simple key/value queries as well as a more advanced query language
A script engine for modifying collins behavior
Internationalized language support



CentOS Virtualized – eth0 not found?

By polfilm,

Network interface probably changed the name when you cloned as original version guid and mac are stored in a different file. To verify run:

ifconfig -a


ip a l

If its hiding under eth1 or some other name then you’re in luck.
Remove the kernel’s networking interface rules file so that it can be regenerated

rm -f /etc/udev/rules.d/70-persistant-net.rules

Now set your eth0 info in /etc/sysconfig/network-scripts/ifcfg-eth0. Remove mac and guid from the file and reboot. For static IP setup you may want to try this

The Foreman

By polfilm,

The Foreman is aimed to be a single address for all machines life cycle management.

Foreman Installation on CentOS 6 with EPEL

Ovirt Foreman UI Plugin

Blog Foreman


By polfilm,

Vagrant uses Oracle’s VirtualBox to build configurable, lightweight, and portable virtual machines dynamically. The first couple of pages serve to introduce you to Vagrant and what it has to offer while the rest of the guide is a technical walkthrough for building a fully functional web development environment. The getting started guide concludes by explaining how to package the newly created vagrant environment so other developers can get up and running in just a couple commands.


Jenkins – An extendable open source continuous integration server

By polfilm,

Jenkins is an award-winning application that monitors executions of repeated jobs, such as building a software project or jobs run by cron. Among those things, current Jenkins focuses on the following two jobs:

Building/testing software projects continuously, just like CruiseControl or DamageControl. In a nutshell, Jenkins provides an easy-to-use so-called continuous integration system, making it easier for developers to integrate changes to the project, and making it easier for users to obtain a fresh build. The automated, continuous build increases the productivity.
Monitoring executions of externally-run jobs, such as cron jobs and procmail jobs, even those that are run on a remote machine. For example, with cron, all you receive is regular e-mails that capture the output, and it is up to you to look at them diligently and notice when it broke. Jenkins keeps those outputs and makes it easy for you to notice when something is wrong.


C# NUnit Testing

HTML Website Testing

Installing Jenkins on CentOS

Cluster Setup. Discussion

EC2 Demo of MCollective – Puppet Labs

By polfilm,

The Marionette Collective AKA MCollective is a framework to build server orchestration or parallel job execution systems.

We’ve attempted to think out of the box a bit designing this system by not relying on central inventories and tools like SSH, we’re not simply a fancy SSH “for loop.” MCollective use modern tools like Publish Subscribe Middleware and modern philosophies like real time discovery of network resources using meta data and not hostnames. Delivering a very scalable and very fast parallel execution environment.

Use Gluster to deploy highly available, scalable storage in minutes. Video 58min

By polfilm,

In this webinar, we discuss how Gluster can help you deploy highly available, scalable storage in minutes and manage data growth in a single global namespace in the cloud. Take advantage of Gluster’s software-only network-attached storage (NAS) solution to dynamically deploy and manage cloud storage in the RightScale Cloud Management Platform.