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?
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:
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.
7z
dườ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.
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à -x
chiế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 ...
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ử 7z
và file-roller
cả 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.iso
và extracted_path
là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 /
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
Nếu bạn có 7-zip
hoặc đã unrar
cài đặt, bạn có thể sử dụng để giải nén iso.
unrar
gì? Tôi nghĩ đó chỉ dành cho Winrar
Nếu bạn có thể gắn hệ thống tập tin FUSE, FuseISO là một tùy chọn để gắn hình ảnh.
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
7za
(CentOS);7za
không hỗ trợ lưu trữ ISO. Bạn có thể kiểm tra các định dạng được hỗ trợ với7za i
.