2011.08.31

Ubuntu 11.04 でディレクトリの暗号化

Ubuntu11.04で特定のディレクトリをencfsを使って暗号化する。

インストール。

$ sudo apt-get install encfs

暗号化したディレクトリの作成とmount。

$ encfs ~/.crypt ~/crypt

この例だと、~/.cryptに暗号化されたデータが入り、~/cryptでファイルアクセスできる。
初回は作成だが、作成後は上記コマンドでディレクトリが利用できる。

ディレクトリが存在しない場合作成を聞かれる。

ディレクトリ “/home/hoge/.crypt/” が存在しません。作成しますか? (y,n) y
ディレクトリ “/home/hoge/crypt” が存在しません。作成しますか? (y,n) y
新しい暗号化ボリュームを作成します。

モード聞かれる。よくわからないので何も入力せずエンターでスタンダードモード。

Please choose from one of the following options:
enter “x” for expert configuration mode,
enter “p” for pre-configured paranoia mode,
anything else, or an empty line will select standard mode.
?>

Standard configuration selected.

そしてログが流れ

設定が完了しました。以下のプロパティのファイルシステムが
作成されます:
ファイルシステム暗号アルゴリズム: “ssl/aes”, バージョン 3:0:2
Filename encoding: “nameio/block”, version 3:0:1
鍵サイズ: 192 ビット
Block Size: 1024 bytes
Each file contains 8 byte header with unique IV data.
Filenames encoded using IV chaining mode.
File holes passed through to ciphertext.

Now you will need to enter a password for your filesystem.
You will need to remember this password, as there is absolutely
no recovery mechanism. However, the password can be changed
later using encfsctl.

パスワードを聞かれる。

新しい Encfs パスワード:
Encfs パスワードの確認:

完了。

●mountする方法

$ encfs ~/.crypt ~/crypt
EncFS Password:       # パスワードを入力

●unmountする方法

$ fusermount -u ~/crypt

●パスワードを変更する方法

$ encfsctl passwd ~/.crypt     # 暗号化されたデータが入るディレクトリを指定
Enter current Encfs password
EncFS Password:           # 古いパスワードを入力
Enter new Encfs password
New Encfs Password:         # 新しいパスワードを入力
Verify Encfs Password:         # 新しいパスワードをもう一度入力
Volume Key successfully updated.

●ログイン時に自動で接続させる方法
Ubuntuの場合はautostartを使うとユーザログイン時に実行されそう。

$ cat <<EOF > ~/.config/autostart/encfs.desktop
[Desktop Entry]
Type=Application
Exec=/bin/bash -c “/bin/echo [password] | /usr/bin/encfs -S /home/[hogehoge]/.sec /home/[hogehoge]/sec”
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_US]=encfs
Name=encfs
EOF

※パスワードをディスク内に書いてしまっています。セキュリティとしては暗号化が無意味になりますのでご注意ください。

2011.08.25

Ubuntu 11.04 に ZumoDrive をインストール

依存関係の解決にいれた。

$ sudo apt-get install libinotifytools0
$ sudo apt-get install libgnet2.0-0

Zumoのサイトからインストーラをダウンロード。
https://www.zumodrive.com/

落としてきたdebパッケージをインストール。

$ sudo dpkg -i zumodrive-ubuntu8-amd64-0.989.deb

ただしこのまま実行してみると

$ ldd /usr/bin/zumodrive
 linux-vdso.so.1 => (0x00007fff25fff000)
 libjava.so => not found
 libjvm.so => not found
 libverify.so => not found
 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd6b966f000)
 /lib64/ld-linux-x86-64.so.2 (0x00007fd6b9a27000)

といくつかライブラリに依存関係の問題があったので

$ sudo sh -c “cat >> /etc/ld.so.conf.d/java.conf << EOL
/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/
/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/
EOL”
$ sudo ldconfig

で、たぶん完了。

Grubでマルチブート

Windowsがインストール済みのHDDと
Ubuntu11.04をインストールしたHDDがある。

BIOSでUbuntuを起動している。

そんな時にgrub使ってWindowsも起動できるようにする方法。

デバイスマップを作成しなおす。

$ sudo grub-mkdevicemap

grubを更新

$ sudo update-grub

その他設定いろいろは
/etc/default/grub
を書き換えて
update-grub
をすればいい。

2011.08.22

Ubuntu 64bit で Canon IR5055N を使う

Canonのプリンタドライバのインストール方法など。

2013年7月18日追記:
この記事は色々と間違ってました。
現在はドライバのバージョンも上がり64bit Debianパッケージも配布されるようになったので下記の記事をご参照ください。
今度こそUbuntu 64bit で Canon IR5055N を使いつつ今度はセキュアプリントも使う

2011年9月7日追記:
Ubuntu 11.04では” Unable to open the initial device, quitting.”というエラーのため、動作しなかった。
以下はUbuntu 10.10で動作確認。

Canonのページでドライバのダウンロードを選んで、機種・OSを選択していくと下記のページに飛ばされる。

LIPS4 Printer Driver for Linux Version 2.20
http://cweb.canon.jp/drv-upd/lasershot/linux/lips4linux.html

この中でrpmは32bit、64bit共にあるが、debは32bitしかない。
64bitのUbuntuにインストールしようとすると32bitじゃないからダメと言われる。
そのためソースコードからインストール。

先程のサイトのパッケージの下にあるソースコードへのリンクをクリックすると下記のページに飛ぶ。

LIPSLX/LIPS4 Printer Driver for Linux Ver2.20 ソースファイル
http://cweb.canon.jp/drv-upd/lasershot/linux/lipssource.html

ここで必要なソースファイルのダウンロード。
ダウンロード先を /tmp として作業を進める。

  • CUPSドライバー共通モジュール ソースファイル
  • Canon LIPSLX Printer Driver for Linux ソースファイル
  • Canon LIPS4 Printer Driver for Linux ソースファイル

LIPS LXとLIPS 4はそれぞれLIPSのドライバだが、PCで展開処理を行う(LIPS LX)のとプリンタで展開処理を行う(LIPS 4)という点が違うらしい。
ネットでググってもよくわからない。
とりあえずLX入れてみる。
2011年9月7日追記: Ubuntu10.10でLXドライバは動かず、LISP4で動作した。

Ghostscriptが必要とのことでとりあえず入れておく。

$ sudo apt-get install ghostscript

1.まずはドライバー共通モジュールからインストール。

$ cd /tmp
$ tar xzvf cndrvcups-common-2.20-1.tar.gz
$ cd cndrvcups-common-2.20/

この中にREADMEが入っていて、以下のものが必要と書いている。

<common>
  * aclocal (1.4.x or above)
  * automake (1.4.x or above)

<cngplp>
  * aclocal (1.4.x or above)
  * automake (1.4.x or above)
  * gtk+ (2.4.x or above)
  * libcups (1.1.17 or above)
  * libxml2 (2.6.x or above)
  * libglade2 (2.4.x or above)

aclocalは見つからなかった。
それ以外はとりあえずそれらしいものを入れておく。

$ sudo apt-get install automake libgtk2.0-dev libcups2-dev libxml2-dev libglade2-dev

makeする。

$ make gen

失敗する。
(cd cngplp; ./autogen.sh; make) || exit 1

**Error**: You must have `libtool’ installed.
You can get it from: ftp://ftp.gnu.org/pub/gnu/

**Error**: You must have `glib’ installed.
You can get it from: ftp://ftp.gtk.org/pub/gtk
make[1]: ディレクトリ `/tmp/cndrvcups-common-2.20/cngplp’ に入ります
make[1]: *** ターゲットが指定されておらず, makefile も見つかりません. 中止.
make[1]: ディレクトリ `/tmp/cndrvcups-common-2.20/cngplp’ から出ます
make: *** [gen] エラー 1

怒られたのでインストール。

$ sudo apt-get install libglib2.0-dev libtool

再度makeする。

$ make gen

やっと通った。

$ sudo make install

ドライバ共通モジュールのインストール完了。

2.次はドライバ本体のインストール。LIPSLX版
2011年9月7日追記:LX版はUbuntu10.10で動作しなかったので下に書いているLISP4の方が無難です。

$ cd /tmp
$ tar xzvf cndrvcups-lb-2.20-1.tar.gz
$ cd cndrvcups-lb-2.20/

この中にREADMEが入っていて、共通モジュールの物に加えて下記のものが必要らしい。

* libbuftool (1.00 or above)

しかしこのlibbuftoolは共通モジュールのところでインストールされてるはず。
ということで今回はなし。

makeする。

$ ./allgen.sh -deb

失敗する。

make[3]: ディレクトリ `/tmp/cndrvcups-lb-2.20/cpca/cnpklib’ に入ります
/bin/bash ../libtool –tag=CC –mode=link gcc -O2 -Wall -fPIC -D_UFR2_ -g -O2 -shared -version-info 1:0:0 -o libcnpkufr2.la -rpath /usr/lib cnpklib.lo cnpkopt.lo cnpkproc.lo -lbuftool
libtool: link: can not build a shared library
libtool: link: See the libtool documentation for more information.
libtool: link: Fatal configuration error.
make[3]: *** [libcnpkufr2.la] エラー 1

ライブラリの依存関係らしい。
ファイルをちょこっと修正する。

修正箇所をdiffした。
LIPSLX版
http://blog.kirie.net/wp-content/uploads/2011/08/cndrvcups-lb-2.20.diff.txt
LIPS4版
http://blog.kirie.net/wp-content/uploads/2011/05/cndrvcups-lips4-2.20.diff.txt

makeする。

$ ./allgen.sh -deb

通った。
ように見えるんだが、実行途中でエラーが出ている。
実は途中でmake installを勝手に行なっており
ファイルがすべてコピーされてないはず。

ということでroot権限でmakeする。

$ sudo ./allgen.sh -deb

通った。

$ sudo make install

LIPSLXドライバのインストール完了。

3.おまけのドライバ本体のインストール。LIPS4版

$ cd /tmp
$ tar xzvf cndrvcups-lips4-2.20-1.tar.gz
$ cd cndrvcups-lips4-2.20/

これもそのままmakeが通らないのでちょこっと修正。
http://blog.kirie.net/wp-content/uploads/2011/05/cndrvcups-lips4-2.20.diff.txt

makeする。

$ ./allgen.sh -deb

失敗する。
実は途中でmake installを勝手に行なっており
一般ユーザのままではcnpklibのライブラリ依存でエラーが出る。

$ sudo ./allgen.sh -deb

通った。

$ sudo make install

LIPS4ドライバのインストール完了。

Linux の Chrome で Backspace で戻る

拡張機能をインストール。

Backspace As Back/Forward for Linux
https://chrome.google.com/webstore/detail/aeffggjddcchloadflonilaahpclmbnm#

apt-getを速くする

  1. システム設定を起動し、システムのアップデート・マネージャを起動。
  2. 設定を開き、Ubuntuのソフトウェアタブを開く。
  3. ダウンロード元が「日本のサーバ」になっているので、ここを「その他」からftp.jaist.ac.jpなりftp.riken.jpなりに変更する。

これで速くなるはず。

mozcのインストール

Google日本語入力のmozcインストール。

  1. $ sudo apt-get install ibus-mozc
  2. 右上の電源ボタンのシステム設定を起動。
  3. システムグループの「言語サポート」を起動。
  4. キーボード入力に使うIMシステムに「ibus」を選択して閉じる。
  5. その他グループの「キーボード・インプットメソッド」を起動。
  6. インプットメソッドタブを選択し、「インプットメソッドの選択」から「日本語」→「mozc」を選択し追加して閉じる。

UnityのF10対策

日本語入力で困るF10の対策方法。
  1. Ubuntuソフトウェアセンターで「ccsm」を検索し「Advanced Desktop Effects Settings(ccsm)」をインストール。
  2. Winodwsキーを押し検索で「ccsm」を入力し、「CompizConfig設定マネージャ」を起動。
  3. デスクトップカテゴリの「Ubuntu Unity Plugin」を選択。
  4. Behaviourタブの「Key to open the first panel menu」を無効にする。

2011.06.04

Ubuntu 11.04 Firefox 4.0.1 で Elasticfox

ElasticfoxはFirefox4.0までしか入れられないし
Ubuntu11.04の環境のせいなのかバージョン騙してもうまく入らなかったので
その対応メモ。

まずはElasticfoxのソースコードを落とします。

$ svn co https://elasticfox.svn.sourceforge.net/svnroot/elasticfox elasticfox

プロジェクトのホームはここ。
http://sourceforge.net/projects/elasticfox/

次にバージョン制限を外すため
4.0が上限になっているので、適当に5.0とかに変えてあげます。

elasticfox/trunk/src/install.rdf

<em:maxVersion>4.0</em:maxVersion>

<em:maxVersion>5.0</em:maxVersion>

そしてxpiにします。
JAVA_HOME が必要なのでインストールして設定。

$ sudo apt-get install openjdk-6-jdk
$ echo “export JAVA_HOME=/usr/lib/jvm/java-6-openjdk/” >> ~/.profile

そして作成

$ cd elasticfox/trunk
$ ./make.sh

distディレクトリの中にできたxpiをFirefoxにインストールで動きました。

ap-northeast-1も最初から使えるのでgood。

2009.11.11

HDFSをマウントして利用してみる

GFS クローンの Hadoop Distributed File System (HDFS) をfuseを利用することでローカルにマウントし、直接操作できるファイルシステムとして使えるようなので試してみた。
参考はHadoopのサイトよりMounting HDFS

今回は Ubuntu 9.04 ベースで、Hadoop はすでに別サーバで構築済みの環境で行っています。
Hadoopの構築については Hadoop/Hbase Clusterの構築 このあたりを参考にどうぞ。

1.必要ライブラリのインストール

$ sudo apt-get install default-jdk ant
$ sudu apt-get install automake autoconf libfuse-dev

完了です。

2.Hadoopの取得とhdfs用ライブラリのコンパイル
HDFSをマウントするためにはソースからライブラリをコンパイルして作成する必要があります。

まず取得と展開。
Hadoop のサイトから
[Hadoop Common] -> [Download] -> [Download a release now!]
あたりで取得できると思います。
今回は現時点で最新版の 0.20.1を利用します。

$ wget http://ftp.riken.jp/net/apache/hadoop/core/hadoop-0.20.1/hadoop-0.20.1.tar.gz
$ tar xzvf hadoop-0.20.1.tar.gz
$ mv hadoop-0.20.1 /var/hadoop
$ cd /var/hadoop

そしてコンパイル。

$ ant compile-c++-libhdfs -Dlibhdfs=1 -Dcompile.c++=1
$ ln -s c++/Linux-i386-32/lib/ build/libhdfs
$ ant compile-contrib -Dlibhdfs=1 -Dfusedfs=1

compile-c++-libhdfs の部分は
Hdoop-0.19 のバージョンでは ant のターゲットで「compile-libhdfs」を指定するみたいですが
0.20 ではなくなってました。
詳しくはbuild.xmlを見てください。

そしてできたファイルをコピー。

$ mkdir -p contrib/fuse-dfs
$ cd contrib/fuse-dfs
$ cp /var/hadoop/src/contrib/fuse-dfs/src/fuse_dfs ./
$ cp /var/hadoop/src/contrib/fuse-dfs/src/fuse_dfs_wrapper.sh ./
$ chmod 775 fuse_dfs_wrapper.sh

完了。

3.環境変数を追加
とりあえずテストなら実行すればいい。
継続的に使うなら「~/.profile」あたりに書いてあげるといい。
(RedHat系なら ~/.bash_profile)

$ export HADOOP_HOME=/var/hadoop
$ export OS_ARCH=i386
$ export JAVA_HOME=/usr/lib/jvm/default-java
$ export LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/$OS_ARCH/server:$HADOOP_HOME/build/libhdfs

何も指定されていないとデフォルトが使われる。
デフォルトの設定は fuse_dfs_wrapper.sh を参照。

4.接続!
mount -t dfs //hogehoge/hoge /mnt/hdfs
と行きたいところなんですがコマンドで接続です。

$ sudo mkdir /mnt/hdfs
$ sudo /var/hadoop/contrib/fuse-dfs/fuse_dfs_wrapper.sh hdfs://[hbaseserver]:54310 /mnt/hdfs

[hbaseserver] ・・・ hbaseが動いているサーバ名を指定

完了です!

5.こんなことに使える
普通にローカルにマウントされているのでそのままコマンド使えます。
ドキュメントによると
‘ls’, ‘cd’, ‘cp’, ‘mkdir’, ‘find’, ‘grep’
このあたりは問題なく使え、その他読み込み書き込みもおっけーだそうです。

ただ、HDFSの仕様上、直接編集作業を行うことはできません。
そこだけはご注意を。

« Previous | Next »