Предисловие: Это настройка цифровой капли океана с использованием serverpilot. Есть два пользователя, root
и serverpilot
.
Когда я подключаюсь по SSH как, serverpilot
я вижу файлы, перечисленные внутри apps/website/public/
, но когда я подключаюсь по SSH как root
и выполняю команду cd into apps/website/public/
, ls -la
есть ряд файлов и каталогов, которые не перечислены.
В качестве примера serverpilot
можно посмотретьstyle.css
-rwxrwxr-x+ 1 serverpilot serverpilot 22322 Nov 17 22:05 style.css
В качестве другого примера приведем еще несколько файлов, которые root
не видны, но serverpilot
видны.
drwxr-xr-x+ 13 serverpilot serverpilot 4096 Apr 18 11:42 wp-content
-rwxrwxr-x+ 1 serverpilot serverpilot 3286 May 24 2015 wp-cron.php
drwxr-xr-x+ 18 serverpilot serverpilot 12288 Dec 7 17:35 wp-includes
Но когда я захожу по SSH root
и делаю cd into apps/website/public
, ls -la
это все, что я вижу.
drwxrwxr-x 3 www-data www-data 4096 Apr 17 22:49 .
drwxr-xr-x 3 root root 4096 Oct 14 2016 ..
-rw-rw-r-- 1 www-data www-data 46 Oct 21 15:11 .user.ini
Проверка обоих root
и severpilot
групповых отображений:
root : root www-data lxd sp-sysusers users serverpilot
serverpilot : serverpilot lxd sp-sysusers
Я не уверен, что произошло и почему пользователь root потерял доступ к каталогам и файлам.
Я пробовал сбросить разрешение файла chown
и chown
с именем группы, но все равно не могу заставить файлы отображаться для root
. Поскольку я новичок в управлении серверами Linux, мне кажется, что это может быть что-то простое, что я упускаю из виду.
Редактировать:
В некоторых комментариях ниже рекомендуется запустить его, getfacl
чтобы получить больше информации о файле, поскольку, по-видимому, списки управления доступом переопределяют разрешения на файл.
Вывод getfacl
on style.css
следующий:
# owner: serverpilot
# group: serverpilot
user::rwx
user:www-data:r-x
group::r-x
group:serverpilot:rwx
mask::rwx
other::r-x
Возможно ли, что пользователь должен быть serverpilot:r-x
и не должен www-data:r-x
?
решение1
Теперь я чувствую себя полным идиотом, но, полагаю, каждый должен с чего-то начинать. Проблема была в том, о чем @ilkkachu упомянул в своем комментарии. Когда я заходил по ssh как root, он перебрасывал меня в /root/
каталог, который находился в другом месте на сервере. Не знаю, почему я это не проверил.
Когда я ssh
вошел, он поместил меня в правильный каталог, где должны быть мои файлы/папки. По какой-то причине некоторые из этих файлов также serverpilot
продублировались в каталоге ./root/
Обновив разрешения для одного из родительских каталогов, я смог выйти из каталога и перейти в нужный мне каталог.
Теперь рассмотрим, как настроить пользователя root так, чтобы он был перемещен в нужную папку.
Спасибо всем.