Ten poradnik pomoże Ci naprawić błąd could not get lock lub unable to lock the administration directory w Ubuntu.
E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
Podczas wykonywania jakiejkolwiek operacji wiersza poleceń przy użyciu apt, z powodu pewnych przyczyn (np. nie można pobrać niektóre pakiety z serwera, lub połączenie internetowe zerwane w połowie drogi lub z powodu innych problemów), jeśli proces apt nagle kończy, a następnie system może uruchomić się w powyższych błędów. Oznacza to, że proces apt nie mógł się zakończyć i teraz nie będziesz w stanie używać żadnych innych komend apt, chyba że to naprawisz.
Istnieje wiele sposobów na naprawienie tego, spróbujmy jeden po drugim.
Poprawka 1
Poprawka ta polega na znalezieniu ID procesów apt i próbie ich zabicia. Uruchom poniższe komendy z terminala:
ps aux | grep apt
To wyświetli listę wszystkich procesów apt, które trzymają blokadę. W poniższym przykładzie możesz zobaczyć identyfikatory procesów (pierwsza kolumna), które trzymają blokadę.
kill -9 processnumber
Po wykonaniu powyższego polecenia, uruchom ponownie komputer i spróbuj wykonać dowolne polecenie apt, które dało ci błąd. To powinno rozwiązać błąd.
Jeśli nadal napotykasz błąd i Fix 1 nie rozwiązał go, wykonaj poniższe poprawki.
Fix 2
Spróbuj poniższe polecenie z terminala, to spróbuje zatrzymać usługę apt.
sudo systemctl stop apt-daily.timer
Po powyższym poleceniu, spróbuj czy nadal napotykasz błąd. Jeśli to rozwiązuje, następnie zrestartuj system i upewnij się, aby rozpocząć usługę po tym przez poniżej:
sudo systemctl start apt-daily.timer
Jeśli poprawka 2 nie działa, postępuj zgodnie z poniższą poprawką.
Poprawka 3
Ostrzeżenie:
Poniższa poprawka jest niebezpieczna i powinna być wypróbowana tylko wtedy, gdy powyższe poprawki 1 i 2 nie działają i jest to ostatnia deska ratunku dla ciebie. To może spowodować uszkodzony system, jeśli obsługiwane nieostrożnie.
Run poniżej polecenia z terminala. To spowoduje usunięcie plików blokady ręcznie poprzez uprawnienia roota.
sudo fuser -cuk /var/lib/dpkg/lock; sudo rm -f /var/lib/dpkg/locksudo fuser -cuk /var/cache/apt/archives/lock; sudo rm -f /var/cache/apt/archives/lock
Po uruchomieniu powyższych poleceń, spróbuj wykonać operację, która spowodowała błąd. To powinno go rozwiązać.