ラベル Linux の投稿を表示しています。 すべての投稿を表示
ラベル Linux の投稿を表示しています。 すべての投稿を表示

2012年2月20日月曜日

Ubuntu 10.04 Serverでストレージサーバ

Ubuntu 10.04.4 LTS Server amd64でストレージサーバを構築してみる.覚えている限りの情報.

  • Intel Core2 Quad CPU Q6600
  • Memory: 4 GB
  • HDD(SATA): 500GB, 2TB, 2TB

500GBのHDDだけを接続してOSをセットアップ.パッケージを選ぶように言われたら,Open SSHとSambaのサーバにチェックを入れた.

OSが入ったら,一旦シャットダウンして2TBのHDDを接続して再起動.

HDDのフォーマット

まずは,状況を把握するためのコマンド

# 接続されているドライブの情報を確認できる
sudo fdisk -l
# マウント状況を確認できる
df -h

パーティショニングするところまでは

$ sudo parted /dev/sdx
(parted) mklabel gpt
(parted) mkpart

とすると行える.mkpartするといろいろ聞かれるが,startが1,endが100%とでもしておけばOK(参考:GNU Partedの使い方).

フォーマットは,以下のようにして定期検診の停止もしてみる.

$ sudo mke2fs -T news /dev/sdxn
$ sudo tune2fs -c 0 -i 0 /dev/sdxn

マウントとアンマウントは,

$ sudo mount -w -t ext2 /dev/sdxn /mnt/sdxn
$ sudo umount /mnt/sdxn

のような感じでできる.これは/etc/rc.localに書いておけばスタートアップ時にマウントされる(良い使い方かどうかは分からないので注意).

Sambaの設定

Samba自体の設定はサンバ設定メモ(Hishidama's samba Memo)や色々ググれば思うように設定できそうである.

Sambaの設定を変更した後の再起動は,

$ sudo service smbd restart

また,Windowsから繋いだり,設定を変えたりしていると,「同じユーザーによる,サーバーまたは共有リソースへの複数のユーザー名での複数の接続は許可されません」などと言われてしまうことがある.そんなときは

net use

で記憶されているものを調べ,

net use (リモート名) /delete

とすればよい.(この記事では,これだけWindows用のコマンドです)

他のサーバとの同期

Linuxのサーバをまともに使おうというのは初めてなので,しばらくは既存のWindows Serverマシンのバックアップとして運用し,様子を見たい.ということで,Linux版タスクスケジューラ(?)を使って同期をすることにした.

Windows Server側で共有されているフォルダをLinuxにマウントすること自体はLinux から Windows ファイル共有を利用に倣って,

$ sudo smbmount //ServerのIPアドレス/shared_folder /mnt/share -o 
username=User,password=Password,iocharset=utf8
$ sudo smbumount /mnt/share

でできた.また,タスクスケジューラの代替品としては,

$ sudo crontab -u root -e

が使えそうだ.スクリプトを作成しておいてbash /home/user/scripts/myscript.shなどをスケジュールしておけばよい.(参考:crontabの書き方)

あとは,スクリプトの書き方になってしまうが,Windows Serverの共有フォルダをマウントできなかったら同期して欲しくないので,

if smbmount ...; then
    rsyncなどで同期
    smbumount ...
fi

というような書き方をすれば安心.

2012年2月7日火曜日

Ubuntu Desktop 10.04 LTSにTeX環境をインストール

日本語 Remix CDを使用しています.

ちなみに,基本的に私はplatex→dvipdfmxという使い方しかしません.

「UTF-8に対応したい」ということで3つやってみましたが,最初の2つはいまいち上手くいきませんでした.最後のtexLiveは現在作業中です.

apt-getで簡単にインストールしてみる

sudo apt-get install latex-env-ja
sudo apt-get install latex-extra-ja
sudo jisftconfig add

で大体インストールされるが,このままだとdvipdfmxがうまくいかない.エラー

** ERROR ** Cannot proceed without .vf or "physical" font for PDF output...

や警告

** WARNING ** Failed to load AGL file "pdfglyphlist.txt"...
** WARNING ** Failed to load AGL file "glyphlist.txt"...

が出る.上記エラーは

echo "f jis-cjk.map" | sudo tee -a /etc/texmf/dvipdfmx/dvipdfmx.cfg
mkdir -p ~/.texmf-var/fonts
sudo ln -s /var/lib/defoma/gs.d/dirs/CMap ~/.texmf-var/fonts/cmap

警告は

sudo apt-get install xz-utils
wget http://ftp.kddilabs.jp/TeX/ptex-win32/current/dvipdfm-w32.tar.xz
tar Jxvf dvipdfm-w32.tar.xz
pushd ./share/texmf/fonts/map/agl
sudo cp -v pdfglyphlist.txt glyphlist.txt /etc/texmf/dvipdfmx
popd

で解決できた.

文書はUTF-8で作成したいというときは,文字コードをEUC-JPに変換してからplatexでdviに出力するように設定する.

sudo apt-get install nfk
echo "name=\`echo \$1 | sed 's/\.tex$//' | xargs basename\`" | sudo tee /usr/local/shell/platex.sh
echo "temp=\`mktemp /tmp/\$name.XXXXXXXX\`" | sudo tee -a /usr/local/shell/platex.sh
echo "nkf -e \$1 > \$temp" | sudo tee -a /usr/local/shell/platex.sh
echo "/usr/bin/platex \$temp" | sudo tee -a /usr/local/shell/platex.sh
echo "rm \$temp" | sudo tee -a /usr/local/shell/platex.sh
echo "alias platex='source /usr/local/shell/platex.sh'" >> ~/.bashrc

ただし,この方法だとTeX文書内で\includeなんか使うとうまくいかない.

参考:Ubuntu 10.04 に LaTeX 環境を構築する

teTeXをインストールしてみる

普通にUTF-8に対応したいなぁということで,teTeXを入れてみる.

参考

必要ファイルのダウンロード

wget http://tutimura.ath.cx/~nob/tex/ptetex/ptetex3/ptetex3-20090610.tar.gz
wget http://www.ring.gr.jp/pub/text/CTAN/obsolete/systems/unix/teTeX/3.0/distrib/tetex-src-3.0.tar.gz
wget http://www.ring.gr.jp/pub/text/CTAN/obsolete/systems/unix/teTeX/3.0/distrib/tetex-texmf-3.0po.tar.gz

前提条件のインストール

sudo apt-get install g++ flex bison build-essential libmotif3 libmotif-dev x11proto-print-dev xorg-dev
# ./7font-search.sh: No font was found as Ryumin-Light. の対策
sudo apt-get install ttf-ipafont

加えて/usr/include/stdio.hでexternされているgetlineをコメントアウトする.(C言語は???という方はこちら)

TeX環境のインストール

gzip -cd ptetex3-20090610.tar.gz | tar xvf -
pushd ptetex3-20090610
cp my_option.sample my_option
echo "KANJI_CODE=UTF8" | tee -a my_option
echo "SYSTEM_FREETYPE2=no" | tee -a my_option
make
sudo make install
popd
echo "export PATH=/usr/local/teTeX/bin:\$PATH" | tee -a ~/.bashrc

make installのところでなんだかエラーが出るけど,無視して環境変数を設定すると動くようです.UTF-8に標準対応したTeX環境が一応できた.

かと思いきや,PNGファイルがどうも埋め込めないらしい.(epsに変換してからやれば普通に行きましたが)

Error: /syntaxerror in (binary token, type=137)

と言われるのですが,解決策が分からず断念.色々とバージョンが古いのがいけないのかなぁ

TeX Live をインストール

ダウンロードしてインストールというのはどうにも途中で切れるので,texlive2011-20110705.isoでインストールする.ディスクの中で

sudo ./install-tl

すると,サラリとインストールが完了します.

echo "export PATH=/usr/local/texlive/2011/bin/i386-linux:\$PATH"         | tee -a ~/.bashrc
echo "export MANPATH=/usr/local/texlive/2011/texmf/doc/man:\$MANPATH"    | tee -a ~/.bashrc
echo "export INFOPATH=/usr/local/texlive/2011/texmf/doc/info:\$INFOPATH" | tee -a ~/.bashrc

のようにしてパスを通せばすんなり動きました.

参考:TeX Live 2011のインストール on Ubuntu 10.04