mar 102015
 

Knepig rubrik till detta inlägg, men följande har jag råkat ut för.

Ett antal servrar var uppsatta att boota från lvm med bara en pv. Allt fungerade bra tills man la till ytterligare en pv i vg.

Boot avbröts med bl.a. följande meddelande:

gave up waiting for root device. Common problems: boot args ( cat 
/proc/cmdline ) 
check rootdelay= (did the system wait long enough?) 
check root=(did the system wait for the right device? 
Missing modules (cat /proc/modules; ls /dev) 
ALERT! /dev/disk/<> does not exist.
Dropping to a shell!

Efter detta hamnar man i BusyBox.

Snabbaste sättet att få igång servern är då att starta lvm och sedan köra kommandot vgchange -ay.

Så här:

lvm> vgchange -ay
  3 logical volume(s) in volume group "vg0" now active
lvm>

Efter detta kan man avsluta lvm och BusyBox. Då bootar servern upp utan problem. Tyvärr blir det samma visa efter omstart.
Problemet finns i grubs device.map.

root@server:/# cat /boot/grub/device.map
(hd0)   /dev/sda

/dev/sdb/ saknas.

Provade update-grub

root@server:~# update-grub
Generating grub.cfg ...
/usr/sbin/grub-probe: error: Couldn't find PV pv1. Check your device.map.
Found linux image: /boot/vmlinuz-3.2.0-4-amd64
Found initrd image: /boot/initrd.img-3.2.0-4-amd64
/usr/sbin/grub-probe: error: Couldn't find PV pv1. Check your device.map.
/usr/sbin/grub-probe: error: Couldn't find PV pv1. Check your device.map.
/usr/sbin/grub-probe: error: Couldn't find PV pv1. Check your device.map.

Det gick inget vidare. Tricket är att skapa en ny/korrekt device.map. Till hjälp finns grub-mkdevicemap.

root@server:~# grub-mkdevicemap

Efter det kör man update-grub igen.

Om vi nu kikar på device.map igen så ser den ut så här:

root@server:/# cat /boot/grub/device.map
(hd0)   /dev/sda
(hd1)   /dev/sdb

Då gör vi ett nytt försök med update-grub.

root@nwtfront02:~# update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.2.0-4-amd64
Found initrd image: /boot/initrd.img-3.2.0-4-amd64
Done

Sedan är det ok att starta om.

 Posted by at 15:56
Dec 132013
 

Vi fick problem med IPv6 på en ny Debian-server där vi körde 3.10 av kärnan. I normalläget funkade IPv6 bra, men det blev problem t.ex. när man kör över en Sixxs-tunnel med låg MTU, 1280. Att köra från datorn som har hand om tunneländan var inget bekymmer, eftersom MSS (maximum segment size) i TCP tar hand om det då den datorn vet om sin egen MTU på tunnelinterfacet. Däremot blev det problem med enheter som satt på nätet bakom tunneln, då de hade MTU på 1500 och därför högre MSS.

Problemet härleddes till att servern med 3.10 kärnan struntade i ICMP Packet Too Big. Som en första åtgärd sänkte jag MTU till 1280 på servern, vilket fungerade som tillfällig lösning. Sedan backade vi kärnan till 3.2 och då fungerade det som det skulle.

I efterhand ser vi att det verkar vara ett känt problem och att det jobbas på det, även om det inte är allmänt känt. Patchar är på väg.

 Posted by at 12:35
maj 252012
 

En cool feature som man ofta missar med vim är att öppna en fil och direkt komma till en viss rad. T.ex. om du har en fil ”testfil” som du vill öppna på rad 3 så skriv:

vim testfil +3

Det kanske inte är så märkvärdigt men det är användbart om du kör ssh och får en konflikt i .ssh/known_hosts och snabbt vill fixa det. Låt säga att konflikten är på rad 431. I stället för att hoppa till rad 481 när man öppnat  .ssh/known_hosts kan man helt enkelt skriva

vim ~/.ssh/known_hosts +431

En variant på det hela är att automatiskt hamna på den första förekomsten av ett specifikt mönster.

Om jag tex har en fil enligt följande

orbiter:~ atall$ cat testfil
Detta är en test fil
Detta är rad 2
Här kommer rad 3
Och slutligen har vi rad 4
orbiter:~ atall$

och sedan skriver

vim testfil +/kommer

så hamnar jag på rad 3 där ordet ”kommer” förekommer för första gången i filen.

Båda dessa varianter går att kombinera med att ett kommando körs. I exemplet med konflikten i .ssh/known_hosts vill man kanske ta bort just den raden. Jag visar ett exempel på det fast jag använder testfilen ovan.

 

orbiter:~ atall$ vim testfil +/kommer +d +x
orbiter:~ atall$ cat testfil
Detta är en test fil
Detta är rad 2
Och slutligen har vi rad 4
orbiter:~ atall$

Och vips är rad 3, där ordet ”kommer” förekom, borta.

 Posted by at 12:00
jul 272011
 

Jag behövde flera IPv6-adresser på ett interface på en Ubuntu linux. För IPv4 är det vanligt att man skapar subinterface t.ex. eth0:0, men det var ingen bra idé för IPv6.

Att göra så här i /etc/network/interfaces fungerade inte heller:

iface eth0 inet6 static
 address 2001:2040:2000:7::21
 address 2001:2040:2000:7::22
 netmask 64
 gateway 2001:2040:2000:7::1

Felmeddelandet blev:

# /etc/init.d/networking restart
* Reconfiguring network interfaces...
/etc/network/interfaces:20: duplicate option
ifdown: couldn't read interfaces file "/etc/network/interfaces"
/etc/network/interfaces:20: duplicate option
ifup: couldn't read interfaces file "/etc/network/interfaces"

I stället fick det bli så här:

iface eth0 inet6 static
 address 2001:2040:2000:7::21
 netmask 64
 gateway 2001:2040:2000:7::1
 post-up ip -f inet6 addr add 2001:2040:2000:7::22 dev eth0
 pre-down ip -f inet6 addr del 2001:2040:2000:7::22  dev eth0
 Posted by at 15:23
maj 122011
 

Just nu pågår LinuxTag 2011 i Berlin. Från den 11 till den 14 maj. Det som gör LinuxTag intressant för mig är blandningen av Linux/Open Source och industrin. Här hittar man allt från Linux Usergroups till stora etablerade företag, som t.ex. Oracle, IBM, Microsoft, LPI, Qualcomm, Nokia.

http://www.linuxtag.org/

Förutom utställningen är det mängder med intressanta föreläsningar.

http://www.linuxtag.org/2011/en/program.html

Tyvärr har jag bara möjlighet att vara med de två första dagarna.

 Posted by at 09:20
jan 262011
 

Nej, -3 är inte ett betyg utan ett nytt val för scp i och med version 5.7 av openSSH som kom i förrgår.

Det står så här i release notes:

scp(1): Add a new -3 option to scp: Copies between two remote hosts
are transferred through the local host. Without this option the
data is copied directly between the two remote hosts.

Äntligen kan man alltså kopiera filer mellan två remote hosts via den lokala hosten.

 Posted by at 22:49