Problem z aktualizacją.packages w systemie Windows 7: „nie można przenieść tymczasowej instalacji”?


Używam wersji R 2.13.0 z systemem Windows 7, po udzieleniu mojemu użytkownikowi pełnych uprawnień do folderu R (zgodnie z opisem

tutaj
http://www.r-statistics.com/20 ... ws-7/
).
To pozwala mi dobrze zainstalować nowe pakiety.
Jednak gdy używam update.packages () do aktualizacji istniejących pakietów, ciągle otrzymuję następujący błąd (na przykład podczas aktualizacji pakietu MASS):

pakiet „MASS” pomyślnie rozpakował i zweryfikował sumy kontrolne MD5
Ostrzeżenie:

nie można przenieść tymczasowej instalacji

'C:\Program
Pliki \ R \ R-2.13.0 \ library \ file6cae3bcf \ MASS '
w 'C: \ Program
Pliki \ R \ R-2.13.0 \ library \ MASS '

Jakieś propozycje jak to naprawić?
p.s: uruchomienie R jako administrator lub przeniesienie lokalizacji biblioteki z plików programu nie jest rozwiązaniem (to hack - ale szukam rozwiązania)
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Odkryłem, że problem jest rzeczywiście w antywirusowym "Ochrona systemu plików w czasie rzeczywistym". Aby wyeliminować ten problem, wykonuję następujące czynności:
trace(utils:::unpackPkgZip, edit=TRUE)

Edytuję wiersz 140 (wiersz 142 w R 3.4.4):
Sys.sleep(0.5)

do:
Sys.sleep(2)

Wydaje mi się, że antywirus przestał tworzyć pakiet tmp dir. Po zmianie na 2 sekundy błąd zniknął.
EDYCJA: Aby zrobić to programowo, zrób
trace(utils:::unpackPkgZip, quote(Sys.sleep(2)), at = which(grepl("Sys.sleep", body(utils:::unpackPkgZip), fixed = TRUE)))

(kredyty dla @DavidArenburg)
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Aby zaktualizować wszystkich, (myślę, że) znalazłem źródło problemu:

antywirus

.
„Ochrona systemu plików w czasie rzeczywistym” uniemożliwiła R kopiowanie plików między folderami zaraz po ich załadowaniu.
Po dodaniu katalogu R do listy wykluczeń (w połączeniu z dodaniem uprawnień użytkownika i ustawieniem R na D: \ R) problem zniknął. Z całą tą pracą mógłbym równie dobrze przejść na Linuksa (naprawdę muszę ...)
(Zaktualizowałem swój post o powyższe informacje:

http://www.r-statistics.com/20 ... ows-7
http://www.r-statistics.com/20 ... ws-7/
/)
Mam nadzieję, że to pomoże komuś w przyszłości,
Tal
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Jeśli nie możesz wyłączyć programu antywirusowego, na przykład z powodu zasad korporacyjnych, oto obejście, które znalazłem. Debugowanie funkcji rozpakowywania, a następnie przechodzenie przez nią daje antywirusowi wystarczająco dużo czasu na wykonanie zadania bez ingerencji. Użyj tego polecenia:
debug(utils:::unpackPkgZip)
install.packages("packageName")

a następnie przejdź przez kod (naciskając wielokrotnie enter), gdy R rozpocznie debugowanie podczas instalacji.
Znalazłem to rozwiązanie

tutaj
http://r.789695.n4.nabble.com/ ... .html
.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Jeśli możesz po prostu pobrać plik binarny bezpośrednio z CRAN. W systemie Windows będzie to plik zip po załadowaniu. Teraz ręcznie rozpakuj to do ..library/folder swojego R (
.libPaths ()
). to działało dla mnie na niektórych pakietach.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Miałem ten problem z instalacją zarówno swirl jak i dplyr. Pracuję na 64-bitowym systemie Windows.

Ostrzeżenie: nie można przenieść tymczasowej instalacji

Uzyskałem dostęp do plików tymczasowych na dysku C:, otworzyłem ekstraktor plików i wyodrębniłem pliki z pliku tymczasowego na dysku C: do plików programu R na dysku C:, ręcznie je kopiując. To działało zarówno dla dpylr, jak i swirl. Podekscytowany!
Owacja,
Brzoskwinia
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Czy lib.loc nie może być używane tylko do aktualizowania pakietów w Twojej bibliotece osobistej (w użytkowniku)?
Nie powinno być żadnego sposobu, aby pozwolić zwykłemu użytkownikowi bez rozszerzania na modyfikowanie plików w folderze plików programu, więc jedyną rzeczą, jaką możesz zrobić (jeśli nie chcesz rozszerzać użytkownika), jest nie aktualizowanie pakietów przez R tam.
Rozwiązaniem jest uniknięcie instalowania R w folderze plików programu (co może być mniej lub bardziej hakerskie niż zwykłe wyprowadzenie z niego lokalizacji biblioteki, w zależności od twojego punktu widzenia).
Wreszcie, jeśli lib.loc go nie zmniejszy, możesz spojrzeć na źródło pakietów update.packages i stworzyć własną dostosowaną wersję, która zawsze będzie unikać lokalizacji biblioteki współdzielonej w plikach programu.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Właśnie natknąłem się na to samo pytanie i rozwiązanie, które znalazłem, było takie, że musisz zainstalować pakiety przy użyciu oryginalnego oprogramowania R (plus, musisz wybrać poprawną witrynę lustrzaną, niektóre z nich są zablokowane). Najpierw użyłem Rstudio do zainstalowania pakietów i napotkałem ten sam problem, co Ty. Mam nadzieję, że to będzie pomocne.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Kilka razy napotkałem ten błąd. W moim przypadku dzieje się tak, ponieważ nasi administratorzy chcą, abyśmy używali zdalnych dysków wirtualnych (w systemie Windows 7) do naszych plików, a wszystko jest szczelnie zamknięte jak bęben. Jedynym sposobem, w jaki mogę używać pakietów R, jest katalog lib na tym zdalnym dysku wirtualnym. Nie stanowiłoby to problemu, poza tym, że sieć nie zawsze działa płynnie i szybko. Więc kiedy potrzebuję pakietu, szczególnie z kilkoma innymi pakietami w ciągnięciu (np. MBESS), muszę albo przejść przez proces get.packages () kilka razy, aż w końcu się skończy, albo sprawić, że IT przyprawi o ból głowy, aby zrobić to szybko, jak królik dla mnie. Nie mogę czekać cały czas na IT.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Po prostu przeszedłem do folderu biblioteki (Windows XP) i usunąłem wszystkie foldery fileXXXX. Spróbuj ponownie zainstalować i będzie działać.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Miałem ten sam problem. Ponieważ wydaje się, że problem polega na tym, że program antywirusowy blokuje przesyłanie pobranego pliku, spróbowałem innej metody pobierania w install.packages i zadziałało.
Na przykład:
install.packages("stringr", method = "curl")
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Błąd: „nie można przenieść tymczasowej instalacji” jest spowodowany głównie przez program antywirusowy działający w systemie.
Spróbuj rozpakować pobrany plik z folderu Temp do domyślnej ścieżki biblioteki (możesz go pobrać, uruchamiając .libPaths () w sesji R).
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Musisz przejść do R Folder Options i zmienić ustawienia zabezpieczeń. Możesz włączyć opcję zapisu i modyfikacji dla wszystkich użytkowników.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Używam MRAN i miałem tak wiele problemów z wersjonowaniem. Próbując pracować z tidyverse i ggplot2 oraz aktualizując do najnowszej wersji od Microsoftu, rozwiązałem wszystkie moje problemy z wersjami R-Studio.
Informacje o wersji:
Microsoft R Open 3.5.1
The enhanced R distribution from Microsoft
Default CRAN mirror snapshot taken on 2018-08-01.

Pobierz Microsoft R Open 3.5.1
https://mran.microsoft.com/download

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się