Re: Om debian på desktoppen
On Tue, 7 May 2024, Flemming Bjerke wrote: Den 06.05.2024 kl. 15.18 skrev Povl Ole Haarlev Olsen: Har du prøvet Debian backports? Fordi jeg ikke orker at styre det: It is recommended to pick out single backports which fit your needs, and not to use all backports available. https://wiki.debian.org/Backports Jeg er ikke sikker på, at jeg ved hvorfor du mener det er besværligt at styre. Du installer en pakke som normalt. ("dia" er, som sagt, ikke i backports, men da du ikke har nævnt andre pakker, bruger jeg alligevel den som eksempel.) Du opdager, at "dia" fra stable af den ene eller anden grund ikke er "god nok". Din løsning har været noget med at køre dia fra en Kubuntu chroot. Med backports beder du i stedet pakkesystemet om at installere dia fra backports. Enten vha. apt install dia/bookworm-backports (hvor du kun får "dia" fra backports, men ikke eventuelle dependencies) eller vha. apt -t bookworm-backports install dia (hvor både "dia" og eventuelle dependencies bliver installeret fra backports) Og... Det er vist det. Nyeste Q2OS er baseret på bookworm med nogle systemændringer. ls /etc/apt/sources.list.d/ 10_q4os.list 20_debian.list 30_debian_backports.list (backports er ikke aktiveret) Hint: Hvis man vil disable en fil i /etc/apt/sources.list.d/ uden at pille i selve filen, kan man nøjes med at rename filen, så den ikke hedder *.list, f.eks. hedder nogle af mine *.list.disabled chroot /a2 mount /dev/sda4 /home Hvad er grunden til, at du ikke bind-mounter /home? Det er vel også det rigtigste at bruge bind. Men gør det nogen forskel? Med bind-mount burde der kun være een version af filesystem koden i brug og derfor også kun een ting, der snakker med /dev/sda4. Mens der med et "rigtigt" mount kunne være to versioner filesystem koden i brug, en for /home og en for /a2/home, og derfor to ting, der prøver at snakke med /dev/sda4 samtidig. Jeg har ikke checket, om det kunne give problemer. Det var lettere bare at bruge et bind-mount og slippe for at tænke over den slags ting. chroot /a2 #Her kan man udføre alle mulige kommandoer. Skriptet venter til man kører: exit. #chroot --userspec=flem:flem /a2 (fungerer ikke - forstår ikke hvorfor) Hmm, hvorfor har jeg ikke hørt om --userspec før?! man chroot Ja, jeg er godt klar over, at det selvfølgelig står i man siden. Men hvem læser man sider, når ens script virker "fint"? :-) Og nu kan mit skript forenkles ganske meget: #!/bin/bash mount --bind /home /a2/home bash -c "HOME=/home/flem chroot --userspec=flem:flem /a2 $1" Med "$@" i stedet for "$1" burde du også kunne give din kommando argumenter, f.eks. bede dia om at åbne en specifik fil. Det virker ikke som om man behøver mount --bind /sys osv. Faktisk fik jeg lidt problemer når jeg gjorde det fordi alt i /dev/pts/ forsvandt. Hvorfor fatter jeg ikke, men det har nok noget at gøre med: While ‘chroot’ is a powerful tool, it’s not a security measure by itself. Processes that are running as root can break out of the chroot jail. https://hopeness.medium.com/master-the-linux-chroot-command-a-comprehensive-guide-f2026f913726 Ok, det er ikke noget, jeg selv har oplevet, men det er efterhånden også et godt stykke tid siden jeg sidst brugte chroot, så måske er noget blev ændret. Men jeg skal nok ikke opdatere kubuntu via chroot ... Risikerer jeg ikke at der kommer ged i kernen og boot ... osv.? Jeg har ikke haft /boot mountet i mine chroots, så den slags har jeg aldrig tænkt nærmere over. Hvis et chroot ville ændrer i hvad det troede var /boot, så var det i virkelighed f.eks. /opt/wheezy/boot og ikke det rigtige /boot. -- Povl Ole
Re: Om debian på desktoppen
Den 06.05.2024 kl. 15.18 skrev Povl Ole Haarlev Olsen: On Mon, 6 May 2024, Flemming Bjerke wrote: Jeg har adskillige gange opgivet debian på desktoppen fordi jeg ustandselig fik problemer med alt muligt der ikke rigtig virkede, bl.a. programmer som ikke fungerede og ikke kunne opdateres pga. debians restriktioner på hvornår programmer kunne blive stable. (Jeg har dog ikke prøvet bookworm af.) Jeg har så valgt at køre med kubuntu i årevis. Har du prøvet Debian backports? Fordi jeg ikke orker at styre det: It is recommended to pick out single backports which fit your needs, and not to use all backports available. https://wiki.debian.org/Backports "dia" er, så vidt jeg kan se, ikke i backports, men måske kunne det bruges med nogle af de andre programmer, hvor du ønsker en nyere version. Jeg er meget tilfreds med at køre et debian system (sources er primært debian stable), for jeg har normalt ikke brug for de nyeste versioner af forskelligt software. Derimod er stabiliteten vigtig for mig. Men ind i mellem får man brug for en nyere version af et program. F.eks. er bookworm's version af dia håbløst buggy. Så fandt jeg på at chroot til min kubuntu som ligger (passivt) Hvordan ved du, at bookworms dia er buggy, hvis du ikke har prøvet bookworm? Nyeste Q2OS er baseret på bookworm med nogle systemændringer. ls /etc/apt/sources.list.d/ 10_q4os.list 20_debian.list 30_debian_backports.list (backports er ikke aktiveret) chroot /a2 mount /dev/sda4 /home Hvad er grunden til, at du ikke bind-mounter /home? Det er vel også det rigtigste at bruge bind. Men gør det nogen forskel? chroot /a2 #Her kan man udføre alle mulige kommandoer. Skriptet venter til man kører: exit. #chroot --userspec=flem:flem /a2 (fungerer ikke - forstår ikke hvorfor) Hmm, hvorfor har jeg ikke hørt om --userspec før?! man chroot Hvilken fejlbesked får du? chroot --userspec=flem:flem /a2 To run a command as administrator (user "root"), use "sudo ". See "man sudo_root" for details. bash: /root/.bashrc: Adgang nægtet Som det fremgår, virker det ikke som at bruge: "su bruger" idet man ikke får adgang til det brugeren normalt har adgang til. Så uanset man er bruger (og altså ikke root), kan man f.eks. ikke køre dia: flem@baren:/$ whoami flem flem@baren:/$ dia ** (dia:102168): CRITICAL **: 08:48:13.495: Could not create per-user Dia configuration directory -- På nettet fandt Jeg en måde at omgå dette på: bash -c "HOME= chroot --userspec=: /bin/bash -i" Og nu kan mit skript forenkles ganske meget: #!/bin/bash mount --bind /home /a2/home bash -c "HOME=/home/flem chroot --userspec=flem:flem /a2 $1" umount /a2/home Med dette skript kan jeg afvikle et program på min ubuntu-partition. F.eks. ./chroot-program.sh dia Og hvis man ikke angiver et program, startes en kommandoprompt. Overordentlig nyttigt. Det virker ikke som om man behøver mount --bind /sys osv. Faktisk fik jeg lidt problemer når jeg gjorde det fordi alt i /dev/pts/ forsvandt. Hvorfor fatter jeg ikke, men det har nok noget at gøre med: While ‘chroot’ is a powerful tool, it’s not a security measure by itself. Processes that are running as root can break out of the chroot jail. https://hopeness.medium.com/master-the-linux-chroot-command-a-comprehensive-guide-f2026f913726 Men jeg skal nok ikke opdatere kubuntu via chroot ... Risikerer jeg ikke at der kommer ged i kernen og boot ... osv.? Nu kan jeg starte f.eks. kubuntus dia (og libreoffice) fra en terminal, og hvis jeg gør det med et & efter, fungerer fungerer programmet videre selv efter exit fra chroot. Hvad synes I om min løsning? Jeg har haft noget i samme stil (med /home bind-mounted) for at kunne bruge en ældre version af bl.a. xpra. Jeg havde alle mine bind-mounts i /etc/fstab og en desktop launcher, der "run in terminal" kørte su -c "chroot /opt/wheezy /bin/su - stderr -c /usr/bin/xfce4-terminal & bg" (Med --userspec ville den linie sikkert kunne skæres kraftigt ned.) Launcher'en startede en terminal og alt startet i den terminal blev kørte fra en wheezy installation, jeg havde debootstrap'et i /opt/wheezy. Det virkede fint til mit formål. Sejt! Det er selvfølgelig ikke uproblematisk at køre to forskellige systemer på samme home-partition, men hvis man ikke bruger samme programmer på dem, burde det vel ikke skabe de store problemer? Hvis programmer opførte sig nogenlunde pænt, ville det heller ikke være noget problem, at køre de samme programmer på samme homedir. Da jeg var studerende var vores homedirs mountet på Linux, HP-UX, IRIX, Solaris, ... og jeg tænkte ikke ret meget over, om jeg kunne tillade mig, at starte et program på en given platform eller ej. Men jeg ved godt, at der er nogle programmer, der meget gerne vil lave en "upgrade" af deres config i ~/.config uden at tænke over, at man måske deler sit homedir mellem mange forskellige installationer. Det er eet af
Re: Om debian på desktoppen
On Mon, 6 May 2024, Flemming Bjerke wrote: Jeg har adskillige gange opgivet debian på desktoppen fordi jeg ustandselig fik problemer med alt muligt der ikke rigtig virkede, bl.a. programmer som ikke fungerede og ikke kunne opdateres pga. debians restriktioner på hvornår programmer kunne blive stable. (Jeg har dog ikke prøvet bookworm af.) Jeg har så valgt at køre med kubuntu i årevis. Har du prøvet Debian backports? "dia" er, så vidt jeg kan se, ikke i backports, men måske kunne det bruges med nogle af de andre programmer, hvor du ønsker en nyere version. Jeg er meget tilfreds med at køre et debian system (sources er primært debian stable), for jeg har normalt ikke brug for de nyeste versioner af forskelligt software. Derimod er stabiliteten vigtig for mig. Men ind i mellem får man brug for en nyere version af et program. F.eks. er bookworm's version af dia håbløst buggy. Så fandt jeg på at chroot til min kubuntu som ligger (passivt) Hvordan ved du, at bookworms dia er buggy, hvis du ikke har prøvet bookworm? på den anden partion. Og vupti fungerede dia igen. Jeg lavede følgende skript: --- #!/bin/bash mount --bind /dev /a2/dev mount --bind /dev/pts /a2/dev/pts mount --bind /proc /a2/proc mount --bind /sys /a2/sys chroot /a2 mount /dev/sda4 /home Hvad er grunden til, at du ikke bind-mounter /home? chroot /a2 #Her kan man udføre alle mulige kommandoer. Skriptet venter til man kører: exit. #chroot --userspec=flem:flem /a2 (fungerer ikke - forstår ikke hvorfor) Hmm, hvorfor har jeg ikke hørt om --userspec før?! Hvilken fejlbesked får du? chroot /a2 umount /dev/sda4 umount /a2/sys umount /a2/proc umount /a2/dev/pts umount /a2/dev echo 'a2 er nu forladt' (Mit kubuntu ligger på /a2 som monteres automatisk ved start.) Nu kan jeg starte f.eks. kubuntus dia (og libreoffice) fra en terminal, og hvis jeg gør det med et & efter, fungerer fungerer programmet videre selv efter exit fra chroot. Hvad synes I om min løsning? Jeg har haft noget i samme stil (med /home bind-mounted) for at kunne bruge en ældre version af bl.a. xpra. Jeg havde alle mine bind-mounts i /etc/fstab og en desktop launcher, der "run in terminal" kørte su -c "chroot /opt/wheezy /bin/su - stderr -c /usr/bin/xfce4-terminal & bg" (Med --userspec ville den linie sikkert kunne skæres kraftigt ned.) Launcher'en startede en terminal og alt startet i den terminal blev kørte fra en wheezy installation, jeg havde debootstrap'et i /opt/wheezy. Det virkede fint til mit formål. Det er selvfølgelig ikke uproblematisk at køre to forskellige systemer på samme home-partition, men hvis man ikke bruger samme programmer på dem, burde det vel ikke skabe de store problemer? Hvis programmer opførte sig nogenlunde pænt, ville det heller ikke være noget problem, at køre de samme programmer på samme homedir. Da jeg var studerende var vores homedirs mountet på Linux, HP-UX, IRIX, Solaris, ... og jeg tænkte ikke ret meget over, om jeg kunne tillade mig, at starte et program på en given platform eller ej. Men jeg ved godt, at der er nogle programmer, der meget gerne vil lave en "upgrade" af deres config i ~/.config uden at tænke over, at man måske deler sit homedir mellem mange forskellige installationer. Det er eet af problemer ved, at nogen ikke længere ser Linux som et multi-user system i UNIX-familien. -- Povl Ole
Om debian på desktoppen
Kære Debian-folk Jeg har adskillige gange opgivet debian på desktoppen fordi jeg ustandselig fik problemer med alt muligt der ikke rigtig virkede, bl.a. programmer som ikke fungerede og ikke kunne opdateres pga. debians restriktioner på hvornår programmer kunne blive stable. (Jeg har dog ikke prøvet bookworm af.) Jeg har så valgt at køre med kubuntu i årevis. Det skal lige bemærkes at jeg på min arbejdslaptop i årevis har kørt med 1 home-partition og 2 systempartitioner (så jeg kunne prøve nye systemer/versioner af uden at forstyrre mit arbejdssystem). Jeg har i stykke tid forsøgt forskellige forks af debian på gamle bærbare med f.eks. 4 GB Ram og en enkelt processor. Jeg har forsøgt: 1. Antix. Et temmelig godt system som jeg tilmed kørte fint et års tid min arbejdslaptop. Men det gik galt da jeg skulle opdatere systemet. Systemet er også lidt for nørdet at sætte op. F.eks. skal flere skriveborde sættes op i en eller anden fil som det selvfølgelig tog lidt netsøgningstid at finde og finde ud af hvordan den skulle ændres. Og meget af menusystemet var fyldt med forskellige desktop-systemer m.m. som man ikke lige havde tænkt sig at sætte sig ind i. Installation gik heller ikke altid lige godt. 2. Bunsenlab. Et godt system, men også for nørdet at sætte op. Jeg orkede ikke at det næsten altid var op ad bakke at ændre på et eller andet. 3. Puppy-linux. Et mærkeligt system som man altid er root på. Det lykkedes mig aldrig at installere det 100% på harddisken. Jeg kunne godt få det til at lægge systemfilerne på harddisken, men selve boot fungerede åbenbart kun fra usb. Ikke anvendeligt til daglig brug. 4. Q4OS. Den korte historie er at det er den bedste desktop jeg har kørt overhovedet. Jeg bruger kde-versionen idet det kde er så let at sætte op. Der er arbejdet med at gøre systemet letvægts så det fungerer rigtig godt på ældre laptops selvom det vist ikke er helt så letvægt som antix og bunsenlab. Installation har indtil videre fungeret perfekt. Så vidt jeg kan se har folkene bag Q4OS gjort det rigtige: De har lænet sig op ad to store systemer: debian og kde og tilpasset det forholdsvis lidt efter deres målsætning: "Fast and friendly, desktop oriented operating system based on Debian Linux. Providing a set of dedicated utilities and specific optimizations, combined with a focus on getting a productive system easily. This makes it ideal for people who want to get a working environment tailored to individual needs and preferences. From this perspective, Q4OS is suitable for both newcomers as well as experienced computer users." Jeg er meget tilfreds med at køre et debian system (sources er primært debian stable), for jeg har normalt ikke brug for de nyeste versioner af forskelligt software. Derimod er stabiliteten vigtig for mig. Men ind i mellem får man brug for en nyere version af et program. F.eks. er bookworm's version af dia håbløst buggy. Så fandt jeg på at chroot til min kubuntu som ligger (passivt) på den anden partion. Og vupti fungerede dia igen. Jeg lavede følgende skript: --- #!/bin/bash mount --bind /dev /a2/dev mount --bind /dev/pts /a2/dev/pts mount --bind /proc /a2/proc mount --bind /sys /a2/sys chroot /a2 mount /dev/sda4 /home chroot /a2 #Her kan man udføre alle mulige kommandoer. Skriptet venter til man kører: exit. #chroot --userspec=flem:flem /a2 (fungerer ikke - forstår ikke hvorfor) chroot /a2 umount /dev/sda4 umount /a2/sys umount /a2/proc umount /a2/dev/pts umount /a2/dev echo 'a2 er nu forladt' (Mit kubuntu ligger på /a2 som monteres automatisk ved start.) Nu kan jeg starte f.eks. kubuntus dia (og libreoffice) fra en terminal, og hvis jeg gør det med et & efter, fungerer fungerer programmet videre selv efter exit fra chroot. Hvad synes I om min løsning? Det er selvfølgelig ikke uproblematisk at køre to forskellige systemer på samme home-partition, men hvis man ikke bruger samme programmer på dem, burde det vel ikke skabe de store problemer? Bedste hilsener Flemming TH Bjerke Tlf. 22120366 PS: På min server kunne jeg ikke finde på at køre andet end debian. PPS: Jeg har også prøvet lubuntu på gamle bærbare, men det var nørdet og ikke særlig letvægts.