반응형

 

ubuntu 에서 apt-get update 를 하고 나서 apt-get upgrade 및 install 시에 다음과 같은 에러가 발생한다.

 

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?

 

에러 메세지를 읽어보면 /var/lib/dpkg/ 디렉토리를 다른 프로세스에서 사용 중이라 충돌이 일어난다는 것 같다.

아마 apt-get ~ 프로세스를 사용하던 중 제대로 종료되지 않아서 그런 것 같다. 

그러면 apt-get 에 걸려있는 프로세스가 있는지 확인하고 종료해 주자.

 

 

 

원인 

apt-get 프로세스 충돌

 

 

 

해결책 

1. 실행 중인 apt 관련 프로세스 찾기

 

ps aux | grep -i apt 

----- 결과 화면 -----

root      1852  0.0  5.0 110268 24772 ?        S    Aug04   4:13 apt-get upgrade

root     21461  0.0  0.2  14856  1156 pts/2    S+   04:32   0:00 grep --color=auto -i apt

-------------------

결과 화면을 보면 프로세스 아이디가 1852인 apt-get upgrade 프로세스가 실행 중이다. 
그 아래에 있는 프로세스는 신경쓰지 않아도 된다.

 

 

2. 실행 중인 apt 프로세스 종료

 

sudo kill -9 <process id>

 

위의 경우에서는 sudo kill -9 1852 라고 해주면 된다.

( 간편한 방법으로는 그냥 처음부터 sudo killall apt apt-get 도 있다.)

 

 

 

참고

만약에 위의 방법으로도 에러가 해결되지 않으면 다음과 같이 해결 하면 된다.

 

rm /var/lib/dpkg/lock
rm /var/lib/apt/lists/lock
rm /var/cache/apt/archives/lock
dpkg --configure -a

 

lock 파일이 패키지 및 인덱스 정보를 업데이트하지 않아서 문제가 발생할 수 있기 때문에 해당 파일들을 삭제해주고 dpkg 를 설정해주면 된다. lock 파일은 호스팅 서버에 설치된 이미지에 세팅되어 있는 경우가 많다고 한다.

 

 

 

 

 

 

 

 

* 해당 포스팅은 ubuntu 18.04 를 기준으로 하고 있습니다.

 

반응형

+ Recent posts