ローカルでポート変換
- ローカルでポート変換
- 待ち受けポート固定のアプリを複数のホストで動かしたい時、かつグローバルIPが一つしかなくてNATで制御を行っている場合、便利
- ex)192.168.0.3 で40001から40002へ変換 (:40001 でも :40002 でもどちらでも疎通可)
sudo iptables -t nat -A PREROUTING -p tcp --dst 192.168.0.3 --dport 40001 -j DNAT --to-destination 192.168.0.3:40002
fpingでサブネット内簡易生存確認
fping -ag 192.168.0.0/24 2> /dev/null | tee "alive_ip"
UbuntuでUSB接続のHDD(NTFS)の自動マウント時にパーミッションを指定する方法
外付けHDD(NTFS)をUSBで接続すると、自動マウントしてくれるのはよいのだがパーミッションが所有者のみ読み書きになっており、目的によっては不便。
Ubuntu 12.10 にて実験
- /etc/fstab に以下の行を追加。
UUID=B474B12074B0E5F0 /media/mountpoint1 ntfs-3g defaults,umask=000 0 0
- 別にパーティションの指定はUUIDでやらなくても良いと思う
- /media/mountpoint は任意
- ntfs-3g を fuseblk にするとエラーが出る
- umask=011 とかにしてパーミッションを削れる。
fstabに依存しないでgnome-mountはマウントしてくれるのかと思っていたが、
gnome-mountの挙動としては、デバイス検知→ mount -a →それでも対象のパーティションがマウントされなかった場合に、/media/{ユーザ名}/{パーティションボリューム} を自動作成して、それっぽいtypeでマウントする という感じだろうか。
Openoffice.org から LibreOfficeへの移行 (debian)
単純にアップデートがより最新だったので移行
- 以下を /etc/apt/sources.list に追加
deb http://backports.debian.org/debian-backports squeeze-backports main
- 実際にapt-get
sudo apt-get update sudo apt-get install libreoffice libreoffice-gnome libreoffice-l10n-ja
Net::Google::Calendar で Google Calendar の予定作成
Term::ReadKey 便利。
#!/usr/bin/env perl use Term::ReadKey; use Net::Google::Calendar; use DateTime; # init my $url = "https://www.google.com/calendar/feeds/#calendarname#/public/basic"; my $username = "#mail#"; my $title = "#title#"; # passwordget print "enter your password :"; ReadMode "noecho"; chomp ( my $password = ReadLine 0 ); ReadMode "restore"; # init cal object my $cal = Net::Google::Calendar->new ( url => $url ); $cal->login($username,$password); print "\n"; # init event object for ( my $i=1; $i <= 4; $i++){ my $start = DateTime->new( time_zone => 'Asia/Tokyo', year => 2012, month => 11, day => 23, hour => 10, minute => 30, second => 0, ); my $end = DateTime->new( time_zone => 'Asia/Tokyo', year => 2012, month => 11, day => 23, hour => 18, minute => 0, second => 0, ); my $start = $start->add( days => (($i-1) * 7)); my $end = $end->add( days => (($i-1) * 7)); print $start->strftime('%Y/%m/%d %H:%M:%S')."\n"; my $entry = Net::Google::Calendar::Entry->new(); $entry->title($title); $entry->status('confirmed'); $entry->when($start,$end); $cal->add_entry($entry); }
My Tracks のインポート機能
My Tracks のSDカードからインポートする機能はGPX形式で保存したファイルだけしかインポートできないので注意
My Tracks で記録したKMLの高度情報が Google Earth 上で反映されない問題の解決法
原因:
KMLファイル上において
解決法:
<gx:Track> <altitudeMode>absolute</altitudeMode> <when>2012-10-07T22:59:42.000Z</when> <gx:coord>136.931622 36.658851 477.79998779296875</gx:coord> ... </gx:Track>
の様に書くとよい