Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.
Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.
AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.
Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).
Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.
Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.10.38 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.
Google zveřejnil seznam 1220 projektů od 195 organizací (Debian, GNU, openSUSE, Linux Foundation, Haiku, Python, …) přijatých do letošního, již dvacátého, Google Summer of Code.
Na základě DMCA požadavku bylo na konci dubna z GitHubu odstraněno 8535 repozitářů se zdrojovými kódy open source emulátoru přenosné herní konzole Nintendo Switch yuzu.
Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.1.0. Po devíti letech od vydání předchozí verze 3.0.5. Doména dillo.org již nepatří vývojářům Dilla.
O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2024 organizovaná nadací Free Software Foundation (FSF).
noatime
, kdy se omezí zápisy na systémové úrovni a může se také přidat async
, potom se na FS zapisuje asynchronně, tj. většinou až při odpojování.
/etc
a /var
na ramdisku. Pokud by se při vypínání vůbec něco mělo ukládat, bylo by dobré použít třeba inkrementální zálohování pomocí programu tar
nebo dar
.
a2x5l5:~# cat /etc/mtab rootfs / rootfs rw 0 0 /dev2/root2 / ext2 ro 0 0 devfs /dev devfs rw 0 0 proc /proc proc rw 0 0 devpts /dev/pts devpts rw 0 0 tmpfs /dev/shm tmpfs rw 0 0
Staci vytvorit initrd, ktery bude mit v linuxrc skriptu pripojeni pripojeni disku do sebe, napr. do /mnt/distribuce. V tomhle ramdisku potom vytvoris potrebne linky do /mnt/distribuce (napr. ln -s mnt/distribuce/bin .) krome var a tmp ktere budou normalne v ramdisku a mas to.
Tohle mam osobne odzkouseno a je to naprosto funkcni, takhle bezi napriklad arachnix(reklama musi bejt )
No, muzu zaslat initrd pouzity v arachnixu, ten by mel byt univerzalne funkcni akorat by se musel mirne upravit linuxrc skript.
Jinak se vytvori pomoci dd prazdny soubor o urcite velikosti, ne nem se vytvori filesystem (doporucuju ext2). Ten soubor pak staci pripojit pres loop device a pak v nem jako u bezneho disku vytvorite adresarovou strukturu pomoci linku. Nakonec staci gzip-nout a je to hotovo.
Snad uz se to da pochopit.
PS.: Nekde na netu jsem kdysi videl nejake howto
dd if=/dev/zero of=novy_ramdisk bs=1k count=4096 mkfs -t ext2 -F novy_ramdiskTento souborový systém připojíme:
mkdir /tmp/novy_ramdisk mount -o loop -t ext2 novy_ramdisk /tmp/novy_ramdiskNaplníme jej nějakými užitečnými věcmi, jako jsou některé sdílené knihovny, popis terminálu pro ncurses, který potřebuje ke správné funkci bash atd.
TARGET=/tmp/novy_ramdisk mkdir -p $TARGET/{bin,sbin,usr/share/terminfo/l} ldd /bin/{bash,{u,}mount} /sbin/modprobe | grep -v ':$' | sed 's/.*=> \(.*\) (.*/\1/' | sort | uniq | \ while read file; do if [ -z "$file" ]; then continue; fi if [ -h $file ]; then LIB=$(basename $(readlink -f $file)) LINK=$(basename $file) echo LINK \'$LINK\' '->' \'$LIB\' cp -p $file $TARGET/lib/$LIB ln -s $LIB $TARGET/lib/$(basename $file) else echo LIB \'$(basename $file)\' cp -p $file $TARGET/lib fi done cp -a /bin/{bash,{u,}mount} $TARGET/bin cp -a /sbin/modprobe $TARGET/sbin cp -a /usr/share/terminfo/l/linux $TARGET/usr/share/terminfo/l mkdir newrootNapíšeme nějaký šikovný skriptík:
<< EOF > $TARGET/sbin/init cat #!/bin/bash # modprobe nějaké šikovné moduly mount /dev/něco /newroot pivot_root /newroot /newroot/initrd exec /sbin/init EOF chmod 755 $TARGET/sbin/initDále je potřeba vytvořit na ramdisku
/dev
se zařízeními null
, console
a dalšími potřebnými. Hodí se přeložit si vlastní jádro a okopírovat jeho moduly také na onen ramdisk.
Ramdisk se pak odpojí a zkomprimuje gzipem:
umount /tmp/novy_ramdisk gzip --best novy_ramdisk > initrd.imgJádro se pak zavádí zavaděčem (z CD třeba isolinuxem, ale může to být i loadlin v DOSu) tak, že se mu předají tyto parametry:
initrd=initrd.img ramdisk_size=4096Skript
/sbin/init
přehodí kořenové systémy příkazem pivot_root
, ale může dělat i složitější věci, např. hledat řadiče disků nebo hledat označení CD mechaniky, ve které je vloženo CD, z kterého se systém spouští atd.
Není samozřejmě potřeba kopírovat všechny ty knihovny na ramdisk tak složitým způsobem, protože jsou k dispozici nástroje jako busybox
. Každý si může udělat i nějaká soukromá udělátka. Ale tento těžkopádný postup pro lenochy funguje taky, jen ten ramdisk pak možná bude větší (8 MB).
Tiskni Sdílej: