Вопрос по nginx и правам файлов

Тема в разделе "Администрирование серверов", создана пользователем lordBlack, 27 сен 2014.

Модераторы: mefish, stooper
  1. lordBlack

    lordBlack

    Регистр.:
    29 ноя 2007
    Сообщения:
    620
    Симпатии:
    246
    Привет о коллективный разум!

    задача такая - приложение на сервере - (не скрипт!!!) создает файлы с разрешением 0600
    любое приложение.
    можно ли изменить дефолтное разрешение для файлов? на 0644

    в самом приложении такой функции нету, оно просто создает файл.
     
  2. efs

    efs SEO оптимизатор дискрипторов одностраничных сайтов

    Moderator
    Регистр.:
    20 ноя 2009
    Сообщения:
    825
    Симпатии:
    475
    навскидку, по крону в директории где эти файлы создаются чмод менять по маске или рекурсивно
     
  3. metsys

    metsys

    Регистр.:
    27 апр 2014
    Сообщения:
    382
    Симпатии:
    386
    посмотри в сторону /etc/login.defs
    конкретнее - на umask
    Код:
    UMASK (число)
               Задаёт начальное значение маски доступа для создаваемых файлов. Если
               не указано, то маска устанавливается в 022.
    
               Команды useradd и newusers используют эту маску для установки прав
               доступа к домашнему каталогу, который они создают.
    
               Также она используется программой login для задания начального
               значения umask пользователя. Заметим, что эта маска может быть
               переопределена из пользовательской строки GECOS (если установлена
               переменная QUOTAS_ENAB) или указанием ограничения с идентификатором
               K, в limits(5).
    другой вариант
    возможно приложение (бинарник?) само пр/оставляет права на создаваемые ею файлы?
     
    Последнее редактирование: 27 сен 2014
  4. fumofuuu

    fumofuuu

    Регистр.:
    24 сен 2011
    Сообщения:
    279
    Симпатии:
    125
    Напиши скриптик для крона, который бы залазил в папку и выдавал права всем файлам или же тем которым нужно.
     
  5. Libert

    Libert

    Регистр.:
    11 сен 2010
    Сообщения:
    158
    Симпатии:
    59
    держи:
    #!/bin/bash
    bad_prem=600
    good_prem=664
    dir="/opt"
    while true ; do unset array ; array=( `stat -c '%a %n' $dir/* | grep $bad_prem | awk '{print$2}'` ) ; if [ ${#array[@]} = 0 ]; then sleep 1 ; else chmod $good_prem ${array[@]} ; fi ; done

    сохрани как скрипт и поставь на автозагрузку, если лень морочиться - пропиши в rc.local, и права не забудь дать на запуск. Если в rc пропишешь, не забывай про знак "&", без него консоль сервера на загрузке затупит, ну и советы, по поводу костылей cron-ом совсем не гуд, тут у тебя сразу файлы нужные будут становиться в необходимые права
     
    Последнее редактирование: 8 окт 2014