최근에 데비안 jessie로 업그레이드했는데(현재 테스트 중) 그 이후로 평균 부팅 시간이 3~4분으로 늘어났습니다.
시작하기 2~3분 이내에 이 메시지가 나타납니다 grub
.gdm
A job is running for creating volatile and temporary files and directories
이것이 출력이다systemd-analyze blame
[smit: ~] $ systemd-analyze blame
3min 14.096s systemd-tmpfiles-setup.service
8.657s NetworkManager.service
8.244s apache2.service
7.048s ModemManager.service
6.328s networking.service
6.004s accounts-daemon.service
5.288s binfmt-support.service
4.557s systemd-logind.service
4.541s alsa-restore.service
4.541s console-kit-log-system-start.service
4.530s lm-sensors.service
4.521s pppd-dns.service
4.520s redis-server.service
4.519s hostapd.service
4.519s minissdpd.service
4.519s timidity.service
4.519s nvidia-kernel.service
4.518s rc-local.service
4.437s bluetooth.service
4.408s avahi-daemon.service
2.243s systemd-fsck-root.service
1.437s exim4.service
1.415s keyboard-setup.service
시스템이 시작된 후에는 systemctl
오류가 보고되지 않습니다.
[smit: ~] $ sudo systemctl status systemd-tmpfiles-setup
● systemd-tmpfiles-setup.service - Create Volatile Files and Directories
Loaded: loaded (/lib/systemd/system/systemd-tmpfiles-setup.service; static)
Active: active (exited) since Fri 2014-10-17 01:19:09 IST; 1h 41min ago
Docs: man:tmpfiles.d(5)
man:systemd-tmpfiles(8)
Process: 230 ExecStart=/bin/systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev (code=exited, status=0/SUCCESS)
Main PID: 230 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/systemd-tmpfiles-setup.service
왜 systemd-tmpfiles-setup.service
시작이 느린가요? 자세한 로그는 어디서 얻을 수 있나요 systemd-tmpfiles-setup.service
?
답변1
systemd가 시스템을 시작할 때 시작되는 첫 번째 서비스 단위 중 하나는 systemd-tmpfiles-setup입니다. 서비스는 다음 명령을 실행합니다.
# systemd-tmpfiles --create --remove
이 명령은 다음 위치에서 구성 파일을 읽습니다(먼저 관련성이 없음).
- /usr/lib/tmpfiles.d/*.conf- 이 파일은 관련 RPM 패키지에서 제공되므로 시스템 관리자가 편집하면 안 됩니다.
- /run/tmpfiles.d/*.conf- 이 파일은 일반적으로 데몬 프로세스에서 자체 런타임 임시 파일을 관리하는 데 사용됩니다.
- /etc/tmpfiles.d/*.conf- 이 파일은 sysadmis에서 사용자 정의 임시 위치를 구성하고 공급업체가 제공한 기본값을 재정의하는 데 사용됩니다.
임시 파일을 저장할 수 있는 세 가지 위치도 있습니다.
- /var- 이 시스템과 관련된 변수 데이터는 출시 간에 유지되어야 합니다.
- /달리기- 마지막 시작 이후 시작된 프로세스에 대한 런타임 데이터입니다. 여기에는 프로세스 ID 파일, 잠금 파일 등이 포함됩니다. 이 디렉터리의 내용은 재부팅 시 다시 생성됩니다.
- /tmp- 임시 파일을 위한 전 세계 쓰기 가능 공간. 10일 이내에 접근, 변경, 수정되지 않은 파일은 자동으로 삭제됩니다. /var/tmp에는 또 다른 임시 디렉토리가 있는데, 여기서 30일 이상 액세스, 변경 또는 수정되지 않은 파일은 자동으로 삭제됩니다.
합산:
tmp 구성 파일을 확인하여 tmp 설정에 왜 그렇게 많은 시간이 걸리는지 확인하십시오. 특히 /run 디렉토리의 항목은 시작 시 다시 생성되기 때문에 더욱 그렇습니다.
답변2
이는 /tmp에 수백만 개의 파일을 생성하는 Chrome 베타 및 Cup의 문제 때문입니다. /tmp가 적합한 tmpfs라면 마운트 해제했다가 다시 마운트해 보세요. 그렇지 않으면 rm -rf /tmp를 실행하고 다시 생성하세요.
답변3
systemd-tmpfiles는 네트워크가 시작되기 전에 시작되므로 구성에 따라 systemd-tmpfiles 구성 파일(/usr/lib/tmpfiles.d에 있음) 중 하나가 사용자 또는 그룹에 대해서만 사용 가능한 디렉터리를 생성하려고 시도할 수 있습니다. LDAP에 정의된 사용자 또는 그룹과 같이 네트워크 시작 후 시스템에서만 사용할 수 있습니다.
이 경우 systemd-tmpfiles-setup.service를 네트워크로 이동하고 나중에 시작해야 합니다.