# echo 'enabled=0' >> /etc/default/apport
Uncategorized
gluster 3.5 install and volume operations in ubuntu 14.04
Add package repository to 2 nodes
# add-apt-repository ppa:semiosis/ubuntu-glusterfs-3.5 && apt-get update
Install package
# apt-get install glusterfs-server
Join peers into cluster (where “d510” and “d610” are 2 server names known to each other either by dns or /etc/hosts)
# gluster peer probe d510 # gluster peer probe d610
Create a volume and start it
# gluster volume create vol1 replica 2 transport tcp d510:/gluster-storage d610:/gluster-storage force # gluster volume start vol1
Check volume status
# gluster volume info all
Check peer status
# gluster peer status
Mount a glusterfs volume in a glusterfs client server
# mount -t glusterfs d510:/vol1 /glustermount
Remove a volume
# gluster volume stop volume1 && gluster volume delete volume1
Remove a node (server) from gluster
# gluster peer detach aspireone
Install a gluster client
#apt-get install glusterfs-client
Remove a brick from a volume with 3 bricks, telling gluster we will now have only 2 replicas:
gluster volume remove-brick replica 2 volume1 aspireone:/gluster-storage
A typical entry in /etc/fstab for a client gluster fs is
d510:/vol1 /glustermount glusterfs defaults 0 0
Get vlan using snoop
You could use this script snoopdcp.sh, usage is like this:
# ./snoopdcp.sh nxge1
The script goes like this:
#!/bin/bash Interface=$1 if [[ -z "$Interface" ]] then echo "[FATAL]Usage $0" exit 1 fi #snoopfile=$(mktemp /tmp/snoopy.XXXX) snoopfile=/tmp/snoopy.XXXX.$$ snoop -d $Interface -c 1 -vv -o $snoopfile 'dst 01:00:0c:cc:cc:cc and length > 50' instr=$(snoop -i $snoopfile -x 26 | nawk -F: ' { print $2 } ' | cut -b1-41| sed -e 's/ //g' | nawk 'BEGIN {ORS=""} {print toupper($1)}') rm -f -- $snoopfile while [[ -n "$instr" ]] do typ=`echo $instr | cut -b1-4` lhex=`echo $instr | cut -b5-8` length=$(echo "ibase=16; $lhex*2" | bc) next=$(echo "ibase=16; $lhex*2+1" | bc) if [ $length -gt 8 ] then texthex=`echo $instr | cut -b9-$length` else texthex="" fi # echo "$typ $lhex $texthex" if [ $typ == "0001" ] then printf "Switchname: " while [ $texthex ] do charhex=`echo $texthex | cut -b1-2` chardec=$(echo "ibase=16; $charhex" | bc) printf "%b" `printf '\x%x' $chardec 2>/dev/null` texthex=`echo $texthex | cut -b3-` done echo " " fi if [ $typ == "0003" ] then printf "Switchport: " while [ $texthex ] do charhex=`echo $texthex | cut -b1-2` chardec=$(echo "ibase=16; $charhex" | bc) printf "%b" `printf '\x%x' $chardec 2>/dev/null` texthex=`echo $texthex | cut -b3-` done echo " " fi if [ $typ == "000A" ] then echo "VLAN: 0x$texthex $(echo "ibase=16; $texthex" | bc)" fi if [ $typ == "000B" ] then echo "Duplex: $texthex" fi instr=`echo $instr | cut -b$next-` done
Start apache in MacOS X Mavericks
Start the webserver
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist
If you want to restart it:
sudo launchctl stop -w /System/Library/LaunchDaemons/org.apache.httpd.plist
sudo launchctl start -w /System/Library/LaunchDaemons/org.apache.httpd.plist
Documents are in:
/Library/WebServer/Documents
Configuration is in:
/etc/apache2/httpd.conf
post a tweet to my twitter, using python’s tweepy
I automated a twitter update from a random fortune quote, using python and the tweepy library.
First i installed tweepy
# pip install tweepy
Then, created /opt/bin/tweepy
#!/opt/bin/python
import tweepy, sys, commands
quote=commands.getoutput("/opt/bin/fortune")
consumer_key, consumer_secret, access_token, access_token_secret = "xxxxxx", "xxxx", "xxx", "xxx"
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
#print "Successfully logged in as " + api.me().name + "."
api.update_status(quote)
And.. that’s it!. As easy as 1..2..
Get a fortune from linux fortune files, less than 130 chars long :)
#!/opt/bin/bash
cd /opt/fortunes
size=200
while [ $size -gt 130 ];do
file=$(ls /opt/fortunes/| /opt/bin/shuf -n 1)
Q=$(awk -v RS='%' '
BEGIN { srand(); }
rand() < 1.0/NR { s=$0; }
END { print s; }
' $file| /opt/bin/sed ':a;N;$!ba;s/\n/ /g;s/\t\t*/ /g' | tr -s ' ')
size=$(echo $Q | wc -c)
done
echo "QOTD: $Q"
Alter mysql table column, set to auto_increment
alter table Doctor modify column id bigint auto_increment;
compress a directory in macosx
afsctool -c /some/directory
this compresses the directory online!
Reconfigure veritas volume manager disk list
cp /etc/vx/disk.info /etc/vx/disk.info.old
echo > /etc/vx/disk.info
vxconfigd -k
vxdisk -o alldgs list
Clean powerpath dead paths
powermt check force