Nytt personbästa i marklyft

Jag skrev nyligen om marklyft och då kan jag ju inte undanhålla nyheten om gårddagens framsteg på området. Det nya rekordet lyder 164 kg och det börjar bli dags att sikta mot 170. Kanske kan vara läge för ett lite mer långsiktigt mål också. Tvåhundra innan sommaren? Vilket för övrigt skulle vara tangerat svenskt rekord för herrar. Om man väger 52 kg alltså…

Posted in motion, styrketräning | Tagged , | 3 Comments

Administrera Iphone virtuellt

Om man drar sig för att installera Mac OS eller Windows på en av sina maskiner bara för att vara Apple till lags kan det vara idé att köra Windows (Mac OS är svårare och bara tillåtet med Mac OS som värd) virtuellt. Jag har kikat på VMware och VirtualBox för detta ändamål och korat en vinnare. Båda miljöerna klarar av att upptäcka Iphonen och den dyker upp fint i Itunes men det som gör att VMware är bättre lämpat för uppgiften är att de har en bättre webbintegration, VMware WebAccess, medan VirutalBox dito, hobbyprojektet VirtualBox Web Console, inte har nått samma mognadsgrad. Jag har bloggat tidigare om WebAccessen som alltså ingår i VMware Server och är gratis.

Med VMware WebAccess kan man ansluta sin Iphone på den klientdator man råkar sitta vid (förutsatt att den har USB-port), styra Firefox mot WebAccessen och mha ett tillägg till Firefox komm åt den virtuella maskinen (lämpligen Windows XP eller Windows 7). Under “Devices” i Remote Console-fönstret bör “Apple Iphone” finnas tillgänglig och där kan man välja “Connect”. (Se bild nedan.)

På ovan beskrivna sätt kan man alltså enbart med hjälp av en webbläsare (ja det måste vara Firefox och jag har för mig att tilläggsprogrammet inte funkar i Mac OS men då har man ju inte samma ursprungsproblem) synka sin Iphone med Itunes förutsatt att man lagt lite tid på att konfigurera upp en virtuell maskin som man kan tillgängliggöra via VMware WebAccess.

Iphone via VMware WebAccess

Posted in datorer, hårdvara, webbservern | Tagged , , , | Leave a comment

Bra pass på Fysiken

Det var ungefär tre månader sen jag höjde mig i marklyft och de senaste veckorna har jag lagt mig strax under (ofta 155 kg) det personliga rekordet. Efter semestern, fyra veckor helt utan marklyft, har det handlat om att bygga upp och komma ikapp sakta men säkert. Ikväll på Fysiken tangerade jag iaf personbästa och drog 160 pannor igen. Det kändes som att det fanns ett kilo eller två till i kroppen så jag hoppas att oktober har mer att bjuda på än gula löv och temperaturer runt noll…

Posted in styrketräning | 1 Comment

Ny mobil – Iphone 3GS

Okej, vi blundar en stund för politiken och ger luren en chans. Med tanke på allt ståhej kring den här telefonen under de senaste åren kan den faktiskt vara värd ett försök. Jag har tidigare använt en Ipod Touch (med OS 3.0) en del och vet vad jag kan förvänta mig av apparaten men det blir lite spännande att ha den med i vardagen och se hur jag väljer mellan mobil och bärbar för olika uppgifter.

Planen är att även ge utvecklingsmiljön en chans och se om det går att pilla ihop nån kul app till den. Synd bara att det i praktiken krävs en mac för att utveckla till den om man vill dra nytta av Apples verktyg (läs XCode). Att utveckla för Iphone i Linux är i nuläget inte ett attraktivt alternativ.

Vad gäller alternativ till Iphone så ligger nån av de flashigare Android-mobilerna och Nokias N900 bra till. Speciellt Linuxbaserade N900 med Maemo är lite intressant för mig som sneglat på Nokia N770 och N800 och nu äntligen ser att den fått telefonfunktionerna den borde haft från början.

Posted in Uncategorized | 1 Comment

Ny router – Netgear WNDR3700

Nu har jag skaffat en ny router och därmed ersatt min gamla Linksys WRT54GL som tjänstgjort på ett ypperligt sätt i samarbete med DD-WRT.

Den nya routern kör enligt uppgift en modifierad OpenWRT och sägs även den vara riktigt stabil. Än så länge, efter ca en timme, håller den sig uppe så det ser lovande ut 🙂

Posted in elektronik | Tagged , | Leave a comment

Att lagra fil med stil

Med några datorer i sitt hemmanätverk finns det en god chans att man vill centralisera sin fillagring för att få bättre överblick, åtkomstbarhet och säkerhet. Det verkar ganska vanligt att snegla åt diverse NAS-lösningar (typ Qnaps och Netgears lösningar på området) som erbjuder enkel RAID-konfiguration, låg strömförbrukning, diverse mediafunktioner (dlna-server, itunes-server etc), webbgränssnitt för torrent-nedladdningar mm. Det gjorde jag också länge och väl innan jag insåg att jag ändå tänkt göra om en stationär arbetsstation (mrq) till server för interna tjänster. Eftersom denna maskin har samma trevliga chassi som webbservern, Antec Performance P182, och är kapabel till att hantera ett gäng diskar har den även fått titeln filserver. Om du står inför en liknande situation och känner dig hyfsat komfortabel i Unix-världen rekommenderar jag den nedan beskrivna lösningen.

Den stationära arbetsstationen mrq som alltså fått nya ansvarsområden hade sen tidigare sex diskar i storlekar mellan 200 och 500 GB. Genom att komplettera med fyra nyinköpta 1,5 TB-diskar och ytterligare en disk på 1 TB landar vi på 11 diskar med totalt knappt 10 TB. Det enklaste i det här läget hade kanske varit att låta mrq köra vidare med Ubuntu och lagt till lite fler ext4-filsystem (ev kompletterat med volymhanteraren LVM) men eftersom jag förstått att ZFS är vägen att gå och att detta lirar bäst på hemmaplan, dvs i Solaris, landade jag på en installation av OpenSolaris 2009.06 (vilken jag ju redan varit med att fira lanseringen av på CommunityOne dagen innan JavaOne…).

För mer information om ZFS rekommenderar jag wikipedia, BigAdmin och framför allt Simons artiklar om en filserver med ZFS för hemmabruk.

För att kunna ansluta de 11 diskarna till moderkortet behövdes ett separat SATA-kontrollerkort och då inte OpenSolaris har stöd för alla förekommande modeller la jag lite energi på att hitta ett som stöds. När pris, tillgänglighet och drivrutinstöd i OpenSolaris vägts samman föll valet på Lycom ST124-kort. Det använder Sil-3124-chipsetet vilket fungerar väl i OpenSolaris.

Själva installationen gick smärtfritt och jag valde att installera systemet på en av två identiska 300 GB-diskar. Efter installationen la jag till den andra 300 GB-disken till boot-poolen (“rpool”) så att denna är speglad på två diskar.

När väl installationen är på plats och det är klart att alla diskar hittas utan problem (kan konstateras exempelvis med “format”) är det läge att skapa de ZFS-pooler som ska användas. Här kan det vara lämpligt att fundera lite kring upplägget och jag valde göra två pooler, en döpt till “main” med de fyra nya 1,5 TB-diskarna som använder RAID-Z och ytterligare en pool “backup” med de resterande fem diskarna (två gick åt till det speglade systemet) som inte använder RAID-Z.

I ZFS skapar man filsystem (med mycket låg overhead, typ några kilobyte) inuti en viss pool och sen kan filsystemen växa inom ramarna för poolen. Eftersom användarna på webbservern (och även mitt eget konto) ska ha sina hemkataloger i egna filsystem i main-poolen utdelade via NFS satte jag attributet “sharenfs” på “/export/home” som därefter ärvs av underliggande filsystem. Genom att använda autofs på webbservern automatmonteras användarnas hemkataloger via NFS vid inloggning/åtkomst (exempelvis dokumenteras i CentOS-dokumentationen. Detta åstadkoms genom att autofs instrueras att montera hemkatalogerna från mrq.

När man har åstadkommit en nätverksgemensam hemkatalog kan det vara intressant att använda den även på de bärbara datorerna som man brukar använda oavsett om man befinner sig i sitt hemnätverk eller när man är ute på vift. Med detta i åtanke har jag tagit fram ett bash-skript som jag kör för att montera hemkatalogen från hemmanätverkets filserver (och montera om den lokala hemkatalogen i /mnt/localhome). Om filservern inte koms åt försöker den koppla upp sig via vpn (om inte openvpn redan är startat) vilket gör att det blir möjligt att arbeta mot sin hemkatalog oavsett geografisk position om man har internetuppkoppling (som inte är helt handikappad av märkliga brandväggsregler).

Genom att ha tillgång till den allenarådande samlingen dokument och övriga filer i hemkatalogen på filservern får jag tillgång till samma inställningar (tänk exempelvis Firefox och Opera) för de program jag använder eftersom de i de allra flesta fall sparar sina användarinställningar i .programnamn-kataloger i hemkatalogen.

Avslutningsvis kan man väl nämna att denna typ av lösning gör att man blir tämligen beroende av en viss maskin, i mitt fall filservern mrq. Säkerhetsmässigt känns denna lösning dock stabilare i och med att filerna återfinns på ett ställe vilket underlättar säkerhetskopieringen (som bör ske till ett eller flera system på annan ort).

Posted in datorer, elektronik, hårdvara, linux, webbservern | Tagged , , , | 8 Comments

Medelhavsbad och utekväll i Bandol

Förmiddagen ägnades åt jobbrelaterade åtaganden och därefter blev det utflykter för hela slanten. Först en buss- och båtutflykt till en ö i Medelhavet med tillhörande bad- och simtur i 20-gradigt Medelhav och därefter middag på en fiskrestaurang i den närbelägna byn Bandol.

Under dagen har jag märkligt nog även hunnit snickra ihop ett användbart bash-skript som används som ett led i projektet “en person – en filkatalog”. Mer om filservern och den allestädes närvarande hemkatalogen i ett senare inlägg i ämnet.

Posted in bil, båt, tåg och flyg, mat och dryck, resor | Tagged , , , | Leave a comment

Morgontur till närmsta by

Vi kom fram till konferensanläggningen utanför Marseille igår efter midnatt och åt innan vi knoppade i trevliga rum.

Vaknade imorse utan klocka kvart över sju och tyckte att det kändes okej. Tog en 45-minuters löptur till närmsta by (iaf om man taar vänster på vägen utanför konferensanläggningen) Saint Cyr sur Mer.

Det kändes bättre i benen nu jämfört med vid förra löpturen vilket skulle kunna ha ett visst samband med två knäböjfria dagar i rad 🙂

Nu väntar ett hårt konferensprogram men framförallt en stor frukost…

Posted in löpning, motion, resor | Tagged , , | Leave a comment

Javazon: Modern sökning med Solr

Jag följde med lite grand i ett föredrag om Solr via Overflow och tycker det verkar bra. 🙂

De presenterar sig själva som en “open source enterprise search server” baserad på Apache Lucene. Solr körs i en web container, exempelvis Tomcat, och har ett käckt XML/HTTP och JSON-API samt ett webbaserat administrationsgränssnitt. Kort och gott en modern “webbwrapper” till Lucene.

Det verkar rätt käckt att kunna skicka in dokument (exvis med en HTTP-POST) som sedan läggs till i indexet och blir sökbart.

Det finns förstås en hemsket massa funktioner och går att göra hur avancerat som helst men grunderna är lätt greppbara och jag får känslan att det går rätt kvickt att komma igång.

Tänkt och gjort, varför inte prova? Det finns ju till och med färdiga solr-paket i universe-repositoryn för Ubuntu. En minut senare och ett “sudo apt-get install solr-common” senare är installationen klar inklusive webbservern Tomcat.

Nästa del får bli att faktiskt indexera och söka men det får bli senare. Nu är det dags att starta avslutandet av konferensen.

Posted in datorer, föredrag | Tagged , , , | 2 Comments

Javazone: Scripting i Java med JSR-223

Jag hörde nyligen ett föredrag om scripting i Java mha JSR-223.

Verkar ju lite tufft att kunna köra Python, Ruby, JavaScript (eller ja, kanske inte så tufft) mm då och då när det anses passande så jag har testkört lite.

Som standard, iaf i min JVM, finns bara javascript-stöd men det går fint att lägga till stöd för fler skriptspråk. För att ordna detta stöd är det lämpligt att lägga vantarna på fler skriptmotorer samt “själva skriptspråket”.

I vår labbmiljö som vi skapar nu kan vi kosta på oss att vara lite råa och skippa Maven. För att lägga till önskade skriptmotorer packar vi upp och lägger till de uppackningskatalog/scriptmotornamn/build/scriptnamn-engine.jar-filer som är av intresse till classpathen. Jag la till jruby (jruby-engine.jar) och jython (jython-engine.jar).

För att kunna skriva Python är det alltså, förutom jython-skriptmotorn, läge att installera Jython. I readme-filen för jython-skriptmotorn står det att den jython-skriptmotor jag laddade ner är byggd för Jython 2.2.1 så jag installerade den och valde “standalone jar” som sen las med i classpathen. Motsvarande gäller för Ruby där man kan ladda ner JRuby (1.3.1 i detta fall) och hitta en jruby.jar i lib-katalogen.

Så hur gör man rent praktiskt när man nu har de där motorerna i classpathen? Det är faktiskt mycket smidigt:
1. Lägg beslag på en ScriptEngineManager, exempelvis new ScriptEngineManager();
2. Fråga den där motorhanteraren om en viss skriptmotor, exempelvis engineManager.getEngineByName(“python”);
3. Använd dina nya möjligheter! Exempelvis triviala engine.eval(“print “Hello Python/Jython world!””);

Jag testkörde även ett litet testprogram som använder en ScriptContext som sätts på respektive skriptmotor och sedan anropar en metod på ett objekt som är knutet till denna ScriptContext.

Så när är det användbart med denna typ av högnivåskriptspråk? Ett typexempel skulle kunna vara att använda python/ruby/liknande till viss textfilsmanipulation eller liknande när skriptalternativet går att skriva på en tiondel av javakoden. Eller kanske råkar man behöva ett visst tredjepartbibliotek som enbart finns för ett av de skriptspråk som stöds av JVM:en. Istället för att skriva om det kan skriptstödet vara räddaren i nöden.

En viktig sak som är på sin plats att nämna avslutningsvis är att man alltså kan komma åt objekt kors och tvärs mellan Java och skriptmiljön så detta stöd tillför mycket än det skulle innebära att starta en ny fristående process (ex System.getRuntime.exec(skript)) som kör ett skript.

Posted in Java, programmering | Tagged , , , , , , | 2 Comments