Linux'ta tembel bir sayı veya yoğun bir diski kaldırma


19

'Tembel' seçeneğini kullanarak başka bir meşgul olan bir diski 'takmanın' mümkün olduğunu okudum. Manpage'in bu konuda söyleyecekleri var:

umount - dosya sistemlerinin bağlantısını kes

-Elzy tembel. Dosya sistemini şimdi dosya sistemi sıradüzeninden ayırın ve artık meşgul olmadığında dosya sistemine yapılan tüm başvuruları temizleyin. Bu seçenek "meşgul" bir dosya sisteminin çıkarılmasını sağlar. (Çekirdek 2.4.11 veya daha yenisini gerektirir.)

Ama bunun anlamı ne olurdu? Bölümleri neden tamamen çıkardığımızı düşündüm:

  1. Donanımı kaldırmak için
  2. Takılıyken yapılması güvenli olmayan dosya sistemi üzerinde işlem yapmak

Her iki durumda da, 'tembel' tüm unmount'lar IMHO'ya hizmet eder, diskin gerçekten sökülüp çıkarılmadığını belirlemeyi zorlaştırır ve bu işlemlere gerçekten devam edebilirsiniz. Tek başvurusu, umount -ldeneyimsiz kullanıcıların, sahip olmadıkları bir şeyi başarmış gibi hissetmelerini sağlamaktır.

Neden tembel bir unmount kullanıyorsun?

Yanıtlar:


10

Çünkü tembelsin - disk işlemleri bittikten sonra bağlantısını kesmek istiyorsun.

İşte makul bir senaryo:

rsyncYedeklerini yapmak ve çekip gitmek için kullanıyorsun . umount -lSürücüyü çıkarabilirsiniz ve bir kez kopyalama ve senkronizasyon işlemi bittikten sonra çıkarır, böylece bir moladan sonra geri döndüğünüzde (yedeklemeden daha uzun süre alacağını bilirsiniz), yalnızca klavyeyle yeniden dolaşmak yerine sürücüyü fişten çekebilirsiniz. .


Eğer tembel olsaydınız, tartışmayı kullanmak zorunda kalmayarak kesinlikle DAHA FAZLA zamandan tasarruf etmek isterdiniz, çünkü bir kez geri döndüğünüzde, yedekleme bittiğinde derhal çıkaracağınızı biliyordunuz? Veya yedekleme sonrası işlemlerin sürücünün bir parçasını çıkarmasını mı istiyorsunuz?
deed02392

Bunu şu şekilde düşünün: disk artık meşgul değil - şimdi çıkartın. Artık monte edilmediğinden başka hiçbir şey yazamaz. Hata yapmak yerine "yapabiliyorken yap".
Broam


5

Bu aslında idari görevlerde takip görevlerini yerine getirmek için daha fazla zaman kazanmak için uygulanmaktadır.

Bundan bağımsız olarak başka işler boru hattında bekliyorsa, tembel-çözme yapabilir ve toplu işteki diğer kişilerle devam edebilirsiniz.

Örnek : Görev 1 ve Görev 2, arka arkaya zamanlanmış iki idari görevdir.

Görev 1 Günlük yedekleme

Bu, bir proje bölümünden, yedek parçaya, yani / mnt / backupProj adlı çok sayıda dosyayı kopyalar; bu, anında monte edilecek ve bu görev sonunda sökülecek. Kopyalama çok zaman alıyor.

Görev 2 SQL görünümlerini güncelleme

Özel bir sunucuda bir dizi veritabanı görünümü güncellemesi gerçekleştirir.

Görev 2, Görev 1'den tamamen bağımsızdır; bu nedenle, yedekleme görevinin tamamlanmasını beklemeden tembel / mont / mnt / backupProj komutunu kaldırabiliriz.


1
Bir örnek verebilir misiniz? Hangi durumda 'zaman kazanır / kazanır'?
de02392

4

Açıkçası çeşitli nedenlerle (örneğin nfs server down gibi) takıldığı durumlarda da mount tarafından monte edilen dizinin orjinal içeriğini görmem gerektiğinde tembel umount kullanıyorum. Her iki durumda da montaj meşguldür. Sanırım başka kenar davaları var ama bu 2 seçeneği kullanmamın en yaygın nedenlerinden.


--forceNFS durum için tavsiye eder.
Tom Hale

3

Şununla çalışırken görebileceğiniz gibi bir bağlama montajı düşünün chroot:

mount --rbind /proc /mnt/proc
# do stuff
umount /mnt/proc

Sisteminizde sürekli olarak sorgulayan bir daemon varsa (size /procbakıyorum ksysguardd), o zaman yapamazsınız umount /mnt/proc. Tembel umountbu durumda size izin verecektir .


Neden --forceonun yerine burada kullanmıyorsun ?
Tom Hale

2

USB sürücüler bazen donanım arızası nedeniyle durur. Sürücüyü fiziksel olarak yeniden bağlasanız bile, başka bir aygıt adı alırsınız. Eski cihaz adı normal olarak kaldırılamaz. tutarı -l ölü girişi ortadan kaybolmaya zorladı.


1

Bir yazılımın bir günlük yazma, örneğin bir web sunucusu yazma hacmini gerçekten değiştirmeniz gerektiğini, ancak çok fazla trafiğe sahip olduğunu ve işlem için kapatılamadığını ya da kayıt yolunun değiştirilemediğini söyleyin.

Tembel bağlantıyı kaldırırken, yazılım çalışırken birimin güvenliğini kaldırabilir, aynı bağlantı noktasına başka bir birim monte edebilir ve dosyaları yeniden açmak için yazılıma komut verebilirsiniz.

İdeal olarak, yazılımı kapatmanız gerekmediğinden, hiçbir istek kaybı olmadı ve temelde hiçbir günlük kaydı da silinmedi, çünkü dosyalar yeniden açılıncaya kadar eski bağda yazılıyorlardı (yazılımın yeniden açılmasının ne kadar iyi olduğunu dosyalar yazılıma bağlıdır).

Manpage'den daha başka bir deyişle, birim çıkarılmış tembel olduğunda açık dosyalar varsa, gerçekte takılı kalır ancak sadece dosya sistemi üzerinden erişilemez ve yalnızca son açık dosya kapatıldığında gerçekten sökülemez anlamına gelir.


1
Teşekkürler bu kullanışlı bir uygulama gibi geliyor. Will lsofeski bağlantı noktasının açık dosyaları göstermek? Ayrıca acaba eski dosyaları ve yeni olanı nasıl açıklayabilirim?
sened02392

0

Hassas verilerimin bir bölümünü şifrelemek için encfs kullanıyorum.

Disk takıldığında, nautilus önizlemeleri oluşturur (sanırım emin değilim) ve dosyaları kilitleyin. Çıkarmak istediğimde, başka bir işlem tarafından kilitlendiğini söylüyor.

Çıkarmadan tembel olarak, klasör hiyerarşimden kayboluyor ve gizleniyor. Ve arka plan işlemi sona erdiğinde, başarıyla kaldırıldı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.