Category Archives: Linux

Hvordan fjerne LUN fra Linux

Først identifiser “diskene” du skal fjerne.
[code]
# fdisk -l
Disk /dev/sdae: 644.2 GB, 644245094400 bytes
255 heads, 63 sectors/track, 78325 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdae1 1 78325 629145531 83 Linux
[/code]
Så finner du selve scsi device id’en
[code]
#scsi_id -i -g -s /block/sdae
1:0:3:2: 360060160cb902800e25025c9197adf11
[/code]
Så fjerner du devicen.
[code]
#echo 1 > /sys/class/scsi_device/1:0:3:2/device/delete
[/code]

sshpass for de gangene man ikke har nøkler.

Er ikke så ofte jeg skal slå av over 1500 maskiner, men av og til skjer det jo. Og for de tilfellene er det jeg hater at jeg ikke har lagt opp nøkler til chassisene rundt omkring. Heldigvis kom jeg over sshpass sist gang jeg slåss med dette her. Kort fortalt lar sshpass deg bruke vanlig passord og dytte rett inn i ssh. Regner vel nesten med at det bare er ett lite perl script, men nytten er så uendelig.

[bash]
# sshpass -p ‘password’ ssh admin@oaenc show oa info
[/bash]

Cleanup av shared memory

I forbindelse med dårlig “shared memory” styring på noen av applikasjonene på jobb ser jeg for meg følgene implementering.

1. List ut shared memory segmenter (ipcs -m)
2. List ut påloggede brukere (w)
3. Slett alle shared memory segmenter fra brukere som ikke lenger er pålogget(ipcrm).

[bash]
#!/bin/bash
self=`basename $0`

if [[ "$1" = "-h" || "$1" = "–help" ]]; then
cat <<EOM

$self:
$self              list leftover
$self -r           list and remove leftover
$self -h or –help this text

EOM
exit 0
fi

if [ "$(id -u)" != "0" ]; then
echo "$self must be run as root"
exit 1
fi

if [ -f /etc/redhat-release ] ; then
if [[ ! `cat /etc/redhat-release | sed s/.*release\ // | sed s/\ .*//` = "3" ]] ; then
echo "$self only tested on RHEL3"
exit 1
fi
fi

ps -ef | egrep -v "clamav|daemon|root|rpc|smmsp|UID|xfs|gdm|ntp" | awk ‘{print $1}’ | sort -u > /tmp/online_ps
w | egrep -v "root|USER|load average" | awk ‘{print $1}’ | sort -u > /tmp/online_w
cat  /tmp/{online_ps,online_w} | sort -u > /tmp/online_
filter=`awk ‘{printf "%s",$0"|"}; END{print "root|gdm|Shared|shmid|Memory|owner|Message|msqid|Semaphore"}’ /tmp/online_`
rm -f /tmp/{online_ps,online_w,online_}
echo "Leftover shared mem"
ipcs -m | egrep -v "$filter"
echo "Leftover message q’s"
ipcs -q | egrep -v "$filter"
echo "Leftover semaphores"
ipcs -s | egrep -v "$filter"

if [[ "$1" = "-r" ]]; then
echo "Removing shared mem"
for i in `ipcs -m | egrep -v "$filter" | awk ‘/./{print $2}’`; do ipcrm -m $i;done
echo "Removing semaphores"
for i in `ipcs -s | egrep -v "$filter" | awk ‘/./{print $2}’`; do ipcrm -s $i;done
echo "Removing message q’s"
for i in `ipcs -q | egrep -v "$filter" | awk ‘/./{print $2}’`; do ipcrm -q $i;done
fi

[/bash]

SubSonic – mp3 on the go.

Jeg har egentlig vært klar over dette prosjektet i lang tid, men fikk en liten påminnelse idag i forbindelse med Android telefonen. I market ligger det en rimelig grei standalone klient, som har full mulighet til enten å streame direkte mot hvilken som helst server, eller så kan den lagre lokalt på selve mobilen. I tillegg tar subsonic seg av all konvertering fra forskjellige filformater, til hva du spesifiserer. For eksempel flac til mp3, dette blir da gjort på server-siden, slik at man ungår å laste unødvendig data.

SubSonic ligger i market, og er relativt enkel sak å sette opp. På serversiden er det bare å laste ned en standalone versjon fra SubSonic sine sider. Det er laget en ferdig rpm for RHEL/CentOS som vil opprette en server på port 4040, i tillegg tar rpmen seg av å lage oppstarts script. Sånn ellers anbefaler SubSonic at du innstallerer endel codecs for å kunne utnytte transcoding funksjonaliteten som er innebygget.

Blogg verktøy

I og med at denne bloggen er opprettet fordi jeg husker så dårlig….og generelt lat. Så har jeg kommet frem til at jeg trenger en desktop klient for wordpress. Foreløpig har jeg bare undersøkt muligheten, og det ser ut til at det finnes endel fine alternativer både for Linux og Windows.

http://codex.wordpress.org/Weblog_Client

Rangering av de jeg har sett på til nå:

  1. GNOME Blog
  2. BloGTK
  3. Drivel-Blog

BloGTK er den eneste som ser ut til å kunne plassere bilder fornuftig i forhold til tekst, noe som må sies å være essensielt, selv om jeg kanskje ikke er den som legger til flest bilder i mine poster.

SuperPXE

I forbindelse med at jeg tenkte å lære meg python, har jeg begynnt på ett lite prosjekt jeg kaller SuperPXE. Målet med prosjektet er ett webinterface hvor man kan velge å reinnstallere en maskin i nettverket med ett valgfritt OS.

Foreløpig er webserveren satt opp til å kjøre python programmet som leverer en “default” config, videre er planen at jeg skal få kompilert opp gPXE 0.9.6+ som automatisk peker mot serveren som inneholder python modulen. Systemet er i utgangspunktet to delt, hvor SuperPXE tar seg av parsingen av config filer, og webinterfacet står for selve opprettelsen av config filene. Hvis ingen config fil finnes, vil den vise standard menyen som vi alle kjenner.

Få det innstallert!

I utgangspunktet skal jo nettverket mitt være rimelig sikkert, men i den forbindelse tenkte jeg å teste ut nessus scan for å se hva den har å klage på. Har jo en viss erfaring med dette fra jobb, men aldri satt opp løsningen selv. Så da blir det en debian install via mitt fancy pxeboot system(som forøvrig skal automatiseres endel, superpxe:))

http://www.nessus.org/download/nessus_download.php

Andre ting som skal sjekkes opp er:
http://ettercap.sourceforge.net/screenshots.php
http://www.cirt.net/nikto2
http://www.aircrack-ng.org/screenshots.html