FreeBSDで行こう for small server
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

FreeBSDで行こう for small server

on

  • 3,090 views

FreeBSDを小規模サーバーに使うために、抑えておくべきポイントを解説しました。NSEG第13回勉強会(2011年3月19日)の発表資料。

FreeBSDを小規模サーバーに使うために、抑えておくべきポイントを解説しました。NSEG第13回勉強会(2011年3月19日)の発表資料。

Statistics

Views

Total Views
3,090
Views on SlideShare
3,043
Embed Views
47

Actions

Likes
1
Downloads
7
Comments
0

4 Embeds 47

https://gitter.im 42
https://twitter.com 2
http://dev.eventdots.jp 2
http://localhost 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

FreeBSDで行こう for small server Presentation Transcript

  • 1. FreeBSDで行こう for small server 長沼 立巳
  • 2. 自己紹介• 長沼立巳(ながぬまたつみ)• 上田市の機器メーカー勤務• 使っているOS o デスクトップはUbuntu  9.04(2009年4月リリース)くらいから o サーバーはFreeBSD  3.4(2000年12月リリース)くらいから  長いだけのライトユーザー
  • 3. FreeBSDのお話• フリーでオープンなオペレーティングシステム• サーバーとか、組み込みとか o デスクトップ用途は弱いかも• 今回は小規模サーバー向けのお話
  • 4. FreeBSDのお話• 個人用サーバー、SOHOサーバー、部門サーバー• 大体のターゲット o Pentium II以降、Core i3とか o メモリ 256MBから4GBくらいまで o ストレージ 2GBから1TBくらいまで o Webサーバー、メールサーバー• 我が家の常時稼動サーバー(8年くらい) o VIA Eden ESP-6000 667MHz o メモリ 512MB o ストレージ 32GB SSD
  • 5. なぜFreeBSDなのか • 無料 • シンプル • 簡単 • 便利
  • 6. FreeBSDをインストール...の前に• どのバージョンを使うか• 最新安定版は 8.2-RELEASE (2011年1月) o リリース版は 8.2-RELEASE という名前 o パッチが出ると 8.2-RELEASE-p1 (まだ出てません) o 次のリリースは 8.3-RELEASE (まだ出てません)の予 定 o 旧バージョン(7.4-RELEASE)のメンテナンスも引き続 き行われている  http://www.freebsd.org/security/security.html#sup• 現在の開発版は 9.0-CURRENT o ここからリリースされるときに 9.0-RELEASE という名 前になる
  • 7. FreeBSDをダウンロード• まずはCDイメージ、またはUSBイメージをダウンロード o http://www.freebsd.org/ja
  • 8. FreeBSDをダウンロード(2)• 何種類かありますけど... o FreeBSD-8.2-RELEASE-i386-bootonly.iso  ブートのみ。容量最小(現在47MB)。おすすめ。  今回はこれで行きます o FreeBSD-8.2-RELEASE-i386-disc1.iso  CD用。 o FreeBSD-8.2-RELEASE-i386-dvd1.iso.xz  DVD用。xz形式。容量最大(1.9GB)。 o FreeBSD-8.2-RELEASE-livefs.iso  レスキュー用。 o FreeBSD-8.2-RELEASE-memstick.img  USBメモリ用。
  • 9. FreeBSDのインストール...は時間が...• standard / express / custom が選べるが o できることはほぼ同じ o standard ... ウィザード形式。起動するデーモンが選べる o express ... ウィザード形式 o custom ... 手順の一覧から選べる• ディスクの設定は面倒なら a (自動設定)でOK o ただしディスク全体を使わないなら注意して o 一般「パーティション」 ⇔ FreeBSD用語「スライス」• わからないところは何もせずにすっとばす o システムファイルのインストール以外はあとでもできる o DistributionsはMinimalで十分
  • 10. FreeBSDのインストール...は時間が...
  • 11. インストールしたらやること (1)• 以下、基本的に要root o まずはrootでログイン• 普段使い用のユーザーを作成 o adduser  設定項目は他のUNIXと基本的に同じ  Invite username into another groups? [] : wheel  これがないとsuでrootになれない  /etc/group を直接編集してもOK• インストーラー画面はsysinstallコマンドで呼び出せる o コマンドでもできるが、sysinstallの方が便利 o パッケージのインストール o ネットワーク インタフェースの設定 o ストレージの追加
  • 12. インストールしたらやること (2)• 以下、基本的に要root• sshdを有効に使用 o /etc/rc.conf に「sshd_enable="YES"」という行を加える o service sshd start• portsをダウンロード o portsnap fetch extract (初回のみ) o portsnap fetch update (更新時)• portsをインストール o portinstall <ports名> o どんなportsがあるかはfreshports.orgがわかり易い  http://freshports.org/
  • 13. インストールしたらやること (3)• 以下、基本的に要root• portsを使う前に o portupgradeをパッケージでインストール(portsからでも インストールできますが、時間がかかるので)  sysinstallを起動して、configure - packages から、 ports-mgmt/portupgrade をインストール o ほかにもこんなのを入れておくと便利かも  shells/bash  sysutils/tmux• portsからインストールしたファイルは /usr/local に置かれる o / ... システムのファイル o /usr/local ... ユーザー毎のファイル(/ と似た構造)
  • 14. インストールしたらやること (4)• 以下、基本的に要root• portsをダウンロード o portsnap fetch extract (初回のみ) o portsnap fetch update (更新時) o /usr/ports に展開される  <カテゴリ名>/<ports名>  例)www/apache22 = Apache HTTP Server 2.2• portsからパッケージをインストール o portinstall <パッケージ名> o 22,784個(2011/3/19現在) o どんなパッケージがあるかはfreshports.orgで調べる  http://freshports.org/
  • 15. インストールしたらやること (5)• 以下、基本的に要root• portsを更新 o portsnap fetch update• 更新されたパッケージをリストアップ o portversion -l "<"• パッケージの更新 o portupgrade <パッケージ名>• パッケージの削除 o pkg_deinstall <パッケージ名>
  • 16. FreeBSDの基本 /etc/rc.conf• ネットワークの設定、システムの設定• daemonの有効化、無効化 o portsからインストールしただけでは起動できない o Apache 2.2なら、「apache22_enable="YES"」を追加 o 渡すフラグなどもここで設定できる o service apache22 start o 起動スクリプトは次の場所  標準 /etc/rc.d  portsなど /usr/local/etc/rc.d• それ以外の設定は /etc/defaults/rc.conf を見る
  • 17. /etc/rc.confの例 # system settings keymap="us.iso" blanktime="120" saver="green" # network settings defaultrouter="x.x.x.x" ifconfig_rl0="inet x.x.x.x netmask x.x.x.x" hostname="xxx" # daemons apache22_enable="YES"
  • 18. 標準機能• 標準で含まれているデーモン o FreeBSD ftp o BIND o Sendmail o OpenSSH• その他のよく使う標準機能 o ログローテーションは newsyslog o inetデーモンはxinetd o パケットフィルタリングはipfilterかpf o cron
  • 19. periodic• cronから定期的に呼び出されるシェルスクリプト群 o security , daily(毎日) , weekly(毎週) , monthly(毎月 )• periodicからの標準出力はroot宛にメールで送られる o dailyメールの内容(一部)  変更されたシステムファイルの一覧  ディスクの使用量  ネットワークインターフェイスの状態  メールキュー• 標準 + ユーザースクリプト o 標準 /etc/peridoc o ユーザースクリプト /usr/local/etc/peridoc o ユーザースクリプトの標準出力もメールに含んでくれる  バックアップとか、メンテナンスとか
  • 20. FreeBSD jail• OS標準の軽量仮想環境 o FreeBSD上にFreeBSD環境をいくつも作ることができる• 何が嬉しい? o 複数の構成のサーバーを同居させられる  PHP4 + MySQL4で動いているアプリがある  PHP5 + MySQL5.5で動かしたいアプリがある  複数のバージョンの混在は面倒  FreeBSD jailなら簡単 o 開発環境をすぐに準備  あれこれ試したいが、システムに触るのはちょっと...  jailなら準備や破棄が簡単  環境が分離されているのでjail
  • 21. FreeBSD jail デモ• FreeBSD 8 + ezjail
  • 22. shutdown -p now• おしまい• ポポポポーン• ありがとうございました
  • 23. アップグレード• マイナーアップグレード o セキュリティパッチとか  例)8.2-RELEASE → 8.2-RELEASE-p1 o freebsd-update fetch install• メジャーアップグレード o メジャーバージョンが上がった場合  例)7.x-RELEASE/8.1-RELEASE → 8.2-RELEASE o やり方はバージョンごとに違う  りりーアナウンスに書いてあります  最近(8.2-RELEASE)の例  freebsd-update upgrade -r 8.2-RELEASE  freebsd-update install ; reboot (2回繰り返し)
  • 24. ちょっと上級者向けの話• FreeBSDならZFS使うでしょ? o 今回のターゲット程度のPCでは厳しいです o メモリ最低4GB、できれば8GB以上ないと性能 がガタ落ち o HDD最低2台、6台とか8台とか16台とか  そこにSSDを混ぜたい• もっといろんな機能があるよ o DTrace ... OSやアプリケーションの動作を監視 o VImage ... 仮想PCごとのネットワークスタック o SMPng ... CPUコア数に応じたリニアなスケー ラビリティ(FreeBSD 8で16コア程度まで)