SlideShare una empresa de Scribd logo
1 de 24
FreeBSDで行こう
       for
   small server
    長沼 立巳
自己紹介

• 長沼立巳(ながぬまたつみ)
• 上田市の機器メーカー勤務
• 使っているOS
  o デスクトップはUbuntu
     9.04(2009年4月リリース)くらいから
  o サーバーはFreeBSD
     3.4(2000年12月リリース)くらいから
     長いだけのライトユーザー
FreeBSDのお話

• フリーでオープンなオペレーティングシステム
• サーバーとか、組み込みとか
  o デスクトップ用途は弱いかも
• 今回は小規模サーバー向けのお話
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
なぜFreeBSDなのか

 •   無料
 •   シンプル
 •   簡単
 •   便利
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 という名
    前になる
FreeBSDをダウンロード

• まずはCDイメージ、またはUSBイメージをダウンロード
  o http://www.freebsd.org/ja
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メモリ用。
FreeBSDのインストール...は時間が...

• standard / express / custom が選べるが
   o できることはほぼ同じ
   o standard ... ウィザード形式。起動するデーモンが選べる
   o express ... ウィザード形式
   o custom ... 手順の一覧から選べる
• ディスクの設定は面倒なら 'a' (自動設定)でOK
   o ただしディスク全体を使わないなら注意して
   o 一般「パーティション」 ⇔ FreeBSD用語「スライス」
• わからないところは何もせずにすっとばす
   o システムファイルのインストール以外はあとでもできる
   o DistributionsはMinimalで十分
FreeBSDのインストール...は時間が...
インストールしたらやること (1)

• 以下、基本的に要root
  o まずはrootでログイン
• 普段使い用のユーザーを作成
  o adduser
      設定項目は他のUNIXと基本的に同じ
      Invite username into another groups? [] : wheel
          これがないとsuでrootになれない
          /etc/group を直接編集してもOK
• インストーラー画面はsysinstallコマンドで呼び出せる
  o コマンドでもできるが、sysinstallの方が便利
  o パッケージのインストール
  o ネットワーク インタフェースの設定
  o ストレージの追加
インストールしたらやること (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/
インストールしたらやること (3)

• 以下、基本的に要root
• portsを使う前に
   o portupgradeをパッケージでインストール(portsからでも
     インストールできますが、時間がかかるので)
        sysinstallを起動して、configure - packages から、
         ports-mgmt/portupgrade をインストール
   o ほかにもこんなのを入れておくと便利かも
        shells/bash
        sysutils/tmux
• portsからインストールしたファイルは /usr/local に置かれる
   o / ... システムのファイル
   o /usr/local ... ユーザー毎のファイル(/ と似た構造)
インストールしたらやること (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/
インストールしたらやること (5)

• 以下、基本的に要root
• portsを更新
   o portsnap fetch update
• 更新されたパッケージをリストアップ
   o portversion -l "<"
• パッケージの更新
   o portupgrade <パッケージ名>
• パッケージの削除
   o pkg_deinstall <パッケージ名>
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 を見る
/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"
標準機能

• 標準で含まれているデーモン
  o FreeBSD ftp
  o BIND
  o Sendmail
  o OpenSSH
• その他のよく使う標準機能
  o ログローテーションは newsyslog
  o inetデーモンはxinetd
  o パケットフィルタリングはipfilterかpf
  o cron
periodic

• cronから定期的に呼び出されるシェルスクリプト群
   o security , daily(毎日) , weekly(毎週) , monthly(毎月
     )
• periodicからの標準出力はroot宛にメールで送られる
   o dailyメールの内容(一部)
       変更されたシステムファイルの一覧
       ディスクの使用量
       ネットワークインターフェイスの状態
       メールキュー
• 標準 + ユーザースクリプト
   o 標準 /etc/peridoc
   o ユーザースクリプト /usr/local/etc/peridoc
   o ユーザースクリプトの標準出力もメールに含んでくれる
       バックアップとか、メンテナンスとか
FreeBSD jail

• OS標準の軽量仮想環境
  o FreeBSD上にFreeBSD環境をいくつも作ることができる
• 何が嬉しい?
  o 複数の構成のサーバーを同居させられる
     PHP4 + MySQL4で動いているアプリがある
     PHP5 + MySQL5.5で動かしたいアプリがある
     複数のバージョンの混在は面倒
     FreeBSD jailなら簡単
  o 開発環境をすぐに準備
     あれこれ試したいが、システムに触るのはちょっと...
     jailなら準備や破棄が簡単
     環境が分離されているのでjail
FreeBSD jail デモ

• FreeBSD 8 + ezjail
shutdown -p now

• おしまい
• ポポポポーン
• ありがとうございました
アップグレード

• マイナーアップグレード
  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回繰り返し)
ちょっと上級者向けの話


• 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コア程度まで)

Más contenido relacionado

La actualidad más candente

ファイルシステム比較
ファイルシステム比較ファイルシステム比較
ファイルシステム比較NaoyaFukuda
 
AllwinnerタブレットのOSを作ってみる (途中版)
AllwinnerタブレットのOSを作ってみる (途中版)AllwinnerタブレットのOSを作ってみる (途中版)
AllwinnerタブレットのOSを作ってみる (途中版)shimadah
 
魁ここんとーく in おおさか
魁ここんとーく in おおさか魁ここんとーく in おおさか
魁ここんとーく in おおさかshimadah
 
今時のLinuxにおけるGPUエンコード事情
今時のLinuxにおけるGPUエンコード事情今時のLinuxにおけるGPUエンコード事情
今時のLinuxにおけるGPUエンコード事情zgock
 
Xenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバXenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバzgock
 
YAPC Asia 2010 30days Albumの裏側 後日談
YAPC Asia 2010 30days Albumの裏側 後日談YAPC Asia 2010 30days Albumの裏側 後日談
YAPC Asia 2010 30days Albumの裏側 後日談Kensuke Nagae
 
関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側Gosuke Miyashita
 
しつこくXenとzfsで作る家庭内vdiサーバ2015年版
しつこくXenとzfsで作る家庭内vdiサーバ2015年版しつこくXenとzfsで作る家庭内vdiサーバ2015年版
しつこくXenとzfsで作る家庭内vdiサーバ2015年版zgock
 
Ruby(thorライブラリ)
Ruby(thorライブラリ)Ruby(thorライブラリ)
Ruby(thorライブラリ)松本 雄貴
 
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話Masataka Tsukamoto
 
Firefox OS + Raspberry Pi
Firefox OS + Raspberry PiFirefox OS + Raspberry Pi
Firefox OS + Raspberry PiEnsekiTT
 
Flameにfirefox os2.1を入れてみた+α
Flameにfirefox os2.1を入れてみた+αFlameにfirefox os2.1を入れてみた+α
Flameにfirefox os2.1を入れてみた+αNaoki Takahashi
 
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編Fuminobu Takeyama
 
エンジニアのための痔の話
エンジニアのための痔の話エンジニアのための痔の話
エンジニアのための痔の話Kouhei Maeda
 

La actualidad más candente (20)

ファイルシステム比較
ファイルシステム比較ファイルシステム比較
ファイルシステム比較
 
AllwinnerタブレットのOSを作ってみる (途中版)
AllwinnerタブレットのOSを作ってみる (途中版)AllwinnerタブレットのOSを作ってみる (途中版)
AllwinnerタブレットのOSを作ってみる (途中版)
 
Bsd suki
Bsd sukiBsd suki
Bsd suki
 
魁ここんとーく in おおさか
魁ここんとーく in おおさか魁ここんとーく in おおさか
魁ここんとーく in おおさか
 
Zrouter
ZrouterZrouter
Zrouter
 
Hello, systemd
Hello, systemdHello, systemd
Hello, systemd
 
今時のLinuxにおけるGPUエンコード事情
今時のLinuxにおけるGPUエンコード事情今時のLinuxにおけるGPUエンコード事情
今時のLinuxにおけるGPUエンコード事情
 
Xenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバXenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバ
 
YAPC Asia 2010 30days Albumの裏側 後日談
YAPC Asia 2010 30days Albumの裏側 後日談YAPC Asia 2010 30days Albumの裏側 後日談
YAPC Asia 2010 30days Albumの裏側 後日談
 
関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側
 
しつこくXenとzfsで作る家庭内vdiサーバ2015年版
しつこくXenとzfsで作る家庭内vdiサーバ2015年版しつこくXenとzfsで作る家庭内vdiサーバ2015年版
しつこくXenとzfsで作る家庭内vdiサーバ2015年版
 
Lfsをやってみよう
LfsをやってみようLfsをやってみよう
Lfsをやってみよう
 
Ruby(thorライブラリ)
Ruby(thorライブラリ)Ruby(thorライブラリ)
Ruby(thorライブラリ)
 
systemdを始めよう
systemdを始めようsystemdを始めよう
systemdを始めよう
 
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
 
Firefox OS + Raspberry Pi
Firefox OS + Raspberry PiFirefox OS + Raspberry Pi
Firefox OS + Raspberry Pi
 
Flameにfirefox os2.1を入れてみた+α
Flameにfirefox os2.1を入れてみた+αFlameにfirefox os2.1を入れてみた+α
Flameにfirefox os2.1を入れてみた+α
 
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編
 
Kernel ext4
Kernel ext4Kernel ext4
Kernel ext4
 
エンジニアのための痔の話
エンジニアのための痔の話エンジニアのための痔の話
エンジニアのための痔の話
 

Similar a FreeBSDで行こう for small server

自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみようMasahiko Hashimoto
 
今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo LinuxについてTakuto Matsuu
 
PXE で linux インストールな本 -1 スピンドルマシンも Linux 化-
PXE で linux インストールな本 -1 スピンドルマシンも Linux 化-PXE で linux インストールな本 -1 スピンドルマシンも Linux 化-
PXE で linux インストールな本 -1 スピンドルマシンも Linux 化-Kenichiro MATOHARA
 
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 secondTaisuke Yamada
 
Prefixから始めるgentoo生活
Prefixから始めるgentoo生活Prefixから始めるgentoo生活
Prefixから始めるgentoo生活bontakun
 
DOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBoxDOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBoxNetwalker lab kapper
 
Unbound/NSD最新情報(OSC 2014 Tokyo/Spring)
Unbound/NSD最新情報(OSC 2014 Tokyo/Spring)Unbound/NSD最新情報(OSC 2014 Tokyo/Spring)
Unbound/NSD最新情報(OSC 2014 Tokyo/Spring)Takashi Takizawa
 
XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用Shinya Okano
 
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】Masahito Zembutsu
 
Nseg20120825
Nseg20120825Nseg20120825
Nseg20120825hiro345
 
osoljp201105_ZFSjiman_nslope
osoljp201105_ZFSjiman_nslopeosoljp201105_ZFSjiman_nslope
osoljp201105_ZFSjiman_nslopeNoriyasu Sakaue
 
Ruby on FreeBSD 2020
Ruby on FreeBSD 2020Ruby on FreeBSD 2020
Ruby on FreeBSD 2020Koichiro Iwao
 
CIBC 事前インストール
CIBC 事前インストールCIBC 事前インストール
CIBC 事前インストールTakashi Imagire
 
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜Hideki Takase
 
Custom Package Building with Poudriere
Custom Package Building with PoudriereCustom Package Building with Poudriere
Custom Package Building with PoudriereYuichiro Naito
 

Similar a FreeBSDで行こう for small server (20)

Osoljp201204
Osoljp201204Osoljp201204
Osoljp201204
 
自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう
 
今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて
 
PXE で linux インストールな本 -1 スピンドルマシンも Linux 化-
PXE で linux インストールな本 -1 スピンドルマシンも Linux 化-PXE で linux インストールな本 -1 スピンドルマシンも Linux 化-
PXE で linux インストールな本 -1 スピンドルマシンも Linux 化-
 
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
 
Prefixから始めるgentoo生活
Prefixから始めるgentoo生活Prefixから始めるgentoo生活
Prefixから始めるgentoo生活
 
DOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBoxDOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBox
 
Unbound/NSD最新情報(OSC 2014 Tokyo/Spring)
Unbound/NSD最新情報(OSC 2014 Tokyo/Spring)Unbound/NSD最新情報(OSC 2014 Tokyo/Spring)
Unbound/NSD最新情報(OSC 2014 Tokyo/Spring)
 
XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用
 
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
 
Nseg20120825
Nseg20120825Nseg20120825
Nseg20120825
 
osoljp201105_ZFSjiman_nslope
osoljp201105_ZFSjiman_nslopeosoljp201105_ZFSjiman_nslope
osoljp201105_ZFSjiman_nslope
 
Ruby on FreeBSD 2020
Ruby on FreeBSD 2020Ruby on FreeBSD 2020
Ruby on FreeBSD 2020
 
Osc2013 tokyospring
Osc2013 tokyospringOsc2013 tokyospring
Osc2013 tokyospring
 
CIBC 事前インストール
CIBC 事前インストールCIBC 事前インストール
CIBC 事前インストール
 
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
 
InfiniBand on Debian
InfiniBand on DebianInfiniBand on Debian
InfiniBand on Debian
 
ラズパイオーディオで学ぶLinuxシステム構築
ラズパイオーディオで学ぶLinuxシステム構築ラズパイオーディオで学ぶLinuxシステム構築
ラズパイオーディオで学ぶLinuxシステム構築
 
実は怖くないDevOps
実は怖くないDevOps実は怖くないDevOps
実は怖くないDevOps
 
Custom Package Building with Poudriere
Custom Package Building with PoudriereCustom Package Building with Poudriere
Custom Package Building with Poudriere
 

Más de Tatsumi Naganuma

Más de Tatsumi Naganuma (10)

Goをえらんだ理由
Goをえらんだ理由Goをえらんだ理由
Goをえらんだ理由
 
EE
EEEE
EE
 
Xtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使うXtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使う
 
Markdown入門
Markdown入門Markdown入門
Markdown入門
 
Dartをはじめよう
DartをはじめようDartをはじめよう
Dartをはじめよう
 
Cross Platform Make
Cross Platform MakeCross Platform Make
Cross Platform Make
 
Antのススメ
AntのススメAntのススメ
Antのススメ
 
NSEG #15
NSEG #15NSEG #15
NSEG #15
 
Node.js で Web アプリ開発
Node.js で Web アプリ開発Node.js で Web アプリ開発
Node.js で Web アプリ開発
 
初めての REST - Representational State Transfer
初めての REST - Representational State Transfer初めての REST - Representational State Transfer
初めての REST - Representational State Transfer
 

Último

プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 

Último (8)

プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 

FreeBSDで行こう for small server

  • 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 という名 前になる
  • 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で十分
  • 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コア程度まで)