SlideShare a Scribd company logo
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コア程度まで)

More Related Content

What's hot

ファイルシステム比較
ファイルシステム比較ファイルシステム比較
ファイルシステム比較
NaoyaFukuda
 
AllwinnerタブレットのOSを作ってみる (途中版)
AllwinnerタブレットのOSを作ってみる (途中版)AllwinnerタブレットのOSを作ってみる (途中版)
AllwinnerタブレットのOSを作ってみる (途中版)
shimadah
 
Bsd suki
Bsd sukiBsd suki
Bsd suki
yamori813
 
魁ここんとーく in おおさか
魁ここんとーく in おおさか魁ここんとーく in おおさか
魁ここんとーく in おおさか
shimadah
 
Zrouter
ZrouterZrouter
Zrouter
yamori813
 
Hello, systemd
Hello, systemdHello, systemd
Hello, systemd
Emma Haruka Iwao
 
今時の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ライブラリ)
松本 雄貴
 
systemdを始めよう
systemdを始めようsystemdを始めよう
systemdを始めよう
Preferred Networks
 
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
Masataka Tsukamoto
 
Firefox OS + Raspberry Pi
Firefox OS + Raspberry PiFirefox OS + Raspberry Pi
Firefox OS + Raspberry Pi
EnsekiTT
 
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
 
Kernel ext4
Kernel ext4Kernel ext4
Kernel ext4
Kai Sasaki
 
エンジニアのための痔の話
エンジニアのための痔の話エンジニアのための痔の話
エンジニアのための痔の話Kouhei Maeda
 

What's hot (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 to 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 second
Taisuke Yamada
 
Prefixから始めるgentoo生活
Prefixから始めるgentoo生活Prefixから始めるgentoo生活
Prefixから始めるgentoo生活
bontakun
 
DOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBoxDOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBox
Netwalker 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 2020
Koichiro Iwao
 
Osc2013 tokyospring
Osc2013 tokyospringOsc2013 tokyospring
Osc2013 tokyospring
Masataka Tsukamoto
 
CIBC 事前インストール
CIBC 事前インストールCIBC 事前インストール
CIBC 事前インストール
Takashi Imagire
 
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
Hideki Takase
 
InfiniBand on Debian
InfiniBand on DebianInfiniBand on Debian
InfiniBand on Debian
Taisuke Yamada
 
ラズパイオーディオで学ぶLinuxシステム構築
ラズパイオーディオで学ぶLinuxシステム構築ラズパイオーディオで学ぶLinuxシステム構築
ラズパイオーディオで学ぶLinuxシステム構築
VirtualTech Japan Inc./Begi.net Inc.
 
実は怖くないDevOps
実は怖くないDevOps実は怖くないDevOps
実は怖くないDevOps
Masanori Ishigami
 
Custom Package Building with Poudriere
Custom Package Building with PoudriereCustom Package Building with Poudriere
Custom Package Building with Poudriere
Yuichiro Naito
 

Similar to 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
 

More from Tatsumi Naganuma

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

More from 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
 

Recently uploaded

YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
CRI Japan, Inc.
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
Yuuitirou528 default
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 

Recently uploaded (15)

YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 

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