Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
freebsd_shellscript_install
Search
zinrai
March 02, 2014
Programming
1
180
freebsd_shellscript_install
シェルスクリプトでFreeBSDのインストールを自動化するお話
zinrai
March 02, 2014
Tweet
Share
More Decks by zinrai
See All by zinrai
OKRとチケット駆動開発を組み合わせたチームでの取り組み/okr-tidd-knowledge
zinrai
0
180
テキスト化した「チケット駆動開発がまわりはじめるまでの取り組み」の紹介/okr-tidd-case-intro
zinrai
1
1.6k
Ansible 使うとき何考えてるの/ansible-role-reuse
zinrai
0
450
チケット駆動開発がまわりはじめるまでの取り組み/okr-tidd-case
zinrai
10
5.4k
mail_service_unittest
zinrai
1
190
vyos_mtg3_vxlan_lt
zinrai
0
210
debian_shellscript_install
zinrai
0
270
Other Decks in Programming
See All in Programming
型付け力を強化するための Hoogle のすゝめ / Boosting Your Type Mastery with Hoogle
guvalif
1
240
TSConfig Solution Style & subpath imports to switch types on a per-file basis
maminami373
1
190
イベントストーミングから始めるドメイン駆動設計
jgeem
3
660
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
0
380
PT AI без купюр
v0lka
0
200
Javaのルールをねじ曲げろ!禁断の操作とその代償から学ぶメタプログラミング入門 / A Guide to Metaprogramming: Lessons from Forbidden Techniques and Their Price
nrslib
2
1.5k
Efficiency and Rock 'n’ Roll (Really!)
hollycummins
0
620
try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう
kajitack
3
380
コードに語らせよう――自己ドキュメント化が内包する楽しさについて / Let the Code Speak
nrslib
5
1.1k
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
7
400
Interface vs Types ~型推論が過多推論~
hirokiomote
1
240
Cursor Meetup Tokyo ゲノミクスとCursor: 進化と制約のあいだ
koido
2
690
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
Producing Creativity
orderedlist
PRO
346
40k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
106
19k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
It's Worth the Effort
3n
184
28k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Music & Morning Musume
bryan
47
6.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Transcript
シェルスクリプトでFreeBSDインストール自動化 2014/03/01 @zinrai
自己紹介 • Twitter : @zinrai (じんらい) • blog : zinrai.github.io
• 趣味 : けん玉(四段)
ブログに書いてます • 「シェルスクリプトでFreeBSD 9.1のインストー ル自動化」 http://zinrai.github. io/blog/html/2013/07/20/freebsd_pxeboot. html
モチベーション • 「第15回 FreeBSD勉強会」 インストーラを使わないでFreeBSDをインストー ルする方法 http://atnd.org/events/35877
自動化するには、インストーラがなにをしているか 知る必要がある。
インストーラってなにしてる • パーティション作成 : gpart(8) • ディスクフォーマット : newfs(8) •
デバイスマウント : mount(8) • ユーザーランド/カーネル展開 • パスワード設定 : pw(8) • ネットワーク設定 • タイムゾーン設定 : tzsetup(8) • ユーザー作成 : pw(8)
ユーザー作成 % pw useradd -n nanashi -s /bin/tcsh -m 平文
% print ‘Xd49D4Pj' | pw usermod -n nanashi -h 0 ハッシュ % print '$6$zb/9khHuHs2BArHu$UF/tHGPcXOjxL24Y5qG.rZi. I9qMXe67VzdGvUAiKsHFVycK17T81g3pBRMjp8qVve/TweUsHVn.m1. V0Sm5q0’ | pw usermod -n nanashi -H 0
あとはシェルスクリプトを書くだけ。
インストール自動化の構成 ディスクレスブート用のサーバを用意し、ディスクレスブート時にシェルスクリ プトを実行させるという簡単な構成 サーバには2つのシェルスクリプトを用意しておく • OSインストール用のシェルスクリプトを探して実行するシェルスクリプト (クライアントのMACアドレスを取得し、そのMACアドレスが書かれたシェルスク リプトを実行する) • OSインストール用シェルスクリプト
まとめ パーティション作成してフォーマットしてデバイスマ ウントしてカーネルとユーザーランド展開してfstab 書いてchroot(8)してユーザーアカウント作成して 再起動すればFreeBSDマシンの出来上がり。
おわり 突っ込みや質問はツイッターへ