Snap 및 Snap Store에 대해 알아야 할 모든 것

Snap 및 Snap Store에 대해 알아야 할 모든 것

패키지 관리자는 컴퓨터에서 패키지/프로그램의 설치, 업데이트, 제거 및 구성을 용이하게 하는 통합 서비스 세트입니다.





Linux 운영 체제에 대해 구체적으로 말하면 APT, YUM, RPM 및 Pacman과 같은 광범위한 패키지 관리자 중에서 선택할 수 있습니다. 이러한 각 패키지 관리자에는 서로를 구분하는 몇 가지 고유한 기능이 있습니다.





그러나 비교적 새로운 패키지 관리자인 Snap이 기존 패키지 관리자에 대한 실행 가능한 대안으로 부상했습니다. Snap과 그 장단점, Linux에 설치하고 사용하는 방법에 대해 알아보겠습니다.





스냅이란?

Snap은 Ubuntu 제조사인 Canonical에서 Linux 플랫폼용으로 개발한 크로스 플랫폼 패키징 및 배포 시스템입니다. Ubuntu, Debian, Arch Linux, Fedora, CentOS 및 Manjaro를 포함한 대부분의 주요 Linux 배포판과 호환됩니다.

Snap은 세 가지 기본 구성 요소로 구성됩니다.



1. 스냅

다른 패키지 관리자와 마찬가지로 Snap에는 Snap이라는 패키지도 있습니다. 이러한 패키지는 기존 패키지 관리자의 패키지와 달리 종속성이 없고 설치가 쉽습니다.

스냅은 다음에서 끝납니다. .스냅 기본적으로 SquashFS 형식을 사용하고 응용 프로그램, 종속 라이브러리 및 추가 메타데이터를 포함한 전체 패키지 모듈을 포함하는 압축 파일 시스템입니다.





2. 스냅

Snapd(또는 스냅 데몬)는 스냅 메타데이터를 사용하여 시스템의 애플리케이션에 대한 보안 샌드박스를 설정합니다. 데몬이기 때문에 스냅 환경을 유지하고 관리하는 전체 작업은 백그라운드에서 발생합니다.

내 서비스가 느린 이유

3. 스냅 스토어

Snap은 Snap Store에 있으며 다른 패키지 관리자와 마찬가지로 탐색하고 다운로드할 수 있습니다. 또한 기존 패키지 관리자에서는 불가능한 고유한 스냅 패키지를 Snap Store에 직접 게시할 수 있는 옵션도 제공됩니다.





이러한 요소 외에도 Snap에는 다음과 같은 또 다른 필수 구성 요소가 있습니다. 채널 . 채널은 시스템의 업데이트에 대해 설치되고 추적되는 스냅 버전을 정의하는 역할을 합니다. 결과적으로 스냅을 설치하거나 업데이트할 때 이러한 각 작업에 대해 진행할 채널을 지정할 수 있습니다.

요약하자면:

  • 스냅 : 응용 프로그램 패키지 형식과 명령줄 인터페이스를 모두 참조하는 데 사용됩니다.
  • 스냅 : 스냅을 관리하고 유지하는 데 도움이 되는 Snap 데몬입니다.
  • 스냅 스토어 : 모든 스냅의 홈; 자신의 스냅을 업로드하고 새 스냅을 탐색 및 설치할 수 있습니다.
  • 스냅크래프트 : 자신만의 스냅을 구축하는 데 도움이 되는 프레임워크입니다.

스냅: 좋은 것과 나쁜 것

Canonical이 Snap을 발표한 이후로 Linux 커뮤니티에서는 Snap이 Linux에서 패키지 배포를 개선하기 위한 올바른 접근 방식인지에 대한 논란이 있었습니다. 이로 인해 두 개의 반대 진영이 생겼습니다. 하나는 Snap에 찬성하고 다른 하나는 장기적으로 Snap의 접근 방식에 비판적입니다.

다음은 Snap의 장점과 단점에 대한 분석입니다.

스냅 사용의 장점

  1. 스냅은 프로그램에 대한 즉각적인 액세스를 용이하게 하는 종속성(라이브러리)과 함께 번들로 제공됩니다. 더 이상 시스템에서 작동하도록 하기 위해 누락된 종속성을 수동으로 설치할 필요가 없기 때문입니다.
  2. 각 스냅은 자체적으로 실행됩니다. 컨테이너화된 샌드박스 다른 시스템 패키지와의 간섭을 피하기 위해. 결과적으로 스냅을 제거하면 시스템은 다른 패키지에 영향을 주지 않고 종속성을 포함한 모든 데이터를 제거합니다. 말할 필요도 없이 이것은 한 패키지가 다른 패키지의 정보에 액세스할 수 없기 때문에 보다 안전한 환경을 제공합니다.
  3. 스냅 업데이트는 설정된 간격으로 자동으로 스냅됩니다. 따라서 시스템에서 항상 최신 버전의 프로그램을 실행합니다.
  4. Snap을 사용하면 개발자가 소프트웨어를 사용자에게 직접 배포하는 것이 더 쉬워지므로 Linux 배포가 배포될 때까지 기다릴 필요가 없습니다.
  5. 이전 요점에 추가하여 개발자에게 소프트웨어 패키징 및 배포를 맡길 때의 또 다른 이점은 필요한 종속성과 함께 번들로 제공되기 때문에 배포판별 패키지를 만들 필요가 없다는 것입니다.

스냅의 단점

  1. 스냅은 종속성과 함께 번들로 제공되므로 다른 패키지 관리자의 스냅샷보다 크기가 더 크고 디스크 공간을 더 많이 차지합니다.
  2. 번들 종속성의 결과로 스냅은 압축된 파일 시스템 이미지로 배포되며 설치하기 전에 먼저 마운트해야 합니다. 이 때문에 스냅은 기존 패키지보다 실행 속도가 느립니다.
  3. Snap을 통해 개발자는 스냅을 사용자에게 직접 배포할 수 있지만 배포 파이프라인에서는 개발자가 Canonical 계정을 설정하고 스냅을 호스팅해야 합니다. 이는 소프트웨어가 여전히 오픈 소스임에도 불구하고 패키지 관리 시스템이 엔터티에 의해 제어되기 때문에 오픈 소스 방법론의 본질에 어긋납니다.
  4. 개발자가 패키지를 배포할 수 있게 하는 것의 또 다른 단점은 패키지가 커뮤니티의 엄격한 검사 및 검토를 거치지 않기 때문에 몇 년 전에 본 것처럼 맬웨어를 포함할 위험이 있다는 것입니다.
  5. Snap의 백엔드가 여전히 비공개 소스이고 Canonical에 의해 제어된다는 사실 때문에 많은 주요 Linux 배포판은 Snap을 시스템의 기본 패키지 관리자로 두는 아이디어를 가지고 있지 않습니다.

맬웨어 위험과 관련하여 Snap은 이제 자동 맬웨어 테스트를 사용하여 Snap Store에 배포되기 전에 사용자 업로드 패키지에 악성 코드가 있는지 검사합니다.

관련: 맬웨어란 무엇이며 어떻게 작동합니까?

Linux에 snapd를 설치하는 방법

Snapd는 Snap의 필수 구성 요소이므로 시스템에 가장 먼저 설치해야 합니다. 그러나 다음 Linux 배포판 중 하나를 실행하는 경우 KDE Neon, Manjaro, Ubuntu(16.04/4 LTS 및 20.04 LTS), Zorin OS와 같은 Linux 배포판이 이미 시스템에 미리 설치되어 있습니다.

다른 Linux 배포판의 경우 snapd를 수동으로 설치해야 합니다.

데비안/우분투:

sudo apt update
sudo apt install snapd

CentOS 및 기타 RHEL 기반 배포판에 snapd를 설치하는 것은 쉽습니다.

yum install epel-release
yum install snapd

Fedora에 snapd를 설치하려면:

sudo dnf install snapd

아치 리눅스:

git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si

관련된: Arch Linux에서 패키지를 설치하고 제거하는 방법

Manjaro Linux에 snapd를 설치하려면:

sudo pacman -S snapd

설치가 완료되면 활성화해야 합니다. 체계 Snap을 사용하기 전에 (일부) Linux 배포판에서 Snap 통신을 관리하는 장치입니다.

Ubuntu 및 파생 제품 이외의 Linux 배포판을 사용하는 경우 다음 명령을 실행하여 snapd systemd 장치를 활성화합니다.

sudo systemctl enable --now snapd.socket

마지막으로 다음을 사용하여 시스템을 다시 시작합니다.

sudo reboot

자세히 알아보기: systemctl 명령을 사용하여 시스템 서비스를 관리하는 방법

Linux에서 Snap을 사용하는 방법

Snap을 사용하는 것은 다른 패키지 관리자를 사용하는 것과 매우 유사합니다. 이전 단계에서 시스템에 snapd를 설치했으므로 이제 snap 도구에 액세스하고 Snap Store의 스냅과 쉽게 상호 작용할 수 있습니다.

스냅 찾기

Snap을 사용하면 Snap Store를 탐색하고 다양한 범주의 패키지를 찾을 수 있습니다. 따라서 특정 범주에서 스냅을 찾으려면 다음 명령 구문을 사용하십시오.

snap find package_category

예를 들어:

snap find development

패키지를 우연히 발견하고 이에 대해 더 알고 싶다면 다음을 사용하십시오. 정보 기본 명령을 사용하는 방법.

Windows 7은 종료하는 데 시간이 오래 걸립니다.
snap info package_name

예를 들어, 김프 스냅에 대한 정보를 추출하려면:

snap info gimp

스냅 설치

마지막으로 요구 사항을 충족하는 스냅을 찾으면 다음을 실행하여 설치할 수 있습니다.

sudo snap install package_name

일단 설치되면, 당신은에서 프로그램을 찾을 수 있습니다 애플리케이션 Linux 배포판의 메뉴. 그런 다음 메뉴에서 직접 실행하거나 이름을 입력하여 터미널을 통해 실행할 수 있습니다.

설치된 스냅 나열

시스템에 설치된 모든 스냅 목록을 얻으려면:

snap list

Snap의 버전 정보 보기

스냅의 현재 버전을 확인하려면 다음을 실행하십시오.

snap list package_name

스냅 업데이트

Snap은 시스템에 설치된 패키지를 자동으로 업데이트합니다. 이를 용이하게 하기 위해 snapd는 기본적으로 하루에 4번 업데이트를 확인하도록 설정되어 있습니다. 그러나 원하는 경우 기본 설정에 따라 이 새로 고침 빈도를 수정할 수 있습니다.

또한 필요한 경우 다음을 실행하여 즉시 새로 고침을 수행할 수 있습니다.

snap refresh

마찬가지로 다음을 사용하여 스냅 업데이트를 확인할 수도 있습니다.

sudo snap refresh package_name

그렇게 하면 Snap은 스냅이 추적하는 채널에서 최신 버전을 확인합니다. 업데이트가 있으면 자동으로 다운로드하여 설치합니다.

관련된: 몇 초 만에 Linux에서 하나 또는 모든 앱을 업데이트하는 방법

이전에 사용된 버전의 스냅으로 되돌리기

스냅을 업데이트한 후 문제가 발생하면 다음을 실행하여 이전 버전으로 되돌릴 수 있습니다.

sudo snap revert package_name

스냅 비활성화 및 활성화

스냅을 사용하지 않지만 나중에 필요할 수 있는 경우에는 스냅을 일시적으로 비활성화하고 필요할 때 다시 켤 수 있습니다. 그렇게 하면 스냅을 제거하고 다시 설치하는 지루한 과정을 거칠 필요가 없습니다.

스냅을 비활성화하려면 다음을 입력합니다.

sudo snap disable package_name

활성화하려면 다음을 실행하기만 하면 됩니다.

sudo snap enable package_name

스냅 제거

마지막으로, 향후 필요하지 않을 시스템에서 사용하지 않는 스냅을 제거하려면 다음을 수행하십시오.

sudo snap remove package_name

Linux에서 Snap 설정 성공

여기까지 가이드를 따랐다면 Linux 시스템에서 Snap up이 실행되고 있을 것입니다. 그리고 나서 필요한 대부분의 패키지를 찾아서 다운로드할 수 있어야 합니다. 물론 다른 패키지 관리자의 경우와 마찬가지로 Snap에 익숙해지는 데 시간이 걸릴 수 있습니다. 그러나 일단 익숙해지면 효과적으로 사용할 수 있습니다.

하지만 Snap을 사용하는 데에는 장점과 단점이 모두 있으므로 시작하기 전에 이를 고려해야 합니다. 무료 오픈 소스 방법론과 잘 맞는 Snap의 대안을 원한다면 Flatpaks를 확인하여 Linux 앱 다운로드에 더 나은 저장소가 있는 패키지 관리자에 대한 더 나은 아이디어를 얻으십시오.

공유하다 공유하다 트위터 이메일 Flathub vs. Snap Store: Linux 앱 다운로드를 위한 최고의 사이트

Linux 앱을 다운로드하고 싶을 때 Flathub와 Snap Store는 어떻게 비교됩니까? 알아보기 위해 서로 겨루어 봅니다.

다음 읽기
관련 항목
  • 리눅스
  • 리눅스
  • 패키지 관리자
저자 소개 야시 와트(21편 게재)

Yash는 DIY, Linux, 프로그래밍 및 보안을 위한 MUO의 스태프 라이터입니다. 글쓰기에 대한 열정을 찾기 전에는 웹과 iOS용으로 개발했습니다. TechPP에서 다른 분야를 다루는 그의 글도 찾을 수 있습니다. 기술 외에 천문학, Formula 1 및 시계에 대해 이야기하는 것을 즐깁니다.

더 많은 것

뉴스레터 구독

기술 팁, 리뷰, 무료 전자책 및 독점 거래에 대한 뉴스레터에 가입하십시오!

구독하려면 여기를 클릭하세요.