Category Archives: It

Status på udskiftning af defekt QNAP nas

Efter som nogen efterspurgte hvordan denne sag gik, så kommer der her en opdatering.

Da jeg havde udfyldt RMA formularen på [qnap](http://www.qnap.com/ “QNAP Systems, Inc. – Quality Network Appliance Provider”)’s webside blev jeg ret hurtigt derefter kontaktet af deres support, hvor de nævnte at de gerne vil have systemet ind til nærmere undersøgelser.
De gav mig et DHL kundenummer, som jeg bare skulle give til DHL når jeg ville have dem til at hente pakken.

Derfor tog jeg en backup af konfigurationen, fjernede diskene og ringede til DHL. Filerne var allerede taget backup af, som beskrevet i [en tidligere blogpost](http://lauer.dk/2009/02/09/disk-problemer-og-flytning-af-timemachine-backup/).
Dette var om fredagen og aftalte en tid mandag eftermiddag med [DHL](http://www.dhl.com/ “DHL | Global”). De gik endda med til et præcis klokkeslet som de overholdte nærmest på sekundet. Lækkert.
Pakken blev så sendt til Taiwan hvor de havde den om onsdagen. Samme dag sendte de et helt nyt system tilbage til mig. Fredag var DHL så forbi mig igen. Desværre var jeg ikke hjemme, så vi aftalte at de kom med den igen om mandagen.

Status er, at jeg måtte undvære mit system i en uge. Det kostede mig intet i fragt, og nu spiller det hele bare. Det er hvad jeg kalder god service.

Resume af CeBIT turen

I år blev er det 11 gang jeg drog mod CeBIT, og igen blev det en interessant weekend med masser af indtryk. Turen i år gik sammen med Prosa, og gik sådan set ok. Turene med Newz.dk var dog meget bedre. Her er nogen af de ting jeg fik spurgt lidt mere ind til ved de forskellige stande.

Qnap TS-809U-RP

I forvejen har jeg en Qnap TS-509 som jeg bruger til backup herhjemme samt en lokalt backup af nogle eksterne ting.
Jeg har dog lidt planer om, at når TS-809U modellen kommer, at anskaffe den til firmaet til brug sammen med VMware ESXi
. Den fylder 2U og kan indeholde 8 disks. Jeg er meget glad for Qnap’s webinterface, og umiddelbart kan den alt hvad jeg skulle have behov for. Og så er det en forholdvis billig måde at få noget lokalt tilgængelig storage på.

GPS navigation til iPhone

Sygic er et slovaktisk firma, som kunne præsentere fuld funktionelt navigation software med kort over EU, US m.fl. Produktet så lovende ud, og selvom de ikke har fået godkendelse fra Apple endnu, forventer de at det kommer i løbet af nogle måneder.
Deres software virker ikke kun på iPhone, men skulle virke på alle type af systemer til både mobiltelefoner og andre computere.

Holder til iPhone

Der var rigtig mange virksomheder til CeBIT som viste gadgets til mobiltelefoner og andre småt udstyr. Deriblandt var et amerikansk firma, Scoscho. Jeg synes de havde en del smarte produkter som virkede gennemtænkt.
F.eks. deres IUHW5, som kunne tilpasses udstyr af alle størrelser. Kunne godt finde på at købe denne og bruge den til min GPS også.

Zarafa og Open-Xchange

Er et opensource alternativ til MS Exchange. Det indeholder mail, kalender, todo og en del andre ting. Der er både et webinterface samt mulighed for at bruge alle funktioner direkte i Outlook som en rigtig exchange server.
Zarafa er desværre ikke helt gratis, men op til 50% billigere end exchange, og så virker alle funktioner også på andre systemer end windows og kræver ikke at man har en windows server stående.
I bussen tilbage fra CeBIT blev jeg gjort opmærksom på Open-Xchange, som ligner meget Zarafa, men har en Community version hvor der ikke ydes support og man må ikke bruge den til ikke kommerciel brug.

Akelos, Dropbox, zabbix

Næsten hver dag tænker jeg på at skrive et blogindlæg omkring de teknologier jeg har arbejdet med den pågældende dag. Af en eller anden grund bliver det bare aldrig til noget.
Men nu vil jeg da lige nævne nogle af de teknologier jeg har arbejdet med de sidste par dage.

Akelos

Akelos er et PHP Framework, som ligger sig meget op af Rails. Faktisk henviser de flere steder til Rails’ dokumentation, de steder deres egen dokumentation ikke er færdig.
Jeg har brugt det til et system som havde behov for at blive lavet i PHP, og det virkede faktisk ret godt. Der er et administration’s plugin som faktisk virker.

Dropbox

Dropbox er et værktøj som gør det muligt at have en delt mappe som bliver synkroniseret mellem flere computere. Der findes både versioner til Windows, Linux og Mac OS X.
Nu har jeg kun prøvet det på Mac OS X, og der er det virkelig godt integreret.
Det er endda muligt at give et unikt link videre til andre folk, hvis man vil dele en specifik fik. Som standard får man 2GB plads, men man kan få mere plads ved at henvise dem til Dropbox

Zabbix

Den sidste ting jeg vil beskrive er Zabbix, som er et monitoringssystem. Jeg har igennem flere år brugt Nagios, men jeg synes det falder lidt igennem på en del punkter. Zabbix styres igennem database, hvilket gør det nemmere at konfigurere hvis man har mange hosts. Derudover har den også autodiscovery og agenter som kan installeres på stort set alle systemer.

Disk problemer og flytning af TimeMachine backup

Efter at have købt en [QNAP TS-509 PRO Turbo NAS](http://www.qnap.com/pro_detail_feature.asp?p_id=104 “QNAP Systems, Inc. ( TS-509 Pro Turbo NAS – Quality Network Appliance Provider”) er jeg blevet virkelig gad for at have et ekstra hurtigt lager til filer og backup som er tilgængelig via nettet.
Desværre har jeg lidt problemer med at den smider den ene disk til tider. Heldigvis sider det hele som [raid 5](http://en.wikipedia.org/wiki/Standard_RAID_levels “Wikipedia Entry: Standard RAID levels”), så jeg kan tåle det. Men man ved jo aldrig om en af de andre diske ryger sig en tur. Jeg har prøvet at få en ny disk, men det samme sker ved denne.
Pt benytter jeg mig af [WD Caviar GP WD10EACS](http://www.wdc.com/en/products/products.asp?DriveID=336 “WD Caviar Green 1 TB SATA Hard Drives ( WD10EACS )”) 1TB diske, og det kunne da være at jeg bare havde været meget uheldig.
Men efter både at have kørt en simple test og en full test på disken, som ikke gav nogen fejl, fortæller nas-systemet mig stadig at disken ikke virker.

Det ene som jeg får af fejl via SMART interfacet er.


UDMA_CRC_Error_Count = 1884

Nu siger [min leverandør](http://prcdata.dk) at de vil have hele nassystemet tilbage for at teste. Dette er bare uheldigt da jeg jo allerede har en del data liggende på systemet – deriblandt backup af mine macs samt en del firmadata.

Jeg har derfor lånt et andet NAS system, som er et gammelt Intel nas. Efter at have flyttet det hele via [rsync](http://samba.anu.edu.au/rsync/ “rsync”) som tog nogle dage (700GB med 2Mb/s), måtte jeg håbe på at jeg kunne bruge de gamle TimeMachine backupfiler.
Først ville mine macs ikke godkende flytningen, men efter at have sat rettighederne korrekt og husket at flytte følgende filer virkede det.


.[macadresse_på_maskinen]
:2e[macadresse_på_maskinen]

Maskinerne brokkede sig dog lidt, men efter at have logget ind og ud et par gange af samba-shared, virkede det.

Nu skal jeg bare have sent min TS-509 og håbe at de kan fikse den.

Installering af MySQL gem

I forbindelse med mit bachelorprojekt, hvor jeg benytter mig af (http://www.rubyonrails.org/ “Ruby on Rails”), begyndte jeg at få følgende fejl.

DEPRECATION WARNING: You’re using the Ruby-based MySQL library that ships with
Rails. This library will be REMOVED FROM RAILS 2.2. Please switch to the
offical mysql gem: `gem install mysql` See
http://www.rubyonrails.org/deprecation for details. (called from mysql_connection at /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.1.1/lib/active_record/connection_adapters/mysql_adapter.rb:81)

Så var der jo ikke andet at gøre end at køre den kommendo som beskeden foreslog. Det plejer at være dejligt nemt at installer gems. Men nej.

$ sudo gem install mysql

Gav følgende resultat.

Building native extensions. This could take a while…
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.

/opt/local/bin/ruby extconf.rb install mysql
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lm… yes
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lz… yes
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lsocket… no
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lnsl… no
checking for mysql_query() in -lmysqlclient… no
*** extconf.rb failed ***

Det undrede jeg mig så lidt over, indtil jeg efter at have søgt lidt på [google](http://www.google.com/ “Google”) fandt nogen med samme problemer.
Det skyldes hovedsaglig at min [MySQL](http://www.mysql.com/ “MySQL Query Analyzer – Improving SQL Query Performance”) er installeret lidt specielt. Nemlig i `/opt/local/lib/mysql5/` og alle mysql-relaterede programmer i min $PATH hedder noget med mysql_*5.
Derfor kunne gem-pakken ikke blive installeres automatisk, og man må hjælpe den lidt på vej, med at fortælle hvor `mysql_config` rigtig ligger, hvilket f.eks. kan findes ved at køre følgende i [iTerm](http://iterm.sourceforge.net/ “iTerm”).

$ locate mysql_config
/opt/local/bin/mysql_config5
/opt/local/lib/mysql5/bin/mysql_config
/opt/local/share/man/man1/mysql_config.1.gz

Herefter kan følgende køres.

$ sudo gem install mysql — –with-mysql-config=/opt/local/lib/mysql5/bin/mysql_config
Building native extensions. This could take a while…
Successfully installed mysql-2.7
1 gem installed

Wuhoo, nu kommer der ingen DEPRECATION WARNING mere :)

Git med ekstern arbejdsmappe

Jeg har aldrig helt fået taget mig sammen til at sætte mig ind i [Git](http://git.or.cz/ “Git – Fast Version Control System”), men i forbindelse med mit bachelor projekt, tænkte jeg at nu skulle det være.

Det første jeg ville have, var at få mine git commit direkte ind i det [projektstyring](http://www.redmine.org/) jeg benytter.

## Lokalt opsætning
Først startede jeg mit repository

$ mkdir projekt
$ cd projekt
$ git init

## Ekstern server
Derefter skulle det være muligt at ‘pushe’ ens rettelser ud via ssh.

Derfor gjorde jeg følgende på serveren:

$ mkdir projekt.git
$ cd projekt.git/
$ git –bare init

## Lokalt igen

Derefter kunne jeg gøre følgende

$ git push user@servername.tld:project.git/ master

Herefter kunne jeg definere stien til .git i projekt styringen.
Det kan være en god ide at opsætte SSH-keys før man benytter denne metode. Så man ikke skal indtaste ens password hele tiden, og derudover et alias til dette commit.
Man behøver selvfølgelig ikke at lave den sidste handling hele tiden, men kun når man mener at man vil publicere det sidste man har lavet.

Rotering af logfiler på et andet drev.

Debian er normalt ikke det jeg roder for meget med, men en gang i mellem bliver man nødt til det. Med den lovgivning vi har i dag, skal vi gemme et år tilbage. Det er sådan set nemt nok at sætte op. Først dog lige hvordan det foregår på FreeBSD.

## På FreeBSD

På FreeBSD sætter man f.eks. newsyslog til at rotere maillog med følgende kommando.

/var/log/maillog 640 365 * @T00 JC

Den rotere hermed hver nat og gemmer 365 dage tilbage.
igennem `/etc/crontab` bliver newsyslog så kørt.

0 * * * * root newsyslog

Man kan dog komme ud fra at alle logfilerne ikke kan ligge på samme disk, og man kan derfor tilføje `-a

` til newsyslog, og hermed definere et sted hvor roterede filer skal gemmes.

0 * * * * root newsyslog -a /var/log/archived-logs

## På Debian
På Debian er det lidt anderledes. I hvert fald for nogen af logfilerne. For det første kan det være sat op i `/etc/logrotate` eller i dens egen fil i `/etc/logrotate.d/`. I det setup jeg arbejdede med sidst, var dette dog ikke tilfældet. Her blev filerne styret i syslogd.
Følgende giver alle de filer som syslogd rotere;

# /usr/sbin/syslogd-listfiles
/var/log/mail.warn
/var/log/daemon.log
/var/log/syslog
/var/log/mail.log

Via `/etc/cron.daily/sysklogd` bliver disse filer så fundet frem og med `/usr/bin/savelog` roteret.
De filer jeg arbejder med bliver gemt på følgende måde.

savelog -g adm -m 640 -u root -c 365 $LOG >/dev/null

Hvis man læser manpages til `savelog` så får man at vide at `-r ` kan benyttes, til at gemme de gamle filer på en anden lokation.
Det fremgår dog ikke, at denne `rolldir` er relativ til den roterede fil og det er derfor ikke muligt at angive en absolut sti.
Dette er blevet added som [en bug](http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg376050.html), men den er i hvert fald ikke rettet på vores system.

Nå, men tilbage til selve opgaven. At flytte gamle logfiler over på et andet drev.
Først link til drevet så jeg får en relativ path.

ln -s /log/servernavn/savelog /var/log/archived-logs

Derefter flytte de filer som defineret i `syslogd-listfiles`

mv /var/log/mail.warn.* /var/log/mail.log.* /var/log/daemon.log.*
/var/log/syslog.* /var/log/archived-logs

Til sidst rette, så savelog også gemmer filerne i denne mappe

# emacs /etc/cron.daily/sysklogd
savelog -g adm -m 640 -u root -c 365 -r archived-logs $LOG >/dev/null

Nu skulle nye roterede filer gemmes på det nye drev, og pladsproblemerne er løst.

Fluid – Sidespecifik webbrowser

Via [ScreenCastsOnline](http://www.screencastsonline.com/ “Mac Tutorials : ScreenCastsOnline”) fandt jeg en [anmeldelse](http://www.screencastsonline.com/index_files/SCO0154-fluid.php “SCO0154 – Fluid – Managing Your WebApps”) af freeware programmet [Fluid](http://fluidapp.com/). Dette program gør det muligt at lave en speciel indstillet webbrowser til de sider du besøger mest. Herved bliver det muligt f.eks. at tabbe sig til en bestemt side via Command + Tab, men også f.eks. smide siden op i menubaren. Den kan også opdatere et Dock ikon med f.eks. antal nye mails på Gmail.

Ved det første, synes jeg ikke at det lød ret interessant, men efter at jeg kiggede videre i [videoen](http://www.screencastsonline.com/index_files/SCO0154-fluid.php “SCO0154 – Fluid – Managing Your WebApps”), kom der nogle meget gode eksempler på hvordan dette kan bruges virkelig smart. Se selv eksempler på [fluidapp.com
](http://fluidapp.com/ “Fluid – Free Site Specific Browser for Mac OS X Leopard”).

Pt. har jeg kun lavet en browser som viser et lille ikon oppe i menu-bjælken med [Todoist](http://todoist.com/ “Simple todo list and task manager: Todoist”). Der findes godt nok også et Widget plugin til sitet, men da widgets ikke undersøtter alt den lækre Web2.0 teknologi som Todoist benytter, er det dejligt med sådan et lille program. Kan forresten bestemt anbefale [Todoist](http://todoist.com/ “Simple todo list and task manager: Todoist”) til at holde styr på ens todoliste. Det er rart at have den online, så man altid kan tilgå den.

ZigVersion – Subversion Made Easy

Jeg har igennem en årrække altid brugt [SVN (subversion)](http://subversion.tigris.org/) til versionstyring. Selvom jeg har kigget og prøvet andre systemer som [Darcs](http://darcs.net/ “darcs”), [Git](http://git.or.cz/ “Git – Fast Version Control System”), [CVS](http://www.nongnu.org/cvs/), falder jeg altid tilbage til SVN.
Normalt når jeg laver noget som skal styres via SVN, benytter jeg [TextMate](http://macromates.com/ “TextMate — The Missing Editor for Mac OS X”) som også har indbygget SVN klient.

Selvfølgelig bruger jeg også bare den almindelige CLI version. Det er dog mest ved flytning og indstillinger på filer og mapper.
Nogen gange er det bare rart at have et GUI at klikke rundt i. Her faldt jeg over [ZigVersion](http://zigzig.com/ “ZigZig Software – ZigVersion”).

![Zigversion History](http://lauer.dk/wp-content/zigversion-history.png)

Ved hjælp af dette program, kan jeg hurtigt få et oversigt over et repository, også selvom man ikke har hentet fra det før. Det er praktisk nok, når man skal tjekke projekter ud fra f.eks. [Google Code](http://code.google.com/hosting/ “Google Code Hosting”).

Programmet er gratis, hvis man ikke bruger det kommercielt.

Porticus – GUI til MacPorts

Jeg har været lidt fraværende min blog de sidste 2 månender. Det skyldes både eksamensperioden samt et par projekter jeg har haft gang i.
Så må hellere starte med at ønske folk en forsinket god jul og godt nytår. Så er det vist på plads.

Tilbage til emnet. Egentligt er det bare et lille hint til et rigtigt godt program som jeg støtte ind i idag. Det hedder [Porticus](http://porticus.alittledrop.com/) og er et fint lille program til at holde styr på de programmer man har installeret via [MacPorts](http://macports.org).

![Porticus](http://lauer.dk/wp-content/porticus.jpg)

Det giver nem mulighed til at holde ens pakker opdateret og man kan via det brugervenlige interface nemt se hvilke varianter af programmer som ligger i MacPorts.
Man kan også nemt aktivere og deaktivere forskellige versioner af et program, hvis man har behov for det.
Programmet er selvfølgelig gratis og kan [hentes her](http://porticus.alittledrop.com/).