Ubuntu 20.04의 Snap에 대해 알아야 할 사항

Ubuntu 20.04 Focal Fossa는 널리 찬사를 받은 환상적인 릴리스입니다. 그러나 스냅 기반 응용 프로그램을 설치하기 위해 소프트웨어 센터를 변경하기로 한 결정은 논란의 여지가 있습니다. 그것이 당신에게 무엇을 의미하는지 설명하겠습니다.

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

“Snap”은 snap 명령과 스냅 설치 파일을 모두 나타냅니다. 스냅은 응용 프로그램과 모든 종속 항목을 하나의 압축 파일로 묶습니다. 종속 항목은 라이브러리 파일, 웹 또는 데이터베이스 서버 또는 응용 프로그램을 시작하고 실행해야 하는 기타 모든 것일 수 있습니다.

스냅의 장점은 문제를 피할 수 있기 때문에 설치가 더 간단하다는 것입니다. 의존 지옥. 이것은 필요한 리소스를 사용할 수 없거나 잘못된 버전이거나 해당 설치가 기존 응용 프로그램에 필요한 파일을 덮어써 실행할 수 없기 때문에 새 응용 프로그램을 실행할 수 없는 경우에 발생합니다.

설치 시 스냅이 압축 해제되고 파일이 추출될 것으로 예상할 수 있습니다. 그러나 스냅 파일은 런타임에 마운트됩니다. 블록 루프 장치. 이것은 파일의 내부 SquashFS 파일 시스템 액세스할 수 있습니다.

응용 프로그램은 캡슐화된 링 펜스 방식으로 실행되므로 해당 파일이 컴퓨터의 파일을 방해할 수 없습니다. 동일한 응용 프로그램의 여러 버전을 설치할 수도 있으며 서로 수분하거나 서로 싸우지 않습니다.

단점은 설치 파일이 기존보다 큽니다. 데비안 패키지 관리자 (DEB) 파일. 그들은 또한 더 많은 하드 드라이브 공간을 사용합니다. 스냅을 사용하면 특정 리소스가 필요한 모든 응용 프로그램이 자체 복사본을 설치합니다. 이것은 하드 드라이브 공간을 가장 효율적으로 사용하지 않습니다. 하드 드라이브가 점점 더 커지고 저렴해지고 있지만 전통주의자들은 여전히 ​​자체 미니 컨테이너에서 실행되는 각 애플리케이션의 사치스러움에 주저합니다. 응용 프로그램 실행 속도도 느립니다.

Snaps는 또한 데스크톱 테마와 자동 업그레이드를 따르지 않는다는 비판을 받았습니다. 어떤 사람들은 스냅이 반드시 소프트웨어 작성자에 의해 만들어지는 것은 아니기 때문에 조심스럽습니다. 따라서 그들은 100% “공식적”이라고 생각하지 않습니다.

  Linux에 KDE 플라즈마 5를 설치하는 방법

따라서 Canonical은 Focal Fossa를 사용하여 Ubuntu Software 애플리케이션을 기본적으로 스냅을 설치하는 버전으로 대체했습니다. 이것은 당신에게 무엇을 의미합니까?

우분투 소프트웨어 센터

df 명령을 사용하여 컴퓨터에 마운트된 SquashFS 파일 시스템을 나열할 수 있습니다. -t(유형) 옵션을 사용하여 출력을 파일 시스템으로 제한 우리는 관심이 있습니다:

df -t squashfs

그런 다음 스냅 목록 명령을 사용합니다. 설치된 스냅을 나열하려면:

snap list

GNOME 데스크탑과 관련된 두 개의 스냅이 있습니다. 두 개는 핵심 스냅 기능, 하나는 GTK 테마용, 다른 하나는 스냅 스토어용입니다. 물론 스냅스토어 어플도 스냅입니다.

문제는 다음과 같습니다. 터미널 창에서 snap-store 명령을 실행하면 실행되는 응용 프로그램이 Ubuntu Software입니다.

물론 일반적으로 해당 아이콘을 클릭하여 Ubuntu Software 애플리케이션을 실행합니다. 명령줄에서 시작하여 표면 아래에 이제 스냅 저장소 애플리케이션이 있음을 보여줍니다.

snap-store

Ubuntu 소프트웨어 응용 프로그램은 예상대로 보입니다. 이전에 검색할 수 있었던 것과 동일한 소프트웨어를 모두 검색할 수 있습니다.

“sqlitebrowser” 응용 프로그램을 검색하여 설치해 보겠습니다. 결과 화면에는 응용 프로그램의 세부 정보와 스크린샷이 표시됩니다. “설치”를 선택하여 소프트웨어를 설치합니다.

모른다면 후드 아래의 변경 사항을 의심하지 않을 것입니다. 아래로 스크롤하면 몇 가지 새로운 스냅 관련 정보가 표시됩니다.

“세부 정보” 목록은 다음 정보를 제공합니다.

채널: 설치가 애플리케이션을 가져올 채널입니다.
버전: 소프트웨어 버전입니다.
라이선스: 라이선스 유형입니다.
개발자: 스냅을 만든 사람 또는 응용 프로그램을 작성한 사람입니다.
소스: 스냅을 다운로드할 소스(스냅크래프트.io Canonical의 Snapcraft 스냅 스토어입니다).
다운로드 크기: 스냅 파일의 크기입니다.

채널은 다음 중 하나일 수 있습니다.

안정적: 가장 안정적이고 신뢰할 수 있는 패키지가 포함된 기본값입니다.
후보: 이 채널은 덜 안정적이지만 릴리스 후보 수준 소프트웨어가 포함되어 있기 때문에 매우 가깝습니다.
베타: 이 채널은 개발 주기 후반의 품질이지만 안정성이 보장되지는 않습니다.
Edge: 초기 빌드 테스터 및 호기심 많은 사용자를 위한 것입니다. 중요한 일에 이 채널을 사용하면 안 됩니다.

  GitHub 리포지토리를 복제하는 방법

설치가 완료되면 설치된 스냅 목록을 다시 확인할 수 있습니다.

snap list

새 항목이 맨 아래에 나열됩니다. 프로그램을 실행해 보겠습니다.

sqlitebrowser

인터페이스가 오래되어 보이지만 응용 프로그램에 대한 모든 것이 잘 작동합니다. 조각된 의사 3D 인터페이스 요소는 GUI 작년의. 이것은 모든 스냅에서 공통적인 것은 아니지만 이 예에서는 눈에 띕니다.

명령줄에서 설치

명령줄에서 응용 프로그램을 설치할 때 변경된 사항은 없습니다. 스냅 명령줄 도구에 계속 액세스할 수 있으므로 터미널 창 내에서 스냅을 설치 및 제거할 수 있습니다. apt-get 설치 명령과 apt, apt-get 래퍼도 여전히 존재합니다.

명령줄에서 동일한 응용 프로그램을 설치해 보겠습니다. 위에서 설치한 버전은 스냅식이므로 서로 영향을 미치지 않습니다.

sudo apt-get install sqlitebrowser

설치가 완료되도록 합니다. Super 키를 누르고 “sqlitebrowser”를 입력합니다. 몇 글자를 입력하면 컴퓨터에 두 가지 버전의 프로그램이 표시됩니다.

둘 다 태워라.

보시다시피 두 가지 다른 버전이 동시에 설치되어 실행 중입니다.

이미지 뒤에 있는 버전은 명령줄에서 설치한 버전이고 앞의 버전은 스냅샷에 있는 버전입니다.

apt-get 버전은 3.11.2 버전입니다.
스냅 버전은 3.11.99입니다.

모양에도 불구하고 명령줄 버전이 이전 버전입니다. 그럼에도 불구하고 두 버전이 공존하고 잘 작동한다는 것은 자명합니다. 따라서 스냅은 동일한 응용 프로그램의 서로 다른 버전에 대한 링 펜싱으로 해야 할 일을 합니다.

또한 apt 또는 apt-get을 사용하여 명령줄에서 응용 프로그램을 설치하는 것은 이전과 동일하며 스냅의 영향을 전혀 받지 않습니다.

어떤 것을 사용해야 합니까?

어떤 유형의 응용 프로그램을 사용하고 있는지 조금이라도 신경 쓰십니까? 그렇지 않은 경우 스냅으로 이동하십시오.

다음 중 하나라도 딜 브레이커라면(또는 그 중 몇 가지가 하나가 된다면) Ubuntu Software 애플리케이션을 피하고 기존 방식으로 애플리케이션을 설치하십시오.

스냅은 로드 속도가 느립니다. 이것은 오래된 하드웨어에서 더 두드러질 것입니다.
스냅은 더 많은 하드 디스크 공간을 차지합니다.
스냅은 자동으로 업데이트됩니다.
스냅이 설치된 테마와 일치하지 않을 수 있습니다.
Snap이 항상 “공식적인” 것은 아닙니다. 그들은 종종 선의의 자원 봉사자에 의해 구축됩니다.

  스케치 파일에 메모를 추가하는 방법

컴퓨터가 합리적으로 최신식이라면 스냅을 실행하는 것과 일반 응용 프로그램을 실행하는 것 사이의 속도 차이는 크지 않을 것입니다. 우리가 발견한 가장 큰 시간 패널티는 설치 중에 발생했습니다. 스냅은 다운로드하는 데 훨씬 더 오래 걸렸습니다. 파일이 다운로드되면 설치가 충분히 빨랐습니다. 그러나 다운로드는 일회성 작업이므로 매일 처리해야 하는 작업은 아닙니다.

스냅이 미래라고 생각하고 이를 진심으로 받아들일 준비가 되었다고 해도 올인할 수는 없습니다. 일부 응용 프로그램은 스냅 형식으로 사용할 수 없습니다. 이러한 경우에도 명령줄에서 설치해야 합니다.

분명히 Canonical은 이 움직임으로 돛대에 색상을 못 박고 있습니다. Ubuntu 개발자에 관한 한 스냅은 여기에 있습니다. 항상 그렇듯이 이를 사용하거나 무시하거나 스냅과 기존 DEB 기반 설치를 혼합하여 일치시키는 하이브리드 시스템을 가질 수 있습니다.