Cách tạo hình ảnh ISO tùy chỉnh trong CentOS


20

Tôi đang cố gắng tạo một hình ảnh ISO tùy chỉnh để cài đặt RPMS yêu cầu tối thiểu cùng với một số RPM được viết tùy chỉnh của ứng dụng của tôi. và Cũng muốn thực hiện một số bước cài đặt bài đăng như định cấu hình cấu hình Ứng dụng và VPN của tôi, v.v.

Tôi thấy một số liên kết trên google nhưng họ đang chỉ tạo repo và ISO từ đĩa được gắn hoặc hình ảnh ISO.

Cảm ơn Ramesh


bạn cũng có thể sử dụng kickstart redhat cho việc làm này nó dễ dàng hơn và linh hoạt hơn sự lựa chọn Thông tin thêm ở đây access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/...
fyarci

Câu trả lời:


45
  1. Tạo một thư mục để gắn kết nguồn của bạn.

    mkdir /tmp/bootiso
    
  2. Vòng lặp gắn kết nguồn ISO bạn đang sửa đổi. (Tải xuống từ Red Hat / CentOS.)

    mount -o loop /path/to/some.iso /tmp/bootiso
    
  3. Tạo một thư mục làm việc cho phương tiện truyền thông tùy chỉnh của bạn.

    mkdir /tmp/bootisoks
    
  4. Sao chép phương tiện nguồn vào thư mục làm việc.

    cp -r /tmp/bootiso/* /tmp/bootisoks/
    
  5. Ngắt kết nối ISO nguồn và xóa thư mục.

    umount /tmp/bootiso && rmdir /tmp/bootiso
    
  6. Thay đổi quyền trên thư mục làm việc.

    chmod -R u+w /tmp/bootisoks
    
  7. Sao chép tập lệnh Kickstart của bạn đã được sửa đổi cho các gói và %postvào thư mục làm việc.

    cp /path/to/someks.cfg /tmp/bootisoks/isolinux/ks.cfg
    
  8. Sao chép bất kỳ RPM bổ sung nào vào cấu trúc thư mục và cập nhật siêu dữ liệu.

    cp /path/to/*.rpm /tmp/bootisoks/Packages/.
    cd /tmp/bootisoks/Packages && createrepo -dpo .. .
    
  9. Thêm kickstart vào tùy chọn khởi động.

    sed -i 's/append\ initrd\=initrd.img/append initrd=initrd.img\ ks\=cdrom:\/ks.cfg/' /tmp/bootisoks/isolinux/isolinux.cfg
    
  10. Tạo tập tin ISO mới.

    cd /tmp/bootisoks && \ 
    mkisofs -o /tmp/boot.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "CentOS 7 x86_64" -R -J -v -T isolinux/. .
    
  11. (Tùy chọn) Sử dụng isohybridnếu bạn muốn ddtệp ISO thành khóa USB có thể khởi động.

    isohybrid /tmp/boot.iso
    
  12. Thêm một tổng kiểm MD5 (để cho phép kiểm tra phương tiện truyền thông).

    implantisomd5 /tmp/boot.iso
    

Nếu bạn cần thêm trợ giúp để tạo tập lệnh Kickstart , tôi khuyên bạn nên bắt đầu với tài liệu chính thức của Red Hat.


1
Có thể bạn đã bỏ lỡ hoặc làm hỏng bước 4, sau đó?
Aaron Copley

3
@AaronCopley vâng, có lẽ bạn đúng. Tôi cũng tìm thấy cái này: github.com/joyent/mi-centos-7 đã giúp tôi.
sivann

1
Ở bước 9, tôi tin rằng bạn phải đưa ra tham số cuối cùng. (dấu chấm) để chỉ ra thư mục hiện tại. Hành vi mặc định kỳ lạ nhưng không có điều đó, mkisofs tạo một tệp iso chỉ chứa các tệp từ thư mục trên cùng và không có thư mục con và hơn thế nữa.
hshib

2
Tôi cũng gặp vấn đề với bước 4. Với cách sử dụng lệnh "cp" đó, nó không sao chép các tập tin ẩn .discinfo và .treeinfo. Không có những cái đó, iso đã tạo thất bại trong quá trình cài đặt phàn nàn rằng "không tìm thấy CD / ROM".
hshib 2/2/2015

1
Bạn có thể sao chép mọi thứ bằng một lệnh đơn với - "cp -r / tmp / bootiso /. / Tmp / bootisoks /" (đây là một mẹo nhỏ - lưu ý duy nhất. Sau / tmp / bootiso /)
hshib 2/215
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.