FreeBSD
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
&size(24){&color(navy){''FreeBSD''};};
----
#contents
----
- [[BSDのプリンセス、マジカルとこちゃん:http://tokochan.haun.org/]]
- [[FRESH ports:http://www.freshports.org/]]
- [[FreeBSDハンドブック日本語版:http://www.jp.freebsd.org/www.FreeBSD.org/doc/ja_JP.eucJP/books/handbook/index.html]]情報がちょっと古いので,最新情報を得るには英語版をどうぞ。
- [[FreeBSD Handbook:http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/index.html]]
---
**FreeBSD Update [#k61af712]
***パッチ適用 [#t25026fc]
# freebsd-update fetch
# freebsd-update install
*** バージョンアップ [#d970f66c]
''OSの更新''
# freebsd-update upgrade -r 14.0-RELEASE
# freebsd-update install -r 14.0-RELEASE
''PKGの更新''
# pkg-static install -fy pkg
# pkg upgrade -y
**Portの管理 [#m5f414fe]
''Gitから取得''
git clone --depth 1 https://git.FreeBSD.org/ports.git /usr/ports
''最新に更新''
git -C /usr/ports pull
**インストール [#x9b198ed]
''インストールCDの準備''
インストールCDイメージ
ftp3.jp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/5.2.1/5.2.1-RELEASE-i386-miniinst.iso
をダウンロード。新潟大学からだとこのサイトが早いです。
isoイメージをCD writerで焼きます。
焼きあがったCDから起動します。
''スライス・パーティションの切り方''
FreeBSDの場合物理的なHDDを,まずスライスという単位にきります。
すべてのディスクを1つのスライスにしてしまってよいでしょう。
次にスライスの中にパーティションを切ります。
いろいろ流儀があるでしょうが
/ swap容量を差し引いた残り全部
swap 256MB〜1G
が簡単です。
''残りのインストール過程''
-配布モデルはX-Developper
-Portsは入れる
-Gatewayにはならない
-NFS clientになる
-NFS serverにならない
-Anonymous FTPを提供しない
-Linux Emulationをとりあえず無効化
この辺は適当に選択しても後から修正できますので。
** カーネルオプション [#qea44829]
/usr/src/sys/conf/
**パッケージ管理 [#tbc395de]
''最初の一回だけ''
# pkg_add -r cvsup-without-gui
# cp /usr/share/example/cvsup/ports-supfile /etc
# chmod 644 /etc/ports-supfile
/etc/ports-supfileの
*default host=CHANGE_THIS.FreeBSD.org
と書かれた行を
*default host=cvsup.jp.FreeBSD.org
と編集して、cvsup.jp.freebsd.orgからとってくるように設定。
# cvsup -L 2 /etc/ports-supfile
# cd /usr/ports/sysutil/portupgrade
# make install clean
''パーッケージを最新に保つ''
# cvsup -L 2 /etc/ports-supfile
# portsdb -uU
# portupgrade -ark
''新規パッケージの導入''
# cd /usr/ports
# portinstall japanese/kterm
''たまにやって欲しいこと''
お掃除
# portsclean -LCD
** HDDをまるごとコピー [#web39bcb]
- [[FreeBSD QandA 1859:http://www.jp.freebsd.org/QandA/HTML/1859.html]]
+ コピー先の HDD を接続して、オリジナルの HDD から起動します。
+ root でログインして /stand/sysinstall を実行します。
+ Configure -> Fdisk の画面からコピー先の HDD のスライスを作成します。ブートマネージャもインストールしておきます。
+ Configure -> Label の画面から、オリジナルのHDDと同じようにパーティションを作成します。newfs もここで行っておくとよいです。
例:
Part Mount Size Newfs
---- ----- ---- -----
da1s1a /mnt 100MB UFS Y
da1s1b swap 1024MB SWAP
da1s1e /mnt/var 1024MB UFS Y
da1s1f /mnt/usr 2048MB UFS Y
da1s1g /mnt/home 4550MB UFS Y
+ /mnt 以下に新たに作成したパーティションをマウントします。
# mount /dev/da1s1a /mnt
# mount /dev/da1s1e /mnt/var
# mount /dev/da1s1f /mnt/usr
# mount /dev/da1s1g /mnt/home
+ それぞれのパーティションをコピーします。
# dump 0af - / | ( cd /mnt && restore rf -)
# dump 0af - /var | ( cd /mnt/var && restore rf -)
# dump 0af - /usr | ( cd /mnt/usr && restore rf -)
# dump 0af - /home | ( cd /mnt/home && restore rf -)
+ restoresymtable を削除します。
# rm /mnt/restoresymtable
# rm /mnt/var/restoresymtable
# rm /mnt/usr/restoresymtable
# rm /mnt/home/restoresymtable
+ コピー先の HDD から起動した際にブートデバイス名が変わるのであれば /mnt/etc/fstab も書きかえておきます。この場合、デバイスファイルも /mnt/dev 上で忘れずに作成しておきます。
+ オリジナルの HDD を切り離して、コピー先の HDD から起動することを確認します。
**WSDD [#q6f83cbf]
- Windowsからブラウジングできるようにする
-- WSDD
**データCD [#zd48fca3]
:sysutils/cdrtools-cjk|日本語ファイルに対応したCD作成ツール
+Joliet拡張とRock Ridge拡張なisoイメージを作る
% mkisofs -J -r -input-charset euc-jp -o hoge.iso hoge
+できたイメージを確認
# mdconfig -af hoge.iso
md0
# mount -t cd9660 /dev/md0 /mnt
# mdconfig -du md0
+Burn!
# burncd -s max data hoge.iso fixate
**音楽CD [#i09e511f]
:sysutils/cdrdao|CDをdisc at onceで焼く.
***一度だけ必要な手順 [#dc8e0bbc]
cdrdaoはscsiデバイス用なので,cam transport moduleをkernelに組み込む。
device atapicam
***CDを作るたびに必要な手順 [#h04e268e]
cueシートをtocに変換
% cue2toc hoge.cue > hoge.toc
burn!!!
# cdrdao write --device 1,0,0 --driver generic-mmc --speed 8 hoge.toc
- リッピング
cdparanoia
***TOCファイルの作り方 [#mb64c65d]
音楽CDを示すラベルをファイルの先頭に書きます。
CD_DA
後はトラックを書いていきます。
-トラックの種別
TRACK AUDIO
-ファイル名 開始位置 長さ
FILE "hoge01.wav" 00:00:00 04:55:37
--単一のwavを区切って焼くときは,ファイル名はすべてのトラックで同一にして,開始位置と長さを指定します。
CD_DA
TRACK AUDIO
FILE "CDImage.wav" 00:00:00 04:11:00
TRACK AUDIO
FILE "CDImage.wav" 04:11:00 05:05:62
START 00:02:00
TRACK AUDIO
FILE "CDImage.wav" 09:16:62 04:48:63
START 00:01:50
--トラックごとに分かれたwavファイルからCDを作るには,各トラックにおいて対応するファイル名を書きます。
CD_DA
TRACK AUDIO
FILE "01 - Egao no Yokan ('Deep'Dream mix.).wav" 0
TRACK AUDIO
FILE "02 - Wonder Girl ('Deep'Club mix.).wav" 0
TRACK AUDIO
FILE "03 - Yureru Koi Otome Iro .wav" 0
-pre gap
START 00:01:00
例えばこんな風にすると,前のトラックのラスト1秒になったときに,トラックインデクスが現在のトラックに切り替わります。
** CDのコピー [#l370dc8b]
#cdrdao copy --device 1,0,0 --speed 24
**xfsの起動スクリプト発見 [#zfbf7f56]
# echo 'xfs_enable="YES"' >> /etc/rc.conf
** その他のports(MATLABへの道) [#s65fda4d]
# portinstall net/tightvnc
# portinstall emulator/linux_base-8
# portinstall net/rsync
** Matlabインストール [#veb82031]
//+xsetupを動かすのに必要なLinuxバイナリをインストール
// # portinstall emulators/linux_base-8/
// # portinstall /usr/ports/x11/linux-XFree86-libs
//+インストールCDの中身をまるごとコピー
// # mount /cdrom
// # cp -R /cdrom /mnt
//+LinuxバイナリにLinxu印をつける
// # find . -print -type f | grep glnx86 | xargs brandelf -t Linux
//+でもこの共有ライブラリはオリジナルのを使用
// # cp /cdrom/update/bin/glnx86/libmwins.so /mnt/cdrom/update/bin/glnx86/libmwins.so
//+ARCHが必ずgnlx86になるようにごにょごにょする
// # vi /mnt/cdron/install
//+ここからはLinux版といっしょ
// # mkdir /opt/matlab
// # cd /opt/matlab
// # /mnt/cdrom/install
+xorgが入っているのを前提として,必要なLinuxバイナリをインストール
# portinstall emulators/linux_base-8/
# portinstall x11/linux-XFree86-libs
# portinstall x11-fonts/linux-fontconfig
# portinstall textproc/linux-expat
+/etc/rc.confに以下を追加
linux_enable="YES"
+/etc/fstabに以下を追加
linprocfs /compat/linux/proc linprocfs rw 0 0
+/compat/linux/etc/fstabを作成
proc /proc proc rw 0 0
+再起動もしくは,自分でmountとか/etc/netstart
+CD-ROMからインストール
# mount /cdrom
# /compat/linux/bin/sh /cdrom/install -t
--GUIインストールしたければ,あらかじめ一般ユーザで
% setenv XAUTHORITY $HOME/.Xauthority
としておくこと
+matlabの起動
% ./matlab -glnx86
+licenseサーバも同じく起動できる
% ./lmstart -glnx86
-これでとりあえず,R13, R13sp1, R14は起動確認.R14は終了時にエラーが...R14sp1はまだうまくいかない.
**システムの再構築 [#deab1149]
''最初の一回だけ''
# pkg_add -r cvsup-without-gui
# cp /usr/share/example/cvsup/stable-supfile /etc
# chmod 644 /etc/stable-supfile
/etc/stable-supfileの
*default host=CHANGE_THIS.FreeBSD.org
と書かれた行を
*default host=cvsup.jp.FreeBSD.org
のように、また
*default release=cvs tag=RELENG_4
と書かれた行を
*default release=cvs tag=RELENG_5_2
と編集する。
# cvsup -L 2 /etc/stable-supfile
+ユーザーランドの再構築
# cd /usr/src
# make buildworld
+カーネルの再構築
# cd /usr/src
# make buildkernel
+カーネルのインストール
# cd /usr/src
# make installkernel
+ユーザーランドのインストール
# cd /usr/src
# make installworld
+設定ファイルの更新
# mergemaster
** インテル製コンパイラ [#t4b177b4]
ライセンス取得
-[[Intel Software Development Products:http://www.intel.com/software/products/compilers/]]
**Japanese TeX [#g4ff8140]
-japanese/teTeX
--tex-texmflocal-1.4
--teTeX-texmf-2.0.2
--teTeX-base-2.0.2_2
--ja-kochi-ttfonts-20030809
--ja-ptex-tetex-3.1.3_1
--ja-texfamily-tetex-1.2
--ja-texfamily-vfn2a-1.3
--ja-xdvik-tetex-22.40y1.1.21_3
--ja-dvipsk-tetex-5.94a
**/usr/X11R6/lib/X11/fs/config [#g194989f]
clone-self = on
use-syslog = off
catalogue = /usr/X11R6/lib/X11/fonts/TTF/
error-file = /var/log/xfs.log
default-point-size = 120
default-resolutions = 75,75,100,100
**PukiWiki運営のために必要なパッケージ [#p7bb6589]
-php4-4.3.8_2 PHP Scripting Language (Apache Module and CLI)
--perl-5.8.5
--libiconv-1.9.2_1
--expat-1.95.8
--apache-2.0.50_2
-php4-mbstring-4.3.8_2 The mbstring shared extension for php
-php4-pcre-4.3.8_2 The pcre shared extension for php
** USB Keyboardを使えるようにする [#m275259f]
# kbdcontrol -k /dev/kbd1 < /dev/ttyv0 -l jp.106> /dev/null
** Xでアンダーバーが効かない [#f03c0043]
-xorgな環境
-xevで拾ってみるとkeycode228はなにも対応されていない
.Xmodmapに
keycode 228 = backslash underscore
.xinitrcの適当な所に
xmodmap $HOME/.Xmodmap
** 決まった時間にチャイムを鳴らす [#q65acdc8]
- portsからbeepをインストール
# portinstall audio/beep
- 次のようなスクリプトを /root/bin/chaimes に作成
-- A4
#!/bin/sh
/usr/local/bin/beep -p 440 $1
-- B4
#!/bin/sh
/usr/local/bin/beep -p 493.8 $1
-- C4
#!/bin/sh
/usr/local/bin/beep -p 261.6 $1
-- D4
#!/bin/sh
/usr/local/bin/beep -p 293.6 $1
-- E4
#!/bin/sh
/usr/local/bin/beep -p 329.6 $1
-- F4
#!/bin/sh
/usr/local/bin/beep -p 349.2 $1
-- G4
#!/bin/sh
/usr/local/bin/beep -p 392 $1
- A4〜G4を組み合わせてチャイムを鳴らす.スクリプトは /root/bin/chimes に保存
-- play1
#!/bin/sh
./F4 100
./A4 100
./G4 100
./C4 200
sleep 1
./F4 100
./G4 100
./A4 100
./F4 200
sleep 1
./A4 100
./F4 100
./G4 100
./C4 200
sleep 1
./C4 100
./G4 100
./A4 100
./F4 200
-- play2
#!/bin/sh
./F4 50
./C4 100
./A4 50
./F4 200
sleep 1
./F4 50
./C4 100
./A4 50
./G4 200
sleep 1
./G4 50
./C4 100
./A4 50
./G4 200
sleep 1
./G4 50
./C4 100
./A4 50
./F4 200
- /etc/crontab に以下のような内容を追加
30 8 * * * root (cd /root/bin/chimes && ./play1)
-- 並び順は"minute hour mday month wday who command"
- Cronを再起動
# kill -HUP `cat /var/run/cron.pid`
** Vinum [#v29ea79d]
Vinumは仮想ディスクを作り出す。
はじめにVolumeというオブジェクトがある。
Volumeは容量制限のない何らかのディスク領域。
Volumeの中にPlexがある。
Plex1つでVolumeのすべての可能なアドレスをカバーしている。
2つ以上のPlexがある場合,ひとつひとつがVolume全体のアドレス空間を張る。
Plexはつまり冗長である。
BSDパーティションをPlexの構成単位にしてもいいが,
パーティションの数には限りがある。
だからVinumはひとつのBSDパーテシション(drive)を
複数のディスク(subdisks)に分けることができる。
SubdisksはVinum drive = BSDパーテション上にいくつでも作ることができる。
Plexは任意の数の,任意のVinum Driveに散らばっているSubdisksを含むことができる。
つまり,plexは,そしてvlumeはdriveの物理的な容量に制約されないのだ。
まずこんなファイルを作る
# cat backuphome
drive ad2s1c device /dev/ad2s1c
drive ad3s1c device /dev/ad3s1c
volume backuphome
plex org concat
sd length 77879478k drive ad2s1c
sd length 77879478k drive ad3s1c
意味を説明しよう。
drive ad2s1c device /dev/ad2s1c
この行によってデヴァイス /dev/ad2s1cをad2s1cという名前のVinum driveにする。
次の行も同様。
volume backuphome
この行でbackuphomeという名前のボリュームを作る。
以下backuphomeボリュームの内容を書く。
plex org concat
上で説明したように,volumeはplexからなる。
ここでは単一のplexを用いているから冗長度はない。
org concat
というのは,単純連結の意味。
sd length 77879478k drive ad2s1c
上で書いたように,plexはsubdiskからなる。
ここではdrive ad2s1cに長さ77879478kBのsubdiskをつくって,
それをplexに追加している。
次の行も同様。
なお,このときの長さは,一度/dev/ad2s1cをnewfsしてmountしてdfで調べた:P
さて,このコンフィグレーションファイルを使ってボリュームを作る。
# vinum
> create -f backuphome
> quit
以上。
これで/dev/vinum/backuphomeというでかい領域ができた。
後は通常のディスクのようにnewfsする。
# newfs /dev/vinum/backuphome
で,fstabにでも書いてケロ。
注意。vinumドライバが起動時に実行されるように,
echo 'start_vinum="YES"' >> /etc/rc.conf
しておくこと。
** Marvell Yukon 88E8053を使う [#p3952139]
--- if_sk.c.orig Thu Jan 6 17:54:47 2005
+++ if_sk.c Fri Jan 28 12:12:55 2005
@@ -157,6 +157,11 @@
},
{
VENDORID_MARVELL,
+ DEVICEID_MARVELL_88E8053,
+ "Marvell Yukon 88E8053 Gigabit Ethernet"
+ },
+ {
+ VENDORID_MARVELL,
DEVICEID_BELKIN_5005,
"Belkin F5D5005 Gigabit Ethernet"
},
--- if_skreg.h.orig Thu Jan 6 17:54:47 2005
+++ if_skreg.h Fri Jan 28 12:12:45 2005
@@ -65,6 +65,12 @@
#define VENDORID_MARVELL 0x11AB
/*
+ * Marvell Yukon 88E8053 PCI Express Gigabit Ethernet Controller
+ */
+
+#define DEVICEID_MARVELL_88E8053 0x4362
+
+/*
* SK-NET gigabit ethernet device IDs
*/
#define DEVICEID_SK_V1 0x4300
- ネタ元
-- http://docs.freebsd.org/cgi/getmsg.cgi?fetch=277939+0+archive/2005/freebsd-net/20050130.freebsd-net
** Windowsの共有フォルダをマウント [#o392c6b9]
mount_smbfs -E euc-jp-MS:cp932 -I hoge //tacoma@hoge/data /mnt
** MatrixRaid [#u6c3d112]
- http://www.on-sky.net/hs/index.cgi?date=200711
** Soft Update Journalingを有効にする [#h23a34e4]
tunefs -j enable /dev/ada0s1d
- http://d.hatena.ne.jp/pebblescabin/20111009/1318107969
** パッケージ依存関係再構築 [#j587363b]
pkgdb -L
- http://d.hatena.ne.jp/akira_you/20110907/p1
** GtkクリップボードとXクリップボードの同期 [#p6e89b4c]
autocutsel
** Rsync [#e4f90efc]
-ファイル名の文字コードが、
remote - EUC-JP
local - UTF-8
だとする。この場合、
rsync -aruvz --iconv=utf-8,euc-jp xxx.xxx.xxx.xxx:/home /backup/home
とする。(local,remote の順番なことに注意)
-http://clicklog.org/article/128714978.html
-http://blogs.oracle.com/thaniwa/entry/ja_rsync_file_move
** ファイルだけディレクトリだけパーミッション変更 [#v9769191]
find ./backup -type d -print0 | xargs -0 chmod 750
find ./backup -type f -print0 | xargs -0 chmod 640
**minidlna [#w5f3cbb0]
-文字化け対策
/usr/local/share/locale/ja/LC_MESSAGES
**certbotでLet's Encrypt [#r85f900c]
-https://nofu.jp/wiki/freebsd/apache/freebsd_13_apache24_certbot
-https://intaa.net/archives/52482
** その他 [#ab18c63a]
-chown -h hoge:hoge pon でシンボリックリンクの所有者変更
-cp -d hoge でシンボリックリンクをシンボリックリンクのままコピー
- vmstat -i でirqとか表示
- カーネル構築のマニュアル
-- /usr/src/sys/conf/
- FD_SETSIZE
-- /sys/sys/select.h
-lsのタイムスタンプフォーマット
--ls -l --time-style=full-iso
終了行:
&size(24){&color(navy){''FreeBSD''};};
----
#contents
----
- [[BSDのプリンセス、マジカルとこちゃん:http://tokochan.haun.org/]]
- [[FRESH ports:http://www.freshports.org/]]
- [[FreeBSDハンドブック日本語版:http://www.jp.freebsd.org/www.FreeBSD.org/doc/ja_JP.eucJP/books/handbook/index.html]]情報がちょっと古いので,最新情報を得るには英語版をどうぞ。
- [[FreeBSD Handbook:http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/index.html]]
---
**FreeBSD Update [#k61af712]
***パッチ適用 [#t25026fc]
# freebsd-update fetch
# freebsd-update install
*** バージョンアップ [#d970f66c]
''OSの更新''
# freebsd-update upgrade -r 14.0-RELEASE
# freebsd-update install -r 14.0-RELEASE
''PKGの更新''
# pkg-static install -fy pkg
# pkg upgrade -y
**Portの管理 [#m5f414fe]
''Gitから取得''
git clone --depth 1 https://git.FreeBSD.org/ports.git /usr/ports
''最新に更新''
git -C /usr/ports pull
**インストール [#x9b198ed]
''インストールCDの準備''
インストールCDイメージ
ftp3.jp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/5.2.1/5.2.1-RELEASE-i386-miniinst.iso
をダウンロード。新潟大学からだとこのサイトが早いです。
isoイメージをCD writerで焼きます。
焼きあがったCDから起動します。
''スライス・パーティションの切り方''
FreeBSDの場合物理的なHDDを,まずスライスという単位にきります。
すべてのディスクを1つのスライスにしてしまってよいでしょう。
次にスライスの中にパーティションを切ります。
いろいろ流儀があるでしょうが
/ swap容量を差し引いた残り全部
swap 256MB〜1G
が簡単です。
''残りのインストール過程''
-配布モデルはX-Developper
-Portsは入れる
-Gatewayにはならない
-NFS clientになる
-NFS serverにならない
-Anonymous FTPを提供しない
-Linux Emulationをとりあえず無効化
この辺は適当に選択しても後から修正できますので。
** カーネルオプション [#qea44829]
/usr/src/sys/conf/
**パッケージ管理 [#tbc395de]
''最初の一回だけ''
# pkg_add -r cvsup-without-gui
# cp /usr/share/example/cvsup/ports-supfile /etc
# chmod 644 /etc/ports-supfile
/etc/ports-supfileの
*default host=CHANGE_THIS.FreeBSD.org
と書かれた行を
*default host=cvsup.jp.FreeBSD.org
と編集して、cvsup.jp.freebsd.orgからとってくるように設定。
# cvsup -L 2 /etc/ports-supfile
# cd /usr/ports/sysutil/portupgrade
# make install clean
''パーッケージを最新に保つ''
# cvsup -L 2 /etc/ports-supfile
# portsdb -uU
# portupgrade -ark
''新規パッケージの導入''
# cd /usr/ports
# portinstall japanese/kterm
''たまにやって欲しいこと''
お掃除
# portsclean -LCD
** HDDをまるごとコピー [#web39bcb]
- [[FreeBSD QandA 1859:http://www.jp.freebsd.org/QandA/HTML/1859.html]]
+ コピー先の HDD を接続して、オリジナルの HDD から起動します。
+ root でログインして /stand/sysinstall を実行します。
+ Configure -> Fdisk の画面からコピー先の HDD のスライスを作成します。ブートマネージャもインストールしておきます。
+ Configure -> Label の画面から、オリジナルのHDDと同じようにパーティションを作成します。newfs もここで行っておくとよいです。
例:
Part Mount Size Newfs
---- ----- ---- -----
da1s1a /mnt 100MB UFS Y
da1s1b swap 1024MB SWAP
da1s1e /mnt/var 1024MB UFS Y
da1s1f /mnt/usr 2048MB UFS Y
da1s1g /mnt/home 4550MB UFS Y
+ /mnt 以下に新たに作成したパーティションをマウントします。
# mount /dev/da1s1a /mnt
# mount /dev/da1s1e /mnt/var
# mount /dev/da1s1f /mnt/usr
# mount /dev/da1s1g /mnt/home
+ それぞれのパーティションをコピーします。
# dump 0af - / | ( cd /mnt && restore rf -)
# dump 0af - /var | ( cd /mnt/var && restore rf -)
# dump 0af - /usr | ( cd /mnt/usr && restore rf -)
# dump 0af - /home | ( cd /mnt/home && restore rf -)
+ restoresymtable を削除します。
# rm /mnt/restoresymtable
# rm /mnt/var/restoresymtable
# rm /mnt/usr/restoresymtable
# rm /mnt/home/restoresymtable
+ コピー先の HDD から起動した際にブートデバイス名が変わるのであれば /mnt/etc/fstab も書きかえておきます。この場合、デバイスファイルも /mnt/dev 上で忘れずに作成しておきます。
+ オリジナルの HDD を切り離して、コピー先の HDD から起動することを確認します。
**WSDD [#q6f83cbf]
- Windowsからブラウジングできるようにする
-- WSDD
**データCD [#zd48fca3]
:sysutils/cdrtools-cjk|日本語ファイルに対応したCD作成ツール
+Joliet拡張とRock Ridge拡張なisoイメージを作る
% mkisofs -J -r -input-charset euc-jp -o hoge.iso hoge
+できたイメージを確認
# mdconfig -af hoge.iso
md0
# mount -t cd9660 /dev/md0 /mnt
# mdconfig -du md0
+Burn!
# burncd -s max data hoge.iso fixate
**音楽CD [#i09e511f]
:sysutils/cdrdao|CDをdisc at onceで焼く.
***一度だけ必要な手順 [#dc8e0bbc]
cdrdaoはscsiデバイス用なので,cam transport moduleをkernelに組み込む。
device atapicam
***CDを作るたびに必要な手順 [#h04e268e]
cueシートをtocに変換
% cue2toc hoge.cue > hoge.toc
burn!!!
# cdrdao write --device 1,0,0 --driver generic-mmc --speed 8 hoge.toc
- リッピング
cdparanoia
***TOCファイルの作り方 [#mb64c65d]
音楽CDを示すラベルをファイルの先頭に書きます。
CD_DA
後はトラックを書いていきます。
-トラックの種別
TRACK AUDIO
-ファイル名 開始位置 長さ
FILE "hoge01.wav" 00:00:00 04:55:37
--単一のwavを区切って焼くときは,ファイル名はすべてのトラックで同一にして,開始位置と長さを指定します。
CD_DA
TRACK AUDIO
FILE "CDImage.wav" 00:00:00 04:11:00
TRACK AUDIO
FILE "CDImage.wav" 04:11:00 05:05:62
START 00:02:00
TRACK AUDIO
FILE "CDImage.wav" 09:16:62 04:48:63
START 00:01:50
--トラックごとに分かれたwavファイルからCDを作るには,各トラックにおいて対応するファイル名を書きます。
CD_DA
TRACK AUDIO
FILE "01 - Egao no Yokan ('Deep'Dream mix.).wav" 0
TRACK AUDIO
FILE "02 - Wonder Girl ('Deep'Club mix.).wav" 0
TRACK AUDIO
FILE "03 - Yureru Koi Otome Iro .wav" 0
-pre gap
START 00:01:00
例えばこんな風にすると,前のトラックのラスト1秒になったときに,トラックインデクスが現在のトラックに切り替わります。
** CDのコピー [#l370dc8b]
#cdrdao copy --device 1,0,0 --speed 24
**xfsの起動スクリプト発見 [#zfbf7f56]
# echo 'xfs_enable="YES"' >> /etc/rc.conf
** その他のports(MATLABへの道) [#s65fda4d]
# portinstall net/tightvnc
# portinstall emulator/linux_base-8
# portinstall net/rsync
** Matlabインストール [#veb82031]
//+xsetupを動かすのに必要なLinuxバイナリをインストール
// # portinstall emulators/linux_base-8/
// # portinstall /usr/ports/x11/linux-XFree86-libs
//+インストールCDの中身をまるごとコピー
// # mount /cdrom
// # cp -R /cdrom /mnt
//+LinuxバイナリにLinxu印をつける
// # find . -print -type f | grep glnx86 | xargs brandelf -t Linux
//+でもこの共有ライブラリはオリジナルのを使用
// # cp /cdrom/update/bin/glnx86/libmwins.so /mnt/cdrom/update/bin/glnx86/libmwins.so
//+ARCHが必ずgnlx86になるようにごにょごにょする
// # vi /mnt/cdron/install
//+ここからはLinux版といっしょ
// # mkdir /opt/matlab
// # cd /opt/matlab
// # /mnt/cdrom/install
+xorgが入っているのを前提として,必要なLinuxバイナリをインストール
# portinstall emulators/linux_base-8/
# portinstall x11/linux-XFree86-libs
# portinstall x11-fonts/linux-fontconfig
# portinstall textproc/linux-expat
+/etc/rc.confに以下を追加
linux_enable="YES"
+/etc/fstabに以下を追加
linprocfs /compat/linux/proc linprocfs rw 0 0
+/compat/linux/etc/fstabを作成
proc /proc proc rw 0 0
+再起動もしくは,自分でmountとか/etc/netstart
+CD-ROMからインストール
# mount /cdrom
# /compat/linux/bin/sh /cdrom/install -t
--GUIインストールしたければ,あらかじめ一般ユーザで
% setenv XAUTHORITY $HOME/.Xauthority
としておくこと
+matlabの起動
% ./matlab -glnx86
+licenseサーバも同じく起動できる
% ./lmstart -glnx86
-これでとりあえず,R13, R13sp1, R14は起動確認.R14は終了時にエラーが...R14sp1はまだうまくいかない.
**システムの再構築 [#deab1149]
''最初の一回だけ''
# pkg_add -r cvsup-without-gui
# cp /usr/share/example/cvsup/stable-supfile /etc
# chmod 644 /etc/stable-supfile
/etc/stable-supfileの
*default host=CHANGE_THIS.FreeBSD.org
と書かれた行を
*default host=cvsup.jp.FreeBSD.org
のように、また
*default release=cvs tag=RELENG_4
と書かれた行を
*default release=cvs tag=RELENG_5_2
と編集する。
# cvsup -L 2 /etc/stable-supfile
+ユーザーランドの再構築
# cd /usr/src
# make buildworld
+カーネルの再構築
# cd /usr/src
# make buildkernel
+カーネルのインストール
# cd /usr/src
# make installkernel
+ユーザーランドのインストール
# cd /usr/src
# make installworld
+設定ファイルの更新
# mergemaster
** インテル製コンパイラ [#t4b177b4]
ライセンス取得
-[[Intel Software Development Products:http://www.intel.com/software/products/compilers/]]
**Japanese TeX [#g4ff8140]
-japanese/teTeX
--tex-texmflocal-1.4
--teTeX-texmf-2.0.2
--teTeX-base-2.0.2_2
--ja-kochi-ttfonts-20030809
--ja-ptex-tetex-3.1.3_1
--ja-texfamily-tetex-1.2
--ja-texfamily-vfn2a-1.3
--ja-xdvik-tetex-22.40y1.1.21_3
--ja-dvipsk-tetex-5.94a
**/usr/X11R6/lib/X11/fs/config [#g194989f]
clone-self = on
use-syslog = off
catalogue = /usr/X11R6/lib/X11/fonts/TTF/
error-file = /var/log/xfs.log
default-point-size = 120
default-resolutions = 75,75,100,100
**PukiWiki運営のために必要なパッケージ [#p7bb6589]
-php4-4.3.8_2 PHP Scripting Language (Apache Module and CLI)
--perl-5.8.5
--libiconv-1.9.2_1
--expat-1.95.8
--apache-2.0.50_2
-php4-mbstring-4.3.8_2 The mbstring shared extension for php
-php4-pcre-4.3.8_2 The pcre shared extension for php
** USB Keyboardを使えるようにする [#m275259f]
# kbdcontrol -k /dev/kbd1 < /dev/ttyv0 -l jp.106> /dev/null
** Xでアンダーバーが効かない [#f03c0043]
-xorgな環境
-xevで拾ってみるとkeycode228はなにも対応されていない
.Xmodmapに
keycode 228 = backslash underscore
.xinitrcの適当な所に
xmodmap $HOME/.Xmodmap
** 決まった時間にチャイムを鳴らす [#q65acdc8]
- portsからbeepをインストール
# portinstall audio/beep
- 次のようなスクリプトを /root/bin/chaimes に作成
-- A4
#!/bin/sh
/usr/local/bin/beep -p 440 $1
-- B4
#!/bin/sh
/usr/local/bin/beep -p 493.8 $1
-- C4
#!/bin/sh
/usr/local/bin/beep -p 261.6 $1
-- D4
#!/bin/sh
/usr/local/bin/beep -p 293.6 $1
-- E4
#!/bin/sh
/usr/local/bin/beep -p 329.6 $1
-- F4
#!/bin/sh
/usr/local/bin/beep -p 349.2 $1
-- G4
#!/bin/sh
/usr/local/bin/beep -p 392 $1
- A4〜G4を組み合わせてチャイムを鳴らす.スクリプトは /root/bin/chimes に保存
-- play1
#!/bin/sh
./F4 100
./A4 100
./G4 100
./C4 200
sleep 1
./F4 100
./G4 100
./A4 100
./F4 200
sleep 1
./A4 100
./F4 100
./G4 100
./C4 200
sleep 1
./C4 100
./G4 100
./A4 100
./F4 200
-- play2
#!/bin/sh
./F4 50
./C4 100
./A4 50
./F4 200
sleep 1
./F4 50
./C4 100
./A4 50
./G4 200
sleep 1
./G4 50
./C4 100
./A4 50
./G4 200
sleep 1
./G4 50
./C4 100
./A4 50
./F4 200
- /etc/crontab に以下のような内容を追加
30 8 * * * root (cd /root/bin/chimes && ./play1)
-- 並び順は"minute hour mday month wday who command"
- Cronを再起動
# kill -HUP `cat /var/run/cron.pid`
** Vinum [#v29ea79d]
Vinumは仮想ディスクを作り出す。
はじめにVolumeというオブジェクトがある。
Volumeは容量制限のない何らかのディスク領域。
Volumeの中にPlexがある。
Plex1つでVolumeのすべての可能なアドレスをカバーしている。
2つ以上のPlexがある場合,ひとつひとつがVolume全体のアドレス空間を張る。
Plexはつまり冗長である。
BSDパーティションをPlexの構成単位にしてもいいが,
パーティションの数には限りがある。
だからVinumはひとつのBSDパーテシション(drive)を
複数のディスク(subdisks)に分けることができる。
SubdisksはVinum drive = BSDパーテション上にいくつでも作ることができる。
Plexは任意の数の,任意のVinum Driveに散らばっているSubdisksを含むことができる。
つまり,plexは,そしてvlumeはdriveの物理的な容量に制約されないのだ。
まずこんなファイルを作る
# cat backuphome
drive ad2s1c device /dev/ad2s1c
drive ad3s1c device /dev/ad3s1c
volume backuphome
plex org concat
sd length 77879478k drive ad2s1c
sd length 77879478k drive ad3s1c
意味を説明しよう。
drive ad2s1c device /dev/ad2s1c
この行によってデヴァイス /dev/ad2s1cをad2s1cという名前のVinum driveにする。
次の行も同様。
volume backuphome
この行でbackuphomeという名前のボリュームを作る。
以下backuphomeボリュームの内容を書く。
plex org concat
上で説明したように,volumeはplexからなる。
ここでは単一のplexを用いているから冗長度はない。
org concat
というのは,単純連結の意味。
sd length 77879478k drive ad2s1c
上で書いたように,plexはsubdiskからなる。
ここではdrive ad2s1cに長さ77879478kBのsubdiskをつくって,
それをplexに追加している。
次の行も同様。
なお,このときの長さは,一度/dev/ad2s1cをnewfsしてmountしてdfで調べた:P
さて,このコンフィグレーションファイルを使ってボリュームを作る。
# vinum
> create -f backuphome
> quit
以上。
これで/dev/vinum/backuphomeというでかい領域ができた。
後は通常のディスクのようにnewfsする。
# newfs /dev/vinum/backuphome
で,fstabにでも書いてケロ。
注意。vinumドライバが起動時に実行されるように,
echo 'start_vinum="YES"' >> /etc/rc.conf
しておくこと。
** Marvell Yukon 88E8053を使う [#p3952139]
--- if_sk.c.orig Thu Jan 6 17:54:47 2005
+++ if_sk.c Fri Jan 28 12:12:55 2005
@@ -157,6 +157,11 @@
},
{
VENDORID_MARVELL,
+ DEVICEID_MARVELL_88E8053,
+ "Marvell Yukon 88E8053 Gigabit Ethernet"
+ },
+ {
+ VENDORID_MARVELL,
DEVICEID_BELKIN_5005,
"Belkin F5D5005 Gigabit Ethernet"
},
--- if_skreg.h.orig Thu Jan 6 17:54:47 2005
+++ if_skreg.h Fri Jan 28 12:12:45 2005
@@ -65,6 +65,12 @@
#define VENDORID_MARVELL 0x11AB
/*
+ * Marvell Yukon 88E8053 PCI Express Gigabit Ethernet Controller
+ */
+
+#define DEVICEID_MARVELL_88E8053 0x4362
+
+/*
* SK-NET gigabit ethernet device IDs
*/
#define DEVICEID_SK_V1 0x4300
- ネタ元
-- http://docs.freebsd.org/cgi/getmsg.cgi?fetch=277939+0+archive/2005/freebsd-net/20050130.freebsd-net
** Windowsの共有フォルダをマウント [#o392c6b9]
mount_smbfs -E euc-jp-MS:cp932 -I hoge //tacoma@hoge/data /mnt
** MatrixRaid [#u6c3d112]
- http://www.on-sky.net/hs/index.cgi?date=200711
** Soft Update Journalingを有効にする [#h23a34e4]
tunefs -j enable /dev/ada0s1d
- http://d.hatena.ne.jp/pebblescabin/20111009/1318107969
** パッケージ依存関係再構築 [#j587363b]
pkgdb -L
- http://d.hatena.ne.jp/akira_you/20110907/p1
** GtkクリップボードとXクリップボードの同期 [#p6e89b4c]
autocutsel
** Rsync [#e4f90efc]
-ファイル名の文字コードが、
remote - EUC-JP
local - UTF-8
だとする。この場合、
rsync -aruvz --iconv=utf-8,euc-jp xxx.xxx.xxx.xxx:/home /backup/home
とする。(local,remote の順番なことに注意)
-http://clicklog.org/article/128714978.html
-http://blogs.oracle.com/thaniwa/entry/ja_rsync_file_move
** ファイルだけディレクトリだけパーミッション変更 [#v9769191]
find ./backup -type d -print0 | xargs -0 chmod 750
find ./backup -type f -print0 | xargs -0 chmod 640
**minidlna [#w5f3cbb0]
-文字化け対策
/usr/local/share/locale/ja/LC_MESSAGES
**certbotでLet's Encrypt [#r85f900c]
-https://nofu.jp/wiki/freebsd/apache/freebsd_13_apache24_certbot
-https://intaa.net/archives/52482
** その他 [#ab18c63a]
-chown -h hoge:hoge pon でシンボリックリンクの所有者変更
-cp -d hoge でシンボリックリンクをシンボリックリンクのままコピー
- vmstat -i でirqとか表示
- カーネル構築のマニュアル
-- /usr/src/sys/conf/
- FD_SETSIZE
-- /sys/sys/select.h
-lsのタイムスタンプフォーマット
--ls -l --time-style=full-iso
ページ名: