7

Я новичок в Linux и пытаюсь настроить небольшой тестовый сервер внутри виртуальной машины, на которой работает Ubuntu Server. Я нашел папку /var /www, и именно там должны храниться мои документы Apache. Фактически, если я получаю доступ к IP своей виртуальной машины, я вижу страницу index.html, которая там хранится.

Моя проблема в том, что я не могу написать в эту папку.

ls -l возвращает:

d-w-r-xr-x 2  root root 4096 2011-12-28 16:08 ./ 
drwxr-xr-x 13 root root 4096 2011-12-28 17:02 ../ 
-rw-r--r-- 1  root root 177  2011-12-28 16:08 index.html

Мой пользователь называется gab .

Что лучше всего делать при работе с этой папкой, чтобы я мог редактировать и создавать файлы здесь? Должен ли я создать новую группу или назначить себя владельцем папки?

3 ответа3

4

Это защищенная папка. Вы должны быть пользователем root, чтобы изменить этот каталог.

Вы также можете сделать gab владельцем этого каталога, выполнив

sudo chown -R gab /var/www

sudo выполнит команду chown -R gab /var/www от имени пользователя root (администратор) и запросит ваш пароль, используемый при настройке системы (скорее всего, тот же пароль, что и gab).

Как только вы это сделаете, вы также можете сделать

sudo chown -R 755 /var/www

дать разрешение на запись.

#   Permission
7   full
6   read and write
5   read and execute
4   read only
3   write and execute
2   write only
1   execute only
0   none


Reference   Class   Description
u   user    the owner of the file
g   group   users who are members of the file's group
o   others  users who are not the owner of the file or members of the group

755 означает, что у пользователя будет полный доступ, у группы будет доступ на чтение и выполнение, а у других будет доступ на чтение и выполнение.

3

Я собирался предложить вам стать членом группы www-data (или эквивалентной), но поскольку каталог и файл index.html принадлежат пользователю root , от вас, действительно, можно ожидать этого (как предложил kobaltz) - если вы хотите избежать виртуальных хостов.
Если вы идете по пути виртуальных хостов, каталог /var/www является просто заполнителем, который позволяет вам проверить, работает ли Apache.

Я знаю, что это немного читается, но вы смотрели эту страницу документации или эту вики-страницу?

1

На самом деле файлы должны принадлежать www-данным (или www-данные должны иметь права на запись). «Ленивый» способ - использовать sudo, чтобы переключиться на root и выбрать файлы для себя, сделать то, что вам нужно, а затем переключить его обратно на www-data - я думаю, что эти файлы были добавлены с помощью sudo, но кто бы это ни сделал не передал право собственности на www-данные

Правильный путь - установить папку для записи в группе и добавить себя в указанную группу. Это, конечно, имеет больше смысла, так как вам нужно сделать это только один раз (для каталога www-data), и после этого вы можете работать со своим обычным пользователем. Кобальц имеет правильную базовую идею, но некоторые аспекты исполнения кажутся мне неверными.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .