Bir ISO elde etmenin en hızlı yolu nedir?


34

Şu anda bir ISO'yu (salt okunur) bir dizine ( mount -o loopkomutu kullanarak) ekliyorum ve ardından içerikleri başka bir normal dizine kopyalıyorum. ISO büyük olduğu için bu çok zaman alır. Bunu yapmanın tek yolu bu mu, yoksa alternatif mi var?



ISO, sistemin RAM'ine monte edildiği için bu kötü bir yol değildir. Bir araçla ayıklamak aynı zaman almalıdır.
Dubis

Yanıtlar:


59

7zip yazılımı ile bunu yapabilirsiniz:

sudo apt-get install p7zip-full

7z x iso_file.iso

Fedora'da:

7za x iso_file.iso


1
Benim için çalıştı, Windows Gnome'da (Gnome'da) ne Nautilus ne de Arşiv Yöneticisi'nin içeriğini gösteremediği bir ISO.
krlmlr

4
Dikkat et, "7za x" işe yaramayacak, sadece "7z x". Teşekkürler!
15'de

7za fedora üzerinde çalışıyor, 7z çalışmıyor
Adam Kurkiewicz

Gereğince bu , 7ztüm gerekli dosyaları ayıklamak olmaz.
Ploni

7

bsdtar(taşınabilir kütüphanenin bir parçası ) birçok dosya formatını ayrıştırabilir . Bu, parmakları katran seçeneklerine çok aşina olanlar için kullanışlıdır ( çıkarmak, sadece içeriği incelemek için). bsdtar xfp foo.isobsdtar tf yoyoma.rpm

cpioKullanımına aşina olanlar için de bir bsdcpio var .

Çoğu linux dağıtımında şimdi bsdtar, bsdcpio ve libarchive (hepsi libarchive kodundan gelse de genellikle ayrı paketler halinde) bulunur.


2

Görüntüyü monte etmek veya daha önce cevaplandığı gibi 7zip kullanmak muhtemelen sadece iki çözümdür. Bunları deneyin ve birinin diğerinden daha hızlı olup olmadığını kontrol edin.

Gerçekten daha hızlı bir şeye ihtiyacınız varsa, muhtemelen farklı bir yöne bakmalısınız: yazılımı değiştirmek yerine, farklı diskler kullanmayı deneyin: biri kaynak görüntü için, diğeri hedef dizin için. Veya, bu dosyaları kopyalamaktan kaçının ve sadece iso görüntüsünde tutun.


Bilginize: kullanarak mount -o loopve rsync -a /mnt/iso /root/iso~ 100 MB de kopyalıyor / Dahili SATA SSD için dahili SATA HDD dan.
rwenz3l

2

uniso , içeriği bir ISO akışından çıkarmak için isoinfo'dan yararlanan bir Python betiğidir . Pitorik gerektirir . Biraz taklit edici, ancak işi halleder.

Ben uniso ve pythoric'in yazarıyım.


1

İçeriğin tamamı yerine yalnızca bazı dosyaları çıkartmak istiyorsanız mc, kabuğun içinde aka MidnightCommander'ı deneyin . Ayrıca içine bakmak için temiz .zip/tar.gz/bz2.


1

Neden kullanmayın:

isoinfo -R -X

tüm dosyaları çıkarmak

isoinfo -R -X -find find-options

Bul seçenekleri tarafından denetlenen dosyaları çıkarmak için?


2
Bunun isoinfoschily'den olduğunu varsaydığını unutmayın cdrtools. Biriyle Yani olmaz işi (dan Debian üzerinde bulunan cdrkitbir Debian çatal ait cdrtools) AFAICT nedenlerini lisans için ().
Stéphane Chazelas

2
Doğru, Debian Mayıs 2004’te bir çatal yarattı ve o zamandan beri hiçbir zaman yararlı bir ilerleme kaydetmedi. Orijinal koddaki tüm geliştirmeler göz ardı edildiğinden beri ve bu çok fazlaydı: cdrtools projesindeki mevcut kodun% 60'ından fazlası 2004'ten beri. Debian çatalında.
schily

1
BTW: Mayıs 2004'te Debian çatalları oluşturuldu, cdiankit adı Eylül 2006'da Debian'a 100'den fazla Debian'a özgü böcek içeren bir çatal için artık orijinal adını kullanmamasını istediğimden sonra kullanıldı. Uzman bir avukat isteyen tüm dağıtımların orijinal cdrtools'u gönderdiği göz önüne alındığında, lisans sorunu için bir kanıt göremiyorum.
schily

İtiraf edecekseniz, lisans sorununu anladığımı söyleyemem.
Stéphane Chazelas

1
Lisanslardaki tüm gereklilikleri dikkatlice takip ettiğimden (bunu birkaç avukatla kontrol ettim), bir lisans sorunu göremiyorum. Debian'ın lisanslar değiştirilmeden çok önce bir lisans sorunu olduğunu iddia etmesi durumunda, burada "kırmızı bir ringa balığı" olduğundan şüpheleniyorum. Zaman çizgime yukarıdan devam etmek için: Debian, 2005 Sonbaharında mevcut olmayan bir değişikliğin lisans sorununu üstlendi, ancak Eduard Bloch ve Jörg Jaspert'in saldırılarına karşı savunma yapmak için lisans değişikliği 15 Mayıs 2006'da gerçekleşti.
schily

1

Linux'ta Thunar dosya yöneticisini kullanan ve kolay ve hızlı bir çözüm isteyenler için:

  1. Thunar'ı açın -> Düzenle -> Özel işlemleri yapılandır ...
  2. Yeni öğe oluştur:
    • Adı: burada ISO ayıklayın
    • Açıklama: ISO dosyasını ayıklar
    • Komut: xfce4-terminal -e "7z x %f"
  3. Sekmeyi aç Görünüm Koşulları
    • Önek: *.iso
    • Sadece Other files onay kutusunu seçin
  4. Saklayın ve sağ tıklamayla çıkartmaya hazırsınız.

Bu numarayı kullanan ve xfce4-terminal ve p7zip paketlerine bağlı olduğunu unutmayın . Farklı bir arşiv yöneticisi veya terminal kullanıyorsanız - komutları uygun şekilde değiştirin.


1

AppImage tip-1 görüntüleri ile ISO görüntüleridir zisofs sıkıştırılmış dosyalar. Bu nedenle ISO dosyalarını çıkarabilen her uygulama, AppImage tip-1 resimlerini de çıkaramaz.


Tamam, ama soru NASIL ÇIKARILACAK? + HIZLI.
LinuxSecurityFreak

Bence en hızlı yol, çekirdeğe monte etmek ve ardından dosyaları kopyalamak için çekirdeği kullanmaktır. Yine de bilimsel ölçümler yapmadım.
probono

0

Dene genisoimage. ISO'ların üstesinden gelmek için ihtiyacınız olan her şeye sahiptir. Yükledikten sonra, mcISO içeriğini görüntülemek için de kullanabilirsiniz .


Sadece bunun için manpage okuyunuz. Mevcut bir ISO'nun içeriğini çıkarmak için herhangi bir seçenek bulunamadı.
Alex Jansen

0

En hızlı şekilde önerilen programları karşılaştırdım:

FILE=some_file.iso
DIR="./unpacked"

# time 7z x $FILE -o$DIR # see note below
# real    0m0,656s

time xorriso -osirrox on -indev $FILE -extract / $DIR
# real    0m5,528s

mkdir $DIR
time bsdtar xp -C $DIR -f $FILE
# real    0m5,376s

# mkdir $DIR; cd $DIR
# time isoinfo -R -X -i ../$FILE # see note below
# real    0m0,446s

Nvme ssd'de 780M dosyasına karşı test edildi. Böylece, 7z ile sopa, özetini rahatlığı ve hızlı hızı nedeniyle.

Düzenleme: 7z hakkında acele ettim. 7z ve isoinfo dosyaları ayıklar, ancak bunlar bozuktur. Sanırım bu kadar hızlı çalıştılar. Bir AppImage dosyasını açıyordum. Sonra bsdtar en iyisi gibi görünüyor.


Onları yorumladım, ancak başkalarının argümanlarını kolayca kullanabilmeleri için yerinde bıraktım. Ayrıca diğer iso görüntüleriyle denemek de iyi bir fikirdir (yani bir AppImage değil).
Ashark
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.