Полномочия установки Unix на всей папке

Я нашел, что Launchy очень полезный инструмент для Windows. Это позволяет Вам запустить много программ, которые обычно запускались бы путем нажатия на значки путем ввода нескольких нажатий клавиш. Существует также версия для Linux. Это может быть найдено по www.launchy.net, и свободно и с открытым исходным кодом.

Например, для открытия окна Explorer отовсюду введите Alt-space (горячая клавиша Launchy по умолчанию) сопровождаемый "c:\", сопровождаемым, Входят. Можно запустить любую программу, для которой у Вас есть ярлык Windows путем ввода нескольких символов с названия ярлыка. Например: Alt-space "co" Входит, поднимает Панель управления. Можно также сделать поиски Google, открыть URL в браузере и много других вещей, не беря пальцы с клавиатуры.

2
задан 11 August 2009 в 10:37
7 ответов

Я рекомендовал бы команду находки для установки полномочий:

Для создания всех каталогов доступными для поиска и читаемыми всеми всеми (см. эту ссылку для полномочий каталога Unix полномочия имеют различные значения из файлов):

sudo bash -c "find /var/www/root/images -type d -print0 | xargs -0 chmod oga+rx"

Для файлов:

sudo bash -c "find /var/www/root/images -type f -print0 | xargs -0 chmod oga+r"

И никто не удостоверяться члены группы все ни во что не могут записать:

sudo bash -c "find /var/www/root/images -type f -print0 | xargs -0 chmod a-w"

Причина я установил полномочия владельца, группы, и все - то, потому что, даже если все прочитало разрешение, если владелец не делает, владелец не сможет считать файл.

Выполнитесь разрешение 'x', обычно рецензируется, чтобы как 'искать' полномочия при использовании с каталогами. Вы также должны будете искать разрешение на всех каталогах до корня из вышеупомянутой ссылки о полномочиях каталога:

Поисковое разрешение требуется во многих общих ситуациях. Считайте команду "кошкой/home/user/foo". Эта команда ясно требует разрешения чтения для нечто файла. Но если у Вас нет поискового разрешения на/, / домой, и/home/user каталоги, кошка не может определить местоположение inode нечто и таким образом не может считать его! Вы должны искать разрешение на каждом каталоге предка для доступа к inode любого файла (или каталог), и Вы не можете считать файл, если Вы не можете добраться до его inode.

Таким образом в моем примере, Вы должны будете искать (+x) разрешение на / var,/var/www,/var/www/root, и т.д. также.


Не используйте a+rX, извините, что поместили его в сообщение, но я должен кодировать, отмечает не, знают, как использовать их в комментарии. Следующее не только производит каталоги, оно может произвести файлы также, если пользователь уже имеет, выполняют разрешение.

 chmod -R a+rX images

Пример:

[kbrandt@kbrandt-opadmin: ~/scrap/X] touch XnotOnlyDirectories     
[kbrandt@kbrandt-opadmin: ~/scrap/X] ls -l                         
total 0
-rw-rw-r-- 1 kbrandt kbrandt 0 2009-08-11 06:29 XnotOnlyDirectories
[kbrandt@kbrandt-opadmin: ~/scrap/X] chmod u+x XnotOnlyDirectories
[kbrandt@kbrandt-opadmin: ~/scrap/X] ls -l                         
total 0
-rwxrw-r-- 1 kbrandt kbrandt 0 2009-08-11 06:29 XnotOnlyDirectories
[kbrandt@kbrandt-opadmin: ~/scrap/X] cd ..                         
[kbrandt@kbrandt-opadmin: ~/scrap] chmod -R a+rX X                 
[kbrandt@kbrandt-opadmin: ~/scrap] ls -l X                         
total 0
-rwxrwxr-x 1 kbrandt kbrandt 0 2009-08-11 06:29 XnotOnlyDirectories

Из chmod страницы справочника:

выполняйтесь/ищите, только если файл является каталогом или уже имеет, выполняют разрешение для некоторого пользователя (X)


Когда дело доходит до Apache:
Нет никакого категорического правильного способа, которым я знаю, можно использовать полномочия, я установил и выполнил Apache как, пользователь никто, или Вы можете пользователь группа или пользователь для апача, такого как 'апач' или 'www-данные'. См. эту ссылку. Если идут, никто не направляет, удостоверьтесь, что ни у кого нет правильного идентификатора пользователя:

[kbrandt@kbrandt-opadmin: ~/scrap] id nobody                       
uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
4
ответ дан 3 December 2019 в 08:51
  • 1
    +1 Хорошее сообщение. У Вас есть слишком много свободного времени хотя ;-) –  wzzrd 11 August 2009 в 15:55
  • 2
    wzzrd: Ya, вещи являются просто немного медленными за лето.:-) Но я думаю, что становлюсь так же сделанным на работе, если не больше, потому что я могу ' outsource' вопросы, которые являются немного вне моих экспертных знаний, но я все еще должен выяснить. –  Kyle Brandt 11 August 2009 в 16:02

Используйте следующую команду

 chmod -R a+rX images

- R: делает команду выполненной рекурсивно, пересекая все каталоги под ним.

a+rX: делает файлы читаемыми всеми и каталогами "enterable" всеми. Капитал X дает выполнить разрешение только каталогам, не регулярным файлам. (редактирование: если файлы уже не имеют, выполняют разрешение для некоторого пользователя),

изображения: название папки, можно дать полный путь как /home/user/public_html/images

По тому, как Вы не можете chown файл, если Вы не корень (редактирование: или показанный двоичный файл suid корень)

2
ответ дан 3 December 2019 в 08:51
  • 1
    Это зависит от системы, если suid укусил, установлен на показанном it' s возможный использовать его в качестве не корень. I' ve видели такие системы в прошлом, но я рассматриваю это как действительно дурную привычку... –  olefebvre 11 August 2009 в 12:24
  • 2
    +1 Полностью забыл о капитале X! –  wzzrd 11 August 2009 в 13:18
  • 3
    - 1, который не верен приблизительно X, если пользователь уже имеет, выполняют полномочия на файле, все получат их также, если Вы будете использовать X, см. мое сообщение. Я, конечно, удалю-1, если я буду неправ относительно этого. –  Kyle Brandt 11 August 2009 в 14:52
  • 4
    @Kyle Brandt: Вы правы относительно капитала X. Но поскольку исходный плакат спрашивает о " image" каталоги, которые будут иметь минимальный эффект. –  hayalci 11 August 2009 в 16:09

Не забывайте к показанному файлы корректному владельцу веб-сайта учетная запись/группа также. при копировании его с помощью корневой учетной записи, например, веб-сервер, скорее всего, не будет иметь доступа к файлам. Установите разрешение файла изображения на 644 использования chmod.

Используйте-R te, рекурсивно вызывают подкаталоги.

1
ответ дан 3 December 2019 в 08:51
  • 1
    Вы не можете показанный файл, если Вы не корень. И на общем хостинг-аккаунте, Вы не будете корнем. –  hayalci 11 August 2009 в 12:09
  • 2
    Зависит от suid бита того, чтобы быть установленным на показанном, на одном vhost я использовал его, был possile к показанному для не корень. Все же it' s дверь открываются к взрыву квоты... –  olefebvre 11 August 2009 в 12:26

используйте команду chmod с-R параметром, чтобы сделать действие рекурсивно. человек chmod команда покажет Вам справку.

1
ответ дан 3 December 2019 в 08:51

(Я попытаюсь объяснить ДА ВЕДЬ не просто как),

У Вас есть две проблемы для контакта с: владение и полномочия.

Существует два вида владения: пользователь и группа. Хорошее веб-администрирование оставляет веб-сервер принадлежавшим "никому" (или эквивалентный) и файлы, которые это отображает принадлежавший веб-администратору. Владение группы и быть веб-группой администрирования, если больше чем один человек или просто группа по умолчанию веб-администраторского пользователя.

Существует три вида полномочий: пользователь, группа и мир. Каждый RWX в ls-l команда дает чтение, запишите и выполните полномочия пользователя сначала, затем группа, затем мир.

Если Вы подаете изображения всем, и любой, устанавливая мировой доступ для чтения к Вашему каталогу изображений и самим изображениям решит Вашу проблему, не беспокоясь владением. Если изображения ограничиваются, вошел в систему участники только, мир r/w/x должен быть выключен (появитесь как---в ls-l),

Как минимум у веб-администраторского пользователя должен быть доступ для чтения-записи к изображениям или rwx. (Существуют исключения для вниз заблокированных, управляемых веб-сайтов, но у меня есть чувство дело обстоит не так здесь).

Когда Вы сделаны, Ваши полномочия владения должны быть похожими на это:

chmod 774 *.jpg
rwxrwxr--   webadmin  webgroup   # Allow web admin and group to modify, everyone to view


chmod 744 *.jpg
rwxr--r--   webadmin  webgroup   # Allow only web admin to modify, everyone to view

chmod 740 *.jpg
rwxr-----   webadmin  webgroup   # Allow only web admin to modify, only him and webgroup to view, this means web server must be in webgroup.

chmod 740 *.jpg
chgrp nobody *.jpg
rwxr-----   webadmin nobody      # If apache user is nobody/nobody, this is better
1
ответ дан 3 December 2019 в 08:51

Вы не упоминаете, добавляете ли Вы регулярно файлы к этой папке.

Я нашел, что, если папка регулярно добавляется к затем установке группы, липкий бит к папке исправляет вещи без взглядов.

Например, установка владения группы как полномочия чтения группы и группы веб-сервера / липкие полномочия на папке означает, что новые файлы установлены на ту группу и читаемые. Если существует команда, управляющая папкой затем, запись группы также помогает.

Не всегда работает когда движущиеся файлы в папку все же.

0
ответ дан 3 December 2019 в 08:51

Вы могли бы хотеть проверить показанный вместо chmod. Chown == Владение Изменения, которое должно использоваться и файлы, данные полномочия пользователя, который служит сервису. httpd обычно работает под www-данными или httpd пользователем и группой на большинстве современных дистрибутивов Linux.

0
ответ дан 3 December 2019 в 08:51

Теги

Похожие вопросы