Okuyucuların yararı için:
rm -rf
Böyle bir durumda dikkat ! Ağ paylaşımı olması durumunda başka bir yerde problem yaratabilir! Uyarıldın!
Neredeyse tüm durumlarda, directory
boş görünüyorsa, kullanın rmdir directory
veya kullanın sudo rmdir directory
. Kullanmayın rm
(veya del
Windows altında). Bu işe yaramazsa, bu isteği engelleyen şeyi bulmanız, düzeltmeniz ve yeniden denemeniz gerekir rmdir
.
Lütfen OS-X'i tanımadığımı unutmayın, ancak Unix / BSD davranışına çok benzeyen şeyler olduğunu düşünüyorum.
Söz konusu dizinin sadece bir bağlantı noktası (enkf'lerden) olması veya salt okunan veya bazı uygunsuz durumlarda (dizinin kaldırılmasını engelleyen) sıkışmış bir bağlantı noktası üzerinde bulunması muhtemeldir. Şimdi dizinin kaldırılmasını zorlarsanız, çok kötü şeyler olabilir.
İyi durumda, dizin gerçekten boştu, bu yüzden onu kaldırmak (montajı yok etmek vb.) Başka zarar vermedi. Kötü durumda boş değildi, sadece ortaya çıktı, yani belki de öldürmek istemediğiniz bir şeyi çöpe attınız. Tüm bunlar, hangi sürücülerin kullanımda olduğu, vb. Takma türüne bağlıdır.
Eğer işler makul derecede iyi uygulanırsa, normalde kötü bir şey olmamalıdır. Ancak bu normal bir durum değildir. İşler çoktan garip bir durumda, bu da demek oluyor ki: Bir şeyler yanlış, bu yüzden daha fazla karıştırmaya çalışmayın! Bir şey çatlamışsa, yanlış bir dokunuş kırılabilir.
Örneğin, bir ağ paylaşımında bir yarış koşuluna rm -rf
çarptıysanız, başka bir kişi tarafından paylaşıma kopyalanan verileri kaldırmış olabilir .
Ancak rmdir
, gerçekten boş dizinleri silmenin yanı sıra, asla zarar vermeyeceği de garanti edilir. Bu NFS için de geçerlidir, çünkü NFS sadece mkdir
ve rmdir
başka hiçbir yerde gerçekten atomik davranışları garanti etmez .
Bilginize:
Aracı kullanarak bir bağlama noktası tespit edebilirsiniz mountpoint directory
. Alternatif olarak, çıktısının içine bakın mount
ve oradaki bağlarınızı tespit etmeye çalışın. Ancak dikkat, en azından Linux altında bu yalan olabilir. Kullanımı mountpoint
daha güvenilir ama daha az elverişli yarar.
Bu durumda mountpoint'i buldunuz, bağlantısını kaldırabilir ve sonra dizini kaldırabilirsiniz, bu şu sıradır:
umount directory
rmdir directory
Gerekirse sudo
, her zamanki gibi kullanın .
Notlar:
Ağ paylaşımları rmdir
erişim haklarından dolayı reddedebilir (ve başka bir şey).
Hatalı dosya sistemleri rmdir
, başarısız stratejisine bağlı olarak reddedebilir . Belki de bu durumda makul bir mesaj göreceksiniz, belki de değil.
Linux altında (ve muhtemelen herhangi bir modern işletim sistemi), farklı araçlar kullanarak erişimi kısıtlayabilirsiniz (bir şeyi salt okunur hale getirmek, SeLinux'taki gibi yetenekler vb.). Bu da demek oluyor ki, bunun bir bağlama noktası olduğunu görmüyorsunuz ve yanlış bir şey görmüyorsunuz, ancak işe yaramıyor. Bu durumda başka bir neden aramanız gerekir ve bu işletim sistemine çok derinde gömülü olabilir. Makul bir hata mesajı görürseniz bu araca bağlıdır. Ayrıca dmesg
Linux altında olduğu gibi syslog / kernel-log da bir göz atın (üzgünüm, OS-X eşdeğeri bilmiyorum).
Zorunlu dosya kilitlemenin de kaynak olabileceğini unutmayın. Bu Windows'ta normal olsa da, genellikle Unix'in normal durumu değildir ve dizinleri hiç duymadım. Zorunlu dosya kilitleri POSIX kapsamındadır, ancak isteğe bağlıdır.
Bu tür durumlarda oldukça sık olarak, söz konusu dizin düşündüğünüzden farklı bir dosya sisteminde bulunur. Hangisini komut ile öğrenebilirsiniz df directory
(bunun OS-X altında aynı olduğunu düşünüyorum).
Dizinde stat
veya benzeri araçlarla daha derinlemesine inceleyebilirsiniz statfs
. Bununla birlikte, bunlar normal insanlar için biraz düşük seviyededir ve bu tür araçlar genellikle normal kullanıcılardan iyi gizlenir.
Dizinler, komik isimler içeren dosyalara sahip olabilir. Hemen çıkış terminali silen bir dosya gibi, bu yüzden orada yok gibi görünüyor. Gibi bir şey deneyin ls -al | less
ya da MidnightCommander gibi bir şey kullanın mc
.
Böcekler, yabancılar, uzaylılar veya belki de periler gibi daha egzotik şeyler dahil olmak üzere başka olasılıkların tren yükü vardır. Ama genellikle oraya bakmaya başlamak akıllıca değildir, bunun yerine ilk önce yanınızdaki hatayı bulmaya çalışın, çünkü "errare humanum est".
rmdir
rağmen - ancak çoğu zaman, birinin bir cihaza bağlayamamasının nedeni) anlamına da gelebilir .