노는게 제일 좋습니다.

하모니카(우분투) source.list의 repository주소에 의한 의존성오류 해결 사례 본문

Linux

하모니카(우분투) source.list의 repository주소에 의한 의존성오류 해결 사례

노는게 제일 좋습니다. 2020. 4. 24. 20:28

도움주신 분

해티, rani, 김선호

 

배경

R 3.6을 깔기 위해 노력노력을 하던 중, 다음과 같은 의존성 문제를 마주했다.

실제로 의존성 문제라기보다는, repo주소가 잘못 작성된 것이다.


다음 패키지의 의존성이 맞지 않습니다:
r-base : 의존: r-base-core (>= 3.6.3-1xenial) 하지만 %s 패키지를 설치하지 않을 것입니다
의존: r-recommended (= 3.6.3-1xenial) 하지만 %s 패키지를 설치하지 않을 것입니다
E: 문제를 바로잡을 수 없습니다. 망가진 고정 패키지가 있습니다.

사용하고 있는 OS는 다음과 같다.

2019.11.18
HamoniKR-3.0
File : hamonikr-sun-3.0-amd64-20200423.iso
Size : 3.1G
SHA256 : 660754a278523e7e139251898ed596bd8e68221bb639ab5e8967864a3d8b9f4b

 

원인

apt repository를 source.list에 무언가 잘못 추가했었다.

 


해결방법

 

문제가 되는 Repo가 무엇인지 알아낸 뒤, 그 항목을 삭제해주면 해결될 수 있다. 대체로 [시도2]로 해결 될 수 있을 것이다.

 

문제가 되는 repo알아내기

  • sudo apt-get update를 했을 때, 많은 "무시, 받기, 기존"들 속에서 "오류"라고 표시되는 항목을 잡아낸다.

예시)

오류:11 http://cran.rstudio.com/bin/linux/ubuntu tina/ Release
404 Not Found [IP: 52.85.193.148 80]

 

시도 1 : 파일시스템 - etc - apt 안의 source.list파일을 확인하여, 잘못된 주소 제거

  • 어디있는지 파악한다. source.list는 etc/apt에 있다. 어차피 저건 읽기전용이라 여기서 못바꾼다.

  • 터미널에서 슈퍼유저 권한으로 내용을 편집하도록 하자. 경로로 들어가서 sudo권한으로 vi를 실행한다.

  • 나오는 내용에서 오류가 있었던 저장소 내용을 삭제해준다.
  • 삭제한 다음에는 [Ctrl+C] - [:wq! 입력] - [ENTER]로 저장하고 터미널로 복귀한다

  • sudo apt-get update로 "오류"항목이 없이 잘 나오는지 확인한다. 

 

시도 2 : 파일시스템 - etc - apt - sources.list.d 폴더 안의 어느 무언가 제거

  • 시도1과 마찬가지로 어디있는지 확인한다. 본인의 경우 [additional-repositories.list]가 문제였다.

  • 터미널에서 해당 경로로 이동하여 슈퍼유저 권한으로 문제가 있는 파일을 연다.

  • "오류"로 표시됐던 항목을 지워버린다. 그 후, [Ctrl+C] - [:qw! 입력] - [ENTER]로 저장하고 터미널로 복귀한다.

  • sudo apt-get update에서 "오류"항목이 더이상 표시되지 않는 것을 확인한다.

Comments