우분투 소프트웨어 센터와 명령 줄 설치의 차이점


8

안녕하세요, 우분투 세계를 처음 사용합니다. 우분투에서의 소프트웨어 설치에 대한 몇 가지 질문이 있습니다.

  1. 우분투 소프트웨어 센터에 소프트웨어를 설치하는 것과 명령 줄의 차이점은 무엇입니까?

  2. 명령 줄로 설치 한 일부 소프트웨어를 소프트웨어 센터에서 검색 할 수없는 이유는 무엇입니까 (윈도우 키 누름)?

  3. 명령 줄에서 소프트웨어를 설치하여 검색 할 수있는 올바른 명령은 무엇입니까?

  4. 시스템을 한 번 백업하고 복원했지만 이전에 "subl"과 같은 일부 명령은 시스템을 복원 한 후에 작동하지 않습니다.

나는이 질문들이 $ PATH에 관한 것이라고 생각하지만 이것에 관한 자료를 찾을 수 없습니다. 추가 자료가 있으면 감사하겠습니다. :)


1
명령 줄을 통해 설치 한 소프트웨어가 Software Center에 나타나지 않습니까? 어떤 버전의 Ubuntu를 사용하고 있습니까?
Anwar

2
@ 앤디 # 2와 4는 더 자세한 내용이 필요합니다. 감사!
Edgy1

1
Ask Ubuntu에 오신 것을 환영합니다! 죄송합니다. Ask Ubuntu는 포럼이 아니라 질문과 답변 사이트입니다. 하나의 질문을하면 가장 효과적이므로 하나의 답변을받을 수 있습니다. 여러 가지 질문을 할 때는 여러 분야에 정통한 전문가 한 명을 찾아야합니다. 더 많은 질문을할수록 한 가지 질문은 더 어려워집니다! ;-) 질문을 여러 질문으로 나누고 의견을 남겨 주시면 귀하의 질문 중 하나에 답변 할 수 있습니다.
David Foerster

답변:


9

TL; DR : 많은 회색 영역이 있으며 수행중인 작업에 따라 다릅니다. 대부분의 경우 소프트웨어 센터 및 명령 줄 방법은 .deb패키지와 관련하여 유사한 작업을 수행 하지만 다른 소프트웨어 패키지에는 다른 단계가 필요할 수 있습니다.

Ubuntu 소프트웨어 센터에 소프트웨어를 설치하는 것과 명령 줄의 차이점은 무엇입니까?

현실은 다음과 같습니다. 설치는 소프트웨어 패키지와 함께 제공된 파일을 적절한 디렉토리에 넣는 것 이상입니다. 명령 행 또는 Software Center를 통해 수행되는지 여부는 중요하지 않습니다. 동일한 작업을 수행하여 파일을 해당 디렉토리에 넣습니다. 그러나 중요한 것은 패키지와 처리 방법입니다. 여기에서는 우분투에서 다룰 수있는 기본 패키지 중 일부를 살펴 보겠습니다. 명령 줄과 Software Center의 차이점은 가장 기본적인 차이점은 Software Center에서 단추를 클릭한다는 것입니다. 명령 행에서 명령을 입력합니다. Software Center는 많은 Python 코드를 사용하지만 명령 줄에서는 사용하는 유틸리티에 따라 다릅니다. Software Center에서 제거 할 수있는 양도 있습니다 (아래 내용 참조).

Ubuntu 용 소프트웨어 패키지는 .deb파일, .run파일 및 압축 zip또는 tar아카이브의 원시 소스 코드의 세 가지 방법으로 제공 될 수 있습니다 . 다루는 대상에 따라 명령 줄 설치가 다소 어려울 수 있습니다. 최소한 Linux를 사용한 첫 해에는 새로운 사용자가 정말로 걱정해야 할 것이 아닙니다.

대부분 .deb파일 을 볼 수 있습니다. 미리 컴파일 된 소프트웨어 패키지이므로 바로 사용할 수 있습니다. 이것들은 덜 고통 스럽습니다. 그들은 종종 의존성을 지정합니다-프로그램이 실행되지 않는 다른 소프트웨어. 명령 줄 유틸리티 등 aptapt-get당신을 위해 자동으로 종속성을 설치합니다. 실제로 Software Center는 apt-get백엔드로 사용 하므로 종속성도 자동으로 설치합니다.

.run파일은 일반적으로 독점적이고 인코딩 된 이진 파일입니다. 그들이하는 일을 실제로 볼 수는 없습니다.

원시 소스 코드를 사용하면 소프트웨어를 빌드하고 종속성을 설치하는 모든 작업을 직접 수행해야합니다.

패키지와 같은 다른 배포판에서 패키지를 설치하는 방법도 .rpm있지만 매우 드물게 수행됩니다.

컨테이너라고하는 소프트웨어 클래스도 있습니다. 도커와 lxd컨테이너가 있습니다. 최근 우분투는 snap패키지 라고 알려진 것을 소개했습니다 . 모든 것에 대해 좋은 점은 무엇입니까? 기본 시스템과 안전하게 격리 된 어느 곳에서나 실행할 수 있으며 매우 빠르게 설치 / 재설치 할 수 있습니다. 이러한 유형의 소프트웨어는 Software Center를 통해 설치할 수 없으며 일반적으로 전문 시스템 관리자 또는 기술자 / 고급 사용자를 위해 설치할 수 없습니다 . 새로운 사용자로서 당신은 그것들에 대해 걱정할 필요가 없으며, 그것들이 존재하고 그것들이 훌륭하다는 것을 명심하십시오 :)

마지막으로 스크립트와 같은 파일 (및 일반적으로 단일 파일)도 응용 프로그램으로 간주 될 수 있으며 다시 설치하는 것은 해당 파일이 속해 있거나 속해야하는 곳에 해당 파일을 던지는 것 이상입니다.

명령 행으로 설치 한 일부 소프트웨어를 소프트웨어 센터에서 검색 할 수없는 이유는 무엇입니까 (윈도우 키 누름)?

다시, 이것은 실제로 패키지에 달려 있습니다. 소프트웨어 개발자가 .desktop패키지에 파일 을 포함하기로 결정한 경우 대시에서 파일을 검색 할 수 있습니다. .desktop파일은 훨씬 더 많은 작업을 수행하지만 Windows 바로 가기와 비슷합니다. .desktop파일 과 함께 제공되는 명령 줄 유틸리티의 좋은 예 는 Byobu입니다. 터미널을 추가 탭 / 창으로 분리하는 데 매우 편리한 프로그램입니다.

그러나 .desktop각 프로그램마다 고유 한 파일을 만들어 ~/.local/share/applications/폴더에 넣을 수 있습니다.

다시 말하지만 이것은 명령 줄 또는 GUI 인 앱과 관련없습니다 . 앱 개발자의 선택에 달려 있습니다.

명령 줄에서 소프트웨어를 설치하여 검색 할 수있는 올바른 명령은 무엇입니까?

다시 말하지만, 당신이하고있는 일에 달려 있습니다. 공식 우분투 리포지토리에서 소프트웨어를 설치하는 경우 간단하게 할 수 있습니다sudo apt-get install my-software

.deb패키지를 설치하는 경우 dpkg명령 또는을 사용할 수 있습니다 apt-get. 다음은 apt-get으로 google-chrome deb 패키지를 설치하는 예입니다. 참고 : 설치시 나는 .deb파일 과 같은 디렉토리 에 있으므로 ./부분 을 지정해야합니다

$ sudo apt-get install ./google-chrome-stable_current_amd64.deb                
[sudo] password for xieerqi: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'google-chrome-stable' instead of './google-chrome-stable_current_amd64.deb'
The following NEW packages will be installed:
  google-chrome-stable
0 upgraded, 1 newly installed, 0 to remove and 54 not upgraded.
Need to get 0 B/50.0 MB of archives.
After this operation, 190 MB of additional disk space will be used.
Get:1 /home/xieerqi/下载/google-chrome-stable_current_amd64.deb google-chrome-stable amd64 53.0.2785.101-1 [50.0 MB]
Selecting previously unselected package google-chrome-stable.
(Reading database ... 476104 files and directories currently installed.)
Preparing to unpack .../google-chrome-stable_current_amd64.deb ...
Unpacking google-chrome-stable (53.0.2785.101-1) ...
Processing triggers for menu (2.1.47ubuntu1) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20160701-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up google-chrome-stable (53.0.2785.101-1) ...
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/x-www-browser (x-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/gnome-www-browser (gnome-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/google-chrome (google-chrome) in auto mode
Processing triggers for menu (2.1.47ubuntu1) .

좋은 점은 무엇입니까 apt-get? 프로그램과 관련된 모든 것을--purge 제거 할 수있는 옵션 이 있습니다 . 예를 들어, 소프트웨어 센터에서 제거 하거나 Software Center를 통해 수행하면 구성 파일이 남을 수 있으므로 소프트웨어를 다시 설치할 때 이전과 같이 사용할 수 있습니다. 옵션은 구성 파일도 삭제합니다. 소프트웨어가 고장 나서 완전히 새로 설치하려는 경우 편리합니다. 소프트웨어 센터는 그렇게하지 않으므로 다른 차이점이 있습니다.sudo apt-get remove google-chrome-stable--purge

.run파일을 다루는 경우 해당 파일을 실행 가능하게 만들고 실행해야합니다. 이처럼 :

$ sudo chmod +x ./software.run
$ sudo ./software.run

시스템을 한 번 백업하고 복원했지만 이전에 "subl"과 같은 일부 명령은 시스템을 복원 한 후에 작동하지 않습니다.

수행 한 백업 유형에 따라 다릅니다. 백업 subl에 작동 하는 데 필요한 모든 파일이 포함되어 있으면 제대로 작동 한 것입니다. 또한 subl설치 하기 전에 백업이 수행되었을 수도 있습니다 . 백업을 올바르게 구성했는지 확인하십시오

나는이 질문들이 $ PATH에 관한 것이라고 생각하지만 이것에 관한 자료를 찾을 수 없습니다. 추가 자료가 있으면 감사하겠습니다.

$PATH변수는 쉘 (당신이 명령을 넣어 명령 인터프리터)에 관련이있다. Unity Dash와는 관련이 없습니다. $PATHvariable은 실제로 디렉토리 목록이며, 여기서 쉘은 실행 권한이 설정된 프로그램을 검색합니다. 대시는 실제로 .desktop파일에만 관심이 있습니다. 예를 들어, 프로그램을 /usr/bin폴더에 넣고 명령 줄을 통해 열 수는 있지만 해당 .desktop파일 이 없기 때문에 Dash는 그렇지 않습니다 .

에 대한 추가 자료를 찾으려면 $PATH문자 그대로 Linux 쉘 스크립팅에 대한 책을 선택하십시오. 명령 행을 사용하려는 Linux 사용자를위한 기본 지식 항목 중 하나입니다.

일부 최종 견해 : Linux를위한 소프트웨어 설치의 복잡성은 Windows 또는 Mac 세계에서 온 새로운 사용자에게 충격을 줄 수 있습니다. 실제로, 그것은 같은 원칙입니다-그것이 속한 모든 것을 던지면 작동합니다. 프로그램 바로 가기를 찾지 못하셨습니까? 하나만 만드십시오 – 그것은 단지 텍스트 파일입니다! 컴퓨터는 기계이며 작동되어야합니다. Windows에는 %PATH%명령 줄에 대한 변수 도 있습니다. Windows 명령 줄은 Linux보다 다재다능하고 덜 사용되기 때문에 알지 못합니다. 요컨대, 일상적으로 가장 자주 사용되는 명령 또는 작업의 약 20 %이기 때문에 볼 수있는 모든 것에 겁 먹지 말고 80 %의 작업을 수행하십시오.


1
실제로 많은 패키지 일부 파일이 일부 디렉토리에 저장되는 것 이상입니다. 이를 넘어서는 설치 측면은 종속성, 캐시 및 기타 트리거의 재구성, 서비스 구성, 서비스 시작입니다.
종료-익명-무스

The complexity of software installation for Linux may sometimes be shocking to new users who come from Windows or Mac world그들이 그것을 어떻게 사용했는지에 달려 있습니다. Windows에서 압축을 해제하여 많은 응용 프로그램을 "설치"했으며 많은 설치 관리자가 문자 그대로 압축을 풀고있는 것을 보았습니다 Program Files. Linux에서 대부분의 경우 설치는 Windows와 같이 쉽습니다. .exe파일 을 다운로드하여 실행하는 대신 .deb. 또는 무엇이든. 그리고 커맨드 라인 실행은 그 과정을 대신합니다. 소프트웨어 센터는 GUI입니다.
VLAZ

5
  1. 우분투 소프트웨어 센터에 소프트웨어를 설치하는 것과 명령 줄의 차이점은 무엇입니까?

소프트웨어 설치 방법 에는 차이가 없습니다 . 그러나 일부 차이가있을 사용 하는 소프트웨어가 15.10 전에 설치 될 수있다. Trusty의 Ubuntu Software Center는 사용자가이를 통해 응용 프로그램을 구입할 수있게했으며 이러한 응용 프로그램은 일반적으로와 함께 설치할 수 없습니다 apt-get.

  1. 명령 행으로 설치 한 일부 소프트웨어를 소프트웨어 센터에서 검색 할 수없는 이유는 무엇입니까 (윈도우 키 누름)?

Dash를 사용하여 검색하는 것을 참조한다고 생각합니다 (슈퍼 키 사용). 대시는 일반적으로 그래픽 사용자 인터페이스와 함께 제공되며 일종의 아이콘 (특히 .desktop 파일)이 있는 프로그램 만 표시합니다 . 이들은 일상적인 사용에 적합하며 대시 검색에 표시됩니다. 그러나 이들은 설치된 모든 응용 프로그램이 아닙니다. Ubuntu에는 Dash에 나타나지 않는 많은 명령 줄 응용 프로그램이 있습니다. 이러한 응용 프로그램은 그래픽 독립 실행 형 응용 프로그램으로 사용하기에 적합하지 않기 때문에 (그리고 일반적으로 .desktop 파일과 함께 제공되지 않기 때문에) 예를 들어, tar대시에 프로그램 이 표시되지 않습니다 .

따라서 명령 줄 응용 프로그램을 설치하면 일반적으로 대시 (Windows 키) 검색에 표시되지 않습니다. 표시되지 않는 응용 프로그램을 지정하지 않았으므로 이것이 일반적인 대답 일 수 있습니다.

참고 : Serg가 주석에서 지적한 것처럼 Dash에서 아이콘 모양은 .desktop 파일에 따라 다릅니다. 명령 줄 응용 프로그램에 .desktop 파일이 있으면 대시로도 나타납니다. 나는 그에게 동의한다. 그러나 명령 줄 응용 프로그램 에는 일반적으로 .desktop 파일 이 제공되지 않습니다 .

  1. 명령 줄에서 소프트웨어를 설치하여 검색 할 수있는 올바른 명령은 무엇입니까?

이미 말했듯이, 명령 줄에서 소프트웨어를 설치하여 Dash 검색에 강제로 표시하는 명령은 없습니다. 일부 소프트웨어는 자동으로 나타나지만 일부는 그렇지 않습니다. 명령 행을 통해 atom-text-editor를 설치하면 나타납니다. p7zip패키지 를 설치하면 Dash 검색에 나타나지 않습니다. 소프트웨어의 그래픽 아이콘 가용성 및 Unity, Xfce 등과 같은 데스크탑 환경에서 실행기 아이콘 구성에 따라 다릅니다. 설치 방법에 의존하지 않습니다.

  1. 시스템을 한 번 백업하고 복원했지만 이전에 "subl"과 같은 일부 명령은 시스템을 복원 한 후에 작동하지 않습니다.

백업 및 복원 방법에 따라 다릅니다. sublSublime Text Editor의 프로그램 이름입니다. 아직 설치하지 않은 경우 설치하십시오. subl명령은 작업을 시작해야한다.


1
지점 # 2에 대한 답변은 전적으로 정확하지 않습니다. .desktop 파일을위한 대시 해치. .desktop 파일과 함께 제공되는 명령 줄 유틸리티의 좋은 예는 byobu이며 대시를 통해 검색 할 수 있습니다. 아이콘은 관련이 없습니다
Sergiy Kolodyazhnyy

@Serg 감사합니다. 나는 가능한 한 비 기술적 인 답변을하고 싶었다. 어쨌든, 편집하겠습니다
Anwar

@Serg byobu 역시 아이콘과 함께 제공되는 것 같습니다 :)
Anwar

아이콘이없는 경우에도 대시로 .desktop파일을 검색 할 수 있습니다 . 파일 때문에 물음표가있는 아이콘이 있지만 여전히 작동합니다. 아이콘은 실제로 선택 사항입니다. 아이콘 포함 여부는 개발자에게 달려 있습니다.
Sergiy Kolodyazhnyy

3

명령 줄에서 apt또는 apt-get명령 줄을 사용하고 있다고 생각합니다 . apt는 GUI 소프트웨어 센터가 의존하는 패키지 관리자입니다. 예를 들어 "gimp"패키지를 설치한다고 가정 해 보겠습니다. 사용하는 명령 줄을 통해 수행하려면

sudo apt install gimp

설치할 소프트웨어를 선택할 때 모든 소프트웨어 센터는 백그라운드에서 해당 명령을 실행하므로 입력 할 필요가 없습니다.

명령 행을 통해 설치 가능한 프로그램을 검색하려면 다음 명령을 사용하십시오.

apt search {search term}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.