“İstemci” makinelerde, taşınmanın güvenli yolu /tmpyeniden başlatmaktır. Burada, istemci tarafından, /tmpözellikle X sunucuları ve ekran gibi soketleri yerleştiren programları çalıştıran herhangi bir şey kastediyorum .
Yeni /tmpkesinlikle doğru izinlere sahip olmalı (1777), aksi takdirde bir çalışma sistemine sahip olmayı ümit edemezsiniz.
Çünkü /tmphiçbir dosyayı kopyalayamazsınız. Çünkü çoğu zaman bir şeyler yerleştiren programlar /tmpdosyaları açar. Dosyayı kopyalarsanız, bu içerik kopyalanır, ancak programların hala eski dosyaları açıktır. Bunlara bir hata ayıklayıcı ( ptrace) ile erişebilirsiniz , ancak bu yeniden başlatmadan çok daha karmaşık olacaktır ve birçok programda tek yapmanız gereken onları çökmek.
Bilgisayarınız /tmpdoluysa ve yeni bir tanesine canlı olarak geçmek istiyorsanız, orada açık dosyaları olan tüm programları yeniden başlatmanız gerekir. Bu, X ve ekran oturumlarını yeniden başlatmak anlamına geldiğinden, yeniden başlatmaktan daha iyi değil.
Yeni programlar arasında geçiş yapabilmeniz, ancak birleşik bağlama aparatı kullanarak mevcut açık dosyaları yerinde tutmanız gerekir . (Prensip sağlam, ama hiç denemedim, bu yüzden beklenmedik sorunlar olabilir.) İşte bunu Linux'ta yapmanın bir yolu.
/tmpManuel olarak seçilen birkaç büyük dosya dışında mevcut tüm dosyaları saklayın .
- Bir
/tmp.new(mod 1777) oluşturun.
- Açığa
/tmpFarklı yolda: mount --bind / /.root.only. Bu gereklidir çünkü bir sonraki adım gölgelenir /tmp. Bu adımı gerektirmeyen farklı sendika montajı uygulamaları olabilir.
- Birlik montajı yapın
/.root.only/tmpve /tmp.newüzerine monte edin /tmp. Bu şekilde oluşturulan yeni dosyalar /tmpyazılacak /tmp.new, ancak içindeki dosyalar /.root.only/tmpda görülebilir /tmp. Bir olasılık olduğunu
unionfs-sigorta : unionfs-fuse /tmp.new:/.root.only/tmp /tmp.
Union mount köküne gitmek istemiyorsanız (örneğin, platformunuzda bulunmadığı veya çok fazla sorun olduğu için), en azından eski dizini silmeyin. Çalışan programları eski dizini kullanmaya devam etmek ve yeni programlar yenisini kullanmak için taşıyın . (Tabii yeni programlarda Of içinde yuva veya boru aracılığıyla eski programlarla iletişim mümkün olmayacaktır /tmpayarladığınız sürece TMPDIRveya başka nereye bakacağını onlara.)
mv /tmp /tmp.old && mkdir /tmp