===== EFI / BIOS ===== Auf dem PC Bootreihenfolge auf DVD ändern, eines von zwei Einträgen. ===== boot_hybrid.img ===== OpenSuse 15.2 bootet derzeit nicht. Hier muss ein anderer Weg gefunden werden, da es eine neue Datei verwendet die vorher noch nicht implementiert war. In der neuen Version wird ein ''boot/x86_64/loader/boot_hybrid.img'' verwendet. ==== ISO Mounten und bearbeiten ==== Die Suse KDE Live ISO wird als Verzeichnis eingehängt: mkdir -p /mnt/linux mount -o loop openSUSE-Leap-15.1-KDE-Live-x86_64.iso /mnt/linux Die eingehängte ISO ist nur Read-only, daher den Inhalt zum neuen Arbeitsverzeichnis kopieren von wo aus es bearbeitet werden kann. cd /mnt/ tar -cvf - linux | (cd /var/tmp/ && tar -xf - ) Danach lässt sich auf dem Inhalt der ISO Datei zugreifen. Das eigentliche Live System wird beim booten in einer RAM Disk geladen. Den Inhalt des Live Systems findet man als //squashfs// Image wieder: iglu:/var/tmp/linux # l total 0 drwx------ 1 root root 26 Sep 30 17:51 ./ drwxrwxrwt 1 root root 13058 Dec 17 12:56 ../ drwxr-xr-x 1 root root 8 Sep 30 17:51 EFI/ drwxr-xr-x 1 root root 24 Sep 30 17:51 LiveOS/ drwxr-xr-x 1 root root 52 Sep 30 17:51 boot/ iglu:/var/tmp/linux # l LiveOS/ total 818624 drwxr-xr-x 1 root root 24 Sep 30 17:51 ./ drwx------ 1 root root 26 Sep 30 17:51 ../ -rw------- 1 root root 838270976 Sep 30 17:51 squashfs.img ==== Squashfs Image entpacken ==== Das Squashfs Image lässt sich nicht direkt verwenden. Für Änderungen muss es erst mit ''unsquashfs'' entpackt werden, dann werden die Änderungen am Image vorgenommen und anschließend wird es wieder mit ''mksquashfs'' verpackt. Ein temporäres Verzeichnis erstellen und es betreten: mkdir /root/squashfs-temp cd /root/squashfs-temp Um das enthaltene //squashfs.img// zu entpacken wird der Kommando ''unsquashfs'' verwendet: unsquashfs /var/tmp/linux/LiveOS/squashfs.img l /root/squashfs-temp/squashfs-root/LiveOS/ total 4643840 drwxr-xr-x 1 root root 20 Sep 30 17:32 ./ drwx------ 1 root root 12 Sep 30 17:32 ../ -rw------- 1 root root 4755292160 Sep 30 17:36 rootfs.img ==== Image einhängen ==== Das entpackte Image einhängen. mount rootfs.img /media/sicherung/Images_ISOs/secureDVD/imgmount/ zusätzliche Verzeichnisse einhängen: mount --bind /sys/ /media/sicherung/Images_ISOs/secureDVD/imgmount/sys/ mount --bind /proc/ /media/sicherung/Images_ISOs/secureDVD/imgmount/proc/ mount --bind /run/ /media/sicherung/Images_ISOs/secureDVD/imgmount/run/ ===== CHROOT ===== Mit ''chroot'' das Live System betreten chroot /media/sicherung/Images_ISOs/secureDVD/imgmount/ Nun arbeitet man direkt auf dem Dateisystem des Live-Systems! Das Passwort nach Wunsch ändern: passwd linux Auch root PW setzen!! passwd Namensauflösung funktioniert zunächst nicht, weder nur IP-Adr. angeben oder ''/etc/resolv.conf'' erstellen: search fritz.box nameserver 172.19.50.80 nameserver 172.19.50.81 ==== Alte Repos entfernen ==== Mit dem zypper Kommando die Software-Quellen überarbeiten und nicht benötigte Software entfernen. zypper rr 1 2 3 4 5 6 7 8 9 10 Optional können die openSuse Repos vom lokalen **reposerver** eingebunden werden um zusätzliche Software mit ''zypper'' installieren zu können: zypper ar -e http://smt1.fritz.box/SUSE/distribution/leap/15.2/repo/non-oss/ non-oss zypper ar -e http://smt1.fritz.box/SUSE/update/leap/15.2/non-oss/ update_non-oss zypper ar -e http://smt1.fritz.box/SUSE/distribution/leap/15.2/repo/oss/ oss zypper ar -e http://smt1.fritz.box/SUSE/update/leap/15.2/oss/ update_oss zypper cc -a zypper ref Direkt mit ''zypper'' nicht benötigte Software Pakete entfernen: zypper --non-interactive rm patterns-games-games zypper --non-interactive rm libvlccore9 libvlc5 zypper --non-interactive rm patterns-office-office zypper --non-interactive rm patterns-kde-kde_office zypper --non-interactive rm MozillaFirefox zypper --non-interactive rm MozillaFirefox-branding-openSUSE zypper --non-interactive rm pulseaudio zypper --non-interactive rm alsa zypper --non-interactive rm alsa-oss alsa-plugins zypper --non-interactive rm mpg123-pulse zypper --non-interactive rm libmusicbrainz5-1 zypper --non-interactive rm libwebrtc_audio_processing1 zypper --non-interactive rm kde-print-manager yast2-printer zypper --non-interactive rm samba-libs libsamba-errors0 zypper --non-interactive rm bluez* zypper --non-interactive rm liblirc_client0 zypper --non-interactive rm phonon4qt5-backend-gstreamer zypper --non-interactive rm libmediacheck5 zypper --non-interactive rm kdeconnect-kde zypper --non-interactive rm NetworkManager-openconnect zypper --non-interactive rm openconnect zypper --non-interactive rm NetworkManager-openvpn zypper --non-interactive rm NetworkManager-pptp zypper --non-interactive rm libwicked-0-6 Das entfernen vom ''wicked-service'' müsste noch geprüft werden, da zu viel entfernt wird. Ansonsten mit folgenden Kommando gelöschte Pakete nachinstallieren: zypper --non-interactive in plasma5-session-wayland Alternativ unnötige Software entfernen mit dem ''rpm'' Kommando: rpm -qa "*game*" patterns-games-games-20170319-lp151.2.1.x86_64 S | Name | Summary | Type --+----------------------+---------+-------- i | games | Games | pattern i | patterns-games-games | Games | package ==== Netzwerk deaktivieren ==== * Kernel Modul blacklisten In der Datei ''/etc/modprobe.d/50-blacklist.conf'' die Netzwerkkarten Module deaktivieren. blacklist e1000e ... Systemd Dienste deaktivieren mit ''systemctl'' systemctl disable wicked.service === Bearbeiten des Boot Menüs vom Grub === gfxboot --add-languages de_DE --default-language de_DE gfxboot --change-config keymap=de_DE === Aufräumen und verlassen === zypper cc -a rm ~/.bash_history rm /var/log/tallylog rm /var/log/lastlog rm /var/log/zypp/history rm /var/log/zypper.log rm -r /var/log/cups/ rm -r /var/log/krb5/ history -c Das Live System(chroot Umgebung) verlassen mit **Strg + D** Das System aushängen: umount /media/sicherung/Images_ISOs/secureDVD/imgmount/proc/ umount /media/sicherung/Images_ISOs/secureDVD/imgmount/run/ umount /media/sicherung/Images_ISOs/secureDVD/imgmount/sys umount /media/sicherung/Images_ISOs/secureDVD/imgmount ==== squashfs wieder neu erstellen ==== Nach Änderungen //squashfs// wieder neu verpacken mit dem ''mksquashfs'' Kommando: Der Kommando ''mksquashfs'' wird ab der Wurzel des entpackten //squashfs// aufgerufen cd /root/squashfs-temp/ Den folgenden Kommando erstellt und komprimiert das squashfs-Image ordentlich: mksquashfs squashfs-root/ livefs.squashfs -noappend -always-use-fragments -b 1048576 -comp xz -Xbcj x86 mv /root/squashfs-temp/livefs.squashfs /var/tmp/linux/LiveOS/squashfs.img iglu:~/root_squashfs-temp # l /var/tmp/linux/LiveOS/ total 910720 drwxr-xr-x 1 root root 24 Nov 3 08:56 ./ drwxr-xr-x 1 root root 26 Nov 2 07:22 ../ -rw-r--r-- 1 root root 932577280 Nov 2 16:33 squashfs.img Das Image ist aktuell 933MB groß. ==== Die neue ISO erstellen ==== cd /var/tmp/linux/ iglu:/var/tmp/linux # l total 0 drwx------ 1 root root 26 Dec 17 13:39 ./ drwxrwxrwt 1 root root 13080 Dec 17 13:56 ../ drwxr-xr-x 1 root root 8 Sep 30 17:51 EFI/ drwxr-xr-x 1 root root 24 Dec 17 13:39 LiveOS/ drwxr-xr-x 1 root root 52 Sep 30 17:51 boot/ === Optimierungen === Man könnte noch LänderSprachen entfernen die nicht benötigt werden: Den Pfad ''/var/tmp/linux/boot/x86_64/loader/'' kontrollieren Im nächsten Schritt sollten die alten zuvor erstellten iso Dateien entfernt werden, sonst wundert man sich warum die neue Iso-Datei zu groß ist :!: Der Relative Pfad zur isolinux.bin der ISO-Datei muss angegeben werden: mkisofs -o suse15_secure.iso -b boot/x86_64/loader/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -V "openSUSE_Leap_15.1_KDE_Live" . ==== GFXboot.cfg ==== In der Datei ''/var/tmp/linux/boot/x86_64/loader/gfxboot.cfg'' das Tastatur Layout auf deutsch ändern. ; default keymap (e.g. de-latin1-nodeadkeys or cz-lat2-us) keymap=de_DE