2015年7月23日木曜日

Alienware Aurora R4にWindows 7をクリーンインストール

成功したパターン
  1. 付属OSインストールディスクからUSBディスクを作製bootsect失敗しても大丈夫だった?
  2. 作成したUSBからブートすると,ストレージのドライバがないと言われる.
  3. IRSTDRIVER_ZPE.exeの中身をUSBドライブに展開して読み込ませると,あとは普通.
参考:How to install clean Windows 7 Professional on Aurora R4???

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 SSHSambaのサーバにチェックを入れた.

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

HDDのフォーマット

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

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

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

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

とすると行える.mkpartするといろいろ聞かれるが,start1end100%とでもしておけば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日火曜日

PowerShellでハッシュ計算

SHA256の場合

$sha = [Security.Cryptography.SHA256]::Create()
$file = [IO.File]::OpenRead("ファイルのパス")
$hash = $sha.ComputeHash($file)
$file.Dispose()
foreach ($b in $hash) { [Console].Write($b.ToString("X2")) }
[Console].WriteLine()
$sha.Dispose()

他のアルゴリズムの場合には「SHA256」の部分を「MD5」「SHA1」などに書き換えればよい.

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

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

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

「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.hexternされている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

2011年10月19日水曜日

Microsoft Outlook 2010の初期化

Microsoft Outlook 2010のプロファイルをすべて削除して,インストール時の状態に初期化します.

以下のレジストリ キーを削除します.

  • HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\Outlookキーを削除
  • ※自分で行った時には他にも削除しましたが,必要かどうかわからないので...

以下のファイルを削除します.

  • %USERPROFILE%\AppData\Local\Microsoft\Outlook\*
  • %USERPROFILE%\Documents\Outlook ファイル\*

プログラムのアンインストールまたは変更からMicrosoft Officeの変更をクリックする.機能の追加/削除を選択してOutlookをインストールしないにしてセットアップを完了する.その後再度Outlookを追加する.

2011年9月26日月曜日

PowerShellを使ったリモート接続

以前書いたリモートデスクトップに関する記事にも同様のことが書かれていますが,再度まとめておきます.

PowerShell 2.0のリモート機能を使って,リモート コンピュータに接続します.ここでは,同一ドメインなどの認証が行われていない環境を想定しています.

接続されるだけのPCの設定

コマンドライン プロンプトを管理者権限で起動し,

winrm quickconfig

を実行します.

VMware Playerを使っていたりすると

このコンピュータのネットワーク接続の種類の 1 つがPublicに設定されているため,WinRM ファイアウォール例外は機能しません. ネットワーク接続の種類を Domain または Private に変更して,やり直してください.

等と言われますので,その場合は対応するネットワーク アダプタを一時的に無効にすればコンフィグを成功させることができます.

接続するだけのPCの設定

接続を受け付ける必要がありませんので,自動設定の後一部(?)もとに戻します.

winrm quickconfig
sc config "WinRM" start= demand
winrm delete winrm/config/listener?Address=*+Transport=HTTP
netsh advfirewall firewall set rule name="Windows リモート管理 (HTTP 受信)" new enable=no
winrm set winrm/config/client @{TrustedHosts="*"}
sc stop "WinRM"

TrustedHosts="*"の部分は,必要に応じて書き換えます.ローカルIPアドレスのみを信用する場合には"192.168.24.0/24"としたり,個別のIPアドレスを指定したりします.

接続される/する両方を行うPCの設定

自動設定と信用するホストの設定を行います.

winrm quickconfig
winrm set winrm/config/client @{TrustedHosts="*"}

参考:PowerShell でのリモート管理[Tips]Enter-PSSessionコマンドレットでのエラー対処

2011年7月30日土曜日

VMware 仮想マシンにHIDを接続する

USBバスに接続されたHID(ヒューマン インタフェース デバイス)をVMware Playerで実行している仮想マシンに接続するには,仮想マシンの設定ファイル(*.vmx)に次の一行を追加します.

usb.generic.allowHID = "TRUE"

追加して仮想マシンを起動すると,HIDも他のUSBデバイス同様仮想マシンに接続できるようになります.

※仮想マシンに接続したHIDはホスト側では使用できなくなりますので,キーボード等を接続する際は注意が必要です.

参考:A Power User's Guide to VMware Fusion