スキップしてメイン コンテンツに移動

kickstartで最小限の構成でインストール

最小限の手間でサーバーを配備できるようにしたいのでkickstartインストールをやってみました。
とりあえずの目標としては以下の2点。
  • 最小構成でインストール。必要なdaemonはsshdだけ
  • DAGリポジトリからPuppetをインストール。これは次回以降の自動設定の布石
設定ファイルを作った手順は以下のような感じ
  1. 実際に手動で最小限の構成でインストールしてみる
  2. インストール後に/root/anaconda-ks.cfgを参考に編集。オプションの詳しい説明はRedHatのマニュアルウノウラボさんのblogを参考にした。
  3. 編集した設定ファイル(ks.cfg)をhttpでアクセスできる場所にアップロード。自分はDropboxのPublic領域にコピー。これで自前のWebサーバーを準備する手間が省ける
  4. VMWare Playerで実際にkickstartインストールできるか確認。思ったとおりにいってない箇所があれば2に戻る。
で、できた設定ファイルが以下のようになります。一部()で囲っている部分は適宜置き換えてください。
install
url --url http://ftp.iij.ad.jp/pub/linux/centos/5.5/os/i386

lang ja_JP.UTF-8
keyboard jp106
timezone Asia/Tokyo

network --device eth0 --bootproto dhcp --hostname (ホスト名) --noipv6
firewall --enabled --port=22:tcp

rootpw --iscrypted (暗号化パスワード)
authconfig --enableshadow --enablemd5
selinux --permissive

bootloader --location=mbr --driveorder=sda
clearpart --all --initlabel --drives=sda
part /boot --fstype ext3 --size=100 --ondisk=sda
part pv.2 --size=0 --grow --ondisk=sda
volgroup VolGroup00 pv.2
logvol swap --fstype swap --name=swap --vgname=VolGroup00 --size=512
logvol /usr --fstype ext3 --name=usr --vgname=VolGroup00 --size=8000
logvol /home --fstype ext3 --name=home --vgname=VolGroup00 --size=5000
logvol /var --fstype ext3 --name=var --vgname=VolGroup00 --size=4000 --grow
logvol / --fstype ext3 --name=root --vgname=VolGroup00 --size=2000

## DAG RPM repository for installing Puppet
#repo --name=dag --baseurl=http://ftp.riken.jp/Linux/dag/redhat/el5/en/x86_64/dag
repo --name=dag --baseurl=http://ftp.riken.jp/Linux/dag/redhat/el5/en/i386/dag

## set startup services
services --disabled=gpm,haldaemon,ip6tables,mcstrans,messagebus,netfs,rawdevices,restorecond

## user add
user --name=(ユーザー名) --groups=users

%packages --nobase
@core
telnet
vim-enhanced
screen
puppet

%post

## sshd deny password authentication
sed -i 's/^PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config

install -d -m 0700 -o tsuyosh -g users /home/(ユーザー名)/.ssh
cat > /home/(ユーザー名)/.ssh/authorized_keys <<KEY
(sshの公開鍵データ)
KEY
chown (ユーザー名):users /home/(ユーザー名)/.ssh/authorized_keys
インストールCDからbootしてksオプション付きでlinuxを起動させます。自分の場合はnetinstall CDを使いました。
linux ks=(設定ファイルのURL)
なお、httpでkickstartファイルを落としているのでDHCPでIPアドレスを自動取得できて設定ファイルをダウンロードできる環境にサーバーを置く必要があります。

コメント

  1. install の -o オプションもtsuyoshでなく(ユーザー名)ではないでしょうか。

    返信削除

コメントを投稿

このブログの人気の投稿

2017年を雑に振り返ってみた

TwitterのTLを見てて振り返りの記録を残そうと思い立ったので雑に書きました。来年はちゃんと記録を残そう... お仕事面での1年間 某デバイス向けAndroidアプリ開発 年頭から8月までやってました。 モデルチェンジに伴う新機能の実装がメインでした。 もう2015年からやってるアプリなのでそこまで炎上はしませんでしたがなんだかんだで500コミット位コードを書いてました。 去年の開発では難航したためにDroidKaigi 2016の参加を諦めた辛い記憶があったので1,2月は猛烈に開発を進めて何とか参加できたのはいい思い出?かもしれません。 この頃からAndroidアプリのアーキテクチャをちゃんと考えないとなぁということでMVPとかMVVMとかDDDとかについて調べだしました。 ソーシャルメディアの分析サービスっぽいの開発 6月〜11月ぐらいまで TwitterとかInstagramとかソーシャルメディアのツールですがお客さんの要望やイベント対応に合わせて新機能開発をやってました。サービス自体は去年位に始まってたんですが久々にLaravelを触りました。 某アプリのリニューアル開発 9月〜現在進行中 2つの類似するサービス向け(flavorで分けてます)のアプリとそのタブレット対応の開発をしています。フルKotlin & MVVM & Android Clean Architectureの考え方を取り入れて少し今風になりました。(FluxとかAACとかはまだ 現在スマホ版アプリ開発の佳境です。年内リリース目標だったんですが残念ながら年を越しそうです。DroidKaigi 2018までには終わってるといいけどなぁ...(´・ω・`) 発表 potatotips #41で"Android Font Updates"という題目で発表させていただきました。 https://speakerdeck.com/tsuyosh/android-font-updates 映画 34本くらい観てました。印象に残ったのは ザ・コンサルタント ラ・ラ・ランド 3月のライオン 前編&後編 夜は短し歩けよ乙女 メアリと魔女の花 ジョン・ウィック:チャプター2 ...