SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Twitter : @masami256
Mail : masami@fedoraproject.org
Anaconda Overview
●
    Stage1,2 の 2 段階でインストーラが起動
●   Stage1
       ●
           ブートオプション処理
       ●
           メディアチェック
       ●
           ネットワーク設定(必要なら)
       ●   Stage2 の実行
●   Stage2
       ●
           言語、キーボード、パーティション設定などの
            実際のインストール処理
これが出ると Stage1 完了
Anaconda Programming



C(Stage1) と Python(Stage2)
      GUI は PyGtk
Anaconda UI
●
    インストーラの機能( GUI を使う場合)は以
    下のファイルにクラスを登録
●   dispatch.py
●   gui.py
●   installclass.py
dispatch.py
●
     インストール手順に関するファイル
         ●
             各機能が動く順番を設定
         ●   次のステップに進む / 前のステップに戻るなど
              の処理を実施
    installSteps = [
       ("kernelvm_top", ),
       ("installTinyCoreNag", installTinyCoreNagScreen, ),



     キー名
                                            関数名
gui.py
●
     GUI に関する基本的な処理を実施
●
     変数 stepToClass にキー名とファイル名、クラ
     ス名を設定

    stepToClass = {
       "kernelvm_top" : ("kernelvm_top_gui",
      "KernelvmTopWindow"),
installcalss.py
●



●
    dispatch クラスに dispath.py で登録したキー名を登録

    dispatch.setStepList(
              "kernelvm_top",
              "installTinyCoreNag",
Anaconda UI and Logic
●
    UI 周りの処理と、実際の処理はファイルが分
    かれてます
      ●   pyanaconda/language.py
             –   言語回りでの処理を実施
      ●   pyanaconda/iw/language_gui.py
             –   Langauge の画面に関する処理
●
    GUI のコード
      ●   PyGtk の場合は pyanaconda/iw
      ●   テキストの場合は pyanaconda/textw
iw/kernelvm_top_gui.py
class KernelvmTopWindow (InstallWindow):
   windowTitle = "Kernel/VM" #N_("KernelVM")

  def __init__ (self, ics):
    InstallWindow.__init__ (self, ics)
    ics.setGrabNext (1)
    self.anaconda = None

  def getScreen (self, anaconda):
    self.anaconda = anaconda

    box = gtk.VBox (False, 10)

    pix = gui.readImageFromFile ("kernelvm.png")
    if pix:
        a = gtk.Alignment ()
        a.add (pix)
        a.set (0.5, 0.5, 1.0, 1.0)
       a.set_size_request(200, -1)
        box.pack_start (a, False)

    box.pack_start(self.createHbox())

    return box
kerenelvm_top.py
class kernelvm_top (object):

  def __init__ (self, display_mode = 'g'):
    pass

  def write(self, instPath):
    pass

  def writeKS(self, f):
    pass
Anaonda Testing
●
    iso イメージ作るのは大変です><
●
    既存の iso イメージ弄るのも面倒
●
    そこで updates.img の出番です!
updates.img
●
    make updates するだけ
      ●   updates.img というファイルができます
      ●   差分のあるファイルのみを抽出して cpio でまと
           めて gzip したファイルです
      ●   .spec ファイルのリリースバージョン、 git の
            tag から差分を見ているようです
●
    ブート時にオプションを渡します
      ●   updates=http://10.0.2.2/updates.img
Anaconda 弄りは割と手軽にできますね ^q^
ってことで作りました
Linux の代わりに自作カーネルのインストール
誰得?
変更箇所
●   yuminstall.py
        ●   rpm ファイルのインストール部分
●   bootloader.py
        ●   Grub 周りの処理
●
packages.py
def doInstallTinyCore(self, anaconda):
    gzipImage = "/tmp/updates/tinycore.gz"
    f = gzip.open(gzipImage, 'rb')
    data = f.read()
    cpioFile = "/tmp/tinycore.cpio"
    w = open(cpioFile,'wb')
    w.write(data)
    w.close()
    f.close()

      cmd = "cd %(rootPath)s && cpio -id < %(cpiofile)s" %
{'rootPath' : anaconda.rootPath, 'cpiofile' : cpioFile}
      os.system(cmd)
bootloader.py
def installGrubForTinyCore(anaconda):
  Grub の rpm を /mnt/sysimage にインストール
 
  grub-install –root-directroy=/mnt/sysimage /dev/sda
 
  grub –batch --device-map=/dev/null << EOFndevice
(hd0)t%(sda)s1nroot (hd0)nsetup (hd0)nquitnEOF

 カーネルを /mnt/sysimage/boot にコピー
bootloader.py
def writeBootloader(anaconda):
# for (version, arch, nick) in 
#
anaconda.backend.kernelVersionList(anaconda.rootPath):
# if plainLabelUsed:
#         kernelList.append(("%s-%s" %(kernelLabel, nick),
#                      "%s-%s" %(kernelLongLabel, nick),
#                      version))
# else:
#     kernelList.append((kernelLabel, kernelLongLabel,
version))
#        if nick != "base":
#            defkern = "kernel-%s" %(nick,)
#     plainLabelUsed = 1
  kernelList.append(('miko', 'miko', '0'))
カーネル自作したら
Anaconda でインストーラを作り
  配布しましょう\ (^o^) /
URL
●   Fedora Anaconda repogitory
       ●   git://git.fedorahosted.org/git/anaconda.git
●   Anaconda for Ore ore kernel
       ●   https://github.com/masami256/Anaconda-for-
             ore-ore-kernel

Contenu connexe

Tendances

A_road_to_AMBER_simulations_ver_1.0
A_road_to_AMBER_simulations_ver_1.0A_road_to_AMBER_simulations_ver_1.0
A_road_to_AMBER_simulations_ver_1.0
Satoshi Kume
 
Cygwin 1.7 の紹介
Cygwin 1.7 の紹介Cygwin 1.7 の紹介
Cygwin 1.7 の紹介
fd0
 
MacPort_&_FTP_ver1.0
MacPort_&_FTP_ver1.0MacPort_&_FTP_ver1.0
MacPort_&_FTP_ver1.0
Satoshi Kume
 

Tendances (20)

Casperjsのインストール
CasperjsのインストールCasperjsのインストール
Casperjsのインストール
 
ラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよ
 
190925 python-windows
190925 python-windows190925 python-windows
190925 python-windows
 
A_road_to_AMBER_simulations_ver_1.0
A_road_to_AMBER_simulations_ver_1.0A_road_to_AMBER_simulations_ver_1.0
A_road_to_AMBER_simulations_ver_1.0
 
Cygwin 1.7 の紹介
Cygwin 1.7 の紹介Cygwin 1.7 の紹介
Cygwin 1.7 の紹介
 
パケットジェネレータipgenから見るnetmap
パケットジェネレータipgenから見るnetmapパケットジェネレータipgenから見るnetmap
パケットジェネレータipgenから見るnetmap
 
Gstreamer Basics
Gstreamer BasicsGstreamer Basics
Gstreamer Basics
 
UEFI時代のブートローダ
UEFI時代のブートローダUEFI時代のブートローダ
UEFI時代のブートローダ
 
Lxc on cloud
Lxc on cloudLxc on cloud
Lxc on cloud
 
initramfsについて
initramfsについてinitramfsについて
initramfsについて
 
MacPort_&_FTP_ver1.0
MacPort_&_FTP_ver1.0MacPort_&_FTP_ver1.0
MacPort_&_FTP_ver1.0
 
Iocage
IocageIocage
Iocage
 
Linux Namespaces
Linux NamespacesLinux Namespaces
Linux Namespaces
 
Outputz.vim
Outputz.vimOutputz.vim
Outputz.vim
 
Android デバッグ小ネタ
Android デバッグ小ネタAndroid デバッグ小ネタ
Android デバッグ小ネタ
 
Introduction to Initramfs - Initramfs-tools and Dracut
Introduction to Initramfs - Initramfs-tools and DracutIntroduction to Initramfs - Initramfs-tools and Dracut
Introduction to Initramfs - Initramfs-tools and Dracut
 
SELinux_Status_PoC_20170516
SELinux_Status_PoC_20170516SELinux_Status_PoC_20170516
SELinux_Status_PoC_20170516
 
Play with UEFI
Play with UEFIPlay with UEFI
Play with UEFI
 
Patch101
Patch101Patch101
Patch101
 
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
 

En vedette

クラウド環境におけるキャッシュメモリQoS制御の評価
クラウド環境におけるキャッシュメモリQoS制御の評価クラウド環境におけるキャッシュメモリQoS制御の評価
クラウド環境におけるキャッシュメモリQoS制御の評価
Ryousei Takano
 
Intel 82599 10GbE Controllerで遊ぼう
Intel 82599 10GbE Controllerで遊ぼうIntel 82599 10GbE Controllerで遊ぼう
Intel 82599 10GbE Controllerで遊ぼう
Takuya ASADA
 

En vedette (16)

あなたの知らないネットワークプログラミングの世界
あなたの知らないネットワークプログラミングの世界あなたの知らないネットワークプログラミングの世界
あなたの知らないネットワークプログラミングの世界
 
Bish Bash Bosh & Co
Bish Bash Bosh & Co Bish Bash Bosh & Co
Bish Bash Bosh & Co
 
πολλαπλασιασμοι ενοτητα 11
πολλαπλασιασμοι ενοτητα 11πολλαπλασιασμοι ενοτητα 11
πολλαπλασιασμοι ενοτητα 11
 
100Gbpsソフトウェアルータの実現可能性に関する論文
100Gbpsソフトウェアルータの実現可能性に関する論文100Gbpsソフトウェアルータの実現可能性に関する論文
100Gbpsソフトウェアルータの実現可能性に関する論文
 
User-space Network Processing
User-space Network ProcessingUser-space Network Processing
User-space Network Processing
 
xv6のコンテキストスイッチを読む
xv6のコンテキストスイッチを読むxv6のコンテキストスイッチを読む
xv6のコンテキストスイッチを読む
 
デバドラを書いてみよう!
デバドラを書いてみよう!デバドラを書いてみよう!
デバドラを書いてみよう!
 
I/O仮想化最前線〜ネットワークI/Oを中心に〜
I/O仮想化最前線〜ネットワークI/Oを中心に〜I/O仮想化最前線〜ネットワークI/Oを中心に〜
I/O仮想化最前線〜ネットワークI/Oを中心に〜
 
Disruptive IP Networking with Intel DPDK on Linux
Disruptive IP Networking with Intel DPDK on LinuxDisruptive IP Networking with Intel DPDK on Linux
Disruptive IP Networking with Intel DPDK on Linux
 
x86とコンテキストスイッチ
x86とコンテキストスイッチx86とコンテキストスイッチ
x86とコンテキストスイッチ
 
クラウド環境におけるキャッシュメモリQoS制御の評価
クラウド環境におけるキャッシュメモリQoS制御の評価クラウド環境におけるキャッシュメモリQoS制御の評価
クラウド環境におけるキャッシュメモリQoS制御の評価
 
DPDKを拡張してみた話し
DPDKを拡張してみた話しDPDKを拡張してみた話し
DPDKを拡張してみた話し
 
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkXeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdk
 
Dpdk環境の話
Dpdk環境の話Dpdk環境の話
Dpdk環境の話
 
Intel 82599 10GbE Controllerで遊ぼう
Intel 82599 10GbE Controllerで遊ぼうIntel 82599 10GbE Controllerで遊ぼう
Intel 82599 10GbE Controllerで遊ぼう
 
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
 

Similaire à とある帽子の大蛇料理Ⅱ

PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門
Yosuke Onoue
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
Etsuji Nakai
 
Hatochan's Resume 20130216@Koedolug
Hatochan's Resume 20130216@KoedolugHatochan's Resume 20130216@Koedolug
Hatochan's Resume 20130216@Koedolug
Kentaro Hatori
 
Nseg20120929
Nseg20120929Nseg20120929
Nseg20120929
hiro345
 

Similaire à とある帽子の大蛇料理Ⅱ (20)

about DakotagUI
about DakotagUIabout DakotagUI
about DakotagUI
 
Gulp ことはじめ
Gulp ことはじめGulp ことはじめ
Gulp ことはじめ
 
もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順
 
Unixカーネルの設計 7 プロセスの制御
Unixカーネルの設計 7 プロセスの制御Unixカーネルの設計 7 プロセスの制御
Unixカーネルの設計 7 プロセスの制御
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
Capistrano
CapistranoCapistrano
Capistrano
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
 
PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門
 
どこでも動くゲームを作るためのベタープラクティス
どこでも動くゲームを作るためのベタープラクティスどこでも動くゲームを作るためのベタープラクティス
どこでも動くゲームを作るためのベタープラクティス
 
Ansible2.0と実用例
Ansible2.0と実用例Ansible2.0と実用例
Ansible2.0と実用例
 
0621 ndk game
0621 ndk game0621 ndk game
0621 ndk game
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
 
Infinite Debian - Platform for mass-producing system every second
Infinite Debian - Platform for mass-producing system every secondInfinite Debian - Platform for mass-producing system every second
Infinite Debian - Platform for mass-producing system every second
 
ソフトウェア工学2023 07 バージョン管理
ソフトウェア工学2023 07 バージョン管理ソフトウェア工学2023 07 バージョン管理
ソフトウェア工学2023 07 バージョン管理
 
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書くLinuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書く
 
Hatochan's Resume 20130216@Koedolug
Hatochan's Resume 20130216@KoedolugHatochan's Resume 20130216@Koedolug
Hatochan's Resume 20130216@Koedolug
 
はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入
 
Metro
MetroMetro
Metro
 
Nseg20120929
Nseg20120929Nseg20120929
Nseg20120929
 

Plus de Masami Ichikawa (7)

Linux debug
Linux debugLinux debug
Linux debug
 
Slub alloc and free
Slub alloc and freeSlub alloc and free
Slub alloc and free
 
Slub data structure
Slub data structureSlub data structure
Slub data structure
 
SystemV IPC
SystemV IPCSystemV IPC
SystemV IPC
 
Linux Namespace
Linux NamespaceLinux Namespace
Linux Namespace
 
Gnomeとdogtai
GnomeとdogtaiGnomeとdogtai
Gnomeとdogtai
 
Minix smp
Minix smpMinix smp
Minix smp
 

Dernier

Dernier (12)

Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 

とある帽子の大蛇料理Ⅱ

  • 1. Twitter : @masami256 Mail : masami@fedoraproject.org
  • 2. Anaconda Overview ● Stage1,2 の 2 段階でインストーラが起動 ● Stage1 ● ブートオプション処理 ● メディアチェック ● ネットワーク設定(必要なら) ● Stage2 の実行 ● Stage2 ● 言語、キーボード、パーティション設定などの 実際のインストール処理
  • 4.
  • 5. Anaconda Programming C(Stage1) と Python(Stage2) GUI は PyGtk
  • 6. Anaconda UI ● インストーラの機能( GUI を使う場合)は以 下のファイルにクラスを登録 ● dispatch.py ● gui.py ● installclass.py
  • 7. dispatch.py ● インストール手順に関するファイル ● 各機能が動く順番を設定 ● 次のステップに進む / 前のステップに戻るなど の処理を実施 installSteps = [ ("kernelvm_top", ), ("installTinyCoreNag", installTinyCoreNagScreen, ), キー名 関数名
  • 8. gui.py ● GUI に関する基本的な処理を実施 ● 変数 stepToClass にキー名とファイル名、クラ ス名を設定 stepToClass = { "kernelvm_top" : ("kernelvm_top_gui",   "KernelvmTopWindow"),
  • 9. installcalss.py ● ● dispatch クラスに dispath.py で登録したキー名を登録 dispatch.setStepList( "kernelvm_top", "installTinyCoreNag",
  • 10. Anaconda UI and Logic ● UI 周りの処理と、実際の処理はファイルが分 かれてます ● pyanaconda/language.py – 言語回りでの処理を実施 ● pyanaconda/iw/language_gui.py – Langauge の画面に関する処理 ● GUI のコード ● PyGtk の場合は pyanaconda/iw ● テキストの場合は pyanaconda/textw
  • 11. iw/kernelvm_top_gui.py class KernelvmTopWindow (InstallWindow): windowTitle = "Kernel/VM" #N_("KernelVM") def __init__ (self, ics): InstallWindow.__init__ (self, ics) ics.setGrabNext (1) self.anaconda = None def getScreen (self, anaconda): self.anaconda = anaconda box = gtk.VBox (False, 10) pix = gui.readImageFromFile ("kernelvm.png") if pix: a = gtk.Alignment () a.add (pix) a.set (0.5, 0.5, 1.0, 1.0) a.set_size_request(200, -1) box.pack_start (a, False) box.pack_start(self.createHbox()) return box
  • 12. kerenelvm_top.py class kernelvm_top (object): def __init__ (self, display_mode = 'g'): pass def write(self, instPath): pass def writeKS(self, f): pass
  • 13.
  • 14. Anaonda Testing ● iso イメージ作るのは大変です>< ● 既存の iso イメージ弄るのも面倒 ● そこで updates.img の出番です!
  • 15. updates.img ● make updates するだけ ● updates.img というファイルができます ● 差分のあるファイルのみを抽出して cpio でまと めて gzip したファイルです ● .spec ファイルのリリースバージョン、 git の tag から差分を見ているようです ● ブート時にオプションを渡します ● updates=http://10.0.2.2/updates.img
  • 20. 変更箇所 ● yuminstall.py ● rpm ファイルのインストール部分 ● bootloader.py ● Grub 周りの処理 ●
  • 21. packages.py def doInstallTinyCore(self, anaconda): gzipImage = "/tmp/updates/tinycore.gz" f = gzip.open(gzipImage, 'rb') data = f.read() cpioFile = "/tmp/tinycore.cpio" w = open(cpioFile,'wb') w.write(data) w.close() f.close() cmd = "cd %(rootPath)s && cpio -id < %(cpiofile)s" % {'rootPath' : anaconda.rootPath, 'cpiofile' : cpioFile} os.system(cmd)
  • 22. bootloader.py def installGrubForTinyCore(anaconda): Grub の rpm を /mnt/sysimage にインストール     grub-install –root-directroy=/mnt/sysimage /dev/sda     grub –batch --device-map=/dev/null << EOFndevice (hd0)t%(sda)s1nroot (hd0)nsetup (hd0)nquitnEOF  カーネルを /mnt/sysimage/boot にコピー
  • 23. bootloader.py def writeBootloader(anaconda): # for (version, arch, nick) in # anaconda.backend.kernelVersionList(anaconda.rootPath): # if plainLabelUsed: # kernelList.append(("%s-%s" %(kernelLabel, nick), # "%s-%s" %(kernelLongLabel, nick), # version)) # else: # kernelList.append((kernelLabel, kernelLongLabel, version)) # if nick != "base": # defkern = "kernel-%s" %(nick,) # plainLabelUsed = 1 kernelList.append(('miko', 'miko', '0'))
  • 25. URL ● Fedora Anaconda repogitory ● git://git.fedorahosted.org/git/anaconda.git ● Anaconda for Ore ore kernel ● https://github.com/masami256/Anaconda-for- ore-ore-kernel