Sadece küçük bir veri içeren çok büyük bir dosyayı sıkıştırmak


2

250 GB'lık bir SSD aldım, üzerinde tam bir format çalıştırın, üzerine Win10 yükledim, bir Linux terminalinde dd komutunu kullanarak tüm diski klonladım, SSD'm bazen kırılırsa bir yedekleme yapmak için Yaklaşık boyutta bir görüntü dosyası. Buna benzeyen 250 GB:

| --- some data (approx. 17 GB) --- | ------ no data at all, only nulls ------ |

Ben kullanarak dosyayı sıkıştırmak başladı zip ve beklenen zip bana verecek kadar zeki olacağını .zip yaklaşık. 17 GB boyutunda, ancak saatlerce sıkıştırma ve .zip'im zaten 50 GB’a ulaştığında, işlemi durdurdum ve bunu yapmanın başka olası yolları olup olmadığını sormaya geldim.


2
Bu, sorunuzu tam olarak cevaplamıyor, ancak disk görüntüleri oluşturmak için, clonezilla veya partimage (veya mevcut birçok ticari üründen biri) gibi bazı disk görüntüleme yazılımı kullanmayı düşünün. Anında sıkıştırma yapacaklar ve tüm süreç de daha hızlı olacak.
Charles Burge

Win10 bölümü için, dismbir disk görüntüsünün yakalanmasında tercih edilen (ve Microsoft tarafından desteklenen) yöntem olduğunu unutmayın. Dosya tabanlı, blok tabanlı değil dd, ancak diğer dosya tabanlı sıkıştırma araçlarından farklı olarak, ACL'leri ve diğer tüm NTFS veri yapılarını tam olarak destekliyor ve bu nedenle işletim sisteminin kendisini yedeklemek / geri yüklemek için uygundur. Hem sıkıştırma hem de veri tekilleştirmeyi destekler.
Wes Sayeed,

Acronis True Image ISO, bölme boyutunu tam bir görüntüyle tutmak için güzel bir tanrı işi ve geri yüklemesi çok kolay. Ayrıca, SMB üzerinden geri yükleyebilirsiniz, böylece geri yükleme görüntülerinizi merkezi bir yedekleme konumunda saklayabilir ve ağ üzerinden geri yükleyebilirsiniz.
Damon,

Dd + zip yöntemini seçtim çünkü Linux için işe yaradı (aynı zamanda geri yükleme de sorunsuz geçti) ve mutlaka bit bit kopyası üretmeyen başka bir araç kullanırsam korktum, o zaman emin olamıyorum. Yedeklemenin tamam olup olmadığı kolayca geri yüklenebilir.
tom

Yanıtlar:


2

Sürücünün boş kısmının sadece boş içerdiğinden emin misiniz? Muhtemelen dışarıda bir sürü silinmiş çöp vardır. Dağıtım paketindeki malzeme şüphesiz sıkıştırılmış olarak saklandı. Kurulum için sıkıştırılmış ve daha sonra dosyalar hedeflerine kopyalanmıştır , daha sonra tüm geçici gereksiz dosyalar silinmiştir. Böylece, silinen verileri en azından kurulum boyutu kadar büyük bulabilirim - takas dosyalarının kapladığı alan.

Bunun ötesinde, yüksek oranda sıkıştırılabilir veri söz konusu olduğunda, gerçekten kötü durumlarda arşivi sıkıştırmanın daha da küçüleceğini buldum. Çoğu kompresör, bir sözlük öğesinin maksimum uzunluğuna sahiptir, dosyanızdaki fazlalık bunu fazlasıyla aştığında (eğer sizin düşündüğünüz gibi olsaydı), sıkıştırılmış olan sözlük girişi kodunu çalıştırırsınız. (Ayrıca, çok sayıda küçük dosya içeren bir arşivi sıkıştırmanın da küçük bir yararı gördüğümü unutmayın - dosyalar daha fazla sıkıştırılmadı, ancak temizlik verileri de kaldı.)

Burada yapmanız gereken, bölümünüzü kopyalamak, sonra kopyalanan bölümü olabildiğince küçük olarak küçültmek (takas alanınızı kopyalayıp hazırda bekletme durumunda hazırda bekletme modları), ardından sonucuna ne yaptığınızı yapın.


0

Diskteki boş alanların yalnızca 0 veya tamamen tutarlı veri içerdiğini varsayamazsınız. Bir dosyayı silmek, otomatik olarak işgal ettiği disk alanına 0'lar yazmaz, sadece bu verilere ilişkin işaretçileri geçersiz olarak işaretler ve o alana veri yazmak için başka bir şeyin olmasını bekler. Bu arada, her ne veri varsa, teknik olarak hala orada, ancak elde edilmesi daha zordur.

Ayrıca, yeni bir diskin de sıfırlanacağını varsayamazsınız, verilerin üretim ve test prosedürlerinden tamamen rastgele bir atık olması olabilir.

Bu şekilde oluşturulan bir disk görüntüsüne mutlaka sahip olmanız gerekiyorsa, o zaman önce bu boş alanı tutarlı verilerle doldurmanız gerekir.

Windows'ta sdelete adlı bir aracı indirebilir ve bir diski tam olarak sıfır doldurma seçeneği vardır:sdelete -z

Bu, daha büyük disklerde inanılmaz derecede zaman alacaktır ve diskinizin boyutuna bağlı olarak saatler hatta günler sürebilir.

Daha akıllı seçenek, disk biçimini anlayan araçları kullanmak ve yalnızca diskte "boş" bir boşlukla başlamak ve yok saymak için depolanması gereken verileri depolamaktır.

  • Macrium Reflect
  • Clonezilla
  • Acronis Trueimage

Bunlar birkaçı, ancak daha birçok disk görüntüleme yazılımı var.


SSD'yi tamamen biçimlendirdiğim ve Win kurulumu tamamlandıktan sonra hemen kopyaladığı için boş alanın sadece 0 (veya en azından neredeyse) olduğunu varsaydım. (Kurulum dosyaları Loren'in söylediği gibi biraz daha yer alabilir, bu doğru, bunu düşünmedim.) Kesinlikle bir denemeye karar verdim ve eğer çalışırsa ve fermuarı yeterince küçük yaparsa, en çok tercih edilen çözüm bu olacaktır. Benim tarafımdan, o zaman dd'nin bit-bit özelliğine sadık kalacağım ve ayrıca herhangi bir ek disk görüntüleme yazılımı yüklemem gerekmeyecek. Ama bunun için biraz zamana ihtiyacım var ...
tom

sdelete7 saatimi aldı. Sonra, bütün SSD'yi kullanarak klonladım dd, sonra disk imaj dosyasını sıkıştırdım ve şimdi .zip21 GB. Bunun için özel olarak yapılmış bir görüntüleme aracından daha pratik olduğunu söylemiyorum, ancak bir şekilde gd ile yapılan bir klon daha fazla güvenirim. Sdelete için teşekkürler!
tom

Yeterince adil. Daha kötü olduğunu iddia edemem, çünkü bu tür bir şeyi düzenli olarak yapmak istemiyor olmanız dışında, aslında ssd'yi eskiden yıpratıyor olabilir ve fark ettiğiniz gibi çok fazla zaman alabilir. Zamanın Sonuçta, daha mutlu olduğunuzsa (tam disk görüntüsü olan daha sonra amacına hizmet eden bazı rasgele Linux aracı düzgün Windows disk formatını anlamak olduğunu güvenen potansiyel olarak daha iyi). Doğru araçları bulmana yardım etmekten memnun oldum.
Mokubai
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.