IO-prestanda i några svenska VPS-miljöer

IOPS testat med fio, randrw.

Disclaimer: dessa siffror kanske inte är rättvisande, jag kanske har använt fel inställningar för fio, jag har inte alltid testat flera gånger osv.

Leverantör r w
Adminor 101 101
Bahnhof 268 268
City Network 652 651
GleSYS 3780 3766
ipeer 1735 1720
Oderland 82 82

För jämförelse:

Maskin r w
En gammal HP-laptop med 1,8″-disk, TOSHIBA MK1229GSG 79 78
Min MBP (early 09) med en Seagate 7200rpm Momentus, ST95005620AS 439 437
En server med 2st Intel SSDSA2M040G2GC i RAID 1 3339 3336
Samma server, partition på RAID 1 på två nya western-diskar, 2 resp 3 TB 2783 2785
HP DL380 Gen8 med 2st 146GB SAS 261 261

Varför ligger GleSYS och ipeer så mycket högre än övriga?
Finns det någon leverantör som nämner IO-prestanda i sin marknadsföring?


Uppdatering: fick in testresultat från Oderland, tack nirtal.
Uppdatering: fick in testresultat från HP DL380, tack Gnitset.

Flest eldrävar vinner

Jag använder Firefox till många olika syften. Tyvärr är detta inte helt enkelt eftersom det finns många säkerhetsrisker på webben. Dessutom vill jag som utvecklare ofta ha en ”neutral” webbläsare att testa med.

För att lösa detta har jag tre installationer av Firefox, med varsin profil och särskiljande ikon. Så här gör du för att sätta upp det.

1. Skapa profilernaSå här brukar Profile Manager se ut.

Detta gör man i Profile Manager, som man får fram genom att starta Firefox från terminalen med argumentet -p:
/Applications/Firefox.app/Contents/MacOS/firefox-bin -p

Skapa de profiler du vill ha och ge dem namn så att du kan skilja dem åt. Mina profiler heter ”dev” (för utveckling), ”tillåt js” (slösurfande), och ”bank” (som jag inte gör något annat än att betala räkningar i).

2. Skapa ikonerna

Mina Firefox-ikoner

Steg två är att skapa olika ikoner för de olika profilerna. Ikonen ligger ju dock inte i profilen, utan i applikationen Firefox. Skapa därför kopior av /Applications/Firefox.app och ge dem tydligare namn – mina heter ff_dev, ff_js och ff_bank.

Öppna sedan /Applications/ff_nånting.app/Contents/Resources i terminalen. Här ligger en fil som heter firefox.icns, den innehåller ikonen i flera olika storlekar. Med kommandot sips kan vi omvandla den till en vanlig png, som kan redigeras i Gimp, Photoshop eller annan bildredigerare.

sips -s format png firefox.icns --out firefox.png

Redigera firefox.png så att den ser ut som du vill. Mina ikoner ser du till höger.

När du är nöjd med bilden behöver du konvertera den tillbaka till icns-format:
sips -s format icns firefox.png --out firefox.icns

3. Skapa alias för att starta respektive profil

Slutligen behövs ett smidigt sätt att starta respektive profil – för trots att du nu har flera installationer av Firefox, med varsin ikon, kommer alla försöka använda samma profil, och försöker du starta dem samtidigt kommer de bara säga att Firefox redan är igång.

Om du är nöjd med att starta Firefox från terminalen, är detta enkelt löst med alias i .bashrc eller .zshrc (.bashrc om du inte vet att du ändrat shell).

alias ff_dev='/Applications/ff_dev.app/Contents/MacOS/firefox -P "dev" &> /dev/null &disown'
alias ff_bank='/Applications/ff_bank.app/Contents/MacOS/firefox -P "bank" &> /dev/null &disown'

4. Starta om Finder för att bli av med cache av ikoner

Om du fortfarande ser den gamla ikonen i dockan, starta om finder genom att trycka alt+cmd+escape, välja Finder i listan och klicka på Relaunch.

cb3zyuz1nmxu

IE9: begränsad bredd och white-space: nowrap funkar inte på tabellceller

När IE9 renderar tabellceller (<td>) tycker den att det är viktigare att följa instruktionen white-space än begränsningar av bredden. Även om du sätter overflow: hidden; kommer cellen expandera för att få plats med hela texten.

Den enda lösning jag har hittat är att istället ha ett block i cellen som är begränsat, för det verkar IE9 hantera korrekt. Om du till exempel har en cell som innehåller en länk, lägg begränsningen på länken istället för på cellen, och sätt display: inline-block; på länken.

Cron: Lista crontab för alla användare

for U in `cut -d : -f 1 /etc/passwd`; do sudo crontab -l -u $U; done

Kommandot crontab -l visar som bekant innehållet i crontab för den aktuella användaren. Med -u användarnamn kan man visa crontab för en annan användare, men man måste förstås köra kommandot som root då.

Om ingen användare har någon crontab kommer du bara få en lång lista som börjar såhär:
no crontab for daemon
no crontab for bin
no crontab for sys
...

Hur jag löste sömnproblemen med min mac

Sedan en dryg vecka tillbaka har inte min mac velat sova. Igår installerade jag om Snow Leopard på den, för att lösa det här problemet och konstiga hyss som Finder har för sig.

Det hjälpte inte.

Så jag ringde till AppleCare. Vi provade att hålla ner diverse tangenter vid uppstart för att nollställa lite inställningar. Men det hjälpte inte heller. Samtalet slutade med att jag hänvisades till ett serviceställe för att ta reda på om det fanns något hårdvaruproblem.

Idag kom jag på vad jag ändrat, som kan ha orsakat det här problemet. Det är allmänt känt att macar vaknar av att du ansluter eller kopplar bort USB-enheter. Så naturligtvis testade jag utan att ha någon USB-enhet ansluten. Trodde jag!

För en vecka sedan köpte jag en kortläsare i form av expresscard. I själva verket är det USB som används. Eftersom kortet ”försvinner in” i datorn (inte sticker ut), hade jag helt glömt bort att det var anslutet.

Idag har jag också kommit fram till att kärnan faktiskt skriver användbar info om varför datorn vaknade, till /var/log/kernel.log:
May 23 15:25:28 Gnocchi kernel[0]: hibernate_write_image done(0)
May 23 15:25:28 Gnocchi kernel[0]: sleep
May 23 15:25:28 Gnocchi kernel[0]: Wake reason = EHC2
May 23 15:25:28 Gnocchi kernel[0]: System Wake
May 23 15:25:28 Gnocchi kernel[0]: Previous Sleep Cause: 5
May 23 15:25:28 Gnocchi kernel[0]: USB (EHCI):Port 3 on bus 0x26 connected or disconnected: portSC(0x301803)
May 23 15:25:28 Gnocchi kernel[0]: The USB device USB Storage (Port 3 of Hub at 0x26000000) may have caused a wake by being disconnected

En teori är att kärnan stänger av strömmatningen till expresscard-sloten när den går ner i viloläge, för att minska strömförbrukningen. Därmed kopplas USB-enheten loss, vilket får datorn att vakna igen.

Lösningen är alltså att koppla ur kortet, säga åt datorn att somna, vänta på att den gjort det och sedan koppla in kortet igen. Den vaknar inte av detta eftersom expresscard-sloten är avstängd.

Det är inte en optimal lösning. Jag skulle förstås vilja tala om för kärnan att den här USB-enheten (alternativt alla USB-enheter) inte ska kunna väcka datorn. Men jag har inte hittat någon möjlighet att göra detta. Säg till om du vet hur.

Äppliga tangentbord vill inte släppa gamla vänner

Jag har köpt en Macbook Pro.

En ganska trevlig upplevelse än så länge. Det är bara en detalj som strular: blåtandskopplingar. Jag ville para min sedan tidigare inköpta Apple Wireless Keyboard med min nya dator. Det finns ingen dokumentation från apple om hur man gör för att koppla om tangentbordet till en annan dator – den enda instruktion som finns börjar med ”sätt i batterierna”, dvs när tangentbordet är helt nytt.

Nåväl. Jag försöker i Bluetooth Setup Assistant. Tangentbordet dyker upp i listan, det är alltså synligt. Men det går inte att para med tangentbordet, då tappas uppkopplingen.

Hur löser man detta? Bortsett från uppenbara idéer som att starta om datorn, starta om tangentbordet (ta ur batterierna), osv. Jo, man startar sin gamla mac. Låter tangentbordet och den gamla macen prata lite med varandra. Sen tar man bort tangentbordet ur den gamla macens blåtandsenheter. Vips så går det bra att para med den nya macen.

Slutsats: bli aldrig av med din mac, för då är all annan hårdvara också värdelös.