Problem vid uppdatering

Frågor om LiveCDn samt installation och uppgradering av Ubuntu och dess varianter
Användarvisningsbild
skalman65
Inlägg: 1050
Blev medlem: 15 jan 2008, 23:18
OS: Annat GNU/Linux
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Kalix

Problem vid uppdatering

Inlägg av skalman65 »

har fått problem med en maskin vid uppdatering via terminalen

det vanliga sudo apt upgrade får jag fel meddelande om den inte kan öppna låsfilen samt frågan om jag är root (vilket jag är).

Väljer jag däremot att börja med att köra en sudo su så fungerar det utan problem

Har för mig att jag hade ett liknande problem tidigare kan varken hitta inlägget eller kommer ihåg lösningen
Användarvisningsbild
Osprey
Inlägg: 6310
Blev medlem: 06 apr 2008, 00:09
OS: Ubuntu
Ort: Göteborg/Mölndal/Falkenberg
Kontakt:

Re: Problem vid uppdatering

Inlägg av Osprey »

Det är kanske något av låsen som ligger kvar, förmodligen för att datorn stängts av medan Synaptic eller något liknande varit igång.

Börja med att kolla om "/var/lib/apt/lists/lock", eller "/var/lib/dpkg/lock" finns och rensa isåfall bort dem. Givetvis ska inte apt eller synaptic eller något liknande vara igång när man gör det.

Den här typen av fel får man t.ex även om man har igång Synaptic när man försöker köra apt.
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
Användarvisningsbild
skalman65
Inlägg: 1050
Blev medlem: 15 jan 2008, 23:18
OS: Annat GNU/Linux
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Kalix

Re: Problem vid uppdatering

Inlägg av skalman65 »

Osprey skrev: Börja med att kolla om "/var/lib/apt/lists/lock", eller "/var/lib/dpkg/lock" finns och rensa isåfall bort dem.
har en "lock fil" i båda mapparna, när jag tar bort dem skapas de på nytt av systemet då?

I lib/dpkg mappen så hade jag även en lock-fronted fil, ska även den bort?
Användarvisningsbild
Osprey
Inlägg: 6310
Blev medlem: 06 apr 2008, 00:09
OS: Ubuntu
Ort: Göteborg/Mölndal/Falkenberg
Kontakt:

Re: Problem vid uppdatering

Inlägg av Osprey »

skalman65 skrev:har en "lock fil" i båda mapparna, när jag tar bort dem skapas de på nytt av systemet då?
Ja de skapas automatiskt så fort du startar "apt", "apt-get", "aptitude", "dpkg" eller "synaptic"... och tas bort när programmet gör en ordnad exit. Men kan bli liggande kvar om du får ett strömavbrott eller annan form av krasch medan programmet är igång...
skalman65 skrev:I lib/dpkg mappen så hade jag även en lock-fronted fil, ska även den bort?
Känner inte till denna, så låt den ligga kvar och se om det funkar ändå...

Eller förresten, du kan köra en:

Kod: Markera allt

file lock-fronted
på den först för att se vad det är för något... De andra är bara tomma låsfiler och bör ge ungefär "empty" som resultat, om de nu inte innehåller en PID eller något sådant... har faktiskt aldrig kollat eftersom det egentligen inte har någon betydelse.... ;)

Jag har fått rensa bort de här låsfilerna lite då och då, kanske speciellt på grund av att vi hade en spis som slog ifrån jordfelsbrytaren i proppskåpet lite då och då. Då låg de alltid kvar där, framförallt om jag hade haft Synaptic igång i "tomgångsläge"...

Däremot har jag aldrig behövt rensa bort någon "lock-fronted", så vänta med att ta bort den och gör då givetvis en:

Kod: Markera allt

mv lock-fronted lock-fronted.bck
så att du kan kopiera tillbaka den om det skulle visa sig att det inte var någon bra idé att ta bort den...

De andra lock-filerna (låsfilerna) kan du däremot lugnt ta bort.... ;D
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
Användarvisningsbild
Osprey
Inlägg: 6310
Blev medlem: 06 apr 2008, 00:09
OS: Ubuntu
Ort: Göteborg/Mölndal/Falkenberg
Kontakt:

Re: Problem vid uppdatering

Inlägg av Osprey »

Här har du förresten ett utdrag ur ett script jag gjort, som hanterar just det här och även kontrollerar om det är någon annan, eller något annat som just nu låser det hela...

Kod: Markera allt

#! /bin/bash
#
PID=$(lsof /var/lib/dpkg/lock 2> /dev/null | tail -1 | awk '{ print $2 }')
if [[ ! -z $PID ]]; then
	echo
	echo "-The following process is locking dpkg"
	echo
	ps -o pid,user,command $PID | tail -1
	echo
	read -p "_Do you want to kill it? [y/N]: " IN
	if [[ $IN == "y" || $IN == "Y" ]]; then
		echo "Killing $PID"
		kill $PID
		echo
	else
		exit
	fi
elif [[ -e /var/lib/dpkg/lock ]]; then
	echo
	echo ">>> rm /var/lib/dpkg/lock"
	rm /var/lib/dpkg/lock
	echo
fi
PID=$(lsof /var/lib/apt/lists/lock 2> /dev/null | tail -1 | awk '{ print $2 }')
if [[ ! -z $PID ]]; then
	echo
	echo "-The following process is locking apt"
	echo
	ps -o pid,user,command $PID | tail -1
	echo
	read -p "_Do you want to kill it? [y/N]: " IN
	if [[ $IN == "y" || $IN == "Y" ]]; then
		echo "Killing $PID"
		kill $PID
		echo
	else
		exit
	fi
elif [[ -e /var/lib/apt/lists/lock ]]; then
	echo
	echo ">>> rm /var/lib/apt/lists/lock"
	rm /var/lib/apt/lists/lock
	echo
fi
echo
Skapa bara ett bash-script med det här innehållet, så fixar du det lätt i framtiden... ;)

Scriptet inför också säkerhet genom att det kontrollerar om det för tillfället finns någon annan process, eller person som äger låset. Om det inte finns någon annan som äger låset, så rensas det direkt...
Senast redigerad av 1 Osprey, redigerad totalt 20 gånger.
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
Användarvisningsbild
skalman65
Inlägg: 1050
Blev medlem: 15 jan 2008, 23:18
OS: Annat GNU/Linux
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Kalix

Re: Problem vid uppdatering

Inlägg av skalman65 »

Osprey skrev:Skapa bara ett bash-script med det här innehållet, så fixar du det lätt i framtiden...
Suveränt Osprey ;D

Kunde inte bli lättare, Tack scriptet blir till och spara för framtiden.
Skriv svar

Återgå till "Installation och uppgradering"