Ubuntu 20.04의 Snap에 대해 알아야 할 사항
게시 됨: 2022-01-29Ubuntu 20.04 Focal Fossa는 널리 찬사를 받은 환상적인 릴리스입니다. 그러나 스냅 기반 응용 프로그램을 설치하기 위해 소프트웨어 센터를 변경하기로 한 결정은 논란의 여지가 있습니다. 그것이 당신에게 무엇을 의미하는지 설명하겠습니다.
Linux에서 스냅 패키지란 무엇입니까?
"Snap"은 snap
명령과 스냅 설치 파일을 모두 나타냅니다. 스냅은 응용 프로그램과 모든 종속 항목을 하나의 압축 파일로 묶습니다. 종속 항목은 라이브러리 파일, 웹 또는 데이터베이스 서버 또는 응용 프로그램을 시작하고 실행해야 하는 기타 모든 것일 수 있습니다.
스냅의 장점은 의존성 지옥의 고통을 피하기 때문에 설치를 더 간단하게 만든다는 것입니다. 이것은 필요한 리소스를 사용할 수 없거나 잘못된 버전이거나 해당 설치가 기존 응용 프로그램에 필요한 파일을 덮어써 실행할 수 없기 때문에 새 응용 프로그램을 실행할 수 없는 경우에 발생합니다.
설치 시 스냅이 압축 해제되고 파일이 추출될 것으로 예상할 수 있습니다. 그러나 스냅 파일이 블록 루프 장치에 마운트되는 것은 런타임에 있습니다. 이렇게 하면 파일의 내부 SquashFS 파일 시스템에 액세스할 수 있습니다.
응용 프로그램은 캡슐화된 링 펜스 방식으로 실행되므로 해당 파일이 컴퓨터의 파일을 방해할 수 없습니다. 동일한 응용 프로그램의 여러 버전을 설치할 수도 있으며 서로 수분하거나 서로 싸우지 않습니다.
단점은 설치 파일이 기존 데비안 패키지 관리자(DEB) 파일보다 크다는 것입니다. 그들은 또한 더 많은 하드 드라이브 공간을 사용합니다. 스냅을 사용하면 특정 리소스가 필요한 모든 응용 프로그램이 자체 복사본을 설치합니다. 이것은 하드 드라이브 공간을 가장 효율적으로 사용하지 않습니다. 하드 드라이브가 점점 더 커지고 저렴해지고 있지만, 전통주의자들은 여전히 자체 미니 컨테이너에서 실행되는 각 애플리케이션의 사치스러움에 주저합니다. 응용 프로그램 실행도 느려집니다.
Snaps는 또한 데스크톱 테마와 자동 업그레이드를 따르지 않는다는 비판을 받았습니다. 어떤 사람들은 스냅이 반드시 소프트웨어 작성자에 의해 만들어지는 것은 아니기 때문에 조심스럽습니다. 따라서 그들은 100% "공식적"이라고 생각하지 않습니다.
따라서 Canonical은 Focal Fossa를 사용하여 Ubuntu Software 애플리케이션을 기본적으로 스냅을 설치하는 버전으로 대체했습니다. 이것은 당신에게 무엇을 의미합니까?
관련: Ubuntu 20.04 LTS "Focal Fossa"의 새로운 기능
우분투 소프트웨어 센터
df
명령을 사용하여 컴퓨터에 마운트된 SquashFS
파일 시스템을 나열할 수 있습니다. -t
(유형) 옵션을 사용하여 관심 있는 파일 시스템으로 출력을 제한합니다.
df -t 호박
그런 다음 snap list
명령을 사용하여 설치된 스냅을 나열합니다.
스냅 목록
GNOME 데스크탑과 관련된 두 개의 스냅이 있습니다. 두 개는 핵심 스냅 기능, 하나는 GTK 테마용, 다른 하나는 스냅 스토어용입니다. 물론 snap-store
어플리케이션도 스냅입니다.
문제는 다음과 같습니다. 터미널 창에서 snap-store
명령을 실행하면 실행되는 응용 프로그램이 Ubuntu Software입니다.
물론 일반적으로 해당 아이콘을 클릭하여 Ubuntu Software 애플리케이션을 실행합니다. 명령줄에서 시작하여 표면 아래에 이제 snap-store
애플리케이션이 있음을 보여줍니다.
스냅 스토어
Ubuntu 소프트웨어 응용 프로그램은 예상대로 보입니다. 이전에 검색할 수 있었던 것과 동일한 소프트웨어를 모두 검색할 수 있습니다.
"sqlitebrowser" 응용 프로그램을 검색하여 설치해 보겠습니다. 결과 화면에는 응용 프로그램의 세부 정보와 스크린샷이 표시됩니다. "설치"를 선택하여 소프트웨어를 설치합니다.
모른다면 후드 아래의 변경 사항을 의심하지 않을 것입니다. 아래로 스크롤하면 몇 가지 새로운 스냅 관련 정보가 표시됩니다.
"세부 정보" 목록은 다음 정보를 제공합니다.
- 채널 : 설치에서 애플리케이션을 가져올 채널입니다.
- 버전 : 소프트웨어 버전입니다.
- 라이선스 : 라이선스 유형입니다.
- 개발자 : 스냅을 만든 사람 또는 응용 프로그램을 작성한 사람입니다.
- 소스 : 스냅을 다운로드할 소스(snapcraft.io는 Canonical의 Snapcraft 스냅 스토어).
- 다운로드 크기 : 스냅 파일의 크기입니다.
채널은 다음 중 하나일 수 있습니다.
- Stable : 가장 안정적이고 신뢰할 수 있는 패키지를 포함하는 기본값입니다.
- Candidate : 이 채널은 덜 안정적이지만 릴리스 후보 수준 소프트웨어가 포함되어 있기 때문에 매우 가깝습니다.
- 베타 : 이 채널은 개발 주기 후반의 품질이지만 안정성이 보장되지는 않습니다.
- Edge : 초기 빌드 테스터 및 호기심 많은 사용자를 위한 것입니다. 중요한 일에 이 채널을 사용하면 안 됩니다.
설치가 완료되면 설치된 스냅 목록을 다시 확인할 수 있습니다.
스냅 목록
새 항목이 맨 아래에 나열됩니다. 프로그램을 실행해 보겠습니다.
sqlitebrowser
인터페이스가 오래되어 보이지만 응용 프로그램에 대한 모든 것이 잘 작동합니다. 조각된 유사 3D 인터페이스 요소는 과거의 GUI를 생각나게 합니다. 이것은 모든 스냅에서 공통적인 것은 아니지만 이 예에서는 눈에 띕니다.
관련: Linux에서 Snap 패키지로 작업하는 방법
명령줄에서 설치
명령줄에서 응용 프로그램을 설치할 때 변경된 사항은 없습니다. snap
명령줄 도구에 계속 액세스할 수 있으므로 터미널 창 내에서 스냅을 설치 및 제거할 수 있습니다. apt-get
설치 명령과 apt
, apt-get 래퍼도 여전히 존재합니다.
명령줄에서 동일한 응용 프로그램을 설치해 보겠습니다. 위에서 설치한 버전은 스냅식이므로 서로 영향을 미치지 않습니다.
sudo apt-get sqlitebrowser 설치
설치가 완료되도록 합니다. Super 키를 누르고 "sqlitebrowser"를 입력합니다. 몇 글자를 입력하면 컴퓨터에 두 가지 버전의 프로그램이 표시됩니다.
둘 다 태워라.
보시다시피 두 가지 다른 버전이 동시에 설치되어 실행 중입니다.
이미지 뒤에 있는 버전은 명령줄에서 설치한 버전이고 앞의 버전은 스냅샷에 있는 버전입니다.
-
apt-get
버전은 3.11.2 버전입니다. -
snap
버전은 3.11.99입니다.
모양에도 불구하고 명령줄 버전은 이전 버전입니다. 그럼에도 불구하고 두 버전이 공존하고 잘 작동한다는 것은 자명합니다. 따라서 스냅은 동일한 응용 프로그램의 서로 다른 버전에 대한 링 펜싱으로 해야 할 일을 합니다.
또한 apt
또는 apt-get
을 사용하여 명령줄에서 응용 프로그램을 설치하는 것은 이전과 동일하며 스냅의 영향을 전혀 받지 않습니다.
어느 것을 사용해야 합니까?
어떤 유형의 응용 프로그램을 사용하고 있는지 조금이라도 신경 쓰십니까? 그렇지 않은 경우 스냅으로 이동하십시오.
다음 중 하나라도 문제가 되는 경우(또는 그 중 몇 가지가 하나로 합쳐지면) Ubuntu Software 애플리케이션을 피하고 기존 방식으로 애플리케이션을 설치하십시오.
- 스냅은 로드 속도가 느립니다. 이것은 오래된 하드웨어에서 더 두드러질 것입니다.
- 스냅은 더 많은 하드 디스크 공간을 차지합니다.
- 스냅은 자동으로 업데이트됩니다.
- 스냅이 설치된 테마와 일치하지 않을 수 있습니다.
- Snap이 항상 "공식적"인 것은 아닙니다. 그들은 종종 선의의 자원 봉사자에 의해 건설됩니다.
컴퓨터가 합리적으로 최신식이라면 스냅을 실행하는 것과 일반 응용 프로그램을 실행하는 것 사이의 속도 차이는 크지 않을 것입니다. 우리가 발견한 가장 큰 시간 패널티는 설치 중에 발생했습니다. 스냅은 다운로드하는 데 훨씬 더 오래 걸렸습니다. 파일이 다운로드되면 설치가 충분히 빨랐습니다. 그러나 다운로드는 일회성 작업이므로 매일 처리해야 하는 작업은 아닙니다.
스냅이 미래라고 생각하고 이를 진심으로 받아들일 준비가 되었다고 해도 올인할 수는 없습니다. 일부 응용 프로그램은 스냅 형식으로 사용할 수 없습니다. 이러한 경우에도 명령줄에서 설치해야 합니다.
분명히 Canonical은 이 움직임으로 돛대에 색상을 못 박고 있습니다. Ubuntu 개발자에 관한 한 스냅은 여기에 있습니다. 항상 그렇듯이 이를 사용하거나 무시하거나 스냅과 기존 DEB 기반 설치를 혼합하여 일치시키는 하이브리드 시스템을 가질 수 있습니다.