2014年12月22日月曜日

Windows 7 64bit(ThinkPad 420i)でInternet Explorer 11への更新に失敗する

Windows 7 64bit(ThinkPad 420i)でInternet Explorer 11への更新がうまくできず困っていました。検索エンジンで調べると同様な事例と解決策の記述が見つかります。しかし、これらの記述の通りにしてもうまくいきません。そして、以下のように、書いてあるようにしてもうまくいかない、私は私なりの手順で更新ができたといったことを書いていらっしゃる方もたくさんおられます。
IE11のインストールが出来ない
http://www.miyacozi.com/2014/12/ie11.html
この方の記述のようにしてみようかと思ったのですが、ふと、以下のようにすると更新出来てしまいました。
  1. コントロールパネルからWindows Updateを開く
  2. 「更新履歴の表示」をクリック
  3. 「更新プログラムのインストールの問題に対するトラブルシューティングを実行します」をクリック
  4. 表示された「Windowsヘルプとサポート」中の「Microsoft Fix it」をクリック
  5. 現れた指示のとおりに実行
  6. Windows Updateを実行してInternet Explorer 11への更新を実行

2014年12月9日火曜日

NAT[nnn]: cache entry is full, GigaEthernet0.1

NECのIX 2105を利用していたところ、以下の様なメッセージが出力され、インターネット接続ができなくなりました。
Dec  N mm:mm:mm router NAT[nnn]: cache entry is full, GigaEthernet0.1
Dec  N mm:mm:mm router last message repeated N times
NAPTの変換テーブルが溢れてしまったようです。そこで、以下のように設定を変更しました。
interface GigaEthernet0.1
  …
  ip napt translation max-entries 32768
  ip napt translation max-entries per-address 4096
  …

海外旅行前に準備すること

私が海外旅行(私の場合は主に米国)前に準備することの一覧です。

持ち物

  • ジップロック、もしくはラップ
  • アルコール除菌スプレー、もしくは除菌ウェットティッシュ 

  • 歯ブラシ
  • 歯磨き剤
  • 歯間ブラシ
  • 綿棒

  • ティーパック(日本茶、麦茶、烏龍茶など)
  • 割り箸 

  • ESTA
  • 海外1dayパケット申込み
  • 航空券予約控え
  • NEX/リムジンバス/スカイライナー予約 
  • 預入荷物の写真

  • USB充電器
  • シガーソケット充電器
  • LEDライト 

  • 洗剤・柔軟剤
  • 洗濯ネット
  • サンダル、スリッパ
  • 風呂用メガネ
  • 必要があれば水筒 

  • 紙コーヒーフィルター(10杯用)
  • コンバット/Gホイホイ
  • 虫除け

出発前確認事項

  • ガス元栓
  • 電源
  • エアコン
  • ウォッシュレット
  • 洗濯機
  • 電動歯ブラシ
  • 空気清浄機
  • 電子レンジ
  • Roomba
  • 掃除機
  • 冷蔵庫の設定を節電モード
  • ACアダプタ(寝室、扇風機×2、仕事机の上)
  • タブレット
  • 目覚まし停止
  • 洗濯機の水道栓
  • 植木の給水
  • 戸締まり(窓)
  • 各種カード(クレジットカード)、パスポートのコピー
  • 財布整理
  • ゴミ捨て
  • 空気の流れが悪い場所は扉を開けること
  • たとえば流しの下など


2014年12月8日月曜日

ThinkPad T420i/x121eでリカバリ後、「C:\Program を開始中にエラーが発生しました。指定されたモジュールが見つかりません。」と表示される

ThinkPad T420i/x121eでリカバリ後、「C:\Program を開始中にエラーが発生しました。指定されたモジュールが見つかりません。」と表示がでてしまいます。
検索エンジンで探してみると、以下のWWWページが見つかります。
「lenovo ThinkPad X121e」をリカバリーしてみた
 http://poporon.poponet.jp/20140510/5010
WWWページにあるようにThinkPadの「省電力マネージャー」を削除し、アップデートをするとエラーは発生しなくなりました。

2014年11月30日日曜日

FreeBSD 9.1でのMHの設定

FreeBSDでMHをportsからインストールしてメールを出した場合、メールシステムの設定によるかもしれないが、以下のようなエラーが出ることがあります。
<recipient@example.com>: host example.com[www.xxx.yyy.zzz] said: 553
5.1.8 <sender@host.example.net>... Domain of sender address
sender@host.example.net does not exist (in reply to MAIL FROM command)
原因はMHのSMTPクライアントが、SMTPのMAIL FROM:コマンドに"sender@host.example.net" と引数をつけているためのようです。sender@host.example.net のMXやAレコードは外部のホストから引けないので( sender@example.net のMXやAレコードは外部のホストから解決可能)、メールの受信を拒否されていました。

これを解決するには、MHの設定ファイル /usr/local/lib/mh/mtstailor に以下の行を加えます。
localname:      example.net
postfixの場合、/usr/local/etc/postfix/main.cf
masquerade_domains = $mydomain
とすればよいかもしれない。

2014年11月8日土曜日

ZFS bootを利用したFreeBSD 9.2で「Unable to load a kernel!」

先日、利用しているFreeBSD 9.2のサーバーを再起動したところ、
Loading /boot/defaults/loader.conf
Unable to load a kernel!
|
can't load 'kernel'
というメッセージが出て起動できなくなりました。
前兆はあり、利用中にファイルシステム(ZFS)にあるファイルがすこしずつ消えていっていたのです。最初はportupgradeが異常終了するようになり、原因を調べているうちに、ssl関連のファイルがなくなり、sshやsuが利用できなくなりました。
これではどうしようもないので、OSごと強制終了し、 再起動したところ、上記の状態になりました。
FreeBSDのインストールCDからコマンドなどを書き戻せば復旧できそうでしたが、設定ファイルなどを失ってしまう可能性があります。そうなると復旧には時間がかかります。
他に方法がないかと検索エンジンでいろいろと調べていると、以下のことを思いつきました。
  • 現象としてはファイルが消えたただけ
  • ファイルを復旧させれば動作するのではないか
  • ZFSでスナップショットをとっているので、よさそうな時点のスナップショットにroolbackすればよいのでは?
そこで
FreeBSD 9 ZFS the easy way
https://forums.freebsd.org/threads/freebsd-9-zfs-the-easy-way.31557/
にある
Boot back with the installation CD and choose "live CD" and import back your zpool:
zpool import -f -o altroot=/mnt -o cachefile=/var/tmp/zpool.cache zroot
You will now have access to your zfs file system on /mnt
という記述に従い、
  1. FreeBSDのインストールCDからLiveCDで起動
  2. ファイルシステムをインポート
としてファイルシステムを確認します。
そして、rollbackは
ZFS スナップショットにロールバックする
http://docs.oracle.com/cd/E19253-01/819-6260/gbcxk/index.html
にあるように
zfs rollback -r tank/home/ahrens@tuesday
などとしてスナップショットを指定してロールバックします。-rオプションは最新のスナップショットより前のものに戻るときに指定します。
スナップショットの一覧は、
ZFS スナップショットを表示してアクセスする
http://docs.oracle.com/cd/E19253-01/819-6260/gbiqe/index.html
にあるように、
zfs list -t snapshot
とすれば一覧を得ることができます。
上記の手順でなんとか回復することができました。ZFSの障害は、推測ですが、1週間ほど前にファイルシステムを溢れさせたことがあり、これで状態がおかしくなったように思います。そのときは
  1. 一度シャットダウン
  2. 再起動してファイルを削除
  3. 動くようになったので安心
とだけしていたのですが、このときにもう一度、再起動すべきだったのでしょう。

2014年10月22日水曜日

ThinkPad x240でのUSB CD/DVDブート

ThinkPad x240でBIOSからUSB CD/DVDで起動するには、以下のページにあるような設定が必要でした。
ThinkPad X240sのSSD換装方法・手順
http://thehikaku.net/pc/lenovo/ThinkPad-X240s-4.html
  1. BIOSのSecuriy/Secure BootでSecure Bootを無効にする
  2. BIOS上でUEFI/Legacy Bootの項目を「Both」にする
知識としては知っていましたが、実際に遭遇すると自分だけでは解決できませんでした。

2014年10月15日水曜日

FreeBSD 9.2とruby20

FreeBSD 9.2でパッケージをアップデートしようとしたら、以下のようなメッセージが出ました。
===>  Installing for ruby-2.0.0.576_1,1
===>  Checking if ruby already installed
===>   An older version of ruby is already installed (ruby-1.9.3.547_3,1)
      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.
      If you really wish to overwrite the old port of ruby
      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
パッケージの更新情報を確認すると、以下のような作業が必要なようです。
# pkg updating
...
20141008:
  AFFECTS: users of lang/ruby19
  AUTHOR: swills@FreeBSD.org

  The default ruby version has been updated from 1.9 to 2.0.

  If you compile your own ports you may keep 1.9 as the default version by
  adding the following lines to your /etc/make.conf file:

  #
  # Keep ruby 1.9 as default version
  #
  DEFAULT_VERSIONS+=ruby=1.9

  If you wish to update to the new default version, you need to first stop any
  software that uses ruby. Then, you will need to follow these steps, depending
  upon how you manage your system.

  If you use pkgng, simply upgrade:
  # pkg upgrade

  If you use portmaster, install new ruby, then rebuild all ports that depend
  on ruby:
  # portmaster -o lang/ruby20 lang/ruby19
  # portmaster -R -r ruby-2.0

  If you use portupgrade, install new ruby, then rebuild all ports that depend
  on ruby:

  # pkg delete -f ruby ruby-iconv portupgrade
  # make -C /usr/ports/ports-mgmt/portupgrade install clean
  # pkg set -o lang/ruby19:lang/ruby20
  # portupgrade -x ruby-2.0.\* -fr lang/ruby20
portupgradeを利用しているので上記の4行を実行したところ、無事にアップデートすることができました。
このとき、パッケージの依存関係を見たくなったので、 /usr/ports/ports-mgmt/porttreeをインストールして利用しました。

2014年9月20日土曜日

portupgrade net/avahi-appで「checking for XML::Parser... configure: error:」となり失敗する

portupgrade net/avahi-appを実行すると以下のメッセージが出て失敗しました。
checking for XML::Parser... configure: error:
XML::Parser perl module is required for intltool
検索エンジンで調べると以下のサイトが見つかりました。
MacPorts のビルド中のconfigureでエラーになり「XML::Parserが必要」と言われる, checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool
http://d.hatena.ne.jp/TELL/20091019/p1
記事中では以下のように書かれています。
どうやらエラーの原因はPerlがXML::Parserの場所を失なっていること,そしてその解決にはもう一度p5-xml-parserをインストールすることらしい.
そこで以下のようにXML::Parserを再インストールし、portupgrade net/avahi-appを実行すると無事にインストールすることができました。
# cd /usr/ports/textproc/p5-XML-Parser
# make reinstall
# portupgrade net/avahi-app

2014年9月8日月曜日

@ITより - パスワードを忘れたWindows 7/8/8.1にログオン(サインイン)する

@ITに以下の記事が掲載されていました。
パスワードを忘れたWindows 7/8/8.1にログオン(サインイン)する
http://www.atmarkit.co.jp/ait/articles/1312/06/news055.html
方法は、ログオン画面の左下にある[コンピュータの簡単操作]アイコンをクリックするとコマンドプロンプトが起動されるようにするというものです。

Windows 7での操作について要旨を再掲します。
  1. パスワードを忘れてしまったPCをWindowsセットアップメディアで起動
  2. セットアップ画面で[Shift]+[F10]キーを押してコマンドプロンプトを開く
  3. \windows\system32\utilman.exeをcopyしておき、コマンドプロンプトの実行ファイル(cmd.exe)をutilman.exeに上書きでコピー
  4. Windowsを再起動し[コンピュータの簡単操作]アイコンをクリックする。すると[コンピュータの簡単操作]ダイアログではなく、上記の操作によりUtilman.exeにリネームしたコマンドプロンプト(cmd.exe)が実行される
  5. Administratorや既存のユーザーに対して「net user <ユーザー名> <新しいパスワード>」で新しいパスワードを設定する。
Windows 8/8.1では「net user Administrator /active:yes」でAdministratorアカウント有効にするとよいようだ。

2014年8月5日火曜日

FreeBSD 9.1/9.2からネットワーク経由でEPSON PX-504AとEP-905Fに印刷する

FreeBSD 9.1/9.2で、ネットワーク経由で接続しているEPSON PX-504AとEP-905FをPostScriptプリンタとして印刷できるようにCUPSなどの設定をしました。手順は以下を参考にしました。
FreeBSD-8.2RでCANON MP610のプリンタサーバ環境を作る
http://kondonator.seesaa.net/article/226470037.html

CUPSで日本語
http://www.wizard-limit.net/mt/pc/archives/004330.html

cupsをインストール

# cd /usr/ports/print/cups
# make install
# echo 'cupsd_enable="YES"' >> /etc/rc.conf

cupsの設定

# cat /usr/local/etc/cups/cupsd.conf


# 他のホストからWWWブラウザ経由でcupsの設定を可能にする
# Listen localhost:631
Listen /var/run/cups.sock
Listen 631

# Restrict access to the server...
<Location />
  Order allow,deny
#
  Allow @LOCAL
</Location>

# Restrict access to the admin pages...
<Location /admin>
  Order allow,deny
#
  Allow @LOCAL
</Location>

# Restrict access to configuration files...
<Location /admin/conf>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
#
  Allow @LOCAL
</Location>

# Restrict access to log files...
<Location /admin/log>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
#
  Allow @LOCAL
</Location>

プリンタドライバGutenPrintをインストール

# /usr/ports/print/gutenprint
# make config

  [x] CUPS      GutenPrint (gimp-print) Cups Drivers
  [ ] FOOMATIC  Foomatic data files
  [ ] GIMP      GIMP Gutenprint printing plugin
  [ ] IJS       IJS GhostScript Drivers


# make install

日本語フォントのインストール

# cd /usr/ports/japanese/font-std
# make install

/usr/local/libexec/cups/filter/pstorasterの変更

# Now run Ghostscript...
# exec $bindir/espgs $gsopts -sOUTPUTFILE="%stdout" -c"$profile" "$ifile"
# 上記を以下に変更する
exec $bindir/gs $gsopts -sOUTPUTFILE="%stdout" -c"$profile" "$ifile"

プリンタの追加

  1. cupshost:631をWWWブラウザで開く
  2. プリンタの追加を選ぶ
  3. 発見されたネットワークプリンター「EPSON EP-905F Series (EPSON EP-905F Series)」を選ぶ(EP-905Fはネットワーク経由で接続しています)
  4. 「続ける」を選ぶ
  5. 「続ける」を選ぶ
  6. ドライバとして「モデル: EP-901F -CUPS+Gutenprint v5.2.10(en,...,ja,...)」を選ぶ(プリンタは905Fですが、901Fで動作しました)

PX-504Aも同様にして設定、出力することができました。

2014年8月1日金曜日

Perl 5.16でctime.plとflush.plがない

あるperlプログラムが動作しなくなり、調べてみるとctime.plとflush.plがないのが原因のようです。検索してみると、以下のような記述を見つけました。
Perl5.16の新機能・変更点をピックアップ
http://d.hatena.ne.jp/perlcodesample/20120523/1337758400

以下のPerl4形式のライブラリは削除されました。
abbrev.pl assert.pl bigfloat.pl bigint.pl bigrat.pl cacheout.pl
complete.pl ctime.pl dotsh.pl exceptions.pl fastcwd.pl flush.pl
getcwd.pl getopt.pl getopts.pl hostname.pl importenv.pl
lib/find{,depth}.pl look.pl newgetopt.pl open2.pl open3.pl
pwd.pl shellwords.pl stat.pl tainted.pl termcap.pl timelocal.pl
これらは CPAN の Perl4::CoreLibs にあります。

そのためcpanコマンドでinstall Perl4::CoreLibsとしてこれらをインストールしました。


2014年7月28日月曜日

ふたたびFreeBSD 9.2でlang/ruby19のportupgradeに失敗する

FreeBSD 9.2でlang/ruby19(ruby-1.9.3.484_2,1→ruby-1.9.3.547,1)のportupgradeをすると以下のようなエラーで失敗しました。
pkg-static: Plist error, directory listed as a file: /usr/local/share/ri/1.9/system/fatal
前回と同様に検索エンジンで調べてみると同じページしか近いものはなさそうです
Ruby19 install/upgrade problem
https://forums.freebsd.org/viewtopic.php?f=5&t=46078
 が見つかります。回答:
I ran into this too, tracked down the cause, and submitted a PR with a patch to fix the problem: http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/190066.
で参照されているパッチはそのままで適用できません。内容を少し見てみると、同様なパッチを作成すればよさそうです。
$ diff -u Makefile.ORG  Makefile
--- Makefile.ORG    2014-07-28 14:09:31.281245689 +0900
+++ Makefile    2014-07-28 14:12:23.899333635 +0900
@@ -229,10 +229,12 @@
 #
 # Add generated RI files to pkg-plist
 #
-    @${FIND} -ds ${RUBY_RIDIR}/ ! -type d ! -name created.rid | \
+    @${FIND} -ds ${STAGEDIR}${RUBY_RIDIR}/ ! -type d | \
         ${SED} 's,^${STAGEDIR}${PREFIX}/,,' >> ${TMPPLIST}
-    @${FIND} -ds ${RUBY_RIDIR}/ -type d -mindepth 1 | \
+    @${FIND} -ds ${STAGEDIR}${RUBY_RIDIR}/ -type d -mindepth 1 | \
         ${SED} -E -e 's,^${STAGEDIR}${PREFIX}/,@dirrm ,' >> ${TMPPLIST}
+    @${FIND} -ds ${STAGEDIR}${RUBY_SITERIDIR}/ ! -type d | \
+                ${SED} 's,^${STAGEDIR}${PREFIX}/,,' >> ${TMPPLIST}


$
これを適用してみるとportupgradeができるようになりました。

Registering installation for pkg-1.3.1 Child process pid=xxxx terminated abnormally: Segmentation fault: 11

ports-mgmt/pkgを1.2.7_4から1.3.1にアップデートしようとすると以下のようなエラーになりました。
Deinstallation has been requested for the following 1 packages:

    pkg-1.2.7_4

The deinstallation will free 7 MB
[1/1] Deleting pkg-1.2.7_4... done
[Reading data from pkg(8) ... Child process pid=79756 terminated abnormally: Segmentation fault: 11
- 0 packages found - done]
--->  Installing the new version via the port
===>  Installing for pkg-1.3.1
===>   Registering installation for pkg-1.3.1
Child process pid=79837 terminated abnormally: Segmentation fault: 11
*** [fake-pkg] Error code 245
検索エンジンで調べてみると以下のようなWWWページを見つけました。
PKG 3.1.0 update - Segmentation fault: 11
http://www.mail-archive.com/freebsd-ports@freebsd.org/msg59950.html
スレッドを辿っていくと次のような解決策が示されていました。
PKG 3.1.0 update - Segmentation fault: 11
http://www.mail-archive.com/freebsd-ports@freebsd.org/msg59953.html

This is a known one I'm very sorry about but tricky to fix, to solve it, open your /usr/local/etc/pkg.conf you might have a duplicated entrey in alias (probable leaf), remove the second one, that will solve your problem.
/usr/local/etc/pkg.confを見てみると、ALIAS項のleaf行が重複しています。
ALIAS              : {
  all-depends: query %dn-%dv,
  annotations: info -A,
  build-depends: info -qd,
  download: fetch,
  iinfo: info -i -g -x,
  isearch: search -i -g -x,

  leaf: query -e "%a == 0" "%n-%v",
  leaf: query -e "%a == 0" "%n-%v",
  list: info -ql,
  origin: info -qo,
  provided-depends: info -qb,
  raw: info -R,
  required-depends: info -qr,
  shared-depends: info -qB,
  show: info -f -k,
  size: info -sq,
  }
これを1つにしてふたたびportupgrade ports-mgmt/pkgとするとインストールに成功しました。

pkg updatingを確認すると同様な記述がありました。
20140727:
  AFFECTS: users of ports-mgmt/pkg
  AUTHOR: mva@FreeBSD.org

  Before updating ports-mgmt/pkg, please make sure that there are no doubled
  entries in ${LOCALBASE}/etc/pkg.conf (/usr/local/etc/pkg.conf by default).
  Especially a doubled "leaf: " entry in the ALIAS settings of the default
  configuration may cause pkg to break during the update.

2014年7月19日土曜日

Flets網へ接続するためのNEC IX2025ルータの設定

http://www.flets/やhttp://flets-v6.jp/などのNTT東日本のサービス情報サイトに透過的に接続できるようにIX2025の設定をしてみました。

1. DNS

自前でDNSサーバーを設定しているので、www.fletsの問い合わせをフレッツ網へ送り出すようにする必要があります。
これには
内部DNSサーバがある環境でのDNSルーティングの適用
http://www.kkdlabs.jp/dns/dns-routing/
を参考して以下のよう設定をnamed.confに追加しました。
view "internal" IN {
        match-clients {
                internal;
                localhost;
        };
        zone "localhost" IN {
                type master;
                file "internal/localhost";
        };
        # localhostやprivateの逆索きを適切に
        zone "example.jp" IN {
                type master;
                file "internal/example.jp";
        };
        zone "0.168.192.in-addr.arpa" IN {
                type master;
                file "internal/0.168.192.in-addr.arpa";
        };
        zone "flets" IN {
                type forward;
                forward only;
                forwarders {
                        192.168.0.254;
                };
        };
};
192.168.0.254がインターフェイス接続用ルーターのアドレスです。これは各サイトに設定に読み替えてください。

2. サービス情報サイトのルーティングアドレスの確認

以下のサイトにどのようなIPアドレスを利用しているかの記述があります。
ルーティングアドレス
https://flets.com/square/routing.html
アドレス サブネットマスク 備考
220.210.194.0 255.255.255.128 サービス情報サイト
123.107.190.0 255.255.255.0 サービス情報サイト
速度測定サイト
220.210.198.0 255.255.255.192 ひかり電話対応機器ファームアップ用
これらの経路情報をIX2025に設定します。

3. IX2025への設定

まず、
フレッツ サービス情報サイト(IPv4)(NTT東日本)向け 設定ガイド
http://jpn.nec.com/univerge/ix/Support/flets/flets_square_e.html
にあるようにIPv4の経路制御の設定をします。このページにある設定を再掲します。
ip route default GigaEthernet0.1
ip route 220.210.194.0/25 GigaEthernet0.2
ip route 220.210.198.0/26 GigaEthernet0.2
ip route 123.107.190.160/28 GigaEthernet0.2

proxy-dns ip enable
proxy-dns ip query-interval 1
proxy-dns interface GigaEthernet0.1 priority 200

ppp profile internet
  authentication myname [プロバイダ接続用ユーザID]
  authentication password [プロバイダ接続用ユーザID] [パスワード]

ppp profile square
  authentication myname guest@flets
  authentication password guest@flets guest

interface GigaEthernet1.0
  ip address 192.168.1.254/24
  no shutdown

interface GigaEthernet0.1
  encapsulation pppoe
  ppp binding internet
  ip address ipcp
  ip napt enable
  no shutdown

interface GigaEthernet0.2
  encapsulation pppoe
  ppp binding square
  ip address ipcp
  ip napt enable
  no shutdown
これでwww.fletsへアクセスすることができます。
次に以下のページにあるようなIPv6での接続を設定します。
サービス情報サイト(IPv6)、フレッツ・ドットネット(NTT東日本) 向け設定ガイド
http://jpn.nec.com/univerge/ix/Support/flets/flets_dotnet_e.html
設定を再掲します。
ip route default GigaEthernet0.1
ip ufs-cache enable

proxy-dns ip enable

ppp profile internet
authentication myname [プロバイダ接続用ユーザID]
authentication password [プロバイダ接続用ユーザID] [パスワード]

interface GigaEthernet1.0
ip address 192.168.1.254/24
no shutdown

interface GigaEthernet0.1
encapsulation pppoe
ppp binding internet
ip address ipcp
ip tcp adjust-mss auto
ip napt enable
no shutdown
これで
フレッツ光メンバーズクラブ
でのフレッツ回線利用確認も動作するようになりました。

2014年7月15日火曜日

NEC UNIVERGE IX2025ルータのsyslog出力をFreeBSDで記録する

NEC UNIVERGE IX2025ルータのsyslog出力をFreeBSDで記録するために、以下のように設定した。

IX2025

syslog ip host XXX.YYY.0.201
logging buffered 131072
logging subsystem all warn
logging timestamp datetime
FreeBSD 9.2が動作するホスト XXX.YYY.0.201にsyslogを出力するようにした。

FreeBSD 9.2


 /etc/rc.conf

syslogd_flags="-a XXX.YYY.0.0/16"
外部からsyslogを受け入れるように設定する。ここではXXX.YYY.0.0/16というネットワークのすべてのホストを許可している。デフォルトは-sオプションが指定されていて、外部からのsyslogは受け付けない。

 

 /etc/syslogd.conf

#+router
local0.*                    /var/log/ix2025.log
#*
デフォルトでのfacilityはlocal0、またホスト名はこのネットワークではrouterとなっている。
そのため#+routerでIX2025からのsyslogをフィルタし、さらにlocal0.*のメッセージについて/var/log/ix2025.logに書き込んでいる。

デバッグ

# tcpdump -i bge0 -n udp and dst XXX.YYY.0.201 and dst port 514
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on bge0, link-type EN10MB (Ethernet), capture size 65535 bytes

14:20:03.264340 IP XXX.YYY.0.1.514 > XXX.YYY.0.201.514: SYSLOG local0.warning, length: 147
14:20:19.772962 IP XXX.YYY.0.1.514 > XXX.YYY.0.201.514: SYSLOG local0.warning, length: 52
tcpdumpコマンドを使いsyslogのポート514へ送られてくるメッセージを表示することで、IX2025の設定を確認できる。

newsyslog.conf

/var/log/ix2025.log            600  5     *    $W6D0 JC
週に1階、土曜日の0時にファイルを入れ替えるようにした。

上記の設定は以下のWWWページを参考にした。

syslogによるログの一元管理
http://www.atmarkit.co.jp/ait/articles/0402/25/news086.html

2014年7月14日月曜日

MacOS X 10.9でUSB-Serial変換アダプタ ATEN UC-232Aを使う

いくつかのL3スイッチやルータなどを設定する時に、シリアルコンソールを使う必要がある場合があります。Mac miniやMacBookから設定するときには、USB-Serial変換アダプタが必要です。
I-O DATA USB-RSAQ5であればメーカーがドライバを提供しているため、簡単に利用できます。
手元にあったATEN UC-232Aはそのままでは動作しません。検索エンジンで探してみると以下のページに使用方法が記載されていました。

Using Aten UC-232A USB to Serial converter on Mac OS X Mavericks
( http://blog.unfed.org/2013/10/using-aten-uc-232a-usb-to-serial.html )

上記のブログなくなってしまうと困るので概要を再掲させていただきます。

ドライバをダウンロード

http://www.prolific.com.tw/US/ShowProduct.aspx?p_id=229&pcid=41

プロダクトIDなどを確認する

「アプリケーション/ユーティリティ/システム情報」を起動し、USBデバイスを開くと以下のように確認できます。
USB-Serial Controller D:
製品 ID:    0x2008
製造元 ID:    0x0557  (ATEN International Co. Ltd.)
バージョン:     3.00
速度:    最高 12 Mb/秒
製造元:    Prolific Technology Inc.
場所 ID:    0xfd123300 / 9
利用可能な電流(mA):    500
必要な電流(mA):    100
利用したアダプタでは以下のIDでした。
Product ID: 0x2008(10進表記: 8200)
Vendor ID: 0x0557(10進表記: 1367)

ドライバの設定ファイルを変更する

sudo vi /System/Library/Extensions/ProlificUsbSerial.kext/Contents/Info.plist
<key>IOKitPersonalities</key>の最後に以下を追加 
<key>0557_2008</key>
    <dict>
        <key>CFBundleIdentifier</key>

        <string>com.prolific.driver.PL2303</string>
        <key>IOClass</key>
        <string>com_prolific_driver_PL2303</string>
        <key>IOProviderClass</key>
        <string>IOUSBInterface</string>
        <key>bConfigurationValue</key>
        <integer>1</integer>
        <key>bInterfaceNumber</key>
        <integer>0</integer>
        <key>idProduct</key>

        <integer>8200</integer>

        <key>idVendor</key>

        <integer>1367</integer>

    </dict>
最初に<key>にVendor IDとProduct IDのペアを、<dict>中でidProductとidVendorに、Product IDとVendor IDを10進で表記したものを記述するという形式のようです。

試す
sudo kextload /System/Library/Extensions/ProlificUsbSerial.kext

自動で読み込むようにする

sudo touch /System/Library/Extensions
 

2014年7月2日水曜日

FreeBSD 9.1でx11/xdmのportupgradeに失敗する

FreeBSD 9.1でx11/xdmのportupgradeがうまくできません。
以下のようなエラーメッセージがでます。

pkg-static: lstat(/usr/ports/x11/xdm/work/stage/var/lib/):No such file or directory
検索エンジンで探してみると次のようなWWWページが見つかります。
x11/xdm doesn't install because of missing files
(https://forums.freebsd.org/viewtopic.php?t=44575&p=248178)
返事を見てみると、
Adding
NO_STAGE:= yes
to the Makefile...
とあります。確かに/usr/ports/x11/xdmのMakefileの先頭付近に
NO_STAGE=yes
と入れたところ、うまくportupgradeができました。

2014年6月27日金曜日

FreeBSD 9.2でlang/ruby19のportupgradeに失敗する

FreeBSD 9.2でlang/ruby19のportupgradeをすると以下のようなエラーで失敗しました。
pkg-static: Plist error, directory listed as a file: /usr/local/share/ri/1.9/system/fatal
 検索エンジンで調べてみると
Ruby19 install/upgrade problem
https://forums.freebsd.org/viewtopic.php?f=5&t=46078
 が見つかります。回答:
I ran into this too, tracked down the cause, and submitted a PR with a patch to fix the problem: http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/190066.
 で参照されているパッチを/usr/ports/lang/ruby19/Makefileに適用(cd /usr/ports/lang/ruby19; patch < パッチファイル)するとportupgradeができるようになりました。

2014年6月23日月曜日

FreeBSDでのパッケージの不整合の解決

FreeBSDでのパッケージの不整合の解決には、以下のWWWページのようにすればよいようだ。

2014年3月24日 pkg(8)でアップグレードできないときの対処方法
http://gihyo.jp/admin/clip/01/fdt/201403/24

こういった場合には解決方法を「pkg updating」で調べます。インストールされているソフトウェアに関連した問題解決方法がずらずらと表示されます。

2014年6月18日水曜日

FreeBSD 9.2+mewでGmailを使う

FreeBSD 9.2+mewでGmailの2段階認証を使うときのメモ

1. stunnelをインストールする

# pkg install stunnel

2. .mew.elにgmailを利用する設定を書く

.mew.el
(setq mew-config-alist
...
        ("default"
         ...
         ("smtp-ssl" . t)
         ("smtp-server" . "smtp.gmail.com")
         ("smtp-ssl-port" . "465")              ; "SMTP over SSL/TLS" or 587
         ("use-smtp-auth" . t)
         ("smtp-auth-list" . ("CRAM-MD5" "DIGEST-MD5" "PLAIN" "LOGIN"))
         ("smtp-user" . "ユーザー名@gmail.com")
         ...

参照: mew から Gmail 使ってメールを送る
http://blog.livedoor.jp/idemo/archives/4141369.html

認証局のリストが必要だったかもしれない
$ cat /usr/local/share/certs/ca-root-nss.crt
...
$

参照: FreeBSDのMewでSSLを使う
http://blogs.yahoo.co.jp/alpha3166/4560697.html


3. マスターパスワードを使う

.mew.elに以下を設定する
(setq mew-use-cached-passwd t)
(setq mew-use-master-passwd t)

mewで2段階認証を使う場合、Web経由ではないのでPINアプリケーションで生成したPINを入れることはできない。Googleで生成した「アプリケーション固有のパスワード」を入れる必要がある。ただ、これはランダムな文字列なので人間が覚えることは難しい。そこで、mewのマスターパスワード機能を使い覚えるようにする。

参照: Google 2段階認証したら、Emacs + Mew で Gmail 読むのに一々パスワード生成しなくちゃいけなくなった。無理や、どうしよ。
https://twitter.com/jedipunkz/status/298719042624184320

4. マスターパスワードを入力するプログラムはmewに付属するものを使う必要がある。

.gnupg/gpg-agent.confに以下を設定する。
pinentry-program /usr/local/bin/mew-pinentry



2014年6月7日土曜日

FreeBSD 9.2でportupgradeをしようとすると"env: NO_PIE: No such file or directory"というエラーが出ます。

FreeBSD 9.2でOpenSSLの脆弱性に対応するためにportupgradeをしようとしました。
すると
"env: NO_PIE: No such file or directory"
 というエラーが出ます。検索エンジンで探してみると、

https://forums.freebsd.org/viewtopic.php?f=5&t=46767

に、以下のような対処方法が掲載されていました。

I followed the post and did this: in /usr/ports/Mk/bsd.port.mk I changed:
Code: MAKE_ENV+=     NO_PIE
to:
Code: MAKE_ENV+=     NO_PIE=yes

2014年6月1日日曜日

2014年4月23日水曜日

旅行で京都に行ったなら

食べ物

 京都にはなぜか有名なラーメン屋がたくさんあります。新しい店もよいのですが、住んでいた頃からある店にも行ってみたくなります。
お好み焼きなら百万遍の
でしょうか。京都な感じですと、
  • あぶり餅  - かざりや一文字屋 の2軒があり、混んでるなら持ち帰りで買うほうがよいでしょう。
もいいかもしれません。錦市場に行くなら、
のおじやうどんではどうでしょうか。京都大学の近くに行くなら、
の天丼、洋食なら
かでしょうか。

出かけるなら


おみやげ

2014年4月3日木曜日

ThinkPad X121eで電源が落ちる

いつもはFoursqaureからの自動転送で記事を作成していますが、今日は少し違う話題です。

2013年の4月頃から、使用しているThinkPad x121eが突然落ちてしまい、再起動時にも、内蔵のディスクにアクセスしては止まりことを何度も繰り返して、起動できないという状況が発生するようになりました。
バッテリやメモリなど簡単に交換できるものを取り替えたり、OSを再インストールしたりしましたが改善されず、
しばらく使用しないでいました。最近になり、ふと気になって使ってみると、やはり、突然電源が落ちてしまいます。

検索エンジンなどを使って情報を探してみると、以下のWWWページが見つかりました。

ThinkPad X121eで電源が落ちる件
( http://o-sup.jp/blog/blogteck/247-20131017thinkpad.html )

この中の以下の記述:

マザーボードを交換後、2日ばかりは何の問題も起きてませんでしたが、ThinkPadのアップデートユーティリティーを導入し、全てのドライバ、ユーティリティー、Windows更新ファイルを適用したところ、再び電源が落ちるようになりました。
をみて、ハードウェアの問題ではないように感じ、いろいろと試してみました。

すると、バッテリ駆動で使っていると症状が出ないことに気が付きました。そこでバッテリ使用時と、ACアダプタ使用時で省電力設定の違いを見てみると、

 省電力マネージャー→システム設定→CPU最大速度

  • バッテリ使用時: 自動
  • ACアダプタ使用時: 最高速

となっています。そこでACアダプタ使用時も
 CPU最高速度: 自動
とすると落ちなくなりました。
この設定をしてから1週間ほど使っていますが、突然落ちてしまうことはなくなりました。

<追記 - 2014/5/31>
5月になり気温が高めになったためか、たまに落ちてしまうようになりました。そのため、ThinkPad Fan Controller をインストールし、ファンの回転数を高めにしてみました。具体的にはTPFanControl.iniファイルの設定で40度から60度の間でファンの回転レベルを5,6,7としました。
Level=40 5       
Level=55 6       
Level=60 7       
1週間ほどこの設定で使ってみて、今のところ落ちなくなりました。また温度を観測できるので突然落ちてしまうとき原因がわかるかもしません。

以下のWWWページで解説があります。

ThinkPadの騒音対策 -ファンの回転数を制御できるThinkPad Fan Controller



目黒の小さな公園の桜もきれいです。