여러 버전의 소프트웨어 간 전환

여러 버전의 소프트웨어 간 전환

update-alternatives내 컴퓨터에 설치된 여러 버전의 소프트웨어를 구성하는 데 사용합니다 .

이 소프트웨어에는 여러 개의 실행 파일 A, B 및 C가 있습니다. 버전 간에 전환하려면 각 실행 파일을 개별적으로 설치하고 구성해야 합니다.

update-alternatives --install /usr/bin/A A /path/to/version1.0/bin/A 1
update-alternatives --install /usr/bin/B B /path/to/version1.0/bin/B 1
update-alternatives --install /usr/bin/C C /path/to/version1.0/bin/C 1

Linux에서 실행 파일 세트의 여러 설치 버전을 번갈아 설치하는 방법은 무엇입니까?

폴더 경로를 지정하고 싶습니다.

update-alternatives --install /usr/bin/ App /path/to/version1.0/bin/ 1

그래서 사용할 버전을 선택합니다. /usr/bin이 디렉토리이기 때문에 링크를 생성할 수 없습니다.

답변1

디렉터리의 바이너리 세트를 연결할 수는 없지만 관련된 여러 대안을 만들 수 있습니다.

update-alternatives --install /usr/bin/A A /path/to/version1.0/bin/A 1 \
  --slave /usr/bin/B B /path/to/version1.0/bin/B \
  --slave /usr/bin/C C /path/to/version1.0/bin/C

2차 대안은 선택이 1차 대안에만 의존하기 때문에 가중치가 적용되지 않습니다. for에 대한 대안을 전환하면 A및에 대한 대안이 일치하도록 전환됩니다.BC

모든 바이너리를 나열 /path/to/versionX/bin하고 적절한 명령줄을 작성하여 자동으로 모든 바이너리로 확장할 수 있습니다.

답변2

적어도 3가지 옵션이 보입니다.

  • 원하는 경로를 사용하시고, 사용시에는 전체 경로를 사용하세요.
  • 사용중인 답변 또는 다른 답변의 업데이트 된 대안https://unix.stackexchange.com/a/526569/4778
  • 자신만의 심볼릭 링크를 만드는 방법은 아래를 참조하세요.

파일이 포함된 일부 디렉터리 설정

  • mystuff/A/bin1
  • mystuff/A/bin2
  • mystuff/A/bin3

  • mystuff/B/bin1

  • mystuff/B/bin2
  • mystuff/B/bin3

  • mystuff/active → mystuff/A(또는 B)

그런 다음 업데이트 대안을 사용하여 다음을 가리킵니다.mystuff/active

그런 다음 심볼릭 링크를 업데이트하여 전환할 수 있습니다.

관련 정보