Hem tar 1.26 hem de 1.27.1 ile aşağıdaki davranışı gözlemliyorum:
$ mkdir a b a/diffowner
$ sudo mkdir b/diffowner
$ sudo chmod a+w b/diffowner
$ echo foo > a/diffowner/foo
$ tar -C a -cvf test.tar diffowner
diffowner/
diffowner/foo
$ tar -C b -xvf test.tar diffowner
diffowner/
diffowner/foo
tar: diffowner: Cannot utime: Operation not permitted
tar: diffowner: Cannot change mode to rwxr-xr-x: Operation not permitted
tar: Exiting with failure status due to previous errors
Burada yapmaya çalıştığım şey, katıldığı tüm dizinlerin sahibi olmadığım bir tar dosyasını mevcut bir dizin yapısına ayıklamak, ancak hepsine yazma iznim var. Aslında bir grup arasında paylaşılıyorlar.
Zaman damgalarını umursamıyorum ve izinlerin zaten doğru olması gerektiğine inanıyorum. Bunu normal bir kullanıcı olarak çalıştırıyorum, bu yüzden --preserve-permissions
söylemediğim sürece denememeliydim, ki ben yapmadım. Beni gerçekten endişelendiren çıkış durumudur: Bunu bir senaryoda kullanmak niyetindeyim ve gerçek çıkarımın işe yarayıp yaramadığını bilmek istiyorum.
Söyler katran için bir seçenek var mı yok , set dizin izinleri ne hemen ne de gecikmeli? Bunu başaramazsanız, başka hangi çözümleri önerirsiniz. Şu anda geçici bir dizine çıkartmayı rsync
ve mevcut ağaca bir şeyler taşımak için kullanmayı düşünüyorum . Ama belki de daha az hackish bir yaklaşım biliyorsunuzdur.