Ayrıcalıksız bir kullanıcı olarak bir dosya oluşturur ve izinler modunu olarak değiştirirsem 400bu kullanıcı tarafından salt okunur, doğru olarak görünür:
$ touch somefile
$ chmod 400 somefile
$ [ -w somefile ] && echo rw || echo ro
ro
Herşey iyi.
Ama sonra kök gelir:
# [ -w somefile ] && echo rw || echo ro
rw
Ne halt? Elbette, root salt okunur dosyalara yazabilir, ancak bir alışkanlık yapmamalıdır: En İyi Uygulama, yazma izni bitini test edebilmem gerektiğini dikte eder ve eğer değilse, o zaman ayarlanır bir sebepten ötürü.
Sanırım neden bu olduğunu anlamak istiyorum ve yazma biti ayarlanmamış bir dosyayı test ederken nasıl yanlış bir dönüş kodu alabilirim ?
/etc/dhcp/dhcpd.confkökün sahip olduğu manipülasyon içindir . Satıcı tarafından sağlanan kullanıyorum dhcpd. Tamamen felaket, ha? Dosya RCS kontrol edilir, ben kullanımını otomatik hale ediyorum rcsdiff, cive cobiz var çünkü operatörlere ihtiyaç için ... çalışmalarını sağlayacaktır. İzin biti denetimi ( -wayrıntılı olarak açıklandığı gibi test(1)), ci -ubir dosyayı salt okunur bırakan temelde çalışan ilk hata satırı olacaktı . Ben oradan ayrılıp doğrudan gidip rcsdiff -qkontrol ediyorum $?. Çok dhcpdmu saçma ? Sahibi olacaktı dhcpd.
bashve testbu ne inanmak götürdü [ -wiçindir.
4.1.2(1)-release) hem de RHEL7 ( ) kullanıyorum4.2.46(2)-release.