日本語入力へ切り替えるときにどうも調子が悪い。
顕著に現れるのがやはりブラウザで、書き込むときに切り替えが頻繁だからですが。
実際には他のタイミングでも多発していて最初は半角/全角キーだけでは切り替わらないのかと思ってALT+半角/全角にしても状況は変らず。
Ubuntuのデフォルトの画面だと右上のほうにキーボートのアイコンみないな表示をクリックすると入力切替や設定ができるので見てみると切り替えにCTRL+SPACEキーというのもあるらしい。
で、CTRL+SPACEで切り替えてみても状況は変わらず。
さらには切り替えた直後に入力して確定させてもそのまま消えてしまうとか…。
入力で消えてしまうのは切り替えた直後は少し間を空けると正しく入力ができるようですが、入力の切り替えはどうにもこうにも回避策が無くて困っています。
気づくと入力切替がちらついて何度も切り替えてる状態に陥っている場合もある様です。
現状ではVMが悪さをしているとしか思えないのですが何か改善策は無いのだろうか?
2012年5月24日木曜日
2012年5月23日水曜日
proftpd
vsftpdをアンインストールできたと思うので適当に
スーパーサーバーのはずなので…
外部から接続してもつながりません(笑)
なんのせっていがひつようだったっけかなと。
/etcを見たところinetdやxinetdの姿が見えないのでxinetdを入れてみました。
http://www.turbolinux.com/support/document/knowledge/466.html
多分、/etc/xinetd.d/ftpファイルを作成して再起動すればいけるはず?
とりあえずとりあえず接続することが出きるようになりました。
sudo apt-get install proftpdとかやってみました。
こんな画面が表示されopenwrtで敬遠されているようなスーパーサーバーの利用を選択できるようです。パッケージの設定 ┌─────────────────────────┤ ProFTPD configuration ├─────────────────────────┐ │ ProFTPD は、inetd 経由のサービスとして実行することもできますし、 スタン │ │ ドアローンのサーバとしても実行できます。どちらにもそれぞれ利点があります │ │ 。1日に数回の ftp アクセスしかない場合は、資源を節約するために ProFTPD │ │ を inetd から起動するのが良いかも知れません。 │ │ │ │ 一方、頻繁なアクセスがある場合は、接続ごとに新規プロセスが生成されるのを │ │ 避けるため、ProFTPD をスタンドアロンサーバとして動作させるべきです。 │ │ │ │ proftpd の起動方法: │ │ │ │ inetd 経由 │ │ スタンドアロン │ │ │ │ │ │ <了解> │ │ │ └───────────────────────────────────────────────────────────────────────────┘
root@ubntu-VirtualBox:/# sudo apt-get install proftpd/etc/proftpd/proftpd.confの Anonymousのコメント部を解除。
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
注意、'proftpd' の代わりに 'proftpd-basic' を選択しています
提案パッケージ:
proftpd-doc proftpd-mod-mysql proftpd-mod-pgsql proftpd-mod-ldap
proftpd-mod-odbc proftpd-mod-sqlite openbsd-inetd inet-superserver
以下のパッケージが新たにインストールされます:
proftpd-basic
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 439 個。
2,108 kB のアーカイブを取得する必要があります。
この操作後に追加で 4,391 kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ oneiric/universe proftpd-basic i386 1.3.4~rc2-4 [2,108 kB]
2,108 kB を 4秒 で取得しました (437 kB/s)
パッケージを事前設定しています ...
未選択パッケージ proftpd-basic を選択しています。
(データベースを読み込んでいます ... 現在 132678 個のファイルとディレクトリがインストールされています。)
(.../proftpd-basic_1.3.4~rc2-4_i386.deb から) proftpd-basic を展開しています...
ureadahead のトリガを処理しています ...
man-db のトリガを処理しています ...
proftpd-basic (1.3.4~rc2-4) を設定しています ...
警告: 指定されたホームディレクトリ /var/run/proftpd にアクセスできません。:そのようなファイルやディレクトリはありません
システムユーザ `proftpd' (UID 114) を追加しています...
新しいユーザ `proftpd' (UID 114) をグループ `nogroup' に追加しています...
ホームディレクトリ `/var/run/proftpd' は作成しませんでした.
システムユーザ `ftp' (UID 115) を追加しています...
新しいユーザ `ftp' (UID 115) をグループ `nogroup' に追加しています...
ホームディレクトリ `/srv/ftp' を作成しています...
`/usr/share/proftpd/templates/welcome.msg' -> `/srv/ftp/welcome.msg.proftpd-new'
ProFTPD warning: cannot start neither in standalone nor in inetd/xinetd mode. Check your configuration.
root@ubntu-VirtualBox:/#
スーパーサーバーのはずなので…
外部から接続してもつながりません(笑)
なんのせっていがひつようだったっけかなと。
/etcを見たところinetdやxinetdの姿が見えないのでxinetdを入れてみました。
root@ubntu-VirtualBox:/# sudo apt-get install xinetdたしかサービスごとに設定するはず。検索してみました(笑)
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
xinetd
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 439 個。
121 kB のアーカイブを取得する必要があります。
この操作後に追加で 397 kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ oneiric/main xinetd i386 1:2.3.14-7ubuntu4 [121 kB]
121 kB を 0秒 で取得しました (219 kB/s)
未選択パッケージ xinetd を選択しています。
(データベースを読み込んでいます ... 現在 132772 個のファイルとディレクトリがインストールされています。)
(.../xinetd_1%3a2.3.14-7ubuntu4_i386.deb から) xinetd を展開しています...
ureadahead のトリガを処理しています ...
man-db のトリガを処理しています ...
xinetd (1:2.3.14-7ubuntu4) を設定しています ...
xinetd start/running, process 1747
http://www.turbolinux.com/support/document/knowledge/466.html
多分、/etc/xinetd.d/ftpファイルを作成して再起動すればいけるはず?
とりあえずとりあえず接続することが出きるようになりました。
パッケージの削除
先日VMでコンパイルしたものを外部から参照させて実機にインストールしようとしていたのですが、vsftpdでは簡単に内部の特定のディレクトリを簡単に公開できないようなのでアンインストールしようかと思ったのですが、どうすればよいのやら(笑)
「Ubuntu パッケージ アンインストール」 で検索してみました。
検索した結果このページで何となく書いてあったので早速実行。
「Ubuntu パッケージ アンインストール」 で検索してみました。
検索した結果このページで何となく書いてあったので早速実行。
root@ubntu-VirtualBox:/srv/ftp/openwrt# sudo apt-get remove vsftpdこれでうまくアンインストールできたのでしょうか?
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージは「削除」されます:
vsftpd
アップグレード: 0 個、新規インストール: 0 個、削除: 1 個、保留: 439 個。
この操作後に 467 kB のディスク容量が解放されます。
続行しますか [Y/n]? y
(データベースを読み込んでいます ... 現在 132724 個のファイルとディレクトリがインストールされています。)
vsftpd を削除しています ...
vsftpd stop/waiting
ureadahead のトリガを処理しています ...
ureadahead will be reprofiled on next reboot
man-db のトリガを処理しています ...
2012年5月22日火曜日
uhttpd option index_pageの複数のファイル名への対応
最初は/etc/config/uhttpdの設定ファイルを変更してrestartさせたり、/etc/init.d/uhttpdの起動スクリプトを変更してみたり右往左往していましたが、根本的な原因がわかってからコンパイルができるようになるまでにかなりの時間を要しましたが、実際に修正して対応するまでには約1日程度。
動作確認できるようになるまでに数時間という感じで手間はかかりましたがようやく満足できる内容になりました。
そもそもwebサーバーのインデックスページの指定が内部だと4つ持っているのに指定は1つとかかなり作りはマニアックな雰囲気なサーバーですね(笑)
修正方針としては
・暫定的なテストプログラムでc言語の動作確認。
・実際に作ったコードを組み込む作業。
・コンパイル/テスト
の3段階。
意外とネックなのが最後の段階で、現状VMからどうやってファイルを転送すればよいかということ。
最初は単純にVM側でftpサーバーなりwebサーバーを動かせばいいかなとおもったのですが、VirtualBoxでこれを行おうとするとそれなりに面倒なことになってそうでした。
ifconfigで見てみるとIPアドレスが10. で始まっているという。
びっくりしたのですが、どうやらViurtualBoxがルータとなってVMにはその内部LANで動作するという形になっているようです。いくつか設定方法があるのですがよくわからず。
ブリッジとかならうまく表に出てくるのかな?(→普通のPCと同じようにIPアドレスを取得して振舞うようになりました(笑))
コンパイル/テストは実際に動作させてるのですが。最初は出来上がった実行ファイルだけ入れればいいかなと思ってたんですが、実行ファイルがどこに作成されるのかがわからないという(笑)
結果 make で全部をコンパイルして
動作確認できるようになるまでに数時間という感じで手間はかかりましたがようやく満足できる内容になりました。
そもそもwebサーバーのインデックスページの指定が内部だと4つ持っているのに指定は1つとかかなり作りはマニアックな雰囲気なサーバーですね(笑)
修正方針としては
・暫定的なテストプログラムでc言語の動作確認。
・実際に作ったコードを組み込む作業。
・コンパイル/テスト
の3段階。
意外とネックなのが最後の段階で、現状VMからどうやってファイルを転送すればよいかということ。
最初は単純にVM側でftpサーバーなりwebサーバーを動かせばいいかなとおもったのですが、VirtualBoxでこれを行おうとするとそれなりに面倒なことになってそうでした。
ifconfigで見てみるとIPアドレスが10. で始まっているという。
びっくりしたのですが、どうやらViurtualBoxがルータとなってVMにはその内部LANで動作するという形になっているようです。いくつか設定方法があるのですがよくわからず。
ブリッジとかならうまく表に出てくるのかな?(→普通のPCと同じようにIPアドレスを取得して振舞うようになりました(笑))
コンパイル/テストは実際に動作させてるのですが。最初は出来上がった実行ファイルだけ入れればいいかなと思ってたんですが、実行ファイルがどこに作成されるのかがわからないという(笑)
結果 make で全部をコンパイルして
siriuth@ubntu-VirtualBox:~/dev/openwrt/backfire_10.03.1$ make出来上がった 最低限のファイルをftpサーバーに入れて(これも即席でfilezillaでftpサーバーを動かして(笑))/etc/opkg.confの設定を変えてopkg update。そこからopkg install uhttpd --force-reinstallで強制的にアップデートをかけてから/etc/init.d/uhttpd restartで再起動とかやってみました。(opkgのコマンドラインヘルプを見ると-o とか --offile-root で指定すればパッケージファイルから直接インストールもできそうですが、よくわからない…)
make[1] worldmake[2] target/compilemake[3] -C target/linux compilemake[2] package/cleanupmake[2] package/compilemake[3] -C package/iproute2 compilemake[3] -C package/6in4 compilemake[3] -C package/6to4 compilemake[3] -C package/wireless-tools compilemake[3] -C package/acx compilemake[3] -C package/arptables compilemake[3] -C package/opkg host-compilemake[3] -C package/base-files compilemake[3] -C package/hotplug2 compilemake[3] -C package/block-mount compilemake[3] -C package/block-extroot compilemake[3] -C package/linux-atm compilemake[3] -C package/br2684ctl compilemake[3] -C package/bridge-utils compilemake[3] -C package/busybox compilemake[3] -C package/button-hotplug compilemake[3] -C package/libpcap compilemake[3] -C package/ppp compilemake[3] -C package/comgt compilemake[3] -C package/compcache compilemake[3] -C package/libnl-tiny compilemake[3] -C package/iw compilemake[3] -C package/mac80211 compilemake[3] -C package/crda compilemake[3] -C package/libtool compilemake[3] -C package/cyassl compilemake[3] -C package/dnsmasq compilemake[3] -C package/dropbear compilemake[3] -C package/e2fsprogs compilemake[3] -C package/ead compilemake[3] -C package/ebtables compilemake[3] -C package/fconfig compilemake[3] -C package/iptables compilemake[3] -C package/firewall compilemake[3] -C package/fuse compilemake[3] -C package/ncurses compilemake[3] -C package/libreadline compilemake[3] -C package/gdb compilemake[3] -C package/gpioctl compilemake[3] -C package/hostap-driver compilemake[3] -C package/hostap-utils compilemake[3] -C package/libipfix compilemake[3] -C package/wprobe compilemake[3] -C package/madwifi compilemake[3] -C package/hostapd compilemake[3] -C package/hostapd compilemake[3] -C package/hostapd compilemake[3] -C package/hostapd compilemake[3] -C package/hostapd compilemake[3] -C package/hostapd compilemake[3] -C package/i2c-gpio-custom compilemake[3] -C package/ifenslave compilemake[3] -C package/ipset compilemake[3] -C package/lua compilemake[3] -C package/iwinfo compilemake[3] -C package/kernel compilemake[3] -C package/zlib compilemake[3] -C package/kexec-tools compilemake[3] -C package/libjson-c compilemake[3] -C package/libnl compilemake[3] -C package/libubox compilemake[3] -C package/mmc_over_gpio compilemake[3] -C package/uci compilemake[3] -C package/mountd compilemake[3] -C package/mtd compilemake[3] -C package/nvram compilemake[3] -C package/ocf-crypto-headers compilemake[3] -C package/openssl compilemake[3] -C package/opkg compilemake[3] -C package/resolveip compilemake[3] -C package/pptp compilemake[3] -C package/px5g compilemake[3] -C package/qos-scripts compilemake[3] -C package/relayd compilemake[3] -C package/robocfg compilemake[3] -C package/siit compilemake[3] -C package/spi-ks8995 compilemake[3] -C package/spidev_test compilemake[3] -C package/swconfig compilemake[3] -C package/uboot-envtools compilemake[3] -C package/udev compilemake[3] -C package/udevtrigger compilemake[3] -C package/uhttpd compilemake[3] -C package/util-linux-ng compilemake[3] -C package/w1-gpio-custom compilemake[2] package/installmake[3] -C package/base-files installmake[3] -C package/busybox installmake[3] -C package/button-hotplug installmake[3] -C package/crda installmake[3] -C package/dnsmasq installmake[3] -C package/dropbear installmake[3] -C package/firewall installmake[3] -C package/hostapd installmake[3] -C package/hostapd installmake[3] -C package/hostapd installmake[3] -C package/hostapd installmake[3] -C package/hostapd installmake[3] -C package/hostapd installmake[3] -C package/hotplug2 installmake[3] -C package/iptables installmake[3] -C package/iw installmake[3] -C package/kernel installmake[3] -C package/libnl-tiny installmake[3] -C package/mac80211 installmake[3] -C package/mtd installmake[3] -C package/opkg installmake[3] -C package/ppp installmake[3] -C package/swconfig installmake[3] -C package/uci installmake[3] -C package/udevtrigger installmake[3] -C package/wireless-tools installmake[2] package/rootfs-preparemake[3] package/preconfigmake[2] target/installmake[3] -C target/linux installmake[3] -C target/sdk installmake[3] -C target/imagebuilder installmake[3] -C target/toolchain installmake[2] package/index
2012年5月21日月曜日
strncatを試してみました。
一般的な話は知らないのですが早速試してみました。
やはり第三引数の長さは第二引数の文字数の指定ですね。
uhttp…だいじょうぶなのだろうか(笑)
siriuth@ubntu-VirtualBox:~/dev/test$ cat strncat_test.cコンパイルも細かい点は完全に忘れてるので
#include <stdio.h>
#include <string.h>
void main(void){
char s1[256], s2[256];
strcpy(s1, "1234567890");
strcpy(s2, "abcdefghijklmnopqrstuvwxyz");
printf("s1: %s \n", s1);
printf("s2: %s \n", s2);
strncat(s1, s2, 10);
printf("after strncat s1: %s \n", s1);
}
gcc strncat_test.cとだけ行ったところ a.out という実行ファイルが作られたので
./a.outで実行(笑)
siriuth@ubntu-VirtualBox:~/dev/test$ ./a.outとなりました。
s1: 1234567890
s2: abcdefghijklmnopqrstuvwxyz
after strncat s1: 1234567890abcdefghij
siriuth@ubntu-VirtualBox:~/dev/test$
やはり第三引数の長さは第二引数の文字数の指定ですね。
uhttp…だいじょうぶなのだろうか(笑)
登録:
投稿 (Atom)