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
190
freebsd_shellscript_install
シェルスクリプトでFreeBSDのインストールを自動化するお話
zinrai
March 02, 2014
Tweet
Share
More Decks by zinrai
See All by zinrai
OKRとチケット駆動開発を組み合わせたチームでの取り組み/okr-tidd-knowledge
zinrai
0
200
テキスト化した「チケット駆動開発がまわりはじめるまでの取り組み」の紹介/okr-tidd-case-intro
zinrai
1
1.7k
Ansible 使うとき何考えてるの/ansible-role-reuse
zinrai
0
470
チケット駆動開発がまわりはじめるまでの取り組み/okr-tidd-case
zinrai
10
5.4k
mail_service_unittest
zinrai
1
200
vyos_mtg3_vxlan_lt
zinrai
0
230
debian_shellscript_install
zinrai
0
280
Other Decks in Programming
See All in Programming
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
490
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3k
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
550
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
180
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
400
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
490
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
780
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
340
ИИ-Агенты в каждый дом – Алексей Порядин, PythoNN
sobolevn
0
150
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
140
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Statistics for Hackers
jakevdp
799
220k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
How GitHub (no longer) Works
holman
315
140k
Raft: Consensus for Rubyists
vanstee
139
7.1k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
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マシンの出来上がり。
おわり 突っ込みや質問はツイッターへ