/ tmp içine kaydetmek gerçekten tasarruf etmiyor mu?


10

Firefox'tan bir posta ekini açın (daha önce kaydetmeden); bu bir Libre Office belgesidir, düzenler ve ardından kaydet (farklı kaydetme) seçeneğine basar ve hem metin düzenleyiciyi hem de tarayıcıyı kapatırsınız. Ardından, varsayılan olarak içinde depolandığı için belge kaybolur /tmp. En azından Ubuntu 12.04'ümde durum böyle.

Sizce bu doğru davranış mı? Program en azından size gerçekten hiçbir şey kaydetmediğinizi hatırlatmamalı mı? veya dosyayı kurtarmanın bir yolu var mı (oturumdan çıktıktan ve / veya yeniden başlatıldıktan sonra da)?

Yanıtlar:


10

Bununla oynarken, Firefox'ta harici bir programla bir belge açmayı seçtiğinizde, Firefox'un /tmpprogramı indirdiği dosyayı indirip ardından indirilen dosya ile seçilen programı bir argüman olarak çalıştırdığı (okuma ') seçilen program ').

Daha sonra dosyayı (seçmeden Save Asveya eşdeğeri olmadan ) programın içinden kaydederseniz, bu dosyayı içinde kullanır /tmp.

Firefox kapatıldığında bu geçici dosyaları temizler. Böylece, LibreOffice'i kapatırsanız ancak Firefox'u kapatmazsanız dosyayı kurtarabilirsiniz. Ancak, Firefox kapatılır kapanmaz dosya silinecektir.

Çoğu (tümü?) Dağıtımlarda, /tmpklasör yeniden başlatıldığında da boşaltılır (içindeki dosyalar /var/tmpdaha uzun süre devam etmelidir).

Bu davranışın yalnızca bir dosyayı harici bir programla 'açmak' için olduğunu unutmayın. Dosya dahili olarak bir eklenti veya başka bir şekilde açılırsa /tmp, kullanılmaz (dosya web sayfalarının kendileriyle birlikte başka bir yerde önbelleğe alınmış gibi görünür).

Güncelleme

Referans için (gerekmedikçe bunu yapmanızı önermiyorum), /tmpfirefox browser.helperApps.deleteTempFileOnExitseçeneği kullanarak kapanırken dosyaların silinmesini devre dışı bırakabilirsiniz . Bu about:configsayfa aracılığıyla ayarlanabilir (bunu adres çubuğuna yazıp enter tuşuna basmanız yeterlidir). Varsa ve ise false, sağ tıklayın ve geçiş yapmayı seçin. Aksi takdirde, Sağ Tıklama-> Yeni-> Boole'yi yaparak ekleyin , ardından seçeneğin adını girin ve yanlış'ı seçin.

En /tmpson Debian tabanlı sistemlerde bir sonraki yeniden başlatmayı geçen dosyaları saklamak için , önce bakın /etc/default/tmpfsve RAMTMP=yessatır olmadığından emin olun . Yorumlanırsa ( #başlangıçta), bu iyi (eğer ayarlanmışsa, o /tmpzaman tmpfsbellekteki bir dosya sisteminde olurdu ve diskte depolanmaz). Sonra TMPTIMEsatırı ekleyin veya değiştirin /etc/default/rcS. /tmpDosyaları süresiz olarak saklamak için şunları yapabilirsiniz:

TMPTIME=infinite

Veya infinitebu sayıda gün boyunca tutmak yerine pozitif bir sayı kullanabilirsiniz , zamanları dolduğunda bir sonraki yeniden başlatmada silinecektir. Açıkçası bu satır yorumlanırsa, bunu uncomment.


/tmpYeniden başlatma sırasında temizlenen gerçeğin , dosyalarının RAM'de saklandığı (veya takas /tmpedildiği) bir a olarak monte edildiğinden tmpfs, böylece bağlantısını kestikten sonra içeriğini kaybetmesinden kaynaklandığını unutmayın.
Mart'ta Darkhogg

1
@Darkhogg, durum böyle değil. /tmpdosyalar genellikle temizlenir. Debian tabanlı sistemlerde bu ayarların nasıl değiştirilebileceğini güncelledim.
Graeme

Bunu bilmiyordum! Bu yoruma + 1'leyin.
Mart'ta Darkhogg


1
Bir dosya Firefox'ta bir eklenti aracılığıyla açıldığında, eklenti dosyanın nasıl teslim edilmesini istediğini belirleyebilir: diskte veya doğrudan belleğe. Çoğu eklenti hafızayı seçer.
Mark

3

Firefox'ta dosyaları açmak için bir önbellek vardır. Firefox'u her kapatışınızda bu önbellek temizlenir. Bu dosyayı LO ile açar ve Firefox'u kapatırsanız dosyanın kaybolacağını fark edeceksiniz. Bu, tüm Firefox'ta bağımsız olarak depolandıkları /tmpveya depolanmadığı için geçerlidir .


2

Sizce bu doğru davranış mı?

Bunu söylemediğimi söylemeliyim. Ama sonra biraz önyargılıyım, bu tuhaflık yüzünden neredeyse altı saat çalışmayı kaybettim.

Kullanıcının, onları uyarmadan potansiyel olarak felaket bir şey yapmasına izin veren herhangi bir GUI'nin, arkasındaki tasarım kararı ne kadar "mantıklı" olursa olsun, kusurlu olduğunu düşünüyorum. Bu özellikle kullanıcılar benzer programlarda (Chrome gibi) kötü bir etkisi olmadan tam olarak aynı şeyi yapabildiklerinde.

Program en azından size gerçekten hiçbir şey kaydetmediğinizi hatırlatmamalı mı?

Hmmm ... belki "Bu mesajı bir daha gösterme" onay kutusunu içeren bir açılır pencere yararlı olabilir. Daha da kullanışlı olan, LibreOffice ve benzeri programlara küçük bir düzeltme olacaktır. Kaydettikleri dosya / tmp veya herhangi bir yere kaydediliyorsa kullanıcıyı uyarır. Yani, "kaydet" e basarsanız, dosyanın bir yere kaydedilmesini beklersiniz değil mi?

veya dosyayı kurtarmanın bir yolu var mı (oturumdan çıktıktan ve / veya yeniden başlatıldıktan sonra da)?

Evet, şanslıysanız. Bilgisayarımı bir usb linux kurulumundan başlattım ve extundelete kullanarak dosyayı kurtarmayı başardım.


2

Açıklamama izin ver. İletişim kutusunda "Şuraya indir" yerine "Birlikte aç" ı seçtiğinizde, dosya yine de indirilir; bu noktada Firefox indirilen dosyayı uygulama ile açar. Ancak, dosyayı saklamak istemediğiniz varsayımı, bu nedenle firefox çıktığında bu dosya silinir. Eğer saklamak istemiş olsaydınız, "İndir" seçilmeli ya da uygulamanızda "Farklı kaydet" seçilmeli ya da dosyayı / var / tmp (taşınması gereken dosya) dışında taşımalısınız; silme yalnızca orijinal konumundaki dosya için geçerlidir.

Diğer uygulama dosyayı açık tutsa bile (teknik anlamda) dosyanın silindiğini unutmayın. Unix benzeri sistemlerde bu bir sorun oluşturmaz: dizin girişi kaybolurken dosya kendiliğinden kalır ve uygulama kapanana kadar silinmez [bu noktada bir çökme diski tutarsız bir durumda bırakabilir; fsck bu durumu "bağlantısız bir inode" olarak bildirir]


-1

Sizce bu doğru davranış mı?

Tabii ki doğru davranış bu. Eğer seçmedim zaman böyle oluyor kaydetmek dosyayı ancak bunun yerine seçti açmak onu. Benim düşünceme göre, açmak yerine her şeyi kaydetmek genellikle daha iyidir.

Program en azından size gerçekten hiçbir şey kaydetmediğinizi hatırlatmamalı mı?

Neden? Kaydetmek istiyorsanız, neden dosyayı indirmeyi seçmediniz?

veya dosyayı kurtarmanın bir yolu var mı (oturumdan çıktıktan ve / veya yeniden başlatıldıktan sonra da)?

Hayır! Hala tmp'deyken kopyalamanız gerekir.

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.