Làm cách nào để trích xuất ISO trên Linux mà không cần quyền truy cập root


22

Tôi có một tệp ISO lớn trên máy chủ và tôi cần truy cập tệp trong đó mà không cần quyền truy cập root. Vì vậy, tôi không thể đơn giản gắn kết nó. Tôi nên làm gì để có thể trích xuất ISO trên LInux mà không cần truy cập root?

Câu trả lời:


23

Nếu 7zip được cài đặt thì cái này thực sự dễ dàng:

7z x Your.iso -oWhere/You/Want/It/Extracted/To

để trích xuất toàn bộ iso.


3
Vì câu hỏi của OP có thẻ "linux", điều quan trọng là nêu điều này sẽ không hoạt động với 7za(CentOS); 7zakhông hỗ trợ lưu trữ ISO. Bạn có thể kiểm tra các định dạng được hỗ trợ với 7za i.
Jongosi

FYI 7zdường như đủ thông minh để trích xuất trực tiếp ra khỏi phương tiện truyền thông : 7z x /dev/cdrom. Tôi có một vấn đề rất ngu ngốc, rằng các tập tin của tôi hiển thị 0 byte khi được gắn kết. Vì vậy, trích xuất là một cách giải quyết.
akostadinov

17

Nhiều công cụ GUI như con lăn tập tin sẽ sử dụng isoinfo trong nền.

Bạn có thể trích xuất một tệp từ ISO như vậy:

isoinfo -i hình ảnh.iso -x /isolinux/initrd.img> initrd.img

Việc chuyển hướng được yêu cầu như là -xchiết xuất cho thiết bị xuất chuẩn.

Nếu bạn muốn liệt kê nội dung của một thư mục trong ISO:

isoinfo -i hình ảnh.iso -l

đầu ra ví dụ:

Danh sách thư mục của /
d --------- 0 0 0 2048 0 1900 [26 02].
d --------- 0 0 0 2048 0 1900 [26 02] ..
d --------- 0 0 0 2048 ngày 6 tháng 2 năm 2010 [27 02] i386
...

Để sử dụng isoread để giải nén tất cả các tệp, hãy thử tập lệnh này: github.com/goblinhack/isoread
Neil McGill

@NeilMcGill Không hoạt động ở đây. Rất nhiều lỗi.
MewX

Các phần mở rộng ISO với Rock Ridge sẽ yêu cầu tên tệp chữ hoa có dấu "; 1" ở cuối. Sử dụng -Rl để liệt kê các tệp trong mẫu này.
lzap

6

Tôi tìm thấy một cách tốt nhất mới: sử dụng xorriso!

Không cần phải có quyền truy cập root. Tôi đã thử 7zfile-rollercả hai đều không làm việc ở đây.

xorriso là một chương trình nguồn mở, vì vậy bạn có thể tải xuống mã nguồn nếu bạn không cài đặt nó theo mặc định.

Nếu bạn chưa cài đặt nó, vui lòng tải xuống mã nguồn tại đây: https://www.gnu.org/software/xorriso/

Các bước là:

tar zxvf xorriso-1.4.6.tar.gz
cd xorriso-1.4.6
./configure
make
cd xorriso
pwd

Thêm thư mục đầu ra vào biến môi trường PATH.


Sau đó, bạn có thể sử dụng nó để giải nén một tệp iso:

xorriso -osirrox on -indev image.iso -extract / extracted_path

Bạn chỉ cần sửa đổi image.isoextracted_pathlàm cho nó hoạt động trên hệ thống của bạn.


Được giới thiệu: https : // blog.s ngủlessbeastie.eu/2014/08/26/how-to-extract-an-iso-image /


4

Nếu bạn có quyền truy cập GUI, nhấp chuột phải vào iso và chọn "Mở bằng Trình quản lý lưu trữ ..." hoặc chỉ cần chạy:

file-roller -e /path/to/extract/to /path/to/iso

1

Nếu bạn có 7-ziphoặc đã unrarcài đặt, bạn có thể sử dụng để giải nén iso.


Cú pháp để làm unrargì? Tôi nghĩ đó chỉ dành cho Winrar
golimar 17/03/2016


1

Hầu hết các giải pháp trên làm cho bạn trích xuất nội dung iso, nhưng nếu nội dung lớn sẽ mất nhiều không gian.

Một giải pháp tốt hơn là thực hiện việc gắn hình ảnh iso thực tế và nhờ FuseISO có thể không có quyền truy cập root (nhưng bạn vẫn cần yêu cầu quản trị viên cài đặt FuseISO nếu nó chưa được cài đặt, trong ubfox sudo apt-get install fuseiso)

Khi bạn đã cài đặt FuseISO trong máy, bạn có thể:

# For user to mount an iso file:
mkdir ~/iso
fuseiso ~/my_iso.iso ~/iso
# For user to unmount an iso file:
fusermount -u ~/iso

0

Bạn không cần phải gắn kết nó. ISO cũng giống như bất kỳ tệp lưu trữ nào khác, như .zip. Có rất nhiều công cụ cụ thể của iso để thực hiện thủ thuật mà bạn sẽ có thể biên dịch thành người dùng, nhưng cách dễ nhất là nên làm:

file-roller -h filename.iso
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.