Adoção de arquivos copiados no diretório com as mesmas permissões que o diretório

0

Estou usando o LAMP Apache versão 2.2.15 no CentOS 6.6.

Eu criei um diretório / var / www / dropbox que tem permissões rwxrwsr-x. Eu fiz do grupo www-OtagoHarbour o proprietário onde o www-OtagoHarbour foi criado usando

sudo groupadd www-OtagoHarbour
sudo usermod -G www-OtagoHarbour apache
sudo usermod -G www-OtagoHarbour OtagoHarbour

Eu dei a propriedade do diretório do apache usando

sudo chown apache /var/www/dropbox

e o acesso de grupo usando

sudo chgrp -R www-OtagoHarbour /var/www/dropbox
sudo chgrp -R www-OtagoHarbour /var/www
sudo chmod -R g+r /var/www/dropbox
sudo chmod -R g+r /var/www

Eu carrego arquivos para essa pasta usando a seguinte chamada html.

<form action="http://whatever.com/uploadFiles.php" method="post" enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="file" name="file[]" multiple="multiple"/></br>
    <input type="submit" name="submit[]" value="submit" />
<input type="hidden" id="LoggedIn" name="LoggedIn" value="<?php echo $_SESSION['LoggedIn'] ?>">
<input type="hidden" id="setName" name="setName" value="<?php echo $setName ?>">
<input type="hidden" id="UserName" name="UserName" value="<?php echo $_SESSION['UserName'] ?>">
</form>

uploadFiles.php copia os arquivos enviados para / var / www / dropbox. Infelizmente, as permissões dos arquivos enviados são -rw-r - r-- enquanto eu gostaria que elas fossem -rw-rw-r--. Eu tentei

sudo find /var/www/dropbox -type d -exec chmod 2775 {} \;

e reiniciei o computador, mas os arquivos enviados ainda têm permissão -rw-r - r--. Eu sei que posso mudar as permissões usando

sudo chmod g+w fileName

mas gostaria que isso fosse feito automaticamente, pois tenho código que processa os arquivos e os envia para outro lugar.

    
por OtagoHarbour 28.01.2015 / 02:07

1 resposta

0

Descobri que eu poderia definir as permissões padrão, para novos arquivos criados na pasta para -rw-rw ----. usando

setfacl -dm u::rw,g::rw,o::--- /var/www/dropbox

Eu então crio um arquivo "placeholder" em / var / www / dropbox usando

echo "junk" >/var/www/dropbox/file.name

Se eu copiar um arquivo, file.name, em / var / www / dropbox, ele assumirá as permissões do arquivo sobrescrito.

    
por 31.01.2015 / 13:26