* FreeBSD 9.1(無料) -一般的に回線的に近いミラーサイトの方がダウンロードが速いです -さくらは、64bitになりました。 --http://www.freebsd.org/doc/ja_JP.eucJP/books/handbook/mirrors-ftp.html#HANDBOOK-MIRRORS-CHAPTER-SGML-MIRRORS-JP-FTP --ISOファイル ---ftp://ftp.jp.freebsd.org/pub/FreeBSD/releases/amd64/ISO-IMAGES/9.1/ --パッケージファイル ---ftp://ftp.jp.freebsd.org/pub/FreeBSD/ports/amd64/packages-9-stable/Latest/ --管理ソフト(pkgng) は、conflict バグがあるので使わないほうがいい *さくらのOS サーバ情報の表示(さくらインターネットサーバコントロールパネル) OSバージョン で確認できます 例: 2014/5  OSバージョン FreeBSD 9.1-RELEASE-p13 amd64 *仮想OSについて おうちで同じ環境が欲しい バイナリ作りたい、ライトでphpコンパイルしたいなど サーバー容量が増えたので、ローカル環境でテストする意味合いが薄れつつある。 **ローカルPCで類似環境をつくるには、 -用途 --sakura.ne.jpサーバーにごみファイルをおきたくない --sshが使えない(ライトプラン) 必要なもの(Windows) -仮想OS (お好きなものを用意します) --Hyper-V --VirtualBox ---安定性と動作速度に難あり。 ---core i3では動作に支障なし。 --× Virtual PC 2007(64bitゲストOS 未サポート) -OS:FreeBSD 9.1 (CDまたはDVDなどのisoイメージファイル) -Hyper-V Windows8, 8.1 Pro版以上に付属しています 設定例は、ページの最後に移動しました 参考:さくらのFreeBSDのパーティションの仕切り方 / - 1024MB swap - 1024MB /var - 4096MB /usr - 4096MB /home - 残り全て /tmpディレクトリ作成 rm -r /tmp ln -s /var/tmp /tmp //参考 //さくらインターネット、専用サーバースレ Part9 410より //ttp://serverfan.dip.jp/freebsd/install62.html --パーティション拡張ソフトがFreeBSDのフォーマットに対応してないことがほとんどなので容量は大きめにしていたほうがよい 可変長で15〜20GBとか **FreeBSD 基本コマンド ,pkg_add ,pkg_delete,pkg_info ,freebsd-update, ,adduser,passwd, sysinstallコマンドでもできる ,chown,chmod, ,cd,mkdir, ,rm,rmdir, ,ls, * Virtualbox の設定 例 ,既定の設定,アドレス,ネットマスク,範囲 ,ホストオンリーアダプター,192.168.56.1,255.255.255.0, ,DHCPサーバー,192.168.56.100,255.255.255.0,192.168.56.[101-254] 手動の空きは、192.168.56.[2-99] 1:NAT  インターネット通信する場合 2:ホストオンリーアダプター **【FreeBSD側の設定 Virtualbox】 固定IPの例 -- /etc/hosts 必要な置換を追加 192.168.56.10 freebsd.localhost -- /etc/rc.confに追加 keymap="jp.106.kbd" hostname="freebsd.localhost" # 1:NAT、2: host only adaptor defaultrouter="192.168.56.1" ifconfig_em0="DHCP" ifconfig_em1="inet 192.168.56.10 netmask 255.255.255.0" sendmail_enable="YES" #sshを有効 sshd_enable="YES" #FTP bftpd 〜 /usr/local/sbin/bftpd -nd インストール後にすぐに設定したほうがいい edit /etc/rc.conf /etc/netstart 外部のホストに ping してみる Virtualbox ゲストOS 追加パッケージ pkg_add -r virtualbox-ose-additions **【Windows側の設定 Virtualbox】 - C:\WINDOWS\SYSTEM32\DRIVERS\etc\hosts 192.168.56.10 freebsd.localhost * Hyper-V の設定 例 -内容待ち 既定のアドレスを置き換えて考えてください * VirtualPCの場合 内容が古く64bitに対応していないので [[仮想OSの設定方法/VirtualPC]] に移動しました *つながらないときは - ファイヤーウォールの設定を見直してみる - pingをうってみる -- FreeBSD ping -c 1 yahoo.co.jp -- Windows ping freebsd.localhost -n 1 **簡易版 パッケージ一覧取得 freebsd-pkg-list-get-pl.cgi ---( #!/usr/bin/perl use CGI; $cgi = new CGI; print "Content-type: text/html\n\n"; #$cgi ->charset(""); #$cgi ->charset("utf8"); $cgi ->charset("sjis"); #$cgi ->charset("eucjp"); #print $cgi->header('text/html'); # if (!($ENV{'REMOTE_ADDR'} eq "YourREMOTE_ADDR")) { print("reject"); exit(0); } # if (!($ENV{'REMOTE_HOST'} eq "YourRemoteHost")) { print("reject"); exit(0); } # if (!($ENV{'REMOTE_ADDR'} =~ m/YourRemoteAddress\./i)) { print("reject"); exit(0); } # if (!($ENV{'REMOTE_ADDR'} =~ m/192\./i)) { print("reject"); exit(0); } # if (!($ENV{'REMOTE_HOST'} =~ m/\.YourRemoteHost/i)) { print("reject"); exit(0); } $os = $list = {}; open (RUNCMD, "uname -mrs |"); $os{"uname"} = ; close (RUNCMD); open (RUNCMD, "uname -r |"); $os{"version"} = ; close (RUNCMD); open (RUNCMD, "uname -m |"); $os{"platform"} = ; close (RUNCMD); $CMD = "/usr/sbin/pkg_info"; open (RUNCMD, "$CMD |"); @{$os{"pkg_info_src"}} = ; close (RUNCMD); chomp($os{"uname"}); chomp($os{"version"}); chomp($os{"platform"}); $os{"FTP_base"} = "ftp://ftp.jp.freebsd.org/pub/FreeBSD/ports/" . $os{"platform"} . "/"; $os{"PACKAGESITE"} = $os{"FTP_base"} . "packages-" . lc( (($os{"version"} =~ m/^([^-]+-[^\-]*)/ ) ? $1 : "7-stable") ) . "/Latest/"; $os{"PACKAGESITE_stable"} = $os{"FTP_base"} . "packages-" . (($os{"version"} =~ m/^([\d]+)/ ) ? $1 : "7") . "-stable/Latest/"; $os{"pkg_info"} = join("", @{$os{"pkg_info_src"}}); $menubar = "

トップ" . " | リスト" . " | 追加用コマンド" . " | おすすめ

"; print(""); print("

$os{\"uname\"}

"); print("

RemoteAddress:$ENV{'REMOTE_ADDR'}

"); print("

RemoteHost:$ENV{'REMOTE_HOST'}

"); print("" . $menubar); $list{"pkg_add"} = $list{"portupgrade"} = $list{"all"} = ""; $tableBody = "NoNameversiondescription\n"; $count = 0; for (my $i=0; $i<=$#{$os{"pkg_info_src"}}; $i++) { chomp($os{"pkg_info_src"}[$i]); # removes newlines # pakegaename-version description # (pakegaename)-(version) (description) # ($1)-($2)-($3) if ($os{"pkg_info_src"}[$i] =~ m/^([^\s]+)-([^\s]+)\s+(.+)/) { $count++; $tableBody .= sprintf("%d%s%s%s" ,$count,$cgi->escapeHTML($1),$cgi->escapeHTML($2),$cgi->escapeHTML($3))."\n"; $s .= sprintf("pkg_add -r %s" , $cgi->escapeHTML($1))."\n"; $list{"pkg_add"} .= "pkg_add -r " . $cgi->escapeHTML($1) . "\n"; $list{"portupgrade"} .= "portupgrade -PP -r --new " . $cgi->escapeHTML($1) . "\n"; $list{"all"} .= " " . $cgi->escapeHTML($1);; } } print "total $count
\n"; print "" . $tableBody . "
\n"; print("" . $menubar); $onClick = 'onclick="this.select()"'; $textarea_options = "wrap=off rows=5 cols=60 " . $onClick; print("

#csh
setenv PACKAGESITE " . $os{"PACKAGESITE"} . "
\n"); print("setenv PACKAGESITE " . $os{"PACKAGESITE_stable"} . "

\n"); print("

#sh
export PACKAGESITE=" . $os{"PACKAGESITE"} . "
\n"); print("export PACKAGESITE=" . $os{"PACKAGESITE_stable"} . "

\n"); print "
pkg_add
\n"; print "
portupgrade
\n"; print "
portupgrade
\n"; print "
pkg_info
\n"; print("" . $menubar); @TuikaList = ("apache+mod_ssl" , "ftpd-tls"); print "おすすめの追加パッケージ
\n"; foreach $item (@TuikaList) { print $cgi->escapeHTML($item) . "
\n"; } print(""); 1; ---)