ラベル tips の投稿を表示しています。 すべての投稿を表示
ラベル tips の投稿を表示しています。 すべての投稿を表示

2013年11月20日水曜日

VMware の仮想マシンがネットワークに接続できない

現象
Windows 8.1 にアップデートすると、 VMware の仮想マシンがネットワークに接続できなくなった

原因
VMware の ネットワークブリッジが死んでいた

解決方法
1. コントロールパネルから ネットワークとインターネット、 ネットワークと共有センターを選ぶ
2. 接続: イーサネット をクリックして、「イーサネットの状態」というウィンドウを出す
3. プロパティをクリックして、 VMware Bridge Protocol が 無いことを確認
4. インストールをクリック、サービスをクリック、追加をクリック
5. 製造元に VMware があるので、それをクリック
6. VMware Bridge Protocol があってチェックされていることを確認

これで動いた。

2013年10月30日水曜日

Node.js の child_process の exec, spawn の違い

幾つか違いに関する記事はある

http://memo.yomukaku.net/entries/GFfPTKQ
http://d.hatena.ne.jp/muddydixon/20110708/1310134554


が、プロセスに関する違いもあって、これに関する説明は見つけられなかったので備忘録

exec: プロセスが2つ走る?
pid1 /bin/sh -c command arg1 arg2
pid2 command arg1 arg2


spawn: プロセスは1つ走る
pid3 command arg1 arg2


で、メソッドの戻りオブジェクト (child とする) の pid が
exec の場合 pid1
spawn の場合 pid3

なので、 spawn なら child.kill("SIGTERM") で死ぬけども、
exec だと child.kill("SIGTERM") では pid1 しか死ななくて、pid2 が死なない。

これどういう原理なんだろう。
exec がシェルを起動してシェル内で コマンドが走る上に、
シェルをころしてもその子プロセスは道連れにならない?

2013年10月12日土曜日

グローブトロッターの鞄がかっこいい

メモ
http://www.globetrotter1897.com/japan/collections/safari/

重そうだけども、こういうのを持ってイギリスの町をさっそうとあるいてみたい

2013年7月3日水曜日

glibmm compile tips

(1) g_assert was not declared in this scope

add #include
to 
convert.cc
exception.cc
error.cc
date.cc

(2) g_date_set_time was not declared
change time -> time_t

(3) propertyproxy_base.cc 
add 
#include
Then, I succeeded to copmile.

2013年6月11日火曜日

jQuery UI: Solution for a problem that scrollbar does not work for selectable

If you set Selectable that have a scrollbar,
the scrollbar does not work.

e.g.
html is
div(style="height: 100; width: 100; overflow: scroll;")
    div(style="height: 1000; width: 1000;")
and javascript is
$("#out").selectable()

then, the scroll of #out does not work and only selectable works.


The solution is
$("#out").selectable({distance: 30});

Since mousedown event is not stolen by selectable but propagated to scroll, 
you can use scroll.

2013年5月14日火曜日

cmake で Debug オプションをつけてもフラグが変更しない問題の解決策


cmake では,

CMAKE_BUILD_TYPE = Debugとすると、
コンパイラオプション CMAKE_C_FLAGS_DEBUG にセットしたオプションを付加できる。

で、これでハマった。


トップレベルの CMakeLists.txt に

set(CMAKE_BUILD_TYPE Debug)

set(CMAKE_C_FLAGS_DEBUG "-g -Wall -fprofile-arcs -ftest-coverage -O0")
を書いてみても、コンパイルオプションが追加されなかった。


で、色々試行錯誤してと、下の階層の CMakeLists.txt に
set(CMAKE_C_FLAGS_DEBUG "-g -Wall -fprofile-arcs -ftest-coverage -O0")
を書く必要があることがわかった。

つまり、
project/
  - CMakeLists.txt (1)
  - src/
  -- CMakeLists.txt (2)
  -- program.cpp

みたいになっていたら、
(1) の方に、 CMAKE_C_FLAGS_DEBUG の値をセットしても (2) には反映されないので、
(2) の方にも set を書く必要がある。



2013年5月7日火曜日

2013年4月29日月曜日

/etc/sudoers の編集をミスったとき

/etc/sudoers の syntax erro が起こったら、
どのユーザでも sudo できなくなって危なかった。
以下解決策 (Ubuntu 12.04)


1. Recovery Mode で再起動
再起動中にShift を押し続ける

2. root mode を選択

3. mount -o remount /
で書き込みを可能なように再マウント

4. visudo で編集。

5. resume で戻る

2013年4月21日日曜日

Sublime Text 2 パッケージ

備忘録
All Complete
AutoFileName
ConvertToUTF8
HTML5
HTML Attributes
IMESupport
JavaScript console
Python PEP8 Lint
Sass
SFTP
SVN
IndentGuides
SublimeCodeIntel
jQuery

SSH経由でリモートドライブをマウント [windows]

http://www.eldos.com/sftp-net-drive/download-release.php

激しく便利なフリーソフト。

Windows でsshサーバとのファイルをやりとりしたいときにつかう。
WinSCP とかは専用のウィンドウがたちあがるが、
こちらはネットワークドライブとしてマウントされる。

公開鍵認証にも対応。すばらしい

フリー版には
IPアドレスとかの設定に名前をつけられないという制限があるが、
べつに気にしないならそのまま使用可能

2013年2月14日木曜日

parallel で並列処理

ちょっと必要になったので並列処理してみた。


たとえば、
html ディレクトリ以下のすべての .html 拡張子を持つファイルの行数を表示する。
ただし、行数を表示するたびに1秒待つ (重い処理を想定)


find で処理するためには、よくこんな感じで処理してました。
find html -name "*.html" -printf "wc -l %p; sleep 1" | sh
find コマンドが、以下のようなスクリプトを生成してくれるので、
wc -l html/aaa.html; sleep 1
wc -l html/bbb.html; sleep 2
...
それをパイプで sh に渡します。

短い場合はこれでいいんですが、ファイル数が多いなどの時間がかかる場合は
並列処理したくなります。

そこで parallel.
上と同じことを 10 並列でする場合は、以下のような感じ
parallel -j 10 -i sh -c "wc -l {}; sleep 1" -- `find html -name "*.tex"`
 -- 以下のリストを順番に {} に代入して、並列で実行してくれます。

2013年1月29日火曜日

[shell] # から始まる行を全部消して表示


targetfile というファイルの、先頭が # から始まる行を全部消してみたいとき。
設定ファイルとか、 Julius の .jconf ファイルとか。

cat targetfile | grep -v "^#" | sed "/^$/d" | lv

全部表示して、 # から始まる行を取り出して、空白行を削除。

2012年11月29日木曜日

bibtex で斜体かつ大文字にする方法

タイトルに学名がある場合、
たとえば

Acoustic Communication of Hyla japonica

みたいなのを bibtex で表示させたい場合は、

title = {Acoustic Communication of \emph{Hyla japnica}},

とやるといい。

参考
http://newsgroups.derkeiler.com/Archive/Comp/comp.text.tex/2008-09/msg00366.html

ついでに実は \it とかもう時代遅れらしい。

2012年10月30日火曜日

sudo で GUIアプリケーションを起動したら GTKwarning で落ちる時

sudo じゃなくて gksu を使うといけることがある。

example
sudo ntfs-config --> fail
gksu ntfs-config --> success

2012年8月22日水曜日

trac+svn でコミットログを書き換える

* subversion サーバ設定
リポジトリのディレクトリ以下の
hooks/pre-revprop-change.tmpl
の .tmpl を消して実行権限をつける

* ログ編集
TortoiseSVN でチェックアウトし、
Show Log でログ表示、右クリックして

* trac のログを更新
trac のプロジェクトのディレクトリに cd して、
trac-admin . resync <リビジョン番号>

とすれば更新完了

2012年7月31日火曜日

サーバメモ Ubuntu 12.04

あとで清書予定。単語間違ってるかも
http://www.server-world.info/query?os=Ubuntu_12.04&p=mail&f=1

/etc/network/interfaces
   iface eth0 inet static
   address, network, netmask, broadcast
   dns-nameservers, gateway はルータのIP

CTU設定 (フォワーディング、ファイアウォール)
   静的ポート変換、ファイアウォール、DHCPサーバ機能設定

ufw
   sudo ufw allow ssh
   sudo ufw allow http
   sudo ufw enable

nginx
   sudo apt-get install nginx-full

Putty
   puttygen で鍵生成
   .ssh/config
      Host HOSTNAME
      IdentityFile .ssh/public_key.pub
   ssh-keygen -i -f .ssh/public_key.pub >> authorized_keys # puttygen で生成したファイルを変換

OpenSSH
   apt-get install openssh-server openssh-client openssh-blacklist openssh-blacklist-extra
   /etc/ssh/sshd_config で PasswordAuthentication no, UsePAM no
   * ssh_config じゃないので注意

Squid
   sudo apt-get install squid3
   vi /etc/squid3/squid.conf
   acl localnet src 192.168.24.0/24
   http_access allow localnet

Fail2ban
   apt-get install fail2ban
   vi /etc/fail2ban/jail.local
[DEFAULT]
ignoreip = 192.168.24.0/24
maxretry = 3
findtime = 600
bantime = 600
backend = polling

[ssh]
enabled = true
[ssh-ddos]
enabled = true

Wordpress
    apt-get install php5-fpm php5-mysql php5-cli mysql-server

    * nginx
    sites-available/default の location に追加。ほとんどデフォルトのままでおk
    server {
        listen 80;
        root WWWPATH;

        index index.htm index.html index.php;    # index.php が無いとログインでこける

        server_name DOMAIN;
        location / {
                try_files $uri $uri/ /index.html;
        }

        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
        }
   }
 
    * php5
    /etc/php5/fpm/pool.d/www.conf の
    listen = 127.0.0.1:9000 をコメントアウトして
    listen = /var/run/php5-fpm.sock を追加

    そして、 sudo service php5-fpm restart

    * mysql
    mysql -u root -p
    apt-get 時に設定したパスワード入力
    create database wp;


    いろいろ設定かえたので、本来は該当するやつを
    service SERVICENAME restart すればよいが、
    とりあえず一回再起動(=全部 restart)するとうまくいく
 

    * web I/F
    あとは、 readme.html を読みながら設定
 


Postfix
   apt-get まで

Dovecot
   apt-get まで
Monit
   apt-get install monit

SparkleShare
   sudo apt-get install git

MediaServer
    streemee?

Django
    aa

2012年6月4日月曜日

複数行を1行にまとめるコマンド

paste を使えば、複数行をまとめられる。

# ls
dira
dirb
filea

の場合、
# ls | paste -s
dira dirb filea
と出力される。

2012年2月18日土曜日

emac flyspell

emacs で M-x flyspell-mode とすると、スペルチェックをしてくれる。

apt-get install aspell-en
とかを入れとくとよい

また、
echo "lang en_US" > ~/.aspell.conf
をする必要がある。

Reference: 
http://d.hatena.ne.jp/mooz/20091107/p1