Linux는 불필요한 기본 프로그램이 적은 편이고, 대체로 가볍게 유지되는 것을 목표로 합니다. 하지만 시스템이 예상보다 훨씬 오래 부팅되는 특정 상황이 발생할 수 있습니다.
놀라울 정도로 가벼운 프로그램들을 Linux에서 사용할 수 있지만, 이는 부팅 시간 지연 문제를 해결하지 못합니다. 실제 지연은 종종 백그라운드에서 조용히 실행되는 몇 가지 특이한 프로세스에서 비롯되며, 시스템 속도를 개선하려면 이러한 프로세스를 비활성화하는 것이 좋습니다.
NetworkManager-wait-online.service
Wi-Fi는 부팅 후 알아서 연결될 수 있습니다.
NetworkManager-wait-online은 간단한 작업을 수행합니다. 장치가 네트워크에 완전히 연결되기 전에 시스템의 나머지 부분이 부팅을 완료할 때까지 기다립니다. 이는 네트워크 드라이버나 스크립트가 네트워크가 준비된 후에만 실행되어야 하는 서버 또는 설정에서 중요합니다. 하지만 일반적인 노트북이나 데스크톱에서는 전체 부팅 프로세스를 지연시키는 실질적인 이점이 없습니다.

시스템은 정상적으로 부팅되고, 네트워크 프로세스가 백그라운드에서 진행되도록 할 수 있습니다. 이 서비스가 Wi-Fi 또는 이더넷 연결이 온라인으로 확인될 때까지 모든 것을 차단하기 때문에 지연이 발생합니다. 이는 라우터와의 통신, DHCP를 통해 IP 주소를 할당받고 연결을 확인하는 과정도 포함합니다. Wi-Fi 연결 속도가 느리거나 네트워크가 전혀 없는 경우, 타임아웃을 기다리게 됩니다.
상황에 따라 부팅 시간을 4~8초 단축할 수 있습니다. 네트워크 기반 로그인과 같은 특정 경우에는 활성화해야 하지만, 대부분의 경우에는 필요하지 않습니다. 비활성화해보고 워크플로우에 문제가 발생하는지 확인해 보는 것을 추천합니다. 다음 명령어를 입력하여 서비스를 비활성화할 수 있습니다.
sudo systemctl mask NetworkManager-wait-online.service
이 명령어를 통해 부팅을 차단하는 프로세스를 중지합니다. 네트워크는 몇 초 후 정상적으로 연결되고, 데스크톱에 더 빠르게 접근할 수 있습니다.
snapd.service
Flatpak이 더 낫습니다.
이는 Ubuntu와 같은 배포판을 사용하는 경우에만 해당됩니다. 하지만 Snap을 완전히 사용하지 않도록 권장합니다. Snap은 Ubuntu의 보편적인 앱 형식으로, 앱이 필요로 하는 모든 것을 하나의 패키지로 번들링하여 실행하는 일종의 컨테이너에서 실행합니다. 이는 보안을 목적으로 하지만, Snap 앱이 Flatpak(또는 다른) 앱보다 느리다는 것이 더 큰 결과입니다.
Canonical 또한 과거 몇 년 동안 Snap을 너무 공격적으로 홍보했으며, 실제로 Snap을 구동하는 백엔드는 독점적이기 때문에 사용자에게 호응적이지 않습니다.
문제가 되는 것은 snapd 서비스가 항상 실행되어 백그라운드에서 앱을 관리한다는 것입니다. 또한 각 Snap도 자체적으로 압축된 이미지 안에 들어 있어 부팅 시 오버헤드를 추가합니다.

Snap 패키지를 설치할수록 문제가 더욱 심각해집니다. 이는 과거 Ubuntu를 사용할 때 겪었던 가장 큰 문제 중 하나였으며, 이후 Snap이 전혀 없는 Fedora Silverblue로 전환했습니다.
Snap을 완전히 비활성화하고 싶지 않은 이유가 몇 가지 있을 수 있습니다. Ubuntu에서는 기본 Firefox 빌드와 같이 일부 핵심 앱이 Snap으로만 제공됩니다. Snap 스토어도 Snapd 없이는 작동할 수 없으며, 유지 관리하는 Snap 앱에 대한 향후 업데이트가 서비스가 사라지면 중단됩니다.
확실히 제거하고 싶다면 다음 명령어를 통해 비활성화하고 차단할 수 있습니다.
sudo systemctl mask snapd.service snapd.socket snapd.seeded.service
Snap 전용 소프트웨어에 의존하거나 Flatpak 또는 deb 대체재(또는 배포판에 있는 다른 옵션)를 찾고 싶지 않은 경우, 그대로 두는 것이 좋습니다.
ModemManager.service
LTE 동글을 아직 사용하는 분에게만 중요합니다.
ModemManager는 네트워크 USB 동글 및 내장 LTE 모뎀과 같은 모바일 광대역 장치를 처리하는 서비스입니다. 노트북에 이러한 장치 중 하나가 있는 경우, 특히 요즘에는 드물지만 확실히 필요하지만 일반적으로 비활성화해도 괜찮습니다.
대부분의 주요 배포판은 다소 틈새시장에 속하는 하드웨어를 처리함에도 불구하고 기본적으로 설치합니다. 시스템 로그를 확인하면 속도 지연이 발생하는 것을 알 수 있습니다. ModemManager는 존재하지 않는 하드웨어에서 응답을 기다리며, 불필요한 이유로 부팅 프로세스를 지연시킵니다.
대부분의 사용자가 Linux에서 내장 LTE를 사용하지 않음에도 불구하고, 이렇게 많은 배포판에 기본적으로 설치되어 있다는 것이 이상합니다.
ModemManager를 비활성화하면 문제가 발생할 수 있습니다. 노트북에 실제 셀룰러 모뎀이 있거나 4G 또는 5G USB 동글을 사용하는 경우, 장치 작동에 필요한 SIM 감지에서 연결 관리까지 모든 것을 처리하기 때문에 활성화해 두는 것이 좋습니다. 그 외의 경우에는 특히 데스크톱의 경우 비활성화해도 안전합니다.
다음 명령어를 사용하여 비활성화하고 차단할 수 있습니다.
sudo systemctl mask ModemManager.service
네트워크 연결은 정상적으로 작동하고, 존재하지 않는 하드웨어를 기다리는 시간을 낭비하지 않습니다.
데스크톱 환경은 예상보다 더 많은 부팅 오버헤드를 추가할 수 있습니다.
GNOME은 예쁘지만 빠르지는 않습니다.
데스크톱 환경은 기술적으로 프로세스는 아니지만, 시스템이 로그인 화면에 도달하는 속도에 큰 영향을 미칩니다. 특히 구형 기계를 사용하거나, 2025년에도 아직 HDD를 부팅 드라이브로 사용하는 경우에 더욱 그렇습니다.
GNOME과 같은 무거운 환경은 많은 백그라운드 프로세스와 구성 요소를 추가하여 부팅 속도를 늦추게 됩니다. 대부분의 사용자는 KDE를 차선책으로 권장하지만, 부팅 시간이 느린 것과 씨름하고 있다면 XFCE와 같이 더 가벼운 것을 사용하는 것이 좋습니다. XFCE는 기본 시스템에 거의 아무것도 추가하지 않습니다.
이러한 요소는 단일 프로세스로 표시되지 않지만, 전체 패키지는 부팅 시간에 상당한 영향을 미칩니다.

문제가 발생하더라도 쉽게 복구할 수 있습니다.
비활성화한 서비스에 문제가 발생하면 동일한 명령어를 사용하여 다시 활성화할 수 있습니다. “mask”를 “unmask”로 바꾸면 됩니다.
더 가볍게 만들고 싶다면, 기기에서 시도해 볼 수 있는 훌륭한 경량 배포판이 있으며, 심지어 수십 년 된 하드웨어에서도 상당한 성과를 얻을 수 있습니다.