소프트웨어 센터에서 여러 번의 다운로드를 허용하지 않는 이유는 무엇입니까?


29

소프트웨어 센터가 요청 된 모든 앱을 다운로드하지 않고 다운로드가 완료되면 하나씩 설치하지 않는 이유가 궁금합니다. 또는 소프트웨어 센터가 다른 소프트웨어를 설치하는 동안 앱을 다운로드하지 않는 이유


아마 그냥 대역폭을 절약하기 위해 ...
drnessie

1
AFAIK sudo apt-get install는 원하는 수의 패키지를 설치할 수 있습니다. 패키지 이름을 알아야합니다.
sagarchalise

@ drnessie 아니 아니에요! apt-get과 동시에 둘 다 설치하면 동시에 다운로드 한 다음 한 번에 하나씩 설치합니다.
Alvar

@Alvar Ok. 나는 리눅스 민트에서 그 일을했다. 그러나 우분투에서 똑같이 시도해도 효과가 없습니다. 수행하는 방법?
MycrofD

@ MycrofD 그리고 당신은 무엇을 시도하고 있습니까?
Alvar

답변:


29

좋은 질문입니다. 그것은 apt-get과 다른 사람들이 사용하는 것과 동일한 패키지 도구를 기반으로하기 때문입니다. 이들은 모든 패키지를 설치할 것으로 예상되는 방식으로 설계되었으며 나머지는 자동입니다. 이것은 대부분의 경우에 매우 좋지만 소프트웨어 센터의 경우 일부 문제가 발생합니다. 먼저 설치하려는 패키지를 선택한 다음 버튼을 클릭하여 실제로 다운로드하여 설치하거나 응용 프로그램을 대기열에 추가 한 다음 하나씩 다운로드하여 설치해야합니다. 이것은 추가 클릭을 사용하는 것보다 하나의 응용 프로그램을 설치하는 경우 훨씬 더 나은 사용자 경험을 제공하지만 "쇼핑"할 때도 성가신 일입니다.

이 문제를 해결하는 것이 가능하므로 앞으로는이 문제가 해결 될 것으로 예상되지만 기존 도구를 다시 작성하거나 다시 작성한다는 의미이므로 우선 순위가 매우 높지 않다고 생각합니다.

좀 더 자세히 설명하겠습니다 :

패키지는 다른 패키지에 따라 달라질 수 있습니다. 이러한 패키지를 사용할 수 없으면 패키지를 설치할 수 없습니다. 따라서 apt-get과 같은 도구는 먼저 요청한 모든 패키지와 해당 패키지가 의존하는 모든 패키지 등을 다운로드 한 다음 모두 설치합니다. 따라서 일반적으로 원하는 모든 패키지를 한 번에 제공하면 먼저 다운로드하여 설치합니다.

소프트웨어 센터에 응용 프로그램을 설치하기로 선택하면 일반적으로 즉시 다운로드 및 설치를 시작해야합니다. 그러나 모든 것이 제대로 작동하려면 한 번에 하나의 설치 만 수행 할 수 있습니다. 그렇기 때문에 응용 프로그램을 설치할 때 다음 다운로드 및 설치를 시작하기 전에 해당 응용 프로그램이 완전히 다운로드되어 설치 될 때까지 기다려야합니다.

apt-get을 사용하여 패키지를 설치하지 않고 패키지를 수동으로 다운로드 한 다음 dpkg를 사용하여 패키지를 설치하면 문제를 해결할 수 있습니다. 여전히 두 개의 패키지를 동시에 설치할 수는 없지만 이전에 시작한 설치가 완료되는 동안 새 패키지 다운로드를 시작할 수 있습니다. 경우에 따라 시간이 많이 절약되므로 좋은 생각입니다. 그러나 대부분의 경우 실제로 중요하지 않으므로 노력이 다른 곳에 더 집중됩니다.


실제로 apt-get은 패키지를 설치하지 않고도 패키지를 다운로드 할 수 있지만 잠긴 데이터베이스와 작동하는지 100 % 확실하지는 않습니다.
JanC

Linux Mint에서 동시 다운로드 및 설치가 가능합니다. 우분투에는 없습니다.
MycrofD

2
@ MycrofD : 나는 그 의견의 요점이 무엇인지 정말로 모른다. 물론 우분투로 한 번에 여러 패키지를 다운로드 할 수 있습니다. 당신은 그것을 기반으로 apt-get 및 도구로는 그렇게 할 수 없습니다. 그것은 당신이 말하는 배포판에 관계없이 분명히 있습니다.
Jo-Erlend Schinstad

10

로 한 번에 하나의 패키지 만 설치할 수 sudo apt-get install있지만 하나의 명령으로 여러 패키지를 설치할 수 있습니다. 이처럼 :

  • sudo apt-get install ubuntu-desktop lubuntu-desktop

이 모두 설치됩니다 ubuntu-desktoplubuntu-desktop종속성 어떤 그들은 올바른 순서로 필요합니다.

또한로 시스템을 업데이트 할 sudo apt-get upgrade때는 먼저 모든 소프트웨어를 다운로드 한 다음 한 번에 하나의 패키지를 설치하십시오.


한 번에 여러 패키지를 설치할 수없는 이유 는 하나의 인스턴스 만 apt-get동시에 권한을 사용할 수 있기 때문입니다. 이는 apt-get잠금을하고 software sources다른 명령이 사용하지 못하기 때문 입니다.


@Rinzwind가 말한 것처럼 어떻게 든 두 개의 개별 apt-get을 시작한다고 가정하면 이론 상으로는 최소한 소스 목록을 사용하여 새 소프트웨어를 찾아 설치하는 것과 동시에 편집 할 수 있습니다. 이로 인해 설치 한 프로그램이 시스템을 업그레이드 할 때 소스 목록을 편집하고 안전하지 않은 저장소를 추가 할 수 있습니다. 이것은 보안 문제 일 수 있습니다.

또 다른 예
또한 2 개의 개별 명령으로 소스 목록을 편집하면 저장할 때 최신 버전 (마지막으로 저장되는 버전)이 바뀝니다. 즉, 중간 버전의 명령은 이전 버전보다 저장하기 때문에 아무런 영향을 미치지 않습니다.


Windows는 "official"(MSI) 설치 프로그램을 사용하여 유사하게 작동합니다

Windows에서도 여러 소프트웨어를 동시에 설치할 수 있습니다 ... 이것에 이점이 있습니까? 아니면 Linux / ubuntu 등에서 이것이 필요한 이유는 무엇입니까?

공식 Windows Installer (MSI)를 사용하는 패키지는 한 번에 둘 이상의 인스턴스를 실행하는 것을 거부합니다. MSI 설치 관리자 데이터베이스는 sources.listdpkg 정보 파일 등과 유사하기 때문입니다. 한 번에 두 개 이상의 설치 관리자가 파일을 수정 / 잠그기를 원하지 않습니다.

그러나 많은 Windows 패키지는 Installshield, NSIS 등과 같은 타사 설치 프로그램을 사용하며 MSI 데이터베이스에 액세스 / 수정할 필요가 없기 때문에 서로 함께 실행됩니다. 마찬가지로 Linux / Ubuntu에서는 아무도 동시에 apt-get, a tar -xzf및 perl / bash 설치 스크립트 를 실행하지 못하게합니다. :)


1
내가 틀리지 않으면 많은 응용 프로그램을 sudo동시에 사용하여 실행할 수 있지만 패키지 관리와 관련하여 실행 apt하면 잠금sources.list발생하므로 해당 응용 프로그램 중 하나만 주어진 시간에 패키지를 설치하거나 제거 할 수 있습니다. 다른 패키지 관리 응용 프로그램을 실행하려고하면 해당 파일이 잠기지 않으므로 실행되지 않습니다.
Kushal

@ Kush 그것은 apt-get입니다. 하나만 사용할 수 있습니다. 죄송합니다. 오래 그 오류가 발생했습니다.
Alvar

@Rinzwind는 이것이 당신이 의미하는 것입니까? :)
Alvar

2
@Alvar : 맨 아래에 유사한 Windows 동작을 포함하도록 편집 : Windows가 어떻게 든 "우수한 것"이라는 잘못된 정보를받지 않도록하십시오.
ish

1
@Alvar ... 감사합니다. !! 그것은 나의 기본을 깨끗하게했다 ..;)
Nirmik

7

먼저,이 답변은 dpkg및에 대한 내 경험에서 얻은 정보에서 온 것임을 알려주세요 apt. 나는 이것을 결정하기 위해 실제 소프트웨어 센터 코드를 보지 않았다.

기본 소프트웨어 디자인의 한계입니다.

dpkgUbuntu가 패키지에 사용 하는 시스템의 일부 에는 /var/lib/dpkg/lock파일을 "잠 그어" 여러 기능 dpkg( apt-get및 Ubuntu Software Center는 프런트 엔드)이 자체 및 기타 나쁜 악의적 인 내용을 덮어 쓰지 못하게 하는 기능이 포함되어 있습니다 .

소프트웨어를 설치하면 어떻게됩니까? 시작은 sudo apt-get install chromium-browserChromium을 예로 사용 하여 시작됩니다 .

그리고 그 일이 발생하면 잠금이 시작됩니다. 설치할 패키지를 두 개 이상 추가하면 다음 apt명령 이 시작되기 전에 첫 번째 패키지가 완료 될 때까지 대기합니다 .


4

메뉴 새로 고침, 글꼴 색인화 및 라이브러리 재구성과 같은 일부 작업은 모든 패키지가 동시에 설치된 경우 한 번만 수행하면됩니다. 두 번째 장점은 자주 발생하지는 않지만 서로를 배제하는 패키지를 설치하려면 모든 패키지를 다운로드하기 전에 알고 있다는 것입니다.

마지막으로 많은 패키지를 한 번에 설치하거나 업그레이드 할 때 가장 중요한 이점이 있습니다. 질문에 대답해야하는 경우 설치 과정에서 모두 서로 뒤 따릅니다. 따라서 다른 질문으로 5 분마다 버그 대신 작업을 계속할 수 있습니다.


거기에 몇 가지 흥미로운 점이 있습니다. :)
Jo-Erlend Schinstad

2

apt-get의 두 인스턴스가 동시에 작동 할 수없는 이유는 응용 프로그램이 시스템 작동에 중요한 여러 파일을 읽거나 쓰고 있기 때문입니다. apt-get 조작으로 파일을 읽거나 쓰는 반면 다른 apt-get 조작에서 동일한 조작을 수행하는 경우 구성이 잘못되거나 파일이 손상 될 수 있습니다. 따라서 apt-get 작업이 발생하면 필요한 파일을 "잠그고"다른 작업을 동시에 실행할 수 없습니다. 즉, 다른 작업에 파일이 현재 사용 중임을 알리는 플래그가 발생합니다.

그러나 apt-fast 명령을 사용하면 apt에 필요한 파일을 동시에 다운로드하거나 여러 소스에서 다운로드 할 수 있습니다.

https://github.com/ilikenwf/apt-fast


0

한 번에 여러 파일을 설치하는 간단한 방법은 다음 단계를 수행하십시오.

  1. 모든 설치 폴더를 복사하십시오 (예 : / home / user / apps).
  2. 터미널 열기 및 유형 :

    CD / home / user / apps

  3. 그런 다음 다시 입력

    sudo dpkg -i * .deb

설치가 끝날 때까지 기다리십시오.


1
그래도 .deb 파일을 하나씩 설치합니다 . OP가 요청한 내용이 아니라 여러 .deb 파일을 동시에 설치하려고합니다.
ish

-1

다른 장치를 설치하는 동안 예를 들어 terminal1에 패키지를 다운로드하십시오.

sudo apt-get install vlc

그런 다음 다른 터미널에서 다른 패키지를 다운로드하십시오 2

sudo apt-get download openssh-server

apt-get에서 사용 가능한 다른 옵션을 보려면 man simple type을 참조하십시오.

apt-get <press tab on your keyboard>

이것은 질문에 대답하지 않습니다.
guntbert

@guntbert 나는 그의 질문의 두 번째 부분에 대답하고 있었다. 그는 "또는 대신 다른 소프트웨어가 설치되는 동안 소프트웨어 센터가 앱을 다운로드하지 않는 이유"라고 말했다. 또 다른 문제가 있습니다.
marengz
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.