다음 명령을 사용하여 저장소를 선택할 수 있다는 것을 알고 있습니다.
apt-get install -t backports|testing|unstable|etc software
나는 최근에 mysql-repository를 사용해야 했습니다 /etc/apt/sources.list.d/mysql.list
:
deb http://repo.mysql.com/apt/debian/ stretch mysql-apt-config
deb http://repo.mysql.com/apt/debian/ stretch mysql-5.7
deb http://repo.mysql.com/apt/debian/ stretch mysql-tools
deb-src http://repo.mysql.com/apt/debian/ stretch mysql-5.7
옵션을 사용하여 지정하기 위해 이 저장소의 이름을 어떻게 찾을 수 있습니까 -t
?
apt-get install -t mysql-community mysql-server
E: The value 'mysql-community' is invalid for APT::Default-Release as such a release is not available in the sources
apt-get install -t mysql-5.7 mysql-server
E: The value 'mysql-5.7' is invalid for APT::Default-Release as such a release is not available in the sources
apt-get install -t mysql mysql-server
E: The value 'mysql' is invalid for APT::Default-Release as such a release is not available in the sources
저도 관련 정보를 찾지 못했습니다 apt-cache showpkg mysql-server
. 또한 내 시스템의 모든 저장소를 나열할 수 있는 명령이 있습니까?
답변1
이 -t
옵션은 저장소가 아니라 버전을 지정합니다(설정의 약어입니다 APT::Default-Release
. 참조 man apt_preferences
).
Release
파일을 보면 특정 저장소가 어떤 버전을 대상으로 하는지 알 수 있습니다 .당신의 경우에는. stretch
(find )를 지정하고 있어서 Codename:
사용할 수 없게 됩니다...
답변2
저장소에 대한 정보를 얻으려면 다음을 수행하십시오.
sudo apt-cache policy
하지만 그것은 목표 달성에 도움이 되지 않습니다. 특정 저장소에서 패키지를 설치하려는 경우 저장소를 선택하는 것이 아니라 특정 패키지 버전을 선택하는 것입니다. 이 패키지의 모든 버전 목록을 얻으려면 다음을 수행하십시오 mysql-server
.
apt-show-versions | grep mysql-server
내 Ubuntu 18.04에서 출력은 다음과 같습니다.
mysql-server:all/bionic-security 5.7.22-0ubuntu18.04.1 uptodate
mysql-server-5.7:amd64/bionic-security 5.7.22-0ubuntu18.04.1 uptodate
mysql-server-5.7:i386 not installed
mysql-server-core-5.7:amd64/bionic-security 5.7.22-0ubuntu18.04.1 uptodate
mysql-server-core-5.7:i386 not installed
저장소를 지정하려면 저장소에서 grep을 수행하십시오. apt search
예를 들어 bionic-updates
저장소의 경우 다음을 수행하십시오.
apt search linux-image | grep -i bionic-updates
그런 다음 필요한 버전을 선택하고 설치합니다. 예:
sudo apt-get install mysql-server-5.7:amd64
따라서 규칙은 다음과 같습니다.저장소 대신 패키지 버전을 선택하십시오.
업그레이드를 피하기 위해 이전 버전의 패키지가 필요한 경우 다음을 사용하세요 apt-mark
.
sudo apt-mark hold mysql-server-5.7
마지막 명령은 패키지가 업그레이드되지 않도록 합니다. 이 동작을 복원하려면 unhold를 사용하십시오.
sudo apt-mark unhold mysql-server-5.7
또한 Askubuntu에 대한 비슷한 질문에 대한 내 답변도 참조하세요.우분투 16.04 및 커널 4.15
또 다른 옵션은 다음과 같습니다.결정된, 이 항목을 주의 깊게 읽어 보십시오.특정 저장소의 업데이트만 설치하는 방법은 무엇입니까?