클라우드 서버

apt.systemd.daily

apt.systemd.daily


 

 

OS : Ubuntu 16.04 

증상)
인스턴스를 생성하고 apt-get 을 통해 패키지를 업데이트를 하려는 도중 아래와 같은 에러가 발생

.....................................
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?

 

원인)
이미 apt-get 을 통해 작업중인 프로세서가 있어 lock이 걸려있는 상태로 Ubuntu 16.04 에서부터는 기본적으로 systemd timer 를 통해 unattended upgradey (무인업그레이드) 데몬이 제공되어 있으며 부팅후 apt 작업이 동시에 진행되면서 충돌되었다.

# ps aux |grep apt
root 1152 0.0 0.0 4508 1704 ? Ss 09:56 0:00 /bin/sh /usr/lib/apt/apt.systemd.daily
_apt 1709 4.9 0.2 41996 5660 ? S 09:56 0:01 /usr/lib/apt/methods/http
root 1713 0.0 0.0 12944 1028 pts/0 S+ 09:57 0:00 grep --color=auto apt

 

# systemd-analyze
Startup finished in 3.392s (kernel) + 2min 27.703s (userspace) = 2min 31.096s

# systemd-analyze blame
2min 317ms apt-daily.service
21.680s cloud-init.service
3.494s cloud-init-local.service
2.780s cloud-config.service
2.534s dev-vda1.device
1.000s lvm2-monitor.service
878ms apparmor.service
...............................
...............................

 

관련파일

/lib/systemd/system/apt-daily.service
/lib/systemd/system/apt-daily.timer

 

조치)
일정시간이 지나게 되면 서비스는 스케쥴에 의한 작업이 끝나게 되지만 필요에 강제로 프로세서를 kill 하거나 부팅시 자동으로 서비스를 비활성화하려면 아래와 같이하면 됩니다.

# systemctl disable apt-daily.service
# systemctl disable apt-daily.timer

 

보다 자세한 자료는 아래 링크를 참고하시기 바랍니다.

https://www.hiroom2.com/2016/05/18/ubuntu-16-04-auto-apt-update-and-apt-upgrade/