[R Error 해결법] install_github() 했을때 Error: Failed to install 'unknown package' from GitHub
왠일인지 갑자기 github base로 R package설치하려고 하면,
1
2
3
4
5
6
7
8
9
> devtools::install_github("aertslab/SCopeLoomR", build_vignettes = TRUE)
Using github PAT from envvar GITHUB_PAT
Error: Failed to install 'unknown package' from GitHub:
HTTP error 401.
Bad credentials
Rate limit remaining: 59/60
Rate limit reset at: 2023-09-15 19:57:03 UTC
이따우 에러가 난다. 내 생각에 github token이 만료 돼서 그럴것 같기도 하지만 또 생각해보면 내가 서버에 내 git 로그인정보나 token정보를 넘긴적이 없는데 이시키가 만료된걸 어떻게 알까 싶기도 하고..
Anyway, 임시해결법을 찾아서 연명해가는중
1
Sys.unsetenv("GITHUB_PAT")
이렇게해서 이미 셋팅된 personal access token를 제거할 수 있다고함. 저거 입력하고 다시 설치하면 잘된다.
알만한 사람들은 알겠지만 저 코드는 R 세션이 닫히면 무용지물이라, 새 창을 열면 다시 입력해줘야한다.
근본적 해결법
우린 근본적 해결이 필요하다.
01. Update Github personal token
일단 github에 가서 token 업데이트를 진행해준다. 이지경까지 오기 전에 이미 여러차례 메일이 왔을거다.
메일이 오면 잘 읽어보자. 나처럼 똥인지 된장인지 맞아보고 고생하지 말고 후후
github로그인하고 https://github.com/settings/tokens/ 이쪽으로 접속하면
새로 토큰을 만들거나 갱신, 제거할 수 있다.
갱신하려고 들어가면 이렇게 보일텐데 ㅋ 새로만드는 token의 유효기간을 설정해주고 다음 페이지에서 얼마만큼의 권한을 줄건지 설정하면..
⭐️⭐️⭐️ 맨윗줄에 새 token이 생긴다!!! ⭐️⭐️⭐️ 반드시 복사!!!
복사 한 이후에 맨 아래 update 버튼 눌러서 갱신하자.
그럼 이런식으로 나옴! 여긴 끝. 이제 R로 돌아가서 환경을 update해주자.
- 저장하는거 까먹었으면 다시 갱신하면됨ㅋㅋㅋ 한번에 잘하자.
02. Modify R env.
이제 .Renviron
라고 하는 R 환경변수를 포함하고 있는 파일에 token정보를 새것으로 바꿔주면 됨.
.Renviron
는 보통 사용자 홈 아래에 저장되는데 어딨는지 확인하고 싶다면, R 켜서 다음과 같은 코드로 확인 할 수 있음.
1
usethis::edit_r_environ()
없으면 하나 만들어줘라
1
2
3
4
vi /home/subin/.Renviron
...
R_MAX_VSIZE=200Gb
GITHUB_PAT=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 # <- 이부분에 새로 만든, 아까 복사해둔, token넣어서 업뎃해주면 됨.
- manually 하기 싫다면 R package중에
usethis::edit_r_environ()
를 사용하는 방법도 있음..Renviron
파일을 텍스트 편집기로 열어줌.GITHUB_PAT=
부분 넣어주면 됨.
다 됐다면 다 정리하고 R session 새로 열어주면 해결됨.