Arkiv för kategori » computing «

Söndag, 4 Augusti, 2013 | Författare:

Jag hade ett strömavbrott påverkar min server stora md RAID matris. Hellre än att låta servern som helhet vara nere i väntan på att slutföra en fsck, Jag hade den starta utan stort utbud så jag kunde köra fsck manuellt.

Men, när man kör den manuellt insåg jag att jag inte hade någon möjlighet att veta hur långt det var och hur lång tid det skulle ta att slutföra. Detta är särskilt problematiskt med ett så stort spektrum. Med lite sökning fann jag spetsen på lägga till-C-parametern när du ringer fsck. Jag kunde inte hitta detta i dokumentationen dock: fsck –hjälp visade ingen sådan möjlighet.

Alternativet visar sig vara ext4 specifika, och visar därmed en fullt funktionell förloppsindikator med en procentsats indikator. För att hitta den information, istället för “fsck –hjälpa” eller “man fsck”, du måste mata “fsck.ext4 –hjälpa” eller “man fsck.ext4”. 🙂

Dela med sig
Söndag, 4 Augusti, 2013 | Författare:

Historia

Mycket hade förändrats sedan jag senast nämnde mitt personlig server – det har vuxit med stormsteg (Det har nu en 7TB md RAID6) och det hade nyligen byggts om med Ubuntu Server.

Arch var aldrig ett misstag. Arch Linux har redan lärt mig så mycket om Linux (och kommer att fortsätta att göra det på min andra dator). Men Arch kräver definitivt mer tid och uppmärksamhet än jag skulle vilja spendera på en server. Helst skulle jag föredra att kunna glömma servern ett tag tills en påminnelse mail säger “um … Det finns ett par uppdateringar som du bör titta på, buddy.”

Rymden är inte gratis – och inte heller är utrymmet

Möjligheten att migrera till Ubuntu var det faktum att jag hade slut på SATA portar, portarna krävs för att ansluta hårddiskar till resten av datorn – att 7TB RAID array använder en hel del portar! Jag hade till och med gett bort min mycket gamla 200GB hårddisk som det tog upp en av dessa portar. Jag varnade också mottagaren att diskens SMART övervakning anges det var otillförlitliga. Som en tillfällig lösning på bristen på SATA-portar, Jag hade även migrerat serverns OS till en uppsättning av fyra USB-minnen i en md RAID1. Crazy. Jag vet. Jag var inte alltför glada om hastigheten. Jag bestämde mig att gå ut och köpa en ny pålitlig hårddisk och en SATA-expansionskort för att gå med det.

Serverns primära Arch partition använde omkring 7 GB hårddisk. En stor bit av det var en swap fil, cachad data och annat diverse eller onödiga filer. Övergripande den verkliga storleken av OS, inklusive /hem mapp, var endast omkring 2 GB. Detta fick mig att titta in i en supersnabb SSD köra, tänker kanske en mindre kanske inte så dyrt. Det visade sig att den billigaste icke-SSD-enhet jag kunde hitta faktiskt kosta mer än en av dessa relativt små SSD. Yay för mig. 🙂

Choice? Woah?!

Vid val av OS, Jag hade redan bestämt att det inte skulle vara Arch. Av alla de andra populära distributionerna, Jag är mest bekant med Ubuntu och CentOS. Fedora var också en möjlighet – men jag hade inte på allvar ännu ansåg det för en server. Ubuntu segrade runda.

Nästa beslut jag var tvungen att göra inte falla mig in förrän Ubiquity (Ubuntus installationsguide) frågade den av mig: Hur du ställer in partitioner.

Jag var van vid att använda SSD i Linux – Jag är väl medveten om de fallgropar av att inte använda dem på rätt sätt, främst på grund av deras risk för dålig livslängd vid felaktig.

Jag ville inte använda en dedikerad partition för växlingsutrymme. Jag planerar att uppgradera servern moderkort / CPU / minne inte alltför långt i framtiden. Baserat på att jag bestämde jag kommer att sätta swap i en växlingsfil på den befintliga md RAID. Swapen kommer inte att vara särskilt snabb men dess enda syfte kommer att vara för den sällsynta tillfällen när något har gått fel och minnet är inte tillgänglig.

Detta lämnade mig sedan för att ge rotsökvägen den fullständiga 60GB ur en Intel 330 SSD. Jag ansåg att separera / hem men det verkade bara lite meningslöst, med tanke på hur litet användes tidigare. Jag först ställa in partitionen med LVM – något jag har nyligen gjort när jag satt upp en Linux-box (verkligen, det finns ingen ursäkt att inte använda LVM). När det kom till delen där jag skulle konfigurera filsystem, Jag klickade på den nedrullningsbara och instinktivt valt ext4. Då märkte jag btrfs på samma lista. Hänga på!!

Men ett vad?

Btrfs (“smör-eff-ess”, “bättre eff-ess”, “bee-tree-eff-ess”, eller vad du vill på dagen) är en relativt ny filsystem utvecklats för att föra Linux’ filsystem funktioner tillbaka på rätt spår med nuvarande filsystem teknik. Den nuvarande King-of-the-Hill filsystemet, “ext” (den aktuella versionen heter ext4) är ganska bra – men det är begränsat, fastnat i ett gammalt paradigm (tänka på ett helt nytt F22 Raptor vs. en F4 Phantom med en halv-Jested försök till en likvärdighet uppgradering) och det är osannolikt att kunna konkurrera för mycket länge med nyare Enterprise filsystem såsom Oracles ZFS. Btrfs har fortfarande en lång väg att gå och betraktas fortfarande experimentell (beroende på vem man frågar och vilka funktioner du behöver). Många anser att det är stabilt för grundläggande användning – men ingen kommer att göra några garantier. Och, naturligtvis, alla säger att och testa säkerhetskopior!

Mooooooo

Den mest grundläggande skillnaden mellan ext och btrfs är att btrfs är en “CoW” eller “Kopiera på Skriv” filsystem. Detta innebär att data faktiskt aldrig medvetet över av filsystemet s interna. Om du skriver en ändring till en fil, btrfs kommer att skriva dina ändringar till en ny plats på fysiska medier och kommer att uppdatera de interna pekare för att hänvisa till den nya platsen. Btrfs går ett steg längre i att de interna pekare (kallad metadata) är också CoW. Äldre versioner av ext skulle helt enkelt överskrivna data. Ext4 skulle använda en tidskrift för att säkerställa att korruption inte kommer att inträffa ska nätkontakten kan ryckte ut på de mest olämplig tidpunkt. Tidskriften resulterar i ett liknande antal steg som krävs för att uppdatera data. Med en SSD, den underliggande hårdvaran fungerar en liknande CoW process oavsett vilket filsystem du använder. Detta beror på att SSD-enheter inte kan faktiskt skriva över data – de måste kopiera data (med dina ändringar) till en ny plats och sedan radera det gamla blocket helt. En optimering inom detta område är att en SSD inte ens kan radera det gamla blocket utan helt enkelt göra en anteckning att radera blocket vid ett senare tillfälle när saker inte är så upptagen. Slutresultatet är att SSD-enheter passar mycket väl med en ko filsystem och inte prestera lika bra med icke-ko filsystem.

För att göra saken intressant, Ko i filsystemet går lätt hand i hand med en funktion som kallas deduplicering. Detta tillåter två (eller flera) identiska block av data som skall lagras med bara en enda kopia, sparar utrymme. Med ko, Om en fil deduplicated modifieras, den separata dubbla påverkas inte eftersom den modifierade filens data kommer ha skrivit till en annan fysisk kvarter.

Ko tur gör snapshotting relativt lätt att implementera. När en ögonblicksbild görs systemet registrerar endast den nya ögonblicksbilden som en dubblering av alla data och metadata inom volymen. Med ko, när ändringar görs, ögonblicksbilden data förblir intakt, och en enhetlig bild av filsystemet status vid tidpunkten för ögonblicksbilden gjordes kan upprätthållas.

En ny vän

Med ovanstående i åtanke, särskilt som Ubuntu har gjort btrfs finns som install-tid alternativet, Jag tänkte att det skulle vara en bra tid att dyka in btrfs och utforska lite. 🙂

Del 2 kommer snart …

Dela med sig
Måndag, 29 oktober, 2012 | Författare:

Det verkar som, i oändliga visdom, Google har en säkerhetsfunktion som kan blockera ett program från åtkomst eller med ditt Google-konto. Jag kan se hur detta kan vara ett problem för Googles användare, i synnerhet deras GTalk och Gmail användare. I mitt fall var det Pidgin har ett problem med Jabber tjänsten (som tekniskt ingår i GTalk). Jag hittade lösningen efter lite gräva. Jag blev förvånad över hur gammal frågan var och hur länge den här funktionen har funnits!

För att låsa upp kontot och få din ansökan online, använda Googles Captcha sida här.

Dela med sig
Torsdag, June 03rd, 2010 | Författare:

Why I’ve left MTN

So I’ve been shopping around in a non-serious fashion in the last few months trying to figure out how best to leave MTN and how get the best deal for me. I don’t like MTN since I became anirate“, as I might call such a customer in the ISP industry. MTN’s Customer-Service Call Centre had rarely been helpful or knowledgeable on their own systems. The final straw however was when their systems let me screw myself over and Customer Service was as helpful as a dead redshirt:

I had a billing issue where, admittedly, it started of my own fault. MTN has a feature where you can call in to find out the amount owing on your account. Only, as Murphy would have it, this amount was inte the amount owing on the account but the last amount that was billed.

So one month my account was about R900. I called the number, mis-heard R500, paid the amount I thought I should: R500. 15 days later MTN suspended my account. No wrong done, right? Wrong.

First off, I received no notification of any kind. An sms would make the most sense, especially since it would cost MTN almost no resources: “Your account xyz is in arrears by R400. Please contact blah blah blah”. They could phone me, they could email me, something, but nothing of the sort happened. Suspend without Prejudice. Thats the best way to get the customer’s attention!

Now, not only could I not make calls and sms’s, I could not receive calls or sms’s. Further, I could not even call MTN’s toll free phone number. I had to use someone else’s phone to get to the bottom of the problem. After two days of haggling I finally found a lady kind enough to re-enable the account. Ten days later my salary goes in, I call the same number and hear a number close toR900”. I think to myself maybe I should double-check juuuust in case I mis-heard. I call again, I hear the same number again. Right. Pay the R900. Fifteen days later, my phone is suspended AGAIN. WTH?

Remember what I mentioned earlier?: “this amount was inte the amount owing on the account but the last amount that was billed.” So, in spite of the fact that the voice prompt specifically saysPress 3 for Balance Due; [Presses 3] ; The Total Outstanding Balance is; Nine; hundred; och; #whatever ; Rands; och; #whatever; cents”, I actually owed them R900 plus the R400 that I’d paid short the previous month. Ingen, I do not know if MTN has fixed this. I no longer care. Since I figured this out I started waiting for paper statements to see how much was actually due. Interestingly, their paper statements were also wrong. Only they had the opposite problem: “This invoice: R1300in spite of the fact that on the next page it says opening balanceR400”, closing balanceR1300”. Pah! Is it fixed? Again, I don’t care.

I let them know I wasn’t renewing the contract and I’ve now already ported my number away to Virgin Mobile. Because I want to keep my number and port it elsewhere, the store said I could not putunsatisfactory serviceas the reason for ending the contract but that it should simply sayporting”. Apparently by putting anything else there they might notnoticethat I want it ported. WTF.

What next? (without MTN)

In my research I’ve found that contractdealsare most popular. Typically, you can get a R8000 phone for R800 per month over 24 months with R500-odd worth of airtime per month. This amounts to you paying R19 200 over a 24-month period for a phone worth R8000 which will be obsolete within 12 månader. You will get some airtime every month so you might feel its not a complete loss. However you should also remember that it costs the cellular companies nothing when you make those phone calls. Vinst.

There’s a better way

There are much cheaper contracts, contracts for between R50 and R200 which include cheapish phonesphones that work damned well as a phone but won’t let you play games on the train. Most of these contracts actually give you the same airtime value (sometimes more!) as what you are paying. So for R100 you might get R100 worth of airtime plus some free sms’s, and a cheapish phone. The best deals I’ve seen recently have all been for the Samsung STAR, an understated but good cell phone, available from a number of retailers for between R100 and R200 per month. In most cases the deals have included the full amount of airtime. Virgin Mobile has probably the best example here: The cost is R199 per month which includes R200 in airtime and 1000 sms’s (ja, you read that rightone thousand!).

Virginal Service All the Way!

Another reason I’ve gone with Virgin Mobile is a little something no other service provider does: AmixedContract/Prepaid facility. I get R200 in airtime however, if I go over that, the extra just gets added to my invoice. With MTN this could go sky high without the option of a limit! With Virgin, because I asked, it has a limit of R300. Men, I can still add prepaid airtime (with cellphone banking, nogal). No other service provider lets you do this!

Remember that R8000 cell phone I mentioned earlier? My plan is to get the Samsung STAR and spend less than R300 per month. I’ll have saved enough money to actually go and buy a more expensive phone (or laptop) with the cash I’ll have saved! Naturligtvis, if you actually use that R800-worth of phone calls, I guess the best available deal is where you spend the R19200 anyway. Maybe at least with a more critical view on your choices you’ll save yourself a good amount of money in future. Good luck in your search for your best deal!

Dela med sig
Torsdag, 12 november, 2009 | Författare:

Om du någonsin själv uppdatera en enda ansökan i Arch Linux (en mycket dålig idé, btw) och det uppgraderingar readline du kan hamna ser ett fel i stil med:
/bin/bash: error while loading shared libraries: libreadline.so.5: cannot open shared object file: No such file or directory
Förhoppningsvis har du fortfarande en bash uppmanas öppen och du inte har stängt dem alla. Om du fortfarande kan, omedelbart kör följande:
pacman -S bash
annars kommer du inte att kunna köra bash något mer eftersom bash fortfarande skulle länka till den gamla versionen av readline.

Också, i framtiden, kör inte
pacman -Sy application
(python i mitt fall)
istället, run:
pacman -Syu
som kommer att se till att alla program är uppgraderade.

Själv, Jag tycker att bash borde ha haft en beroende set säger att det krävs den gamla specifik version av readline och samma för den nya bash, kräver den nya versionen av readline. Oavsett, hellre på den säkra. 😉

Dela med sig