SlideShare uma empresa Scribd logo
1 de 37
Baixar para ler offline
Booting directly
openSUSE iso file by
grub2
openSUSE Asia Summit 2015
2015-09-05
Kentaro Hatori
2
Self-Introduction
●
Affiliation
● Information-technology Promotion
Agency, Japan
● Koedo Linux Users' Group (Koedo LUG)
which is one of local Linux community in
Japan
●
OpenStreetMap Foundation Japan
● Open Knowledge Japan
● Code for Japan
●
Activity
● Developing original LiveCD Linux but very
slowly and going away from the point
3
Today's Topic is
Booting directly openSUSE iso
file by grub2
Introduction of Koedo LUG
● Since August, 2002
● Koedo is nicname of Kawagoe-city
and means Little Classic Tokyo
● This community aims following-up
each members who are interested in
Linux, ask about unknown term and
contribute by joining events and
seminars
● The rule of managing this community
is every member thinks each other
about shareing so long fun time
through Linux
Where is Kawagoe-city?
Kawagoe Festival #1
Kawagoe Festival #2
Koedo LUG Activity
● Mailing List for information exchange
about Linux & open source software
● Off party & study group each month
● BBQ party on river beach each year
● Publishing a original Linux technology
magazine “Linux User”
● Comic Market summer & winter
● Members:over 370(just registration
mailing list)
● Active members:about 20
Software Freedom Day
2015-09-19 @Sios Technology inc.
BBQ (Beer) Party
on Han-nou river beach
11
Off Party & Study Group
● Very very variety theme from server to
embedded including desktop
● Success story and failures
● Failures are very important; these tell
bad know-how and how to asking
and answering
12
Failures
13
I cannot success to boot
directly openSUSE iso file by
grub2
14
Today's Topic is
Booting directly openSUSE iso
file by grub2
15
Most strong point of Grub2
● Grub2 makes grub.conf automatically
● Configure files are very complex...
● A new function is booting directory a
Linux distro iso file without extracting
16
Booting directly iso file
● You can have so many Linux distro iso
files in one device which is CD/DVD or
USB thumb drive and boot any iso file
directly
● You can make original multi booting
device
● But you must describe each distro
booting process
17
Example for Slax 32bit
menuentry 'Slax 7.0.8 32bit' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile='/slax-7.0.8-i486.iso'
search --no-floppy --file --set=root $isofile
loopback loop ($root)$isofile
linux (loop)/slax/boot/vmlinuz from=$isofile
slax.flags=perch,xmode nopersistent noeject
noprompt noatime ro
initrd (loop)/slax/boot/initrfs.img
}
18
Example for Porteus
menuentry 'Porteus-KDE v3.1' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile='/Porteus-v3.1-i486.iso'
search --no-floppy --file --set=root $isofile
loopback loop ($root)$isofile
linux (loop)/boot/syslinux/vmlinuz from=$isofile
noswap kmap=jp nomagic
initrd (loop)/boot/syslinux/initrd.xz
}
19
Example for Debian
menuentry 'Debian GNU/Linux 7.0.0' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile="/debian-live-7.0.0-i386-lxde-
desktop.iso"
search --no-floppy --file --set=root $isofile
loopback loop ($root)$isofile
linux (loop)/live/vmlinuz boot=live iso-
scan/filename=$isofile noprompt noeject quiet
splash --
initrd (loop)/live/initrd.img
}
20
Example for Ubuntu
menuentry "Ubuntu 14.04" {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile="/ubuntu-14.04-desktop-i386.iso"
loopback loop ($root)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-
scan/filename=$isofile noprompt noeject quiet
splash --
initrd (loop)/casper/initrd.lz
}
21
Example for Knoppix
menuentry "Knoppix 7.2" {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile='/KNOPPIX_V7.2.0CD-2013-06-16-
EN.iso'
search --no-floppy --file --set=root $isofile
loopback loop ($root)$isofile
linux (loop)/boot/isolinux/linux
bootfrom=/dev/sdb1$isofile lang=us apm=power-
off nomce
initrd (loop)/boot/isolinux/minirt.gz
}
22
Example for Fedora
menuentry 'Fedora Live/Desktop 19' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile='/Fedora-Live-Desktop-x86_64-19-1.iso'
set rdfile='/isolinux/initrd0.img'
search --no-floppy --file --set=root $isofile
loopback loop $isofile
linux (loop)/isolinux/vmlinuz0
root=live:CDLABEL=Fedora-Live-Desktop-x86_64-19-1
$isofile rootfstype=auto ro rd.live.image quiet rhgb
rd.luks=0 rd.md=0 rd.dm=0 iso-scan/filename=${isofile}
initrd (loop)$rdfile
23
Example for CentOS
menuentry 'CentOS 6.5 i386 LiveCD' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile='/CentOS-6.5-i386-LiveCD.iso'
set rdfile='/isolinux/initrd0.img'
search --no-floppy --file --set=root $isofile
loopback loop $isofile
linux (loop)/isolinux/vmlinuz0
root=live:CDLABEL=CentOS-6.5-i386-LiveCD $isofile
rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0
rd.md=0 rd.dm=0 iso-scan/filename=${isofile}
initrd (loop)$rdfile
24
Error of CentOS Booting
Kernel panic not syncing: Attempted to kill init!–
Pid: 1, comm: init Not tainted 2.6-32-
431.e16.i686 #1
Call Trac:
[<c085cc75>]? Panic + 0x6e/0x122
[<c045fc71>]? do_exit + 0x741/0x750
[<c045fcbc>]? do_group_exit + 0x39/0xe0
[<c045fd31>]? sys_exit_group + 0x11/0x26
[<c04699bf>]? Sysenter_do_call + 0x12/0x28
ctrm_kms_helper: panic occurred, switching back
to text console
25
Example for TinyCore
menuentry 'CorePlus 6.3' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile="/CorePlus-current.iso"
search --no-floppy --file --set=root $isofile
loopback loop ($root)$isofile
linux (loop)/boot/vmlinuz iso=/mnt/sdb1$isofile
cde quiet waitusb=5 tce=/mnt/cdrom/cde
lang=ja_JP.UTF-8 kmap=qwerty/jp106
initrd (loop)/boot/core.gz
}
26
Example for SystemRescue
menuentry 'System Rescue 4.5.1 ' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile="/systemrescuecd-x86-4.5.1.iso"
loopback loop ($root)$isofile
linux (loop)/isolinux/rescue32 setkmap=jp
isoloop=$isofile dostartx
initrd (loop)/isolinux/initram.igz
}
27
Example for Gparted
menuentry 'Gparted Live 0.21.0-1' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile="/gparted-live-0.21.0-1-i586.iso"
search --no-floppy --file --set=root $isofile
loopback loop ($root)$isofile
linux (loop)/live/vmlinuz boot=live config
union=aufs noswap noprompt ip=frommedia
toram=filesystem.squashfs findiso=$isofile
initrd (loop)/live/initrd.img
}
28
Example for Clonezilla
menuentry "Clonezilla Live 2.3.2-22" {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile="/clonezilla-live-2.3.2-22-i586.iso"
loopback loop $isofile
linux (loop)/live/vmlinuz boot=live live-config noswap
nolocales edd=on nomodeset ocs_live_run="ocs-live-
general" ocs_live_extra_param=""
ocs_live_keymap="" ocs_live_batch="no"
ocs_lang="" ip=frommedia nosplash
toram=filesystem.squashfs findiso=$isofile
initrd (loop)/live/initrd.img
}
29
How to get the information
about describing grub2
● Grub2/ISOBoot/Examples - Community Help Wiki
https://help.ubuntu.com/community/Grub2/ISOBoot/Examples
● Grub2/ISOBoot - Community Help Wiki
https://help.ubuntu.com/community/Grub2/ISOBoot
● Anyway mount and extract iso file and extract
● Making booting USB thumb drive from iso file by
unetboot
30
Mount and extract iso file
$ mkdir /mnt/loop
$ sudo mount -t iso9660,ro openSUSE-13.2-KDE-Live-i686.iso
/mnt/loop
$ cat /mnt/loop/config.isoclient
IMAGE='loop;openSUSE-13.2-livecd-kde.i686;2.8.0'
UNIONFS_CONFIG='/dev/ram1,loop,overlay'
$ cat /mnt/loop/liveboot
initrd-isoboot-suse-13.2.i686-2.1.2.gz
31
Unetboot
32
Example for openSUSE
menuentry 'openSUSE 13.2' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile='/openSUSE-13.2-KDE-Live-i686.iso'
loopback loop ($root)$isofile
linux (loop)/boot/i386/loader/linux
ramdisk_size=512000 ramdisk_blocksize=4096
splash=silent quiet preloadlog=/dev/null showopts
livecd_config=(loop)/config.isoclient
initrd (loop)/boot/i386/loader/initrd
}
33
Error of openSUSEC Booting
error: no such partition.
error: disk 'loop' not found.
error: you need to load the kernel first.
34
Example for openSUSE #2
menuentry 'openSUSE 13.2' {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
set isofile='/openSUSE-13.2-KDE-Live-i686.iso'
loopback loop ($root)$isofile
linux (loop)/openSUSE-13.2-livecd-kde-
read-only.i686-2.8.0 ramdisk_size=512000
ramdisk_blocksize=4096 splash=silent quiet
preloadlog=/dev/null showopts
livecd_config=(loop)/config.isoclient
fromiso=$isofile
35
Error of openSUSEC Booting
error: no such partition.
error: disk 'loop' not found.
36
Anyway
most important thing is...
37
Have a fun !!

Mais conteúdo relacionado

Mais procurados

Ubuntu Cheat Sheet
Ubuntu Cheat SheetUbuntu Cheat Sheet
Ubuntu Cheat Sheet
Serverless
 

Mais procurados (20)

Slider2
Slider2Slider2
Slider2
 
Adhocr T-dose 2012
Adhocr T-dose 2012Adhocr T-dose 2012
Adhocr T-dose 2012
 
Linux Hardening - Made Easy
Linux Hardening - Made EasyLinux Hardening - Made Easy
Linux Hardening - Made Easy
 
Description of GRUB 2
Description of GRUB 2Description of GRUB 2
Description of GRUB 2
 
Linuxppt
LinuxpptLinuxppt
Linuxppt
 
LinuxをインストールしてWebサーバーを立ち上げてみよう【OSC2018 Tokyo/Spring】
LinuxをインストールしてWebサーバーを立ち上げてみよう【OSC2018 Tokyo/Spring】LinuxをインストールしてWebサーバーを立ち上げてみよう【OSC2018 Tokyo/Spring】
LinuxをインストールしてWebサーバーを立ち上げてみよう【OSC2018 Tokyo/Spring】
 
OSS AWS 핸즈온 강의
OSS AWS 핸즈온 강의OSS AWS 핸즈온 강의
OSS AWS 핸즈온 강의
 
Linux boot process
Linux boot processLinux boot process
Linux boot process
 
Docker e postgresql
Docker e postgresqlDocker e postgresql
Docker e postgresql
 
A.I. Exercise.
A.I. Exercise.A.I. Exercise.
A.I. Exercise.
 
Год в Github bugbounty, опыт участия
Год в Github bugbounty, опыт участияГод в Github bugbounty, опыт участия
Год в Github bugbounty, опыт участия
 
Writing flexible filesystems in FUSE-Python
Writing flexible filesystems in FUSE-PythonWriting flexible filesystems in FUSE-Python
Writing flexible filesystems in FUSE-Python
 
Virtualbox and Mysql
Virtualbox and MysqlVirtualbox and Mysql
Virtualbox and Mysql
 
Beyond Golden Containers: Complementing Docker with Puppet
Beyond Golden Containers: Complementing Docker with PuppetBeyond Golden Containers: Complementing Docker with Puppet
Beyond Golden Containers: Complementing Docker with Puppet
 
2.Accessing the Pi
2.Accessing the Pi2.Accessing the Pi
2.Accessing the Pi
 
Ubuntu初體驗:脫離邪惡微軟帝國吧!_150606
Ubuntu初體驗:脫離邪惡微軟帝國吧!_150606Ubuntu初體驗:脫離邪惡微軟帝國吧!_150606
Ubuntu初體驗:脫離邪惡微軟帝國吧!_150606
 
Solaris 11 base box for Vagrant using Packer
Solaris 11 base box for Vagrant using PackerSolaris 11 base box for Vagrant using Packer
Solaris 11 base box for Vagrant using Packer
 
How to install OpenStack MITAKA --allinone - cheat sheet -
How to install OpenStack MITAKA --allinone - cheat sheet -How to install OpenStack MITAKA --allinone - cheat sheet -
How to install OpenStack MITAKA --allinone - cheat sheet -
 
Ubuntu Cheat Sheet
Ubuntu Cheat SheetUbuntu Cheat Sheet
Ubuntu Cheat Sheet
 
Dockerの準備
Dockerの準備Dockerの準備
Dockerの準備
 

Semelhante a Booting directly opensuse iso file by grub2 @ openSUSE Asia Summit2015

A "Box" Full of Tools and Distros
A "Box" Full of Tools and DistrosA "Box" Full of Tools and Distros
A "Box" Full of Tools and Distros
Dario Faggioli
 
Confraria SECURITY & IT - Lisbon Set 29, 2011
Confraria SECURITY & IT - Lisbon Set 29, 2011Confraria SECURITY & IT - Lisbon Set 29, 2011
Confraria SECURITY & IT - Lisbon Set 29, 2011
ricardomcm
 

Semelhante a Booting directly opensuse iso file by grub2 @ openSUSE Asia Summit2015 (20)

A million ways to provision embedded linux devices
A million ways to provision embedded linux devicesA million ways to provision embedded linux devices
A million ways to provision embedded linux devices
 
Build Your Own Android Tablet
Build Your Own Android TabletBuild Your Own Android Tablet
Build Your Own Android Tablet
 
Linux io introduction-fudcon-2015-with-demo-slides
Linux io introduction-fudcon-2015-with-demo-slidesLinux io introduction-fudcon-2015-with-demo-slides
Linux io introduction-fudcon-2015-with-demo-slides
 
Launch the First Process in Linux System
Launch the First Process in Linux SystemLaunch the First Process in Linux System
Launch the First Process in Linux System
 
DEF CON 23 - Phil Polstra - one device to pwn them all
DEF CON 23 - Phil Polstra - one device to pwn them allDEF CON 23 - Phil Polstra - one device to pwn them all
DEF CON 23 - Phil Polstra - one device to pwn them all
 
An Introduction To Linux
An Introduction To LinuxAn Introduction To Linux
An Introduction To Linux
 
A "Box" Full of Tools and Distros
A "Box" Full of Tools and DistrosA "Box" Full of Tools and Distros
A "Box" Full of Tools and Distros
 
Linux Booting Process
Linux Booting ProcessLinux Booting Process
Linux Booting Process
 
Odroid Magazine March 2014
Odroid Magazine March 2014Odroid Magazine March 2014
Odroid Magazine March 2014
 
Char Drivers And Debugging Techniques
Char Drivers And Debugging TechniquesChar Drivers And Debugging Techniques
Char Drivers And Debugging Techniques
 
Containers with systemd-nspawn
Containers with systemd-nspawnContainers with systemd-nspawn
Containers with systemd-nspawn
 
Confraria SECURITY & IT - Lisbon Set 29, 2011
Confraria SECURITY & IT - Lisbon Set 29, 2011Confraria SECURITY & IT - Lisbon Set 29, 2011
Confraria SECURITY & IT - Lisbon Set 29, 2011
 
Linux kernel modules
Linux kernel modulesLinux kernel modules
Linux kernel modules
 
Open Enea Linux workshop at the Embedded Conference Scandinavia 2014
Open Enea Linux workshop at the Embedded Conference Scandinavia 2014Open Enea Linux workshop at the Embedded Conference Scandinavia 2014
Open Enea Linux workshop at the Embedded Conference Scandinavia 2014
 
The eID on Linux in 2015
The eID on Linux in 2015The eID on Linux in 2015
The eID on Linux in 2015
 
Android for Embedded Linux Developers
Android for Embedded Linux DevelopersAndroid for Embedded Linux Developers
Android for Embedded Linux Developers
 
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !
 
Linux kernel modules
Linux kernel modulesLinux kernel modules
Linux kernel modules
 
FreeBSD Portscamp, Kuala Lumpur 2016
FreeBSD Portscamp, Kuala Lumpur 2016FreeBSD Portscamp, Kuala Lumpur 2016
FreeBSD Portscamp, Kuala Lumpur 2016
 
FreeBSD and Drivers
FreeBSD and DriversFreeBSD and Drivers
FreeBSD and Drivers
 

Mais de Kentaro Hatori

Osc2013北海道 opendata trend
Osc2013北海道 opendata trendOsc2013北海道 opendata trend
Osc2013北海道 opendata trend
Kentaro Hatori
 
Osc2013 tokyo spring 小江戸らぐプレゼン資料
Osc2013 tokyo spring 小江戸らぐプレゼン資料Osc2013 tokyo spring 小江戸らぐプレゼン資料
Osc2013 tokyo spring 小江戸らぐプレゼン資料
Kentaro Hatori
 
Hatochan's Resume 20130216@Koedolug
Hatochan's Resume 20130216@KoedolugHatochan's Resume 20130216@Koedolug
Hatochan's Resume 20130216@Koedolug
Kentaro Hatori
 

Mais de Kentaro Hatori (15)

地方版IoT推進ラボとCode for Japanとのミートアップを
地方版IoT推進ラボとCode for Japanとのミートアップを地方版IoT推進ラボとCode for Japanとのミートアップを
地方版IoT推進ラボとCode for Japanとのミートアップを
 
WindowsにLinux超簡単安全インストール
WindowsにLinux超簡単安全インストールWindowsにLinux超簡単安全インストール
WindowsにLinux超簡単安全インストール
 
ChromebookにLinuxをインストールしてみた
ChromebookにLinuxをインストールしてみたChromebookにLinuxをインストールしてみた
ChromebookにLinuxをインストールしてみた
 
ディストロユーザ会と地域ユーザグループの素敵な関係
ディストロユーザ会と地域ユーザグループの素敵な関係ディストロユーザ会と地域ユーザグループの素敵な関係
ディストロユーザ会と地域ユーザグループの素敵な関係
 
ダイソーでWiMAX用 パラボラアンテナ 作ってみた
ダイソーでWiMAX用 パラボラアンテナ 作ってみたダイソーでWiMAX用 パラボラアンテナ 作ってみた
ダイソーでWiMAX用 パラボラアンテナ 作ってみた
 
OSGeo-Liveをハックする
OSGeo-LiveをハックするOSGeo-Liveをハックする
OSGeo-Liveをハックする
 
中古コンデジを活用して勉強会の楽しさを伝える
中古コンデジを活用して勉強会の楽しさを伝える中古コンデジを活用して勉強会の楽しさを伝える
中古コンデジを活用して勉強会の楽しさを伝える
 
ディストロの価値の作り方 at Osc2014tokyo fall
ディストロの価値の作り方 at Osc2014tokyo fallディストロの価値の作り方 at Osc2014tokyo fall
ディストロの価値の作り方 at Osc2014tokyo fall
 
異能vationにチャレンジのお勧め
異能vationにチャレンジのお勧め異能vationにチャレンジのお勧め
異能vationにチャレンジのお勧め
 
Pogoplug mobileでownCloudに挑戦してみた
Pogoplug mobileでownCloudに挑戦してみたPogoplug mobileでownCloudに挑戦してみた
Pogoplug mobileでownCloudに挑戦してみた
 
Osc2013北海道 opendata trend
Osc2013北海道 opendata trendOsc2013北海道 opendata trend
Osc2013北海道 opendata trend
 
川越と小江戸らぐの紹介
川越と小江戸らぐの紹介川越と小江戸らぐの紹介
川越と小江戸らぐの紹介
 
Osc2013 tokyo spring 小江戸らぐプレゼン資料
Osc2013 tokyo spring 小江戸らぐプレゼン資料Osc2013 tokyo spring 小江戸らぐプレゼン資料
Osc2013 tokyo spring 小江戸らぐプレゼン資料
 
Hatochan's Resume 20130216@Koedolug
Hatochan's Resume 20130216@KoedolugHatochan's Resume 20130216@Koedolug
Hatochan's Resume 20130216@Koedolug
 
Hatochan's Resume 20121215@koedolug
Hatochan's Resume 20121215@koedolugHatochan's Resume 20121215@koedolug
Hatochan's Resume 20121215@koedolug
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Booting directly opensuse iso file by grub2 @ openSUSE Asia Summit2015

  • 1. Booting directly openSUSE iso file by grub2 openSUSE Asia Summit 2015 2015-09-05 Kentaro Hatori
  • 2. 2 Self-Introduction ● Affiliation ● Information-technology Promotion Agency, Japan ● Koedo Linux Users' Group (Koedo LUG) which is one of local Linux community in Japan ● OpenStreetMap Foundation Japan ● Open Knowledge Japan ● Code for Japan ● Activity ● Developing original LiveCD Linux but very slowly and going away from the point
  • 3. 3 Today's Topic is Booting directly openSUSE iso file by grub2
  • 4. Introduction of Koedo LUG ● Since August, 2002 ● Koedo is nicname of Kawagoe-city and means Little Classic Tokyo ● This community aims following-up each members who are interested in Linux, ask about unknown term and contribute by joining events and seminars ● The rule of managing this community is every member thinks each other about shareing so long fun time through Linux
  • 8. Koedo LUG Activity ● Mailing List for information exchange about Linux & open source software ● Off party & study group each month ● BBQ party on river beach each year ● Publishing a original Linux technology magazine “Linux User” ● Comic Market summer & winter ● Members:over 370(just registration mailing list) ● Active members:about 20
  • 9. Software Freedom Day 2015-09-19 @Sios Technology inc.
  • 10. BBQ (Beer) Party on Han-nou river beach
  • 11. 11 Off Party & Study Group ● Very very variety theme from server to embedded including desktop ● Success story and failures ● Failures are very important; these tell bad know-how and how to asking and answering
  • 13. 13 I cannot success to boot directly openSUSE iso file by grub2
  • 14. 14 Today's Topic is Booting directly openSUSE iso file by grub2
  • 15. 15 Most strong point of Grub2 ● Grub2 makes grub.conf automatically ● Configure files are very complex... ● A new function is booting directory a Linux distro iso file without extracting
  • 16. 16 Booting directly iso file ● You can have so many Linux distro iso files in one device which is CD/DVD or USB thumb drive and boot any iso file directly ● You can make original multi booting device ● But you must describe each distro booting process
  • 17. 17 Example for Slax 32bit menuentry 'Slax 7.0.8 32bit' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile='/slax-7.0.8-i486.iso' search --no-floppy --file --set=root $isofile loopback loop ($root)$isofile linux (loop)/slax/boot/vmlinuz from=$isofile slax.flags=perch,xmode nopersistent noeject noprompt noatime ro initrd (loop)/slax/boot/initrfs.img }
  • 18. 18 Example for Porteus menuentry 'Porteus-KDE v3.1' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile='/Porteus-v3.1-i486.iso' search --no-floppy --file --set=root $isofile loopback loop ($root)$isofile linux (loop)/boot/syslinux/vmlinuz from=$isofile noswap kmap=jp nomagic initrd (loop)/boot/syslinux/initrd.xz }
  • 19. 19 Example for Debian menuentry 'Debian GNU/Linux 7.0.0' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile="/debian-live-7.0.0-i386-lxde- desktop.iso" search --no-floppy --file --set=root $isofile loopback loop ($root)$isofile linux (loop)/live/vmlinuz boot=live iso- scan/filename=$isofile noprompt noeject quiet splash -- initrd (loop)/live/initrd.img }
  • 20. 20 Example for Ubuntu menuentry "Ubuntu 14.04" { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile="/ubuntu-14.04-desktop-i386.iso" loopback loop ($root)$isofile linux (loop)/casper/vmlinuz boot=casper iso- scan/filename=$isofile noprompt noeject quiet splash -- initrd (loop)/casper/initrd.lz }
  • 21. 21 Example for Knoppix menuentry "Knoppix 7.2" { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile='/KNOPPIX_V7.2.0CD-2013-06-16- EN.iso' search --no-floppy --file --set=root $isofile loopback loop ($root)$isofile linux (loop)/boot/isolinux/linux bootfrom=/dev/sdb1$isofile lang=us apm=power- off nomce initrd (loop)/boot/isolinux/minirt.gz }
  • 22. 22 Example for Fedora menuentry 'Fedora Live/Desktop 19' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile='/Fedora-Live-Desktop-x86_64-19-1.iso' set rdfile='/isolinux/initrd0.img' search --no-floppy --file --set=root $isofile loopback loop $isofile linux (loop)/isolinux/vmlinuz0 root=live:CDLABEL=Fedora-Live-Desktop-x86_64-19-1 $isofile rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 iso-scan/filename=${isofile} initrd (loop)$rdfile
  • 23. 23 Example for CentOS menuentry 'CentOS 6.5 i386 LiveCD' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile='/CentOS-6.5-i386-LiveCD.iso' set rdfile='/isolinux/initrd0.img' search --no-floppy --file --set=root $isofile loopback loop $isofile linux (loop)/isolinux/vmlinuz0 root=live:CDLABEL=CentOS-6.5-i386-LiveCD $isofile rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 iso-scan/filename=${isofile} initrd (loop)$rdfile
  • 24. 24 Error of CentOS Booting Kernel panic not syncing: Attempted to kill init!– Pid: 1, comm: init Not tainted 2.6-32- 431.e16.i686 #1 Call Trac: [<c085cc75>]? Panic + 0x6e/0x122 [<c045fc71>]? do_exit + 0x741/0x750 [<c045fcbc>]? do_group_exit + 0x39/0xe0 [<c045fd31>]? sys_exit_group + 0x11/0x26 [<c04699bf>]? Sysenter_do_call + 0x12/0x28 ctrm_kms_helper: panic occurred, switching back to text console
  • 25. 25 Example for TinyCore menuentry 'CorePlus 6.3' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile="/CorePlus-current.iso" search --no-floppy --file --set=root $isofile loopback loop ($root)$isofile linux (loop)/boot/vmlinuz iso=/mnt/sdb1$isofile cde quiet waitusb=5 tce=/mnt/cdrom/cde lang=ja_JP.UTF-8 kmap=qwerty/jp106 initrd (loop)/boot/core.gz }
  • 26. 26 Example for SystemRescue menuentry 'System Rescue 4.5.1 ' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile="/systemrescuecd-x86-4.5.1.iso" loopback loop ($root)$isofile linux (loop)/isolinux/rescue32 setkmap=jp isoloop=$isofile dostartx initrd (loop)/isolinux/initram.igz }
  • 27. 27 Example for Gparted menuentry 'Gparted Live 0.21.0-1' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile="/gparted-live-0.21.0-1-i586.iso" search --no-floppy --file --set=root $isofile loopback loop ($root)$isofile linux (loop)/live/vmlinuz boot=live config union=aufs noswap noprompt ip=frommedia toram=filesystem.squashfs findiso=$isofile initrd (loop)/live/initrd.img }
  • 28. 28 Example for Clonezilla menuentry "Clonezilla Live 2.3.2-22" { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile="/clonezilla-live-2.3.2-22-i586.iso" loopback loop $isofile linux (loop)/live/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live- general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" ip=frommedia nosplash toram=filesystem.squashfs findiso=$isofile initrd (loop)/live/initrd.img }
  • 29. 29 How to get the information about describing grub2 ● Grub2/ISOBoot/Examples - Community Help Wiki https://help.ubuntu.com/community/Grub2/ISOBoot/Examples ● Grub2/ISOBoot - Community Help Wiki https://help.ubuntu.com/community/Grub2/ISOBoot ● Anyway mount and extract iso file and extract ● Making booting USB thumb drive from iso file by unetboot
  • 30. 30 Mount and extract iso file $ mkdir /mnt/loop $ sudo mount -t iso9660,ro openSUSE-13.2-KDE-Live-i686.iso /mnt/loop $ cat /mnt/loop/config.isoclient IMAGE='loop;openSUSE-13.2-livecd-kde.i686;2.8.0' UNIONFS_CONFIG='/dev/ram1,loop,overlay' $ cat /mnt/loop/liveboot initrd-isoboot-suse-13.2.i686-2.1.2.gz
  • 32. 32 Example for openSUSE menuentry 'openSUSE 13.2' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile='/openSUSE-13.2-KDE-Live-i686.iso' loopback loop ($root)$isofile linux (loop)/boot/i386/loader/linux ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent quiet preloadlog=/dev/null showopts livecd_config=(loop)/config.isoclient initrd (loop)/boot/i386/loader/initrd }
  • 33. 33 Error of openSUSEC Booting error: no such partition. error: disk 'loop' not found. error: you need to load the kernel first.
  • 34. 34 Example for openSUSE #2 menuentry 'openSUSE 13.2' { insmod part_msdos insmod ext2 set root='hd0,msdos1' set isofile='/openSUSE-13.2-KDE-Live-i686.iso' loopback loop ($root)$isofile linux (loop)/openSUSE-13.2-livecd-kde- read-only.i686-2.8.0 ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent quiet preloadlog=/dev/null showopts livecd_config=(loop)/config.isoclient fromiso=$isofile
  • 35. 35 Error of openSUSEC Booting error: no such partition. error: disk 'loop' not found.