웹사이트 검색

Ubuntu에서 "관리 디렉터리(/var/lib/dpkg/)를 잠글 수 없음" 수정


Ubuntu Linux 또는 Linux Mint와 같은 파생 제품에서 apt-get 명령이나 상대적으로 새로운 APT 패키지 관리 도구를 사용하는 동안(실제로 Ubuntu Linux의 기본 운영 체제로 사용) 일상적인 작업을 수행하는 동안) 오류가 발생했을 수 있습니다. – "관리 디렉터리(/var/lib/dpkg/)는 이를 사용하는 다른 프로세스입니다를 잠글 수 없습니다. " 명령줄.

이 오류는 특히 오류의 원인을 정확히 알지 못하는 새로운 Linux(Ubuntu) 사용자에게 매우 짜증스러울 수 있습니다.

다음은 Ubuntu 16.10의 잠금 파일 오류를 보여주는 예입니다.

tecmint@TecMint:~$ sudo apt install neofetch
[sudo] password for tecmint:
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?

아래 출력은 동일한 오류의 또 다른 가능한 인스턴스입니다.

E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/lib/apt/lists/ 
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?

나중에 위와 같은 오류가 발생할 경우 어떻게 해결할 수 있나요? 이 오류를 처리하는 방법에는 여러 가지가 있지만 이 가이드에서는 가장 쉽고 효과적인 두 가지 해결 방법을 살펴보겠습니다.

1. 모든 apt-get 또는 apt 프로세스를 찾아 종료합니다.

아래 명령을 실행하여 이름이 apt라는 단어로 구성된 모든 프로세스의 목록을 생성하면 모든 apt 또는 apt-get<을 포함하는 목록을 얻게 됩니다.ps 및 grep 명령을 파이프라인과 함께 사용하여 처리합니다.

ps -A | grep apt

위 명령의 출력에서 볼 수 있는 각 apt-get 또는 apt 프로세스에 대해 아래 명령을 사용하여 각 프로세스를 종료합니다.

프로세스 ID(PID)는 위 스크린샷의 첫 번째 열에 있습니다.

sudo kill -9 processnumber
OR
sudo kill -SIGKILL processnumber

예를 들어 9SIGKILL 신호에 대한 신호 번호인 아래 명령에서 첫 번째 apt 프로세스를 종료합니다.

sudo kill -9 13431
OR
sudo kill -SIGKILL 13431

2. 잠금 파일 삭제

잠금 파일은 Linux 시스템의 다른 파일이나 일부 데이터에 대한 액세스를 차단할 뿐입니다. 이 개념은 Windows 및 기타 운영 체제에도 존재합니다.

apt-get 또는 apt 명령을 실행하면 /var/lib/apt/lists/ 디렉터리 중 하나에 잠금 파일이 생성됩니다. , /var/lib/dpkg//var/cache/apt/archives/.

이는 이미 실행 중인 apt-get 또는 apt 프로세스가 사용자 또는 다음에서 사용 중인 파일을 처리해야 하는 다른 시스템 프로세스에 의해 중단되는 것을 방지하는 데 도움이 됩니다. apt-get 또는 apt. 프로세스 실행이 완료되면 잠금 파일이 삭제됩니다.

중요: 눈에 띄는 apt-get 또는 apt 프로세스가 실행되지 않고 위의 두 디렉터리에서 잠금이 계속 종료되는 경우 프로세스가 한 가지 이유로 보류되었음을 의미할 수 있습니다. 또는 다른 것이므로 오류를 해결하려면 잠금 파일을 삭제해야 합니다.

먼저 아래 명령을 실행하여 /var/lib/dpkg/ 디렉터리에서 잠금 파일을 제거합니다.

sudo rm /var/lib/dpkg/lock

그런 다음 패키지를 강제로 다음과 같이 재구성합니다.

sudo dpkg --configure -a

또는 아래와 같이 /var/lib/apt/lists/ 및 캐시 디렉터리에 있는 잠금 파일을 삭제하세요.

sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock

그런 다음 다음과 같이 패키지 소스 목록을 업데이트합니다.

sudo apt update
OR
sudo apt-get update

결론적으로 우리는 apt-get 또는 apt를 실행하면서 Ubuntu(및 그 파생 제품) 사용자가 직면하는 일반적인 문제를 처리하기 위한 두 가지 중요한 방법을 살펴보았습니다. 적성 명령.

이 일반적인 오류를 처리하기 위해 공유할 수 있는 다른 신뢰할 수 있는 방법이 있습니까? 그런 다음 아래 피드백 양식을 통해 우리에게 연락하십시오.

또한 실행 중인 프로세스를 찾아 종료하는 방법을 배우고 Linux에서 프로세스를 종료하는 kill, pkill 및 killall 명령에 대한 간단한 가이드를 읽어볼 수도 있습니다.