На самом деле это можно сделать с помощью Списков контроля доступа . Таким образом, даже если файлы изменены, добавлены новые или изменены права доступа к файлам, вы все равно сможете получить к ним доступ с помощью пользователя Node.js. Просто сделайте следующее в родительском каталоге сертификатов:
setfacl -Rm u:nodeJSUser:rX,d:u:nodeJSUser:rX /path/to/certificates
Замените nodeJSUser
на фактического пользователя. Первая часть параметра -m
устанавливает текущие списки управления доступом, а все, что после запятой, устанавливает значения по умолчанию для новых файлов. -R
делает его рекурсивным.
Обратите внимание, что если сертификаты хранятся в корневом -собственном каталоге без доступа к исполнению (, например. chmod 700
), то это не сработает. Например, если сертификаты хранятся в /root/certs
, поскольку /root
— это chmod 700
, никакие другие пользователи не могут получить доступ к чему-либо внутри этого каталога, даже если у них есть разрешение на сам файл. Для этого вы можете привязать этот каталог к другому каталогу и получить к нему доступ оттуда.
mkdir /certs
mount --bind /certs /root/certs
setfacl -Rm u:nodeJSUser:rX,d:u:nodeJSUser:rX /certs
Если вы сохранили все файлы, связанные с вашими виртуальными машинами, вы можете восстановить свои данные. В VirtualBox перейдите в меню «Машина» и нажмите «Добавить» (большой зеленый знак плюса )или нажмите Ctrl+A. Перейдите туда, где находятся файлы вашей виртуальной машины, и он найдет файл с расширением «.vbox». Выберите его, и все вернется так, как было.
Если у вас все еще нет файла «.vbox», а есть только виртуальный жесткий диск «.vdi», вы можете следовать этим инструкциям:
К этому моменту вы уже должны идти. Просто нажмите «Пуск».