Re: Mjesečni bash scripting challenge?
Postano: 17 stu 2016, 22:58
Stigao 3gpEnc v0.6! Ispravke bugova pri kopiranju videa (i audia) te malo bolje posložen kod. 
U privitku.
U privitku.
Regionalni Linux forum
https://www.linuxzasve.com/forum/
Kod: Označi sve
#!/bin/sh
# Zamjena za update-grub za ubuntoide koji loadaju Arch/Manjaro.
# Arch i Manjaro koji imaju instaliran intelov cpu mikrokod, učitavaju mikrokod
# na nestandardni način, tj. putem initrd linije u grubu
# te imaju modificirani grub u tu svrhu. U slučaju dual/multiboota kada je
# glavni grub bootloader instaliran i ažuriran od neke druge distre (Ubuntu, Mint, Suse),
# dolazi do pogrešnog setupa jer umjesto dva imagea (mikrokod i initramfs), postavljaju samo mikrokod.img,
# tako da Arch i Manjaro bootaju u kernel panic jer nemaju initramfs.
# Ovo dolje postavlja ispravne staze do initramfs-a u /boot/grub/grub.cfg datoteci
# Postaviti recimo u /usr/local/bin
grub-mkconfig -o /boot/grub/grub.cfg "$@"
# promjene starih linija, izbacio "exec" iz originala
# jer ne dopušta dodavanje u skriptu
ret=$? # radi ono što je radila originalna "exec" komanda
if [ $ret != 0 ] # i ono što je radio "set -e"
then exit $ret
fi
echo " Započinjem ažuriranje grub.cfg"
cp /boot/grub/grub.cfg "$HOME"/stari_grub.cfg.bckp # backup starog configa u $HOME
echo "...backup starog configa je u "$HOME"/stari_grub.cfg.bckp"
awk '
"initrd /boot/intel-ucode.img"{ # pri podudaranju uzorka, drugo polje je sada naziv kernela
sub("vmlinuz", "initramfs", kernel)
zamjena = $2" "kernel".img" # složi puni naziv initramfs-a
}
# prije provjeri je li linija već složena
# od svake linije spremaj drugo polje jer ono
# kod podudaranja sadrži naziv kernela
zamjena != $2" "$3".img" { sub("/boot/intel-ucode.img", zamjena) }
{ kernel=$2 } 1' /boot/grub/grub.cfg > "$HOME"/novi_grub.cfg.bckp &&
sudo cp "$HOME"/novi_grub.cfg.bckp /boot/grub/grub.cfg
echo "...ažuriranje grub.cfg je dovršeno"
exit $ret
Vjerojatno nemaš instaliran intel-ucode firmware za procesor na Archu. Meni ni najnoviji Ubuntu grub nije promijenio stvari pa sam si promijenio sam.JH-IM je napisao/la:Ja imam Intel, Windowse 10, Ubuntu 17.10 i Arch Linux sa Gnomeom na laptopu i Ubuntu kontrolira grub i nemam nikakvih problema sa bootanjem
Imam.jurastublic je napisao/la:Vjerojatno nemaš instaliran intel-ucode firmware za procesor na Archu. Meni ni najnoviji Ubuntu grub nije promijenio stvari pa sam si promijenio sam.
Ako želiš reproducirati grešku, još možeš provjeriti imaš li uopće grub instaliran i updatean na Archu uz glavni grub od Ubuntua.JH-IM je napisao/la:Imam.jurastublic je napisao/la:Vjerojatno nemaš instaliran intel-ucode firmware za procesor na Archu. Meni ni najnoviji Ubuntu grub nije promijenio stvari pa sam si promijenio sam.