1. 程式人生 > >Livemedia-creator- How to create and use a Live CD

Livemedia-creator- How to create and use a Live CD

download further burning method create

Livemedia-creator- How to create and use a Live CD

技術分享

Note
for older method (namely for Fedora 23) using livecd-tools (livecd-creator) visit https://fedoraproject.org/wiki/How_to_create_and_use_a_Live_CD

技術分享

Note
If you simply want to burn a pre-made ISO to a disc, visit http://fedoraproject.org/en/get-fedora to download a LiveCD or LiveDVD, then see the install guide or burning how-to for further instructions.


Contents

[hide]

  • 1 livemedia-creator

    • 1.7.1 kickstart-docs

    • 1.7.2 livemedia-creator terminal output

    • 1.1 Install files

    • 1.2 Documentation

    • 1.3 mock

    • 1.4 kickstarts

    • 1.5 ksflatten

    • 1.6 livemedia-creator example

    • 1.7 Make a remix

    • 1.8 Retrieve finished live.iso

    • 1.9 Clean Up

livemedia-creator

Install files

  • ksflatten is part of pykickstart

# dnf install mock
# usermod -a -G mock <user>

Documentation

  • Important

  • http://lorax.readthedocs.io/en/latest/livemedia-creator.html

  • https://github.com/rhinstaller/lorax/blob/master/docs/livemedia-creator.rst

mock

you should always do all work in mock, this will allow you to ensure that the compose environment matches the target environment

to setup a Fedora 25 x86_64 environment you would run the following

$ mock -r fedora-25-x86_64 --init
$ mock -r fedora-25-x86_64 --install lorax-lmc-novirt git vim-minimal pykickstart

if you wanted a different arch or release you would use the correct mock configuration file

kickstarts

inside the mock chroot, clone the kickstarts. If your system is using SELinux it needs to be set to Permissive mode while running lorax.

$ sudo setenforce 0
$ mock -r fedora-25-x86_64 --shell
<mock-chroot> sh-4.3# git clone https://pagure.io/fedora-kickstarts.git

ksflatten

change directory into fedora-kickstarts and flatten a kickstart

<mock-chroot> sh-4.3# cd fedora-kickstarts
<mock-chroot> sh-4.3# ksflatten -v, --config fedora-live-soas.ks -o flat-fedora-live-soas.ks --version F25

livemedia-creator example

<mock-chroot> sh-4.3# livemedia-creator --ks flat-fedora-live-soas.ks --no-virt --resultdir /var/lmc --project Fedora-soas-Live --make-iso --volid Fedora-SoaS-25 --iso-only --iso-name Fedora-SoaS-25-x86_64.iso --releasever 25 --title Fedora-SoaS-live --macboot

Make a remix

  • edit the bottom of the flat-fedora-live-soas.ks

  • that you produced with ksflatten (above)

  • in this section of the flattened.ks:

%packages

  • add a program (add name)

  • - delete a program ( put - in front)

  • put # in front of listed program to not install it

kickstart-docs

  • https://github.com/rhinstaller/pykickstart/blob/master/docs/kickstart-docs.rst

livemedia-creator terminal output

  • Build takes a long time wait for completion


[[email protected] pagure]# livemedia-creator --ks /home/(user)/Downloads/pagure/flat-fedora-live-soas.ks --no-virt --resultdir /var/lmc --project Fedora-soas-Live --make-iso --volid Fedora-SoaS-f24 --iso-only --iso-name Fedora-SoaS-f24.iso --releasever 24 --title Fedora-SoaS-live --macboot
/usr/lib64/python3.5/optparse.py:999: PendingDeprecationWarning: The KSOption class is deprecated and will be removed in pykickstart-3.  Use the argparse module instead.
  option = self.option_class(*args, **kwargs)
2016-07-08 11:27:53,350: disk_size = 5122MiB
2016-07-08 11:27:53,351: disk_img = /var/lmc/lmc-disk-7mztqnci.img
2016-07-08 11:27:58,818: Running anaconda.
2016-07-08 11:28:01,751: Processing logs from (‘127.0.0.1‘, 48934)
2016-07-08 11:28:04,776: Starting installer, one moment...
2016-07-08 11:28:04,776: terminal size detection failed, using default width
2016-07-08 11:28:04,776: anaconda 24.13.7-1 for Fedora-soas-Live 24 (pre-release) started.
2016-07-08 11:28:04,776: The ‘logging‘ function is not a part of DNF API and will be removed in the upcoming DNF release. Please use only officially supported API functions. DNF API documentation is available at https://dnf.readthedocs.org/en/latest/api.html.
2016-07-08 11:29:01,131: Starting automated install........................................................
2016-07-08 11:29:01,146: ================================================================================
..........clip........
..........clip........
2016-07-08 11:50:37,613: Disk Image install successful
2016-07-08 11:50:37,613: working dir is /var/tmp/lmc-work-ey7rlb4p
2016-07-08 12:02:35,166: Rebuilding initrds
2016-07-08 12:02:35,166: dracut args = [‘--xz‘, ‘--add‘, ‘livenet dmsquash-live convertfs pollcdrom qemu qemu-net‘, ‘--omit‘, ‘plymouth‘, ‘--no-hostonly‘, ‘--debug‘, ‘--no-early-microcode‘]
2016-07-08 12:02:35,167: rebuilding boot/initramfs-4.6.3-300.fc24.x86_64.img
2016-07-08 12:03:57,231: Building boot.iso
2016-07-08 12:03:57,328: running x86.tmpl
2016-07-08 12:04:37,262: Disk image erased
2016-07-08 12:04:37,945: SUMMARY
2016-07-08 12:04:37,945: -------
2016-07-08 12:04:37,946: Logs are in /home/(user)/Downloads/pagure
2016-07-08 12:04:37,946: Results are in /var/lmc

Retrieve finished live.iso

"Results are in /var/lib/mock/<mock config>/root/var/lmc"

  • start files application

  • click on Files system

  • open /var folder

  • open lmc folder

  • click on the .....iso you just built

copy to (mouse right click) Home with files application

  • Check that it is in Home

Clean Up

  • delete the instance in /var

  • delete the /var/lmc directory (cannot run new build unless this is done?)

  • Set SELinux back to Enforcing

[[email protected] pagure]# cd /var
[[email protected] var]# ls
account  adm  cache  crash  db  empty  ftp  games  gopher  kerberos  lib  lmc  local  lock  log  mail  nis  opt  preserve  run  spool  tmp  www  yp
[[email protected] var]# rm -r lmc
rm: descend into directory ‘lmc‘? y
rm: remove regular file ‘lmc/Fedora-SoaS-f24.iso‘? y
rm: remove directory ‘lmc‘? y
[[email protected] var]# setenforce 1


Livemedia-creator- How to create and use a Live CD