Rodomi pranešimai su žymėmis Grub. Rodyti visus pranešimus
Rodomi pranešimai su žymėmis Grub. Rodyti visus pranešimus

2016 m. gruodžio 13 d., antradienis

Kaip paleisti ISO failą tiesiogiai iš kietojo disko?

Taip, yra galimybė paleisti .iso failus, per grub, neperkelinėjant į USB.

Paprastai kalbant "Grub" yra programa, kuri leidžia pasirinkti su kuria operacine sistema vartotojas nori dirbi.


Jums reikės:
  1. ISO failo.
  2. Grub Unified Bootloader'io, 2 versijos
Veiksmai:

Atsidarom /etc/grub.d/40_custom  failą su mėgstamiausiu failo redaktoriumi ir pakeičiam paryškintas eilutes(žemiau pavyzdys).
$ vi /etc/grub.d/40_custom


Randam .iso failuose kelia iki vmlinuz ir initrd failų.
$ 7z l ~/Downloads/lubuntu-16.10-desktop-amd64.iso | egrep "initrd|vmlinuz"
2016-10-20 03:45:20 .....     28172280     28172280  live/initrd.img
2016-10-20 03:45:20 .....      4104232      4104232  live/vmlinuz

Diskų numeravimas

Žemiau matom, kaip skiriasi grub'o disko apibūdinimas:
hd0msdos1
/dev/sda/dev/sda1

hd1 - tai antra particija /dev/sdb
hd1msdos1
/dev/sdb/dev/sdb1

Ir taip toliau hd2, butų /dev/sdc diskas, reikia atkreipti dėmesį, kad grub skaičiuoja diskus nuo 0.

Naudojant $ sudo fdisk -l komanda pasižiūrim diskų pavadinimus ir atitinkamai atliekam pakeitimus.

Belieka atnaujinti grub. Į terminalą įvedam komandą:
$ sudo update-grub


nuotraukoje matomas grub langas su naujais įrašais
Pasikeitęs grub meniu


40_custom pavyzdys:

exec tail -n +3 $0
# Šis failas leidžia užkrauti iso failus iš hdd
# Meniu įrašus pridedam iš apačios
# "exec tail" komanda, nurodanti grub'ui, nuo kurios eilutės pradėti vykdyti komandas 

menuentry "Lubuntu 16.10 iš Linuxų particijos" {
        set isofile="/home/sup/Downloads/lubuntu-16.10-desktop-amd64.iso"
        loopback loop (hd1,msdos1)$isofile
        linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject
        initrd (loop)/casper/initrd.lz 
}

menuentry "Ubuntu 16.04 iš kito kietojo disko" {
        set isofile="/iso/ubuntu-16.04.1-desktop-amd64.iso"
        loopback loop (hd0,msdos1)$isofile
        linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject
        initrd (loop)/casper/initrd.lz 
}


menuentry "Kali" {
    insmod ntfs
    insmod iso9660

      set isofile="/iso/kali-linux-2016.2-amd64/kali-linux-2016.2-amd64.iso"
      loopback loop (hd0,msdos1)$isofile
      linux (loop)/live/vmlinuz boot=live noconfig=sudo username=root hostname=kali findiso=$isofile debug --verbose nomodeset
      initrd (loop)/live/initrd.img
    }

Grub nustatymus kitoms distribucijoms rasi čia.
Ačiū madhur už grub'o Kali linux nustatymus.

2014 m. spalio 7 d., antradienis

Grub

Paprastai kalbant "Grub" yra programa, kuri leidžia pasirinkti su kuria operacine sistema vartotojas nori dirbi.

# grub-install #Grub diegimas.


Pagrindiniai Grub nustatymai

Grub konfigūraciniai failai randami:

Debian/Ubuntu: /boot/grub/grub.cfg
CentOS 6.8: /boot/grub/grub.conf


Atlikus pakeitimus personalizuotame dokumente, paleidžiama komandą:
# sudo update-grub #Po šios komandos atnaujinamas pagrindinis grub konfigūracijos failas.

grub-install įrašo grub į kietąjį diską:
# grub-install /dev/sda

Kaip nustatyti kitą grub konfigūracinį dokumentą?
# grub-mkconfig -o /boot/grub/grub.cfg

Pastebėjimas: Keičiant grub rekomenduotina padaryti grub konfigūracinio failo atsarginę kopiją.

Kur yra vieta, kur pridedami nauji grub įrašai?:
Ubuntu/Debian: '/etc/grub.d/40_custom' 

Šablonas:
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry 'Ubuntu pakeistas' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-1c7856bb-5d95-4074-8622-3133936d30ff' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd1,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
 search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1  1c7856bb-5d95-4074-8622-3133936d30ff
else
 search --no-floppy --fs-uuid --set=root 1c7856bb-5d95-4074-8622-3133936d30ff
fi
linux /boot/vmlinuz-4.4.0-22-generic root=UUID=1c7856bb-5d95-4074-8622-3133936d30ff ro  quiet splash $vt_handoff
initrd /boot/initrd.img-4.4.0-22-generic
}

Grub apsaugojimas slaptažodžiu

CentOS 6.8:
/sbin/grub-md5-crypt #Sugeneruojam md5 maišos kodą.
$1$Rirm2/$Rgbsp0YVO/uMn4n1jOhtN

# vi /boot/grub/grub.conf #Po timeout eilutės pridedam md5 sugeneruotą slaptažodžio maišos kodą.
password --md5 $1$Rirm2/$Rgbsp0YVO/uMn4n1jOhtN

Vaizdelis po po perkrovimo, pakeitus grub.conf dokumentą


Grub meniu komandos

CenOS 6.8 :  Tam kad grub nebūtų praleidžiamas užsikrovimo metu,  reikia nuspausti bet kokį mygtuką.
Debian/Ubuntu: Užsikrovimo metu atvaizduoja grub, pagal numatytuosius nustatymus.

Į grub meniu, užsikrovimo metu patenkama nuspaudus c , o išeinama su Esc mygtukų.
Pagrindinės grub komandos():
help [komanda] #Be parametrų rodys visų komandų sąrašą.
ls #Rodys direktorijos turinį.
ls -l #Papildomai atvaizduos UUID.
cat #Rodys katalogo turinį.
set #Rodys visus grub kintamuosius.
echo $root #Vieta kur grub  ieškos branduolio.
set pager=1 #Kad galėtume peržiūrėti platesnį turinį, netelpantį ekrane.

Failų ir direktorijų atvaizdavimas:
grub> ls (hd0,msdos1)/
grub> ls ($root)/boot

hd0 - tai pirmas  /dev/sda įrenginys, kai msdos1, nurodo pirmą skaidinį /dev/sda1.

Užkrovimas is grub:
grub> set root=(hd0,1)
grub> linux /boot/vmlinuz-3.13.0-29-generic root=/dev/sda1
grub> initrd /boot/initrd.img-3.13.0-29-generic
grub> boot

Pirmoji eilutė nurodo šakninį skirsnį, kuriame yra failų sistema.
Antroji eilute nusako branduolio buvimo vietą. Jei nenurodysime root=...  branduolys pradės panikuoti.
Trečioji linija nurodo initrd failą, kuris turi atitikti branduolio versiją.
Ketvirtoji komanda užkrauna sistemą.

Užkrovimas iš grub-rescue>
grub rescue> set prefix=(hd0,1)/boot/grub
grub rescue> set root=(hd0,1)
grub rescue> insmod normal
grub rescue> normal
grub rescue> insmod linux
grub rescue> linux /boot/vmlinuz-3.13.0-29-generic root=/dev/sda1
grub rescue> initrd /boot/initrd.img-3.13.0-29-generic
grub rescue> boot

Ačiū  Carla Schroder.

Nuorodos:
Ubuntuhandbook- Grub keitimas su Grub-Customizer.