패키지 설치에서 나타나는 Permission denied
패키지 설치가 되지 않을 때
한번은 DataExplorer
패키지를 설치하려다 다음과 같은 에러가 발생했다.
library(DataExplorer)
Error: package or namespace load failed for ‘DataExplorer’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]): namespace ‘scales’ 1.0.0 is already loaded, but >= 1.1.0 is required In addition: Warning message: package ‘DataExplorer’ was built under R version 3.6.2
영문을 해석하자면, scale
패키지의 버전이 1.1.0
이상이어야 한다는 것이다.
그래서 scales
패키지를 직접 설치하고자 했지만,
install.packages('scales')
Installing package into ‘C:/Users/username/Documents/R/win-library/3.6’ (as ‘lib’ is unspecified) trying URL 'https://cran.rstudio.com/bin/windows/contrib/3.6/scales_1.1.0.zip' Content type 'application/zip' length 557115 bytes (544 KB) downloaded 544 KB package ‘scales’ successfully unpacked and MD5 sums checked Warning in install.packages : cannot remove prior installation of package ‘scales’ Warning in install.packages : problem copying C:\Users\username\Documents\R\win-library\3.6\00LOCK\scales\libs\x64\scales.dll to C:\Users\username\Documents\R\win-library\3.6\scales\libs\x64\scales.dll: Permission denied Warning in install.packages : restored ‘scales’ The downloaded binary packages are in C:\Users\Seul\AppData\Local\Temp\RtmpE17oi0\downloaded_packages
다시 영문을 읽어보면, Permission denied
, problem copying
과 같은 구문과 폴더 이름에 00LOCK
이 눈에 띈다. 아마도 설치과정 도중에 문제가 생긴 모양이다.
다음과 같이 실행을 하고, 다시 설치를 시도하자.
Sys.getenv('R_LIBS_USER')
fLib <- Sys.getenv('R_LIBS_USER')
fLib
[1] "C:/Users/Seul/username/R/win-library/3.6"
fLibScales <- paste0(fLib, '/scales')
fLibScales
[1] "C:/Users/Seul/username/R/win-library/3.6/scales"
unlink(fLibScales, recursive=TRUE)
이제 install.packages('scales')
을 통해 설치가 가능할 것이다.
참고로, unlink(foldername, recursive=TRUE)
는 해당 폴더와 하위 폴더를 모두 삭제하므로, 주의를 요한다.
참고자료
-
?install.packages
Leave a comment