/ / Zmeňte vlastníka všetkého v adresári - rubín, kuchár, kuchársky recept, kuchársky sólo, kuchárska kniha

Zmeniť vlastníka všetkého v adresári - rubín, kuchár, kuchár-recept, kuchár-sólo, kuchárka

Používam nasledujúci prostriedok šéfkuchára na zmenu vlastníctva všetkých súborov v priečinku /etc/temp.d adresár.

[ /etc/temp.d ].each do |path|
directory path do
recursive true
owner user1
group user1
mode "0750"
action :create
end
end

Vidím však, že mení vlastníctvo iba temp.d adresár do user1 Vlastníctvo súborov a adresárov vo vnútri temp.d sa nemenia.

odpovede:

0 pre odpoveď č. 1

Áno, recursive nefunguje, ako by ste si mohli myslieť. Aplikuje povolenia iba na listový adresár.

toto je zdokumentované v docs, ALE rozumiem tvojmu zmätku ... bol som tam sám ...

rekurzívne

Druhy rubínov: TrueClass, FalseClass

Vytvorte alebo odstráňte nadradené adresáre rekurzívne. Pre majiteľa, skupinu, a vlastnosti režimu, hodnota tohto atribútu sa vzťahuje iba na listový adresár. Predvolená hodnota: false.

Budete musieť pridať každý (pod) adresár do poľa, cez ktoré prechádzate, aby ste sa uistili, že sa povolenia používajú správne.