ubuntu

特定の国からのアクセスを遮断

このページを参考に。
韓国 IP アドレスからのパケットを遮断する

ただし、「おことわり」に書かれているように、TCP接続がすべて遮断されるので注意。
これだとあまりに影響が大きいので特定のポートへのアクセスのみ遮断するようにした。

変更前

iptables -A KRFILTER -s 221.136.0.0/13 -p tcp -j KRFILTERED

変更後

iptables -A KRFILTER -s 221.136.0.0/13 -p tcp -m multiport --dports 22,25 -j KRFILTERED

vimで一括変換。

:%s/ -j / -m multiport --dports 22,25 -j /g

Ubuntu 7.10 + djangoで文字化け

専用サーバへ移転準備中。
CMSは引き続きDrupalとWordPressを使うことになると思うけど、自作アプリはPHPからPython(django)へ。

環境は
Ubuntu 7.10 (専用サーバで選択できるUbuntuのバージョンが7.10のため)
mysql, apache, djangoはaptでインストール。

で、早速djangoでアプリを作っているのだけどdbへ日本語を含むデータをインサートしようとするとエラーに。
なもんで、mysqlの設定を変更。

[mysqld]
default-character-set=utf8
skip-character-set-client-handshake

[mysql]
default-character-set=utf8

で、mysqlを再起動。

$ sudo /etc/init.d/mysql restart

Ubuntu Linux Kernelに脆弱性

というわけで、Linux Kernel更新。
ただKernel更新後、動かなくなるものがあるので再起動後、

1.nvidiaドライバを再インストール。
手順は、nvidiaのLinux用ドライバ更新と同じ。

2.VirtualBox 1.6.2の再インストール。

$ sudo dpkg -i virtualbox_1.6.2-31466_Ubuntu_gutsy_amd64.deb

追記
再インストールではなく、

$ sudo /etc/init.d/vboxdrv setup

でOKかも。

3.VMware Playerのvmware-config.plの実行。

$ sudo vmware-config.pl

以上。

nvidiaのLinux用ドライバ更新

新しいドライバがリリースされていたようなのでアップグレードした。
使用しているカードはGeForce 8500GT。

Linux x64 (AMD64/EM64T)

Version: 173.14.09
Operating System: Linux x64 (AMD64/EM64T)
Release Date: June 11, 2008

以下、更新の手順。

NVIDIA-Linux-x86_64-173.14.09-pkg2.run をダウンロード。

gdmを停止。
言うまでもなく、gdm停止前に起動中のアプリケーションを終了させておいたほうがいいでしょう。

$ sudo /etc/init.d/gdm stop

X終了。
ダウンロードしたNVIDIA-Linux-x86_64-173.14.09-pkg2.runを実行。

$ sudo sh NVIDIA-Linux-x86_64-173.14.09-pkg2.run

Ubuntu 7.10でgcc-4.2をインストールしていてgccのリンク先がgcc-4.2になっている場合、CC checkとやらでkernelをコンパイルしたgccとバージョンが違うけど云々という警告が出て、インストールを終わらせるか聞いてくる。
気になる場合はCC=gcc-4.1とでもして、NVIDIA-Linux-x86_64-173.14.09-pkg2.runを起動したほうがいいだろう。
今回、面倒なのでNOでインストールを続行。
今のところ問題なし。

ドライバのインストールが終わったらgdm起動。

$ sudo /etc/init.d/gdm start

Envyを使うと簡単にドライバの更新ができるらしいのだけど、試したことはない。

Google Gadgets for Linux 0.9.3

Google Gadgets for Linux 0.9.3がリリースされていた。
google-gadgets-for-linux - Google Code

0.9.2までは非常に不安定で常用できる状態ではなかったが、0.9.3にしてから、かなり安定して使えている。

Google Gadgets for Linux

google-gadgets-for-linux - Google Code

Ubuntu 7.10 (amd64)でコンパイルしてみようとおもったのだけど、configureでこける。

configure: error: curl, libxml2 or spidermonkey are missing, which are required for gtk host.

curlもlibxml2もあるのだが。となるとspidermonkeyか。
結局、libmozjs-devをインストールすると、configureでエラーが出なくなり、コンパイルもできた。

make install後

$ ggl-gtk

で起動。

Gadget Browserを表示したところ。

しかし、滅茶苦茶不安定でGadgetを追加したりしているとすぐに segmentation fault で落ちる。
バージョン0.9.2が出ていたので再度コンパイルしてインストールしてみたのだけど、不安定度は変わらず。

ゲストOSであるWindows 2000でYahoo!ウィジェットを使っていて、こいつをGoogle Gadgets for Linuxで置き換えられると思っていたのだけど、こうも不安定ではそうもいかず。

起動するgettyの数を減らす

昔は/etc/inittabを弄っていたような記憶があるが、今は違うらしい。

/etc/event.d下にいる、ttyXファイルを移動するか、開いて編集する。

$ sudo vi tty5
start on runlevel 2

#start on runlevel 2

とする。

Get out Getty - Ubuntu Forums

タイムゾーンの変更

自宅サーバをさくらの専用サーバへ移行させるため、現在テスト環境を準備中。
VMware Player + Ubuntu 7.10 Server(amd64)なのだけど、インストール時にタイムゾーンの設定を間違えたので再設定。

Ubuntuの場合

$ sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime

で、OK。

参考にしたページ
Linux Tips - Linux, Clocks, and Time

Sound Juicerでリッピングするときmp3が選択できない

圧縮音楽はきらいなので普段はflacで取り込んでを使っているのだけど、mp3で取り込む必要が出てきたので試してみようと思ったのだが、mp3が選択できない。
プロファイルの一覧にはmp3があって、有効になっているのだけど。

結局

$ sudo apt-get install ubuntu-restricted-extras

で解決。

RestrictedFormats - Community Ubuntu Documentation

VirtualBox 1.6.0から1.5.6へダウングレード

VirtualBox 1.6.0にアップグレードしてから、致命的な不具合が発生し解決方法もなさそうなので、1.5.6へダウングレードした。

ちなみに環境は
ホストOSはUbuntu 7.10 (amd64版)
ゲストOSはWindows 2000 SP4とWindows XP SP2。

私の環境で、致命的不具合は主に2点。

1.ネットワークで外部に接続できなくなる。
原因不明。
ゲストOSを再起動すると、接続できなくなることが多い。
また、ゲストOS起動後、時間が経つといつの間にか接続できなくなっているということも。
/etc/init.d/vboxdrv、/etc/init.d/vboxnet、/etc/init.d/networkingのrestartで直ることもあるが、直らないこともある。

2.VMware Playerと同時に実行しておくことができなくなった。
VirtualBoxでゲストOS起動後、VMware PlayerでゲストOSを起動するとホストOSごとフリーズ。
逆のパターンでもダメ。
ここのところ、Windows系はVirtualBox、主に開発環境として利用するBSD系やLinuxはVMware、と使い分けてきたのだけど、常時稼働させるゲストOSが増えたため、メモリ容量が4GBでは厳しく8GBに増設。
VirtualBoxとVMwareが同時に使えないとなると、その意味がなくなる。

仕方ないので、VirtualBoxを1.6.0から1.5.6へダウングレード。
手順は、
1.vdiファイルのバックアップ
これが壊れたりすると。。。想像しただけで。。。恐ろしい。。。

2.各設定ファイルをバックアップ
念のため。対象となるのは
$HOME/.VirtualBox/VirtualBox.xml
$HOME/.VirtualBox/Machines/ゲストOS名/ゲストOS名.xml
これらのファイルがあると、ダウングレード後、ゲストOSを再設定することができないのでリネームしておくと吉。

3.1.6.0をアンインストール、1.5.6をインストール
1.6.0を削除。

$ sudo apt-get remove virtualbox

1.5.4をインストール。
(VirtualBoxの古いバージョンはどこからダウンロードするのだろうか?)

$ sudo dpkg -i virtualbox_1.5.6-28266_Ubuntu_gutsy_amd64.deb

5.VirtualBoxを起動しゲストOSを再設定
問題なく動いている。もちろん、上述した不具合も発生していない。
Guest Additionsは1.6.0のままだが、問題はないようだ。

これ重要
ゲストOSのWindows XPはスナップショットを取っていたのだけど、1.5.6にダウングレード後起動したところ、スナップショットを取ったときの古いものが起動した。
ダウングレード後はスナップショットの情報はなくなるので、結局一旦1.6.0に戻しスナップショットを破棄したあと、もう一回1.5.6にダウングレード。
これで無事、最新の状態のWindows XPが起動した。
面倒だった。
(くれぐれもvdiファイルのバックアップを忘れずに)

1.6.0になって2000箇所以上も改善されたと聞き、喜び勇んでアップグレードしてみたのだけどこの体たらく。
少なくとも私の環境では1.5.6ですこぶる安定しているので、次のバージョンが出ても導入には慎重にならざるを得ないなぁ。

コンテンツの配信