Каков самый простой способ редактировать и добавлять файлы в «/ var / www»?

131

Установив веб-сервер, есть простой способ настроить пользователя на использование графического интерфейса для копирования файлов и каталогов на локальный веб-сервер / var / www

Я дал себе административные привилегии в Ubuntu, но он все еще не позволяет копировать.

    
задан k_graham 03.01.2011 в 20:49
источник

7 ответов

202

Если вы делаете / var / www записываемым по своей группе и добавляете пользователя в группу, этому пользователю не нужно будет использовать sudo. Попробуйте следующее:

sudo adduser <username> www-data
sudo chown -R www-data:www-data /var/www
sudo chmod -R g+rwX /var/www

Пользователь должен иметь возможность редактировать / var / www / files без проблем.

Первая строка добавляет пользователя в группу www-data, вторая строка очищает все файлы с испорченным достоянием, а третий делает это так, чтобы все пользователи, которые являются членами группы www-data, могли читать и писать все файлы в / var / www.

Если вы вошли в систему как <username> , вам нужно выйти из системы и войти в систему, чтобы членство в группе вступило в силу.

    
ответ дан Azendale 01.07.2011 в 03:14
23

Вы можете chown , то есть ch ange own er этой папки. Это позволит вам изменить пользователя и группу в папке, позволяя пользователю добавлять / удалять файлы на нем. Чтобы сделать это, замените yourusername своим именем и запустите:

sudo chown yourusername.users /var/www

И это он.

Однако я предпочитаю создавать виртуальный хост в своей домашней папке, это намного проще.

В основном это позволяет вам использовать любую папку в качестве папки для обслуживания apache. Чтобы показать, как это просто, предположим, что ваше имя пользователя имя пользователя и что папка, которую вы хотите обслуживать, / home / username / www

Создайте следующий файл (например, mywebprojects ) в / etc / apache2 / sistes-available, заменив имя пользователя и путь к папке (в основном просто скопируйте и вставьте и замените в #CHANGE HERE):

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    # CHANGE HERE
    DocumentRoot /home/username/www

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>

    # CHANGE HERE
    <Directory /home/username/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

Теперь создадим папку www , добавим простой мир привет, отключите веб-сайт по умолчанию ( /var/www ), включите наш сайт mywebprojects и перезапустите apache.

mkdir ~/www 
echo "<html><h1>Hello World</h1></html>" > ~/www/test.html
sudo a2dissite default #
sudo a2ensite mywebprojects
sudo service apache2 restart

И что это, теперь вам не нужно идти в /var/www , вы просто добавляете файлы к своему www (или другому имени), и он уже существует:).

    
ответ дан Marcos Roriz Junior 05.01.2011 в 12:02
9

Метод 1:

  • Нажмите ALT + F2 и введите gksudo nautilus, а затем нажмите «Выполнить».

  • Он откроет nautilus с корневыми превалированиями.
  • Перейти к файловой системе var www и теперь вы можете добавлять / копировать / вставлять файлы.

Метод 2:

  • Установите nautilus-gksu
  • После установки типа nautilus -q в вашем терминале обновите меню правого клика.
  • Теперь вы найдете запись «Открыть как администратор» в меню правой кнопки мыши nautilus.
  • Когда вам нужно открыть любые файлы с правами root, вам просто нужно щелкнуть правой кнопкой мыши по этому файлу / папке и выбрать «Открыть как администратор».
  • Он откроет этот файл / папку с правами root.

ответ дан karthick87 03.01.2011 в 20:55
6

Это может быть так же просто, как sudo usermod -a -G developers $username с использованием ACL.

Для начала нужно немного поработать. Это для Ubuntu 10.10 как минимум. Сначала установите файловые системы с опцией acl в / etc / fstab.

sudo vim /etc/fstab

UUID = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / ext4 по умолчанию, acl 0 1

sudo mount -o remount,acl /

Затем создайте группу, к которой пользователь может принадлежать для этой цели.

sudo groupadd developers
sudo usermod -a -G developers $username

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

Конечно, не делайте этого, если у вас есть контент в каталоге / var / www, который вы хотите, но просто для иллюстрации настройки для запуска:

sudo rm -rf /var/www
sudo mkdir -p /var/www/public
sudo chown -R root:developers /var/www/public
sudo chmod 0775 /var/www/public
sudo chmod g+s /var/www/public
sudo setfacl -d -m u::rwx,g::rwx,o::r-x /var/www/public

Затем замените ссылки на «/ var / www» на «/ var / www / public» в файле конфигурации и перезагрузите.

sudo vim /etc/apache2/sites-enabled/000-default
sudo /etc/init.d/apache2 reload

Если мы хотим ограничить удаление и переименование всех, кроме пользователя, создавшего файл:

sudo chmod +t /var/www/public

Таким образом, если мы хотим создать каталоги для фреймворков, которые существуют вне Apache document root или, возможно, создавать каталоги, доступные для записи на сервер, все равно легко.

Каталог журналов для записи в Apache:

sudo mkdir /var/www/logs
sudo chgrp www-data /var/www/logs
sudo chmod 0770 /var/www/logs

Apache-читаемый каталог библиотеки:

sudo mkdir /var/www/lib
sudo chgrp www-data /var/www/logs
sudo chmod 0750 /var/www/logs
    
ответ дан user8290 05.01.2011 в 03:41
0

Самый простой способ сделать это выполнить следующие действия: -

  1. Нажмите Alt + Ctrl + T , и терминал откроется и введите sudo -s и введите логин с вашим паролем.
  2. Теперь вы вошли в систему как root .
  3. Теперь введите nautilus и он откроет домашнюю папку для вас как root. Теперь вы можете легко редактировать файлы и делать все, что хотите.

Надеюсь, это поможет. :)     

ответ дан Mitayshh 08.04.2013 в 15:49
0

/var/www folder принадлежит корню .. вам нужно изменить право собственности на свое собственное имя пользователя для изменения файлов в этой папке. Для этого вы можете попробовать следующие команды.

sudo -i // для перехода в корневую консоль

sudo chown -R <username> <path> // for eg. sudo chown -R scott /var/www/html (scott is the username, -R indicates recrusive)

Теперь владение папкой /var/www/html will будет присвоено пользователю scott . Теперь scott может копировать / перемещать файлы в этой папке.

    
ответ дан Anoop 16.12.2015 в 06:31
-1

Если вы используете версию сервера, попробуйте webmin. Он имеет большой веб-интерфейс и файловый менеджер. Либо это, либо Filezilla

    
ответ дан John Hallquist 24.08.2012 в 02:38