Неустранимая ошибка: невозможно mkdir R_TempDir - PullRequest
20 голосов
/ 10 июня 2011

При попытке запустить R я получаю эту ошибку:

Неустранимая ошибка: невозможно mkdir R_TempDir

Я нашел два возможных исправления этой проблемы, погуглив вокруг.Первым было убедиться, что мой каталог tmp не содержит загрузки подкаталогов - это не так и практически пусто.Второе исправление состояло в том, чтобы гарантировать, что TMP, TMPDIR и R_USER в моей среде не были установлены на несуществующие пути - у меня даже не было этих наборов.Поэтому я создал каталог tmp в своем домашнем каталоге и добавил его путь к TMP в моей среде.Я смог запустить R один раз, а затем снова получил фатальную ошибку.Ничего не было в каталоге TMP, который я установил в своей среде.Кто-нибудь знает, что еще я могу попробовать?Спасибо.

Ответы [ 6 ]

23 голосов
/ 16 августа 2012

Дирк прав, но упускает точку: если /tmp заполнен, вы не можете создавать подкаталоги там. Попробуйте

df /tmp

Я просто нажал это на общем сервере, где /tmp смонтирован в своем собственном разделе и доступен многим пользователям. В этом конкретном случае вы не можете понять, кто виноват, потому что права доступа ограничивают вас, кто заполняет раздел tmp. В основном приходится просить системных администраторов выяснить это.

20 голосов
/ 10 июня 2011

Ваш временный каталог по умолчанию имеет неправильные разрешения. Здесь у меня есть

$ ls -ld /tmp
drwxrwxrwt 22 root root 4096 2011-06-10 09:17 /tmp

Ключевая часть - «каждый» может читать или писать. Тебе это тоже нужно. , конечно, может содержать подкаталоги.

Вы используете что-то вроде AppArmor или SE Linux?

Редактировать 2011-07-21: Поскольку кто-то только что посчитал необходимым понизить этот ответ - help(tempfile) очень ясно, какие значения tmpdir (каталог по умолчанию для временных файлов или каталогов) пытается:

По умолчанию 'tmpdir' будет каталогом, заданным 'tempdir()'. это будет подкаталогом временного каталога, найденного Следующее правило. Переменные среды 'TMPDIR', 'TMP' и 'TEMP' проверяются по очереди и первый найденный указывает на доступный для записи каталог используется: если ни один не удается * используется 1022 *.

Итак, мои деньги направлены на проверку этих трех переменных среды. Но в некоторых дистрибутивах AppArmor и SELinux также оказались проблемой.

1 голос
/ 09 марта 2015

Перейдите в каталог пользователя и создайте файл с именем .Renviron и добавьте следующую строку, сохраните его и снова откройте RStudio или Rgui или Rterm

TMP = '<path to folder where Everyone has full control>'

Это работало со мной в Windows 7

0 голосов
/ 07 августа 2018

Проверьте учетную запись пользователя, с которым вы запускаете RStudio. Теперь проверьте TMP (переменная системной среды) на предмет его местоположения. Если у пользователя, запускающего RStudio, есть Запись доступ к этим каталогам, вы не столкнетесь с этой проблемой. Говорят, что вы столкнулись с этой проблемой, все, что вам нужно сделать, это изменить разрешения для пользователя , чтобы иметь запись доступ к этим каталогам. *

0 голосов
/ 23 марта 2017

Это также произойдет, когда ваш компьютер полностью, совершенно не хватает места. В настоящее время на моем Mac свободно 0 Кбайт, и это вызывает эту ошибку. Освобождение некоторого пространства решило проблему.

0 голосов
/ 15 апреля 2013

Просто имел эту проблему и наконец решил ее.Просто проблема разрешения Windows.Перейдите к переменным окружения и найдите расположение временных папок.Затем щелкните правой кнопкой мыши папку> свойства> безопасность> расширенный> изменить всех на полный контроль> отметьте «заменить все записи разрешений дочерних объектов на наследуемые записи разрешений из этого объекта»> ОК> нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...