Linux에서 스냅 패키지를 사용하는 방법

0
2251
스냅 패키지 아이콘.
우분투

다음과 함께 Linux 소프트웨어 패키지를 설치할 때 snap의존성 지옥에 작별 인사를하고 다른 작동중인 응용 프로그램을 깨뜨릴 수 있습니다. Snap 패키지는 원래 Ubuntu 용으로 설계되었지만 이제 다양한 Linux 배포판에서 사용할 수 있습니다.

스냅 패키지 란 무엇입니까?

과거에는 Linux에 응용 프로그램을 설치하는 것이 실망스러운 경험이었습니다. 특정 라이브러리를 찾기 위해 무언가를 설치하거나 다른 종속성이 없거나 오래되었습니다. 그런 다음 누락 된 리소스를 찾아서 설치하면 방금 교체 한 라이브러리 버전에 의존하는 다른 응용 프로그램 만 찾을 수 있습니다. 하나를 고치고, 끊고, 반복하십시오.

apt, dnf 및 pacman과 같은 더 나은 패키지 관리 시스템으로 개선되었습니다. 그러나 동일한 응용 프로그램의 다른 버전이 설치되어 있으면 여전히 어려움을 겪고 있습니다. 또는 특정 버전의 라이브러리와 연결되어 있기 때문에 충돌하는 두 개의 애플리케이션을 사용하는 경우.

이러한 문제에 대한 한 가지 해결책은 응용 프로그램 포장 및 배포 시스템입니다. Snappy는 이들 중 가장 인기있는 것 중 하나입니다. 클릭이라는 패키징 및 배포 시스템을 기반으로하며 우분투 터치 이니셔티브로 되돌아갑니다. AppImage 및 FlatPack이 발생할 수 있습니다.

이러한 시스템은 응용 프로그램을 모든 종속성 및 기타 요구 사항과 함께 단일 압축 파일로 캡슐화합니다. 그런 다음 응용 프로그램은 일종의 미니 컨테이너에서 실행됩니다. 샌드 박스 처리되어 다른 응용 프로그램과 분리되어 있습니다. 응용 프로그램과 함께 제공되거나 필요한 라이브러리 및 기타 리소스는 단독으로 만 사용할 수 있습니다.

전통적인 의미로 설치되지 않으므로 동일한 버전의 서로 다른 버전이 필요한 다른 응용 프로그램에서는 아무런 문제가 발생하지 않습니다. 각 응용 프로그램이 자체 샌드 박스에 있기 때문에 충돌하는 라이브러리 버전이 필요한 응용 프로그램을 설치하고 실행할 수도 있습니다.

그러나 일반적인 방법으로 설치하지 않으면 어떻게 처리됩니까? 단일 패키지 파일은 다운로드, 압축 해제 및 SquashFS가상 파일 시스템. 그런 다음 가상 환경으로 제공됩니다. 이 모든 것이 뒤에서 이루어집니다. 알다시피 응용 프로그램을 설치 했으므로 이제 응용 프로그램에 액세스 할 수 있습니다.

물론 각 패키지 파일에는 응용 프로그램에 필요한 모든 리소스가 포함되어야하므로 패키지 파일이 클 수 있습니다. 또한 MySQL 또는 Apache와 같이 일반적으로 한 번만 설치 한 리소스를 쉽게 복제 할 수 있습니다. 두 가지 다른 경우 snap 응용 프로그램에는 동일한 리소스가 필요하며 각각 자체 복사본을 가져옵니다.

그러나 이는 설치가 간단하고 리소스 충돌 문제를 제거하는 데 따른 단점입니다.

스냅 설치

Snappy는 Ubuntu 16.04에 도입되었으므로 해당 버전 이상을 실행중인 경우 이미 사용하기에 좋습니다. 우리 머신에서 Snappy는 Manjaro 18.04에 설치되었지만 Fedora 31에 설치해야했습니다.

snap 패키지 파일 이름과 상호 작용하는 데 사용하는 명령입니다. 무대 뒤에서 snapd daemon은 컴퓨터에 아직 Snappy가없는 경우 설치해야하는 패키지 이름입니다.

설치하기 위해서 snapd Fedora에서 다음 명령을 입력하십시오.

sudo dnf install snapd

터미널 창에서 "sudo dnf install snapd"명령

Manjaro에 설치해야하는 경우 다음 명령을 사용하십시오.

sudo pacman -Sy snapd
sudo systemctl enable --now snapd.socket

당신은 사용할 수 있습니다 snap version 버전을 확인하는 명령 snap 고객, snapd 데몬 및 소프트웨어 일련 번호. Linux 배포판의 이름과 릴리스 및 커널 버전도 표시됩니다.

다음을 입력하십시오.

snap version

터미널 창의 "스냅 버전"명령

스냅 패키지 설치

설치 과정은 매우 간단합니다. snap 꾸러미. 당신이 사용할 수있는 snap 찾아보기 snap 패키지를 설치 한 다음 원하는 패키지를 설치하십시오.

gimp 이미지 편집기를 찾아 설치하려면 다음을 입력하십시오.

snap find gimp

터미널 창에서 "스냅 찾기 김프".

snap 검색 단서 “김프”와 일치하는 항목을 검색하고 찾은 결과를 반환합니다. 검색어와 일치하거나 언급 된 내용을 찾습니다.

패키지 중 하나를 설치하기 위해 Name 아래 표시된대로 열 :

sudo snap install gimp

터미널 창에서 "sudo snap install gimp"명령

다운로드가 완료되면 완료율 수치가 올라가고 진행률 표시 줄이 터미널 창의 왼쪽에서 튀어 나옵니다. 설치가 완료되면 아래 그림과 같이 패키지가 설치되었다는 메시지가 나타납니다.

터미널 창에 "Gimp 2.10.18 from Snapcrafters installed"메시지가 표시됩니다.

당신은 사용할 수 있습니다 df Linux 컴퓨터에 구성된 다른 파일 시스템의 용량과 사용량을 확인하는 명령입니다. 출력을 파이프에 grep 명령을 입력하고 “gimp”를 검색하면 방금 설치 한 패키지의 항목이 분리됩니다.

우리는 다음을 입력합니다 :

df | grep gimp

터미널 창에서 "df | grep gimp"명령

이것은 스냅 패키지가 마치 파일 시스템 인 것처럼 마운트되었음을 ​​보여줍니다. 마운트 지점은 snap 여기 디렉토리 : /snap/gimp/252. “252”는이 버전의 릴리스 번호입니다. gimp.

관련 : Linux에서 grep 명령을 사용하는 방법

파일 시스템은 다음과 같이 나열됩니다. /dev/loop18. 루프 장치 파일은 일반 파일을 블록 장치로 액세스 할 수 있도록하는 데 사용됩니다. 일반적으로 디스크 이미지에 파일 시스템을 마운트하는 데 사용됩니다. 이 경우에는 SquashFS 내 파일 시스템 snap 꾸러미. “18”은 이것이 18 일을 의미합니다 /dev/loop 이 Linux 컴퓨터에서 사용중인 장치 파일.

우리는 사용할 수 있습니다 df 이 명령을 빠르게 확인하십시오. 우리는 – t 출력을 제한하는 (type) 옵션 SquashFS 파일 형식 만.

우리는 다음을 입력합니다 :

df -t squashfs

터미널 창에서 "df -t squashfs"명령

장착 SquashFS 파일 시스템이 나열됩니다. ㅏ /dev/loop 장치 파일은 각각을 처리하며 18 개가 있습니다.

SquashFS 파일 시스템이 터미널 창에 표시되었습니다.

각 파일 시스템은 아래의 디렉토리에 마운트됩니다. /snap 예배 규칙서. 그러나 이것이 18 가지의 다른 의미가있는 것은 아닙니다 snap 이 컴퓨터에 설치된 패키지. 이것은 우분투 배포판이므로 snap 패키지는 즉시 설치되며 다른 패키지도 설치했습니다.

또한 설치할 때 snapd, 그것은 일부 코어를 설치 snap 다른 사람의 요구를 처리하는 패키지 snap 패키지.

우리는 사용할 수 있습니다 snap list 아래에 표시된대로 설치된 명령을 나열하는 명령 snap 패키지 :

snap list

터미널 창의 스냅 목록.

결과물은 약간 넓었으므로 목록의 끝은 아래와 같습니다.

스냅 목록의 끝이 터미널 창에 출력됩니다.

전체 목록은 다음과 같습니다.

Name                 Version                    Rev   Tracking  Publisher    Notes
core                 16-2.43.3                  8689  stable    canonical*   core
core18               20200124                   1668  stable    canonical*   base
gimp                 2.10.18                    252   stable    snapcrafters -
gnome-3-26-1604      3.26.0.20191114            98    stable/…  canonical*   -
gnome-3-28-1804      3.28.0-16-g27c9498.27c9498 116   stable    canonical*   -
gnome-calculator     3.34.1+git1.d34dc842       544   stable/…  canonical*   -
gnome-characters     v3.32.1+git3.b9120df       399   stable/…  canonical*   -
gnome-logs           3.34.0                     81    stable/…  canonical*   -
gnome-system-monitor 3.32.1-3-g0ea89b4922       127   stable/…  canonical*   -
gtk-common-themes    0.1-28-g1503258            1440  stable/…  canonical*   -

보시다시피, 18 개가 아닌 10 개의 스냅 패키지가 설치되어 있습니다. 그러나이 10 개 패키지는 18 개로 증가했습니다. SquashFS 파일 시스템. 표 열은 설명이 필요하지만 다음과 같은 설명이 있습니다.

  • 이름: 이름 snap 설치된 패키지.
  • 버전:의 소프트웨어 버전 번호 snap 꾸러미.
  • 신부님: 개정 번호 snap 꾸러미.
  • 추적:이 채널 snap 패키지는 업데이트를 모니터링합니다. 네 가지가 있습니다 :

    • 안정된: 기본 채널. 이름에서 알 수 있듯이이 채널에는 가장 안정적인 패키지가 포함되어 있습니다.
    • 후보자: 이 채널은 안정성이 떨어지지 만 코드가 완전한 릴리스 후보 레벨 소프트웨어가 포함되어 있기 때문에 채널에 매우 가깝습니다. 안정적인 채널로 이동하기 전에 최종 테스트를 거칩니다.
    • 베타: 이 채널은 개발주기가 늦었지만 안정적이지는 않습니다.
    • 가장자리: 초기 빌드 테스터 중요한 작업이나 프로덕션 컴퓨터에이 채널을 사용해서는 안됩니다. 여기 용이 되세요!
  • 발행자: 개인을 공개 한 개인, 회사 또는 조직 snap 꾸러미. 인증 된 게시자 인 경우 (단말기 창에서 유니 코드를 지원하는 경우) 게시자 이름 옆에 녹색 확인 표시가 나타납니다. 확인 표시가 보이지 않으면 별표 (*).
  • 노트: 의견이나 추가 정보가 여기에 나타납니다.

스냅 채널

당신은 사용할 수 있습니다 info 에 대한 설명을 얻는 옵션 snap 꾸러미.

이렇게하려면 다음을 입력하십시오.

snap info gtk-common-themes

터미널 창에서 "snap info gtk-common-themes"명령

패키지가 추적중인 채널과 소프트웨어 버전을 확인할 수 있습니다. snap 4 개의 채널 각각에 패키지. 대부분의 경우 안정된 채널을 유지해야합니다.

snap 패키지는보고있는 채널이나 “추적”채널에서 최신 버전의 소프트웨어가 있는지 확인하기 위해 하루에 네 번 확인합니다. 채널을 변경하려면 snap 패키지 트랙, refresh--channel 옵션.

이렇게하려면 다음을 입력하십시오.

sudo snap refresh gtk-common-themes --channel=beta

터미널 창에서 "sudo snap refresh gtk-common-themes --channel = beta"명령

최신 버전의 소프트웨어가 사용 가능한 경우에는 소프트웨어가 설치되지만 여기에는 해당되지 않습니다. 그러나, 그 snap 패키지가 베타 채널을 추적하고 있습니다. 새로운 베타 버전이 출시 되 자마자 자동으로 다운로드되고 업그레이드됩니다.

당신은 사용할 수 있습니다 --list 업데이트를 사용할 수 있는지 확인하는 옵션 snap 컴퓨터에 설치된 패키지.

이렇게하려면 다음을 입력하십시오.

sudo snap refresh --list

터미널 창의 "sudo snap refresh --list"명령

채널 중 하나라도 snap 컴퓨터의 패키지에 최신 소프트웨어 버전이 포함되어 있습니다.

최신 버전의 소프트웨어를 사용할 수있는 경우 refresh 옵션을 아래 그림과 같이 수동으로 새로 고치려면

sudo snap refresh gtk-common-themes

터미널 창에서 "sudo snap refresh gtk-common-themes"명령

스냅 패키지 제거

제거하려면 snap 패키지에서 아래와 같이 제거 옵션을 사용할 수 있습니다.

sudo snap remove gimp

터미널 창에서 "sudo snap remove gimp"명령

스냅 치트 시트

스냅 패키지를 사용하는 것은 매우 간단하지만 다음과 같은 몇 가지 명령 목록을 작성했습니다.

  • 패키지를 검색하려면 snap find package_name
  • 패키지를 설치하려면 sudo snap install package_name
  • 설치된 모든 패키지를 보려면 snap list
  • 단일 패키지에 대한 정보를 얻으려면 snap info package_name
  • 패키지가 업데이트를 추적하는 채널을 변경하려면 sudo snap refresh package_name --channel=channel_name
  • 설치된 패키지에 대한 업데이트가 준비되어 있는지 확인하려면 sudo snap refresh --list
  • 패키지를 수동으로 업데이트하려면 sudo snap refresh package_name
  • 패키지를 제거하려면 sudo snap remove package_name