Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
####### # # E-scripts and notes about making livecds and cdds # # Note 1: use the eev command (defined in eev.el) and the # ee alias (in my .zshrc) to execute parts of this file. # Executing this file as a whole makes no sense. # An introduction to eev can be found here: # # (find-eev-quick-intro) # http://angg.twu.net/eev-intros/find-eev-quick-intro.html # # Note 2: be VERY careful and make sure you understand what # you're doing. # # Note 3: If you use a shell other than zsh things like |& # and the for loops may not work. # # Note 4: I always run as root. # # Note 5: some parts are too old and don't work anymore. Some # never worked. # # Note 6: the definitions for the find-xxxfile commands are on my # .emacs. # # Note 7: if you see a strange command check my .zshrc -- it may # be defined there as a function or an alias. # # Note 8: the sections without dates are always older than the # sections with dates. # # This file is at <http://angg.twu.net/e/livecd.e> # or at <http://angg.twu.net/e/livecd.e.html>. # See also <http://angg.twu.net/emacs.html>, # <http://angg.twu.net/.emacs[.html]>, # <http://angg.twu.net/.zshrc[.html]>, # <http://angg.twu.net/escripts.html>, # and <http://angg.twu.net/>. # ####### # «.debian-cdd-packages» (to "debian-cdd-packages") # «.cloop» (to "cloop") # «.translucency» (to "translucency") # «.ovlfs» (to "ovlfs") # «.linux-live» (to "linux-live") # «.apt-get-autoclean» (to "apt-get-autoclean") # «.var-www-vcarchives» (to "var-www-vcarchives") # «.debootstrap» (to "debootstrap") # «.debootstrap-quick» (to "debootstrap-quick") # «.adduser-edrx» (to "adduser-edrx") # «.chsh-edrx» (to "chsh-edrx") # «.sudoers» (to "sudoers") # «.export-edrx.tgz» (to "export-edrx.tgz") # «.export-snarf.tgz» (to "export-snarf.tgz") # «.unpack-edrx-and-snarf» (to "unpack-edrx-and-snarf") # «.fstab» (to "fstab") # «.kernel-image» (to "kernel-image") # «.rootstrap» (to "rootstrap") # «.bootcd» (to "bootcd") ##### # # fazendo os meus próprios cdds # 2004aug25 # ##### # «debian-cdd-packages» (to ".debian-cdd-packages") #* acse cdd #* # (find-status "cdd-common") # (find-vldifile "cdd-common.list") # (find-udfile "cdd-common/") # (find-status "cdd-dev") # (find-vldifile "cdd-dev.list") # (find-udfile "cdd-dev/") # (find-status "cdd-doc") # (find-vldifile "cdd-doc.list") # (find-udfile "cdd-doc/") apti cdd-common cdd-dev cdd-doc knoppix http://www.knoppix.net/docs/index.php/KnoppixRemasteringHowto http://www.math.concordia.ab.ca/docs/custom-gnoppix.php # (find-fline "/usr/share/doc/cdd-doc/debian-cdd.en.txt.gz") # (find-fline "/usr/share/lintian/overrides/cdd-common") # (find-fline "/usr/share/cdd/menu/cdd-menu") # (find-fline "/usr/share/cdd/unixgroups/cdd-actions") # (find-fline "/usr/share/cdd/cdd-update-menus") # (find-fline "/usr/share/cdd/cdd-actions") # (find-fline "/usr/share/cdd/cdd-utils") # (find-udfile "cdd-common/README.CDD") # (find-udfile "cdd-common/README.Debian") # (find-udfile "cdd-common/copyright") # (find-udfile "cdd-common/changelog.gz") # (find-udfile "cdd-common/NEWS.Debian.gz") # (find-man "8 cdd-update-usermenus") # (find-man "8 cdd-user") # (find-man "8 get-group-users") # (find-man "8 cdd-role") # (find-man "8 cdd-update-menus") # (find-fline "/usr/sbin/cdd-user") # (find-fline "/usr/sbin/cdd-role") # (find-fline "/usr/sbin/cdd-update-menus") # (find-fline "/usr/sbin/cdd-update-usermenus") # (find-fline "/usr/lib/menu/cdd-menu") # (find-fline "/etc/cdd/cdd.conf") ##### # # the cloop kernel patch # 2004aug27 # ##### # «cloop» (to ".cloop") apti cloop-src cloop-utils # (find-status "cloop-utils") # (find-vldifile "cloop-utils.list") # (find-udfile "cloop-utils/") # (find-udfile "cloop-utils/README") # (find-udfile "cloop-utils/README.Debian") # (find-status "module-assistant") # (find-vldifile "module-assistant.list") # (find-udfile "module-assistant/") # (find-man "1 create_compressed_fs") # (find-man "1 extract_compressed_fs") # (find-man "8 module-assistant") # (find-status "cloop-src") # (find-vldifile "cloop-src.list") # (find-udfile "cloop-src/") # (find-udfile "cloop-src/README.Debian") # (find-fline "/usr/src/cloop.tar.gz") # (code-c-d "cloop" "~/usrc/modules/cloop/") # (find-cloopfile "") # (find-cloopfile "Makefile") # (find-man "make-kpkg") # (find-man "make-kpkg" "--added-modules foo") # (find-man "make-kpkg" " modules\n") #* mkdir -p ~/usrc/modules/ rm -Rv ~/usrc/modules/cloop/ tar -C ~/usrc/ -xvzf /usr/src/cloop.tar.gz cd ~/usrc/modules/cloop/ cd ~/bigsrc/kernel-source-2.4.26/ MODULE_LOC=~/usrc/modules \ make-kpkg --rootcmd fakeroot modules_image |& tee omkmimg #* sudo dpkg -i ~/bigsrc/cloop-module-2.4.26_2.01.4-2+10.00.Custom_i386.deb #* # (find-k24file "omkmimg") # (find-status "cloop-module-2.4.26") # (find-vldifile "cloop-module-2.4.26.list") # (find-udfile "cloop-module-2.4.26/") cd /lib/modules/2.4.26/kernel/drivers/block/ sudo insmod cloop.o #* # (find-man "8 depmod") rm -Rv /tmp/block/ mkdir /tmp/block/ cp -iv /lib/modules/2.4.26/kernel/drivers/block/* /tmp/block/ cd /tmp/block/ depmod -e -n * |& tee o # (find-fline "/tmp/block/o") #* make modules_install ##### # # the translucency kernel patch # 2004aug28 # ##### # «translucency» (to ".translucency") # (find-status "translucency-source") # (find-vldifile "translucency-source.list") # (find-udfile "translucency-source/") # (find-fline "/sbin/mount.translucency") # (find-fline "/usr/share/doc/translucency-source/README") # (find-fline "/usr/share/doc/translucency-source/README.Debian") # (find-fline "/usr/share/doc/translucency-source/changelog.Debian.gz") # (find-fline "/usr/share/doc/translucency-source/copyright") # (find-fline "/usr/share/doc/translucency-source/kernel.txt") # (find-fline "/usr/share/doc/translucency-source/pros_and_cons") # (find-fline "/usr/share/doc/translucency-source/todo.txt") # (find-fline "/usr/share/doc/translucency-source/troubleshooting.txt") # (find-fline "/usr/share/modass/overrides") # (find-fline "/usr/share/modass/overrides/translucency-source") # (find-fline "/usr/src/translucency.tar.bz2") # (find-man "8 mount.translucency") # (find-man "8 translucency") ##### # # linux-live # 2004aug28 # ##### # «linux-live» (to ".linux-live") # http://www.linux-live.org/ # http://www.linux-live.org/dl/linux-live-4.2.1.tar.gz #* rm -fRv ~/usrc/linux-live-4.2.1/ tar -C ~/usrc/ -xvzf $S/http/www.linux-live.org/dl/linux-live-4.2.1.tar.gz cd ~/usrc/linux-live-4.2.1/ #* # (code-c-d "linuxlive" "~/usrc/linux-live-4.2.1/") # (find-linuxlivefile "") ##### # # the ovlfs kernel patch # 2004aug28 # ##### # «ovlfs» (to ".ovlfs") # http://umn.dl.sourceforge.net/sourceforge/ovlfs/ovlfs-2.0.1.tgz #* rm -fRv ~/usrc/ovlfs-2.0.1/ tar -C ~/usrc/ \ -xvzf $S/http/umn.dl.sourceforge.net/sourceforge/ovlfs/ovlfs-2.0.1.tgz cd ~/usrc/ovlfs-2.0.1/ #* # (code-c-d "ovlfs" "~/usrc/ovlfs-2.0.1/") # (find-ovlfsfile "") # (find-ovlfsfile "doc/") ##### # # apt-get autoclean # 2004sep07 # ##### # «apt-get-autoclean» (to ".apt-get-autoclean") # (find-man "8 apt-get" " autoclean") # (find-man "8 apt-get" "-s, --simulate") #* sudo apt-get update sudo apt-get upgrade #* cd /var/cache/apt/archives/ du -c |& tee /tmp/odu0 sudo apt-get -s -V autoclean |& tee /tmp/oagac sort /tmp/oagac > /tmp/oagacs cat /tmp/odu0 du -c #* cd /var/cache/apt/archives/ du -c |& tee /tmp/odu0 sudo apt-get -V autoclean |& tee /tmp/oagac | sort > /tmp/oagacs du -c |& tee /tmp/odu1 cat /tmp/odu0 #* # (find-fline "/var/cache/apt/archives/") # (find-fline "/tmp/oaacs") ##### # # dpkg-scanpackages and /var/www/vcarchives/ # 2004sep07 # ##### # «var-www-vcarchives» (to ".var-www-vcarchives") # (find-apthowtofile "apt-howto.en.txt.gz") # (find-apthowtofile "apt-howto.en.txt.gz" "dpkg-scanpackages") # (find-man "1 dpkg-scanpackages") # An alternative to dpkg-scanpackages (I don't know how to use it yet): # (find-fline "/usr/bin/apt-ftparchive") # An exercise: a repository with the debs from /var/cache/apt/archives/ # http://127.0.0.1/ #* sudo rm -Rv /var/www/vcarchives/ sudo mkdir /var/www/vcarchives/ sudo chmod 777 /var/www/vcarchives/ #* cd /var/www/vcarchives/ mkdir debs cp -ilv /var/cache/apt/archives/*.deb debs/ mkdir -p dists/sarge/main/binary-i386/ # dpkg-scanpackages debs /dev/null \ # | tee dists/sarge/main/binary-i386/Packages \ # | gzip -c9 > dists/sarge/main/binary-i386/Packages.gz # apt-ftparchive is much faster than dpkg-scanpackages... # (find-man "1 apt-ftparchive") # (find-man "1 apt-ftparchive" "\n packages\n") # apt-ftparchive packages debs \ | tee dists/sarge/main/binary-i386/Packages-a \ | gzip -c9 > dists/sarge/main/binary-i386/Packages-a.gz #* # (find-fline "/var/www/vcarchives/dists/sarge/main/binary-i386/") apt-ftparchive [-hvdsq] [--md5] [--delink] [--readonly] [--contents] [-o=config string] [-c=file] {packages path... [override [pathprefix]] | sources path... [override [pathprefix]] | contents path | release path | generate config-file section... | clean config-file} # Now do it seriously #* mkdir /tmp/cdd/ sudo umount /tmp/cdd/ sudo mount -o loop /hdb2/CDs/debian-br-cdd/sarge-i386-1.raw /tmp/cdd #* sudo dselect update #* # (find-angg "LUA/debs.lua") grep-status --show-field=Package,Version --field=Status ' installed' \ > /tmp/installed-debs ( ls /var/cache/apt/archives/*.deb find /tmp/cdd/ -name '*.deb' | sort ls /hdb2/CDs/cdd-extra/*.deb ) > /tmp/.debs lua50 ~/LUA/debs.lua /tmp/installed-debs /tmp/.debs \ | sort > /tmp/currentdebs # (find-fline "/tmp/currentdebs") #* sudo rm -Rv /var/www/vcarchives/ sudo mkdir /var/www/vcarchives/ sudo chmod 777 /var/www/vcarchives/ #* rm -Rfv /var/www/vcarchives/debs rm -Rfv /var/www/vcarchives/dists cd /var/www/vcarchives/ mkdir debs mkdir -p dists/sarge/main/binary-i386/ #* cd /var/www/vcarchives/ for i in $(grep -v '#' /tmp/currentdebs); do cp -il $i debs/ || cp -i $i debs/ done cd /var/www/vcarchives/debs/ ls *.deb | lua50 -e ' for str in io.lines() do newstr, n = string.gsub(str, "[0-9]%%3a", "") if n>0 then print("mv -v " .. str .. " " .. newstr) end end ' | sh cd /var/www/vcarchives/ dpkg-scanpackages debs /dev/null \ | tee dists/sarge/main/binary-i386/Packages \ | gzip -c9 > dists/sarge/main/binary-i386/Packages.gz #* cd /var/www/vcarchives/dists/sarge/ cat > main/binary-i386/Release <<'%%%' Archive: sarge Component: main Origin: Debian Label: Debian Architecture: i386 %%% # (find-fline "/usr/bin/apt-move" "exec > Release") # (find-fline "/usr/bin/apt-move" "get_checksum()") # (find-node "(libc)Table of Output Conversions") # (find-fline "/tmp/cdd/dists/sarge/Release") # (find-fline "/var/www/vcarchives/dists/sarge/Release") cd /var/www/vcarchives/dists/sarge/ ( echo Origin: Debian echo Label: Debian echo Suite: testing echo Codename: sarge echo Date: $(TZ=UTC date '+%a, %d %b %Y %T %Z') echo Architectures: i386 echo Components: main echo Description: Persephone sub-Sarge echo MD5Sum: for l in main/binary-i386/{Release,Packages.gz,Packages}; do printf ' %32s %8d %s\n' \ $(md5sum $l | cut -d ' ' -f 1) $(stat -c %s $l) $l done ) | tee Release #* # (find-fline "/var/lib/apt/lists/") deb http://127.0.0.1/vcarchives sarge main # (find-man "dpkg-scanpackages") # (find-status "dpkg-dev") # (find-vldifile "dpkg-dev.list") # (find-udfile "dpkg-dev/") ##### # # debootstrap # 2004sep04 # ##### # «debootstrap» (to ".debootstrap") # (find-status "debootstrap") # (find-vldifile "debootstrap.list") # (find-udfile "debootstrap/") # (find-udfile "debootstrap/README.Debian") # (find-fline "/usr/lib/debootstrap/") # (find-fline "/usr/lib/debootstrap/functions") # (find-fline "/usr/lib/debootstrap/pkgdetails") # (find-fline "/usr/lib/debootstrap/scripts/") # (find-fline "/usr/lib/debootstrap/scripts/sarge") # (find-fline "/usr/lib/debootstrap/scripts/sarge" "Fake start-stop-daemon") # (find-fline "/usr/lib/debootstrap/scripts/sarge.buildd") # (find-fline "/usr/sbin/debootstrap") # (find-man "8 debootstrap") #* rm -Rv /sarge-root #* mkdir /sarge-root mount /dev/hdb5 /sarge-root rm -Rv /sarge-root/* rm -Rv /sarge-root/.* #* # Installation using debootstrap and http cd / mkdir /sarge-root debootstrap sarge /sarge-root http://127.0.0.1/vcarchives/ #* # Pack the things that were downloaded by http # (find-fline "/sarge-root/") # (find-fline "/sarge-root/var/lib/apt/lists/") # (find-fline "/sarge-root/var/cache/apt/archives/") cd /sarge-root/ tar -cvf /tmp/sarge-debs.tar \ var/lib/apt/lists/ \ var/cache/apt/archives/ #* # (find-bashnode "Shell Parameter Expansion" "`${PARAMETER#WORD}'") # (find-bashnode "Shell Parameter Expansion" "`${PARAMETER%WORD}'") # (find-fline "/usr/sbin/debootstrap" "if [ \"$UNPACK_TARBALL\" ]; then") # (find-fline "/usr/lib/debootstrap/functions") rm -Rv /sarge-root2 mkdir /sarge-root2 cd /sarge-root2 tar -C /sarge-root2 -xvf /tmp/sarge-debs.tar # download the whole system: debootstrap sid /sarge-root2 http://ftp.br.debian.org/debian/ #* # Check that the two directories have the same files: cd /sarge-root/; (sudo find) | sort > /tmp/ofind cd /sarge-root2/; (sudo find) | sort > /tmp/ofind2 diff /tmp/ofind /tmp/ofind2 #* # (find-man "8 debootstrap" "apt-setup") sudo mount -t proc sarge-root-proc /sarge-root/proc eeg -f <(<<'%%%' EDITOR=nano apt-setup nano /etc/apt/sources.list # deselect/apti? %%% ) sudo chroot /sarge-root /bin/bash #* apt-get install emacs21 zsh lua50 less sudo apt-get install erc w3m-el apt-get install expect ssh apt-get install emacs21-el elisp-manual emacs-lisp-intro apt-get install dict dictd dict-gcide dict-wn dict-jargon apt-get install zgv apt-get install dict-freedict-eng-por apt-get install build-essential apt-get install gpm gpmconfig # (find-file "/etc/gpm.conf") # repeat_type=raw apt-get remove xdm gdm # now kill X by hand, then: /etc/init.d/gpm restart apt-get install fvwm #* echo "proc-sid /sarge-root/proc proc none 0 0" >> /etc/fstab mount proc-sid /sarge-root/proc -t proc cp /etc/hosts /sarge-root/etc/hosts chroot /sarge-root /bin/bash #* # (find-fline "/etc/fstab") echo "proc-sid /sarge-root2/proc proc none 0 0" >> /etc/fstab mount proc-sid /sarge-root2/proc -t proc cp /etc/hosts /sarge-root/etc/hosts chroot /sarge-root /bin/bash #* # set-up /etc/apt/sources.list: apt-setup # point the source to unstable: vi /etc/apt/sources.list chroot # dselect [ you may use aptitude, install mc and vim ... ] main # echo "8:23:respawn:/usr/sbin/chroot /sarge-root " \ "/sbin/getty 38400 tty8" >> /etc/inittab [ define a login tty that will use this system ] main # init q [ reload init ] ##### # # deboostrap on /sarge-root # 2004sep13 # ##### # «debootstrap-quick» (to ".debootstrap-quick") #* umount /sarge-root/proc umount /sarge-root rm -Rv /sarge-root #* mkdir /sarge-root mount /dev/hdb5 /sarge-root mkdir /sarge-root/proc/ mount -t proc sarge-proc /sarge-root/proc #* rm -Rv /sarge-root/* rm -Rv /sarge-root/.* #* # Installation using debootstrap and http cd / mkdir /sarge-root echo "mini-sarge for livecds" > /sarge-root/.id debootstrap sarge /sarge-root http://127.0.0.1/vcarchives/ (cd /sarge-root/etc/apt/; mv -v sources.list sources.list.orig) #* # (find-fline "/sarge-root/etc/apt/") # (find-fline "/sarge-root/etc/apt/sources.list") cat > /sarge-root/etc/apt/sources.list <<'%%%' # (find-es "livecd" "debootstrap-quick") deb http://127.0.0.1/vcarchives sarge main %%% #* sudo chroot /sarge-root \ /usr/bin/apt-get update sudo chroot /sarge-root \ /usr/bin/apt-get install emacs21 zsh lua50 less sudo #* # (find-man "dpkg-reconfigure") sudo chroot /sarge-root \ dpkg-reconfigure --all #* ##### # # create a user edrx and give him full sudo permissions # 2004sep13 # ##### #* # «adduser-edrx» (to ".adduser-edrx") # «chsh-edrx» (to ".chsh-edrx") # (find-man "adduser") # (find-man "chsh") cat > $EEG <<'%%%' # adduser asks 8 questions: # passwd/passwd/fullname/ # room#/workphone/homephone/other/ (4 blank lines) # correct? adduser edrx edrx edrx Eduardo Ochs y chsh -s /usr/bin/zsh edrx exit %%% eeg $SARGESHROOT #* # «sudoers» (to ".sudoers") # (find-es "cdd" "sudo") # (find-sh "sudo cat /etc/sudoers") # (find-sh "sudo cat /sarge-root/etc/sudoers") cat > $EEG <<'%%%%' echo >> /etc/sudoers cat >> /etc/sudoers <<'%%' # Edrx: # (find-es "livecd" "sudo") User_Alias FULLTIMERS = edrx FULLTIMERS ALL = NOPASSWD: ALL %% exit %%%% eeg $SARGESHROOT #* ##### # # export edrx.tgz and snarf.tgz # 2004sep13 # ##### #* # «export-edrx.tgz» (to ".export-edrx.tgz") makeLedrxtgz cp -v ~/TH/L/edrx.tgz /sarge-root/tmp/ #* # «export-snarf.tgz» (to ".export-snarf.tgz") cd ~/snarf/ tar -cvzf /sarge-root/tmp/snarf.tgz $( cat ~/.psne.carry \ | lua50 -e ' for li in io.lines() do print((string.gsub(li, "^([a-z]+)://", "%1/"))) end ' ) #* # «unpack-edrx-and-snarf» (to ".unpack-edrx-and-snarf") cat > $EEG <<'%%%' whoami tar -C /home/edrx -xvzf /tmp/edrx.tgz mkdir /home/edrx/snarf/ tar -C /home/edrx/snarf/ -xvzf /tmp/snarf.tgz exec ~edrx/run-zsh cd prep-home-cdd exit %%% eeg $SARGESHEDRX #* # «fstab» (to ".fstab") # If we don't do this then the mkinitrd in kernel-image-xxx.postinst will fail. # (find-fline "/usr/sbin/mkinitrd") # (find-fline "/usr/sbin/mkinitrd" "Cannot determine root device") # (find-node "(bashref)Bash Conditional Expressions" "`-z STRING'") # (find-fline "/etc/fstab") cat > /sarge-root/etc/fstab <<'%%%' # /etc/fstab: static file system information. # (find-es "livecd" "fstab") # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/hdb5 / ext2 defaults,errors=remount-ro 0 1 /dev/hdd /media/cdrom0 iso9660 ro,user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 %%% #* # «kernel-image» (to ".kernel-image") # (find-fline "/etc/kernel-img.conf") # (find-fline "/sarge-root/etc/kernel-img.conf") chroot /sarge-root /usr/bin/apt-get install kernel-image-2.4.26-1-386 #* cat > $EEG <<'%%%' A=( emacs21 zsh lua50 less sudo # erc w3m-el expect ssh # emacs21-el elisp-manual emacs-lisp-intro # dict dictd dict-gcide dict-wn dict-jargon # zgv # dict-freedict-eng-por build-essential ) apti $A exit %%% eeg $SARGEZSHEDRX #* # (find-sh "dpkg -l") echo "proc-sid /sarge-root/proc proc none 0 0" >> /etc/fstab # /usr/sbin/mkinitrd: Cannot determine root device SARGESHROOT=(sudo chroot /sarge-root /bin/sh) SARGESHEDRX=(sudo chroot /sarge-root /usr/bin/sudo -u edrx /bin/sh) SARGEZSHROOT=(sudo chroot /sarge-root /home/edrx/run-zsh) SARGEZSHEDRX=(sudo chroot /sarge-root /usr/bin/sudo -u edrx /home/edrx/run-zsh) $SARGESHROOT $SARGESHEDRX $SARGEZSHROOT $SARGEZSHEDRX #* # (find-sh "dpkg --get-selections") # Audio aumix bplay mpg321 vorbis-tools xmms # CDDs and livecds apache apt-show-version apt-utils bootcd cdd-common cdd-dev cdd-doc cdebootstrap cdrecord debianutils debootstrap deborphan discover1 fakeroot grep-dctrl grub grub-doc build-essential madison-lite tasksel # Console console-tools gpm zgv # Dict dict dict-freedict-eng-por dict-gcide dict-jargon dict-wn dictd # Docs apt-howto-en bash-doc debconf-doc doc-linux-text glibc-doc manpages manpages-dev # Emacs elisp-manual emacs-lisp-intro emacs21-el gnuserv post-el w3m w3m-el # Html html2text lynx tidy tidy-doc unhtml # Lua liblua50 liblua50-dev liblualib50 liblualib50-dev libreadline4-dev lua50 lua50-doc # Mail fetchmail grepmail mutt # Postscript and dvi a2ps gs gv tetex-base tetex-bin # Tcl/Tk/Expect expect expectk tcl8.4 tcl8.4-doc tk8.4 tk8.4-doc # X fvwm inkscape gimp tkdiff x-window-system xnest xzoom # (Misc) cdparanoia gawk gnupg lsof screen ssh strace sudo unzip wget zsh zsh-doc ##### # # rootstrap # 2004sep09 # ##### # «rootstrap» (to ".rootstrap") # (find-status "rootstrap") # (find-vldifile "rootstrap.list") # (find-udfile "rootstrap/") # (find-man "1 rootstrap") # (find-fline "/usr/bin/rootstrap") # (find-fline "/usr/lib/rootstrap/builder") # (find-fline "/usr/lib/rootstrap/modules/uml") # (find-fline "/usr/lib/rootstrap/modules/mkisofs") # (find-fline "/usr/lib/rootstrap/modules/docpurge") # (find-fline "/usr/lib/rootstrap/modules/tasksel") # (find-fline "/usr/lib/rootstrap/modules/mkfs") # (find-fline "/usr/lib/rootstrap/modules/base-config") # (find-fline "/usr/lib/rootstrap/modules/mount") # (find-fline "/usr/lib/rootstrap/modules/network") # (find-fline "/usr/lib/rootstrap/modules/localepurge") # (find-fline "/usr/lib/rootstrap/modules/umount") # (find-fline "/usr/lib/rootstrap/modules/debian") # (find-fline "/etc/rootstrap/workdir") # (find-fline "/etc/rootstrap/dhclient-script") # (find-fline "/etc/rootstrap/rootstrap.conf") # (find-fline "/etc/rootstrap/modules") # (find-status "cdebootstrap") # (find-vldifile "cdebootstrap.list") # (find-udfile "cdebootstrap/") ##### # # bootcd # 2004sep16 # ##### # «bootcd» (to ".bootcd") # (find-status "bootcd") # (find-vldifile "bootcd.list") # (find-udfile "bootcd/") # (find-fline "/etc/bootcd/bootcdwrite.conf") # (find-fline "/usr/bin/bootcdwrite") # (find-fline "/usr/share/bootcd/S12bootcdram.sh") # (find-fline "/usr/share/bootcd/S13bootcdflop.sh") # (find-fline "/usr/share/bootcd/bootcd-check.lib") # (find-fline "/usr/share/bootcd/bootcd-ia64.lib") # (find-fline "/usr/share/bootcd/bootcd-run.lib") # (find-fline "/usr/share/bootcd/bootcd2disk") # (find-fline "/usr/share/bootcd/bootcd2disk.conf") # (find-fline "/usr/share/bootcd/bootcdflopcp") # (find-fline "/usr/share/bootcd/default.txt") # (find-fline "/usr/share/doc/bootcd/ChangeLog.gz") # (find-fline "/usr/share/doc/bootcd/FAQ.gz") # (find-fline "/usr/share/doc/bootcd/README.Debian") # (find-fline "/usr/share/doc/bootcd/changelog.gz") # (find-fline "/usr/share/doc/bootcd/copyright") # (find-man "1 bootcd") # (find-man "1 bootcd2disk") # (find-man "1 bootcdflopcp") # (find-man "1 bootcdwrite") # (find-man "5 bootcd2disk.conf") #* # (find-fline "/etc/bootcd/bootcdwrite.conf") cp -v /etc/bootcd/bootcdwrite.conf /tmp/ cat >> /tmp/bootcdwrite.conf <<'%%%' SRCDISK=/sarge-root KERNEL=$SRCDISK/boot/vmlinuz-2.4.19 KERNEL=$SRCDISK/boot/vmlinuz-2.4.26-1-386 DISABLE_CRON="$SRCDISK/etc/cron.daily/find $SRCDISK/etc/cron.daily/standard $SRCDISK/etc/cron.daily/security" ISO_ONLY="yes" BLANKING="no" CLEAN_VAR="no" %%% # (find-man "1 bootcdwrite" "-c <config directory>") # (find-fline "/usr/bin/bootcdwrite") # (find-fline "/var/log/bootcdwrite.log") # (find-fline "/usr/share/bootcd/bootcd-check.lib" "/var will be cleaned") bootcdwrite -c /tmp #* # (find-man "1 dd") # (find-man "8 mkswap") dd bs=1M count=512 if=/dev/zero of=/tmp/swapfile chmod 600 /tmp/swapfile mkswap /tmp/swapfile swapon /tmp/swapfile cat /proc/swaps #* NOT_TO_RAMCD (NOT_TO_RAM v NOT_TO_CD) = . . . . . . . . . . . . . 0 RAM_ALL (etc v home v root v NOT_TO_RAM v NOT_TO_CD) = . . . . . . 10564 Needed RAM (RAM_ALL - NOT_TO_RAMCD) = . . . . . . . . . . . . . . 10564 90 % of RAM = . . . . . . . . . . . . . . . . . . . . . . . . . . 7372 --- WARNING --- Not enough RAM (Needed RAM > 90 % of RAM) CONFIG_ISO9660_FS=y seems not to be configured in /sarge-root/boot/vmlinuz-2.4.26-1-386 dd if=/dev/zero of=$SWAP bs=1024 count=65536 SWAP=/hdc6/tmp/swap1 #SWAP=/swap1 cat /proc/swaps swapon $SWAP cat /proc/swaps du -c /sarge-root du -c /sarge-root/var/cache/apt/archives du -c /var/spool/bootcd # (find-status "initrd-tools") # (find-vldifile "initrd-tools.list") # (find-udfile "initrd-tools/") # (find-status "mkinitrd-cd") # (find-vldifile "mkinitrd-cd.list") # (find-udfile "mkinitrd-cd/") # (find-fline "/etc/default/initrd-tools.sh") # (find-fline "/etc/init.d/initrd-tools.sh") # (find-fline "/etc/mkinitrd/mkinitrd.conf") # (find-fline "/etc/mkinitrd/modules") # (find-fline "/usr/sbin/mkinitrd") # (find-fline "/usr/share/doc/initrd-tools") # (find-fline "/usr/share/doc/initrd-tools/NEWS.Debian.gz") # (find-fline "/usr/share/doc/initrd-tools/changelog.gz") # (find-fline "/usr/share/doc/initrd-tools/copyright") # (find-fline "/usr/share/initrd-tools") # (find-fline "/usr/share/initrd-tools/echo") # (find-fline "/usr/share/initrd-tools/init") # (find-fline "/usr/share/initrd-tools/linuxrc") # (find-fline "/usr/share/initrd-tools/scripts") # (find-fline "/usr/share/initrd-tools/version") # (find-man "5 mkinitrd.conf") # (find-man "8 mkinitrd") # (find-status "cramfsprogs") # (find-vldifile "cramfsprogs.list") # (find-udfile "cramfsprogs/") # (find-fline "/usr/sbin/cramfsck") # (find-fline "/usr/sbin/mkcramfs") # (find-man "8 mkcramfs") # (find-fline "/usr/share/doc/cramfsprogs/README") # (find-fline "/usr/share/doc/cramfsprogs/copyright") # (find-fline "/usr/share/doc/cramfsprogs/NOTES.gz") # (find-fline "/usr/share/doc/cramfsprogs/changelog.Debian.gz") file -L /initrd.img # (find-fline "/usr/include/linux/initrd.h") # (find-man "4 initrd") http://debian-br-cdd.alioth.debian.org/debian/ bt> Toda vez q inicio meu pc tenho que configurar o pppoeconf echo ppp >> /etc/modules # (find-efunction 'repeat-complex-command) # (find-man "8 mkzftree") # (find-status "mkisofs") # (find-vldifile "mkisofs.list") # (find-udfile "mkisofs/") # (find-man "1 dirsplit" "mp3/Collections/Rock") # (find-fline "/usr/bin/dirsplit") # (find-man "8 mkisofs") # (find-k24file "") # (find-k24file "fs/isofs/") # (find-k24file "fs/isofs/compress.c") ##### # # debconf pre-seeding # 2004sep18 # ##### # (find-status "debconf") # (find-vldifile "debconf.list") # (find-udfile "debconf/") # (find-status "debconf-utils") # (find-vldifile "debconf-utils.list") # (find-udfile "debconf-utils/") # (find-man "1 debconf-get-selections") # (find-man "1 debconf-getlang") # (find-man "1 debconf-loadtemplate") # (find-man "1 debconf-mergetemplate") # (find-fline "/usr/bin/debconf-get-selections") # (find-fline "/usr/bin/debconf-getlang") # (find-fline "/usr/bin/debconf-loadtemplate") # (find-fline "/usr/bin/debconf-mergetemplate") # (find-man "1 debconf-copydb") # (find-man "1 debconf-set-selections") # (find-man "1 debconf-set-selections" "can be used to pre-seed") # (find-man "1 debconf-show") # (find-fline "/usr/bin/debconf") # (find-fline "/usr/bin/debconf-communicate") # (find-fline "/usr/bin/debconf-set-selections") # (find-fline "/usr/bin/debconf-show") # (find-fline "/usr/lib/python2.3/site-packages/debconf.py") # (find-fline "/usr/sbin/dpkg-preconfigure") # (find-fline "/usr/sbin/dpkg-reconfigure") ##### # # debconf-show # 2004dec02 # ##### # (find-sh "sudo debconf-show --listdbs") # (find-sh "sudo debconf-show --listowners | sort") # (find-sh "debconf-show --listowners --db=configdb | sort") # (find-sh "debconf-show --listowners --db=config | sort") # (find-sh "debconf-show --listowners --db=passwords") debconf-show --listdbs debconf-show --listowners | sort debconf-show --listowners --db=configdb | sort debconf-show --listowners --db=config | sort debconf-show --listowners --db=passwords debconf-show d-i debconf-show d-i --db=configdb debconf-show d-i --db=config debconf-show drupal --db=passwords # (find-fline "/etc/debconf.conf") # (find-fline "/var/cache/debconf/config.dat") # (find-fline "/var/cache/debconf/templates.dat") # (find-fline "/var/cache/debconf/passwords.dat") # (find-fline "/var/cache/debconf/config.dat" "exim4/dc_eximconfig_configtype") # (find-fline "/var/cache/debconf/templates.dat" "dc_eximconfig_configtype") ##### # # dvalois's presentation on livecds (using bootcd) # 2004sep18 # ##### #* # http://dvalois.net/downloads/livecd.tar.bz2 rm -Rv /tmp/Apresenta_CD_Live/ tar -C /tmp/ -xvjf $S/http/dvalois.net/downloads/livecd.tar.bz2 cd /tmp/Apresenta_CD_Live/ #* cd /tmp/Apresenta_CD_Live/ openoffice cdlive.sxi & #* # Slide 2 Sarge debootstrap -arch i386 woody /usr/local/chroot-sarge # Slide 3 Sarge chroot /usr/local/chroot-sarge # Slide 4 # Instalar Pacotes, configurar e testar # Montar /proc mount /proc proc -t proc # # Configurar sources.list de acordo com woody, sarge ou sid mcedit /etc/apt/sources.list # # Instalar o que quiser... apt-get install x-window-system-core gnome-core gdm gdm-themes # # Instalar bootcd e bootcd-dvdplus no chroot chroot /usr/local/chroot-sid # Slide 5 # Montar /proc mount /proc proc -t proc # # Configurar sources.list de acordo com woody, sarge ou sid mcedit /etc/apt/sources.list # # Instalar o que quiser... apt-get install x-window-system-core gnome-core gdm gdm-themes # # Instalar bootcd e bootcd-dvdplus no chroot apt-get install bootcd bootcd-dvdplus # # Sair do chroot umount /proc ; exit # Slide 6 # Instalar fora do chroot (no seu sistema habitual) apt-get install bootcd bootcd-dvdplus # # Configurar bootcdwrite.cnf mcedit /etc/bootcd/bootcdwrite.cnf # Slide 7 # Define o ponto inicial de onde a imagem será montada # Exemplo, para montar um bootcd do seu sistema use: # SCRDISK=/ SRCDISK=/usr/local/chroot-sid # # Define o kernel que será utilizado: # KERNEL=$SRCDISK/boot/vmlinuz-2.6.7 # Slide 8 # Duas 'ramdisks' (ram1 e ram2) serão criadas, para conter os seguintes diretórios: # ram1: /dev/ /etc /home /root /tmp # ram2: /var # # Ambas tendo o mesmo tamanho e definido em RAMDISK_SIZE # # Exemplo: Se você deseja gastar 16Mb com 'ramdisks', use: RAMDISK_SIZE=8192 # Slide 9 TYP=CD # Slide 10 CDSCSI=0,0,0 # Slide 11 CDSPEED=8 # Slide 12 # Você pode especificar um ou mais dispositivos de CD para # inicialização. A primeira entrada será considerada como # padrão. Os demais deverão ser informados como opções de # 'boot' pelo usuário. Veja DISPLAY. # CDDEV="/dev/hdc /dev/hda /dev/hdb /dev/hdc /dev/hdd " # CDDEV="/dev/hdc /dev/hda /dev/hdb /dev/hdc /dev/hdd /dev/sr0 /dev/scd0 /dev/scd1" # Slide 13 # BLANKING=yes|no|auto # # Se você for regravar um CD ou DVD, você deve especificar # BLANKING=yes. Se BLANKING=auto for especificado o # bootcdwrite irá sempre tentar apagar o CD, porém irá ignorar # todos os erros durante o processo. # BLANKING=no # Slide 14 # Texto para ser exibido durante o boot (veja a documentação do # syslinux). Esta opção não é suportada em plataformas HPPA # (HP PA-RISC). Exemplo: (de onde você pode colocar # 'display.txt'). # DISPLAY="$SRCDISK/usr/share/bootcd/display.txt" # Este é um texto padrão que exibe as opções de inicialização # /dev/hda, /dev/hdb, /dev/hdc, /dev/hdd, /dev/scd0 and /dev/scd1: # DISPLAY="/usr/share/bootcd/default.txt" # DISPLAY="/usr/share/bootcd/default.txt" # Slide 15 # Se você não tem um gravador de CD e deseja apenas criar uma # imagem ISO então use ISO_ONLY="yes" e defina, também, # BLANKING="no" neste arquivo. # ISO_ONLY="yes" # Slide 16 # DO_CHECK=yes|no # Verificar a ocorrência de possíveis problemas pode levar um # bom tempo,mas é recomendável fazê-lo. # DO_CHECK=yes # Slide 17 # Se você precisar incluir opções de boot para o kernel como # "root=..." e "ramdisk_size=...", veja maiores detalhes em # "append" em lilo.conf(5). # Exemplo: # APPEND=\\\"aha1542=0x230 console=ttyS0,9600n8\\\" # APPEND="" # Slide 18 # Se SCRDISK não couber em um CD você pode decidir que # diretórios de SCRDISK não serão incluídas no CD. # Exemplo de como excluir /home/user1 e /home/user2 # NOT_TO_CD="$SRCDISK/home/user1$SRCDISK/home/user2" # Exemplo2: # NOT_TO_CD="$SRCDISK/home/bs/download $SRCDISK/home/bs/vmware" # NOT_TO_CD="" # Slide 19 # Quanto você inicializa do CD, alguns arquivos serão copiados # para a RAM. Aqui você decide, o que NÃO ficará em RAM. # Os diretórios /etc /var /dev /tmp /home e /root deverão estar em # RAM pois é preciso gravar neles. Nos CDs estes diretórios ficarão # com nomes diferentes (/etc/ro, /var.ro, ...) portanto você nunca # deverá usar estes nomes # em NOT_TO_RAM!!!. Os arquivos # que você excluir em NOT_TO_RAM, serão copiados para o CD e # você terá um link simbólico apontando para eles no sistema de # arquivo em RAM..Exemplo: Se você deseja excluir /home/s/bigfile e /home/bs/bigdir/; NOT_TO_RAM="$SRCDISK/home/bs/bigfile $SRCDISK/home/bs/bigdir" # NOT_TO_RAM="" # Slide 20 # SSHOSTKEY=yes|no # Se você for usar SSH sera útil ter um único SSH HOSTKEY para # cada CD. Eles serão gerados durante a gravação com # SSHHOSTKEY=yes. # SSHHOSTKEY=yes # Espaço disponível para o log e a imagem de disco # ERRLOG=/var/log/bootcdwrite.log VAR=/var/spool/bootcd # Slide 21 # Se CLEAN_VAR=yes então alguns arquivos de 'cache' em /var # serão apagados antes de /var ser copiado para o CD de boot. Isto # irá minimizar a necessidade de espaço no CD. Atualmente # apenas o seguinte comando será executado: apt-get clean # Você pode desligar esta opção com CLEAN_VAR=no # CLEAN_VAR=yes # Slide 22 # FASTBOOT=yes|no # # Se FASTBOOT=yes então imagens adcionais da ramdisk será # criadas pelo bootcdwrite e copiados no CD. Isto permite uma # inicialização mais rápida, mas precisará de # um espaço extra no CD. # # Padrão: # FASTBOOT=yes # FASTBOOT=yes # Slide 23 # ISOLINUX=auto|yes|no # Veja /usr/doc/syslinux/isolinux.doc.gz. # Se for uma versão mais recente do syslinux então isolinux poderá # ser usado ao invés dele e ISOLINUX=auto será tratado como # ISOLINUX=yes. # # Se você deseja permanecer usando syslinux entãi use # ISOLINUX=no. Padrão: ISOLINUX=auto # ISOLINUX=auto # Slide 24 # SYSLINUX_SAVE=yes|no # Esta opção só será considerada se o isolinux não estiver sendo # utilizado. Se SYSLINUX_SAVE=yes então o syslinux será # chamado com a opção "-s". # A página do manual do syslinux diz: '(...) isto instala a "segura, # lenta e estúpida" versão do syslinux (...)'. Em versões mais novas # a opção "-s" é sempre usada. Agora você pode alterá-la. # # Padrão: SYSLINUX_SAVE=yes # Slide 25 # ARCH=auto|HPPA|X86|ia64 # You can create bootcd for HP PA-RISC too. It is possible to let # bootcdwrite detect your architecture with ARCH=auto. # To use ARCH=HPPA the debian package bootcd-hppa must be # installed..Default: ARCH=auto ARCH=auto # Slide 26 # COMPRESS=<yes|no|auto> # Se você precisa usar a compressão transparente em CDs (via # ISO9660 Rock Ridge) coloque COMPRESS=yes. Senão, use # COMPRESS=no. Se desejar que o bootcdwrite verifique se você # precisa ou não de compressão por use COMPRESS=auto. # # Se você definir COMPRESS=auto o bootcdwrite tentará verificar, # se você tem todos os programas necessários instalados. Neste # caso você deve definir DO_CHECK=yes se você for usar # COMPRESS=auto. COMPRESS="auto" # Slide 27 # Copie o seu kernel, config e system.map cp /boot/System.map-2.6.7 /usr/local/chroot-sid/boot/System.map-2.6.7 cp /boot/config-2.6.7 /usr/local/chroot-sid/boot/config-2.6.7 cp /boot/vmlinuz-2.6.7 /usr/local/chroot-sid/boot/vmlinuz-2.6.7 # Slide 28 # Execute o bootcdwrite como root su - ****** bootcdwrite # Slide 29 # Slide 30 # Executando bootcdwrite # Slide 31 # Gravando a iso cdrecord dev=/dev/hdc -speed=8 -v -driveropts=burnfree -data /var/spool/bootcd/cdimage.iso # Local Variables: # coding: utf-8-unix # End: