lshwというユーティリティがあった
aptでインストールできた
参考リンク
PCのハードウェア情報を表示するには
2011年12月25日日曜日
SIerは滅びぬ!何度でも蘇るさ!
受託開発をするSIerがヤバイよ的な話はよく聞く話でSIer内部でそんな話もチラホラと聞くようになりました。
(ヤバイ理由は人月換算とか多重請負とかいろいろ言われてます)
でも結局のところこの先もSIerは生き残るよねっていうのが僕の見解。
もう何十年もこんな感じでやってきたから引くに引けないんですよ。
これは知人から聞いた話なんですが、ある大企業システムのIT部門の人は
本当にそのシステムを使っているユーザーから改善案を聞いて直すということを
しないらしいです。
仕様変更・機能追加はそのIT部門の上司の思いつきらしいですw
当然、普段から使っているユーザーの要望ではないので、どんどん使いにくくなってる
+いらない機能ばかり増えてるみたいですがw
で、こういう話って大企業とかだと結構ある話みたいです。
ユーザーが沢山いるシステムだと一人一人にヒアリングするのが面倒だし、
俺は(IT部門だから)そのシステム使わない。上司が言ったとおりの
仕様で発注出せばいいやーみたいに考えるのでしょう。
他に優秀なパッケージソフトがあっても買いません。
今まで、大手SIerに頼んでたんだから、今更、どこぞの中小企業と取引なんて
したくない。なぜなら稟議を通すときに説明を求められて面倒だからw
で糞システムをアホみたいな価格で買ってくるんです。
IT部門の人は会社の利益向上というよりも自分が面倒な思いをしなければいいやと
思ってるんですね。
自分がシステムを使わないから当事者意識が希薄なんです。
IT部門という独立した部署を持てる大企業で起こりがちな気もします。
酷いときには今期の予算は1000万円だけど発注は500万しかしてなかったなぁ・・・
(予算をある程度余らせるとそれはそれで怒られるらしいw)
と気づいたIT部門の人はSIerとこんな交渉もします。
IT部門 「大手SIerさんこの案件500万から800万に値上げしてもいいすよ」
大手SIer「ヽ(´▽`)ノワーイ喜んで!ではこの案件は800万で見積もりします♪」
なんてこともやってます。
こんな事をよく続けてられるなと最初は思いました。
普通は他社との競争原理が働き淘汰されていくようにも思えます。
でも、大手SIerと大企業、公共団体、銀行ってズブズブの関係だって知ってました?
見渡せば部長クラスの人は元顧客側のお偉いさんだったり、
今、顧客の立場として発注してるのは大手SIerから出向している人だったりw
結局みんな身内でお金を回してるんじゃないかと思うくらいですw
こんな感じで何十年も回してるから、
もう良いやって思ってるんです。
顧客側も今更内製とか顧客がプロジェクトに参加するなんてことはしないでしょう
IT部門の人からすれば自分は使わないのだから丸投げできる大手SIerの方が良いに決まってます。
「面倒だから」・「今までそうやってきたから」を変えるには本当に経営危機とかにならない
限り無理でしょう。
結局こんな感じでSIerは続いていきます。
大手SIerは人を手配し、誰も見ないような品質項目やExcel資料を作るのに必死になっています。
中堅SIerは、そこら辺の人をSEに見立てて大手SIerに売り飛ばすだけです。
プログラマーは何十にも中間搾取されているので雀の涙ほどの給料で働きます。
みな実際はユーザーの利便性をそこなう糞システムだと知らずに日々残業をします。
きっとこの状況はこの先もずっと変わらないんだろうな(;´ー`)
でも結局これってIT業界だけじゃなくてどこの業界も同じようなものじゃないでしょうか?
世の中なんてこんなものですよね
参考リンク
久々のSI業界
日本のIT業界の問題点
笑ってはいけないSIer
(ヤバイ理由は人月換算とか多重請負とかいろいろ言われてます)
でも結局のところこの先もSIerは生き残るよねっていうのが僕の見解。
もう何十年もこんな感じでやってきたから引くに引けないんですよ。
これは知人から聞いた話なんですが、ある大企業システムのIT部門の人は
本当にそのシステムを使っているユーザーから改善案を聞いて直すということを
しないらしいです。
仕様変更・機能追加はそのIT部門の上司の思いつきらしいですw
当然、普段から使っているユーザーの要望ではないので、どんどん使いにくくなってる
+いらない機能ばかり増えてるみたいですがw
で、こういう話って大企業とかだと結構ある話みたいです。
ユーザーが沢山いるシステムだと一人一人にヒアリングするのが面倒だし、
俺は(IT部門だから)そのシステム使わない。上司が言ったとおりの
仕様で発注出せばいいやーみたいに考えるのでしょう。
他に優秀なパッケージソフトがあっても買いません。
今まで、大手SIerに頼んでたんだから、今更、どこぞの中小企業と取引なんて
したくない。なぜなら稟議を通すときに説明を求められて面倒だからw
で糞システムをアホみたいな価格で買ってくるんです。
IT部門の人は会社の利益向上というよりも自分が面倒な思いをしなければいいやと
思ってるんですね。
自分がシステムを使わないから当事者意識が希薄なんです。
IT部門という独立した部署を持てる大企業で起こりがちな気もします。
酷いときには今期の予算は1000万円だけど発注は500万しかしてなかったなぁ・・・
(予算をある程度余らせるとそれはそれで怒られるらしいw)
と気づいたIT部門の人はSIerとこんな交渉もします。
IT部門 「大手SIerさんこの案件500万から800万に値上げしてもいいすよ」
大手SIer「ヽ(´▽`)ノワーイ喜んで!ではこの案件は800万で見積もりします♪」
なんてこともやってます。
こんな事をよく続けてられるなと最初は思いました。
普通は他社との競争原理が働き淘汰されていくようにも思えます。
でも、大手SIerと大企業、公共団体、銀行ってズブズブの関係だって知ってました?
見渡せば部長クラスの人は元顧客側のお偉いさんだったり、
今、顧客の立場として発注してるのは大手SIerから出向している人だったりw
結局みんな身内でお金を回してるんじゃないかと思うくらいですw
こんな感じで何十年も回してるから、
もう良いやって思ってるんです。
顧客側も今更内製とか顧客がプロジェクトに参加するなんてことはしないでしょう
IT部門の人からすれば自分は使わないのだから丸投げできる大手SIerの方が良いに決まってます。
「面倒だから」・「今までそうやってきたから」を変えるには本当に経営危機とかにならない
限り無理でしょう。
結局こんな感じでSIerは続いていきます。
大手SIerは人を手配し、誰も見ないような品質項目やExcel資料を作るのに必死になっています。
中堅SIerは、そこら辺の人をSEに見立てて大手SIerに売り飛ばすだけです。
プログラマーは何十にも中間搾取されているので雀の涙ほどの給料で働きます。
みな実際はユーザーの利便性をそこなう糞システムだと知らずに日々残業をします。
きっとこの状況はこの先もずっと変わらないんだろうな(;´ー`)
でも結局これってIT業界だけじゃなくてどこの業界も同じようなものじゃないでしょうか?
世の中なんてこんなものですよね
参考リンク
久々のSI業界
日本のIT業界の問題点
笑ってはいけないSIer
2011年12月19日月曜日
2011年12月4日日曜日
Googleのキーボードショートカット検索が終わってた
前に書いたキーボードショートカットサービスが終了していた
今はAccessible Viewというサービスになってるみたい
操作方法はキーボードショートカット時代と同じ
音が出るようになったみたいだけど・・・
使いたい人はお試しあれ
https://www.google.com/webhp?esrch=Axs
今はAccessible Viewというサービスになってるみたい
操作方法はキーボードショートカット時代と同じ
音が出るようになったみたいだけど・・・
使いたい人はお試しあれ
https://www.google.com/webhp?esrch=Axs
2011年11月6日日曜日
2011年11月4日金曜日
FXで使えるチャート
ここにいろいろあった
http://www.fxcm.co.jp/tools/chart.html
その中でも↓が使いやすかったかも
http://www.dailyfx.com/charts/netdaniachart/
http://www.fxcm.co.jp/tools/chart.html
その中でも↓が使いやすかったかも
http://www.dailyfx.com/charts/netdaniachart/
2011年10月30日日曜日
iotop日本語man
iotopを最近使ってたから日本語訳にしてみた
結構意訳になってる
IOTOP(1) IOTOP(1)
NAME
iotop - シンプルなIOモニター
SYNOPSIS
iotop [OPTIONS]
DESCRIPTION
iotopはLinuxカーネルからI/O使用情報を取得し(カーネル2.6.20以上を必要とします)、
プロセス・スレッド毎にI/O使用状況を表示します。
カーネルのビルドオプションに以下を含める必要があります。
CONFIG_TASK_DELAY_ACCT, CONFIG_TASK_IO_ACCOUNTING, CONFIG_TASKSTATS and CONFIG_VM_EVENT_COUNTERS
iotopはI/Oのプロセス/スレッドごとのI/O帯域を表示間隔毎に表示します。
また、プロセスがI/Oの処理によって待たせれている時間の割合も表示します。
各プロセスについてI/Oの優先度(クラス/レベル)が表示されます。
加えて、表示間隔の間に読み書きされた総I/O帯域は一番上に表示されます。
左矢印、右矢印キーを使うとソート項目を変更できます。rでソート順を逆転できます。
oで--onlyオプションの有効、無効を切り替えられます。(IOを使用しているプロセスだけを表示するかどうか)
pで--processesオプションの有効、無効を切り替えられます。(プロセスのみを表示してスレッドは表示しないかどうか)
aで--accumulatedオプションの有効、無効を切り替えられます。(IOの累積値表示に切り替えるかどうか)
qで終了します。
iでスレッド/プロセスの優先度を変更できます。
その他のキーを押すと最新の情報に更新できます。
OPTIONS
--version
バージョンを表示し終了します。
-h, --help
使用方法を表示し、終了します。
-o, --only
実際にI/Oを使用しているプロセス/スレッドのみを表示します。これはoを押すことで
表示中にも切り替えることができます。
-b, --batch
対話的な表示でなくなります。(バッチモード)これは状態を記録するときに便利です。
-n NUM, --iter=NUM
自動的に終了する時間を指定します。(デフォルトでは自動的に終了しません。)
これはバッチモードで役に立ちます。
-d SEC, --delay=SEC
表示間隔を設定します。(デフォルトは1秒) 1.1秒のような少数も指定可能です。
-p PID, --pid=PID
表示するプロセスIDを指定します。(デフォルトは全て表示します)
-u USER, --user=USER
表示するユーザーIDを指定します。(デフォルトは全て表示します)
-P, --processes
プロセスのみ表示します。通常は全てのスレッドを表示します。
-a, --accumulated
I/O帯域幅の代わりにI/Oの累積値を表示します。
iotopを実行してから、プロセスが使用したI/Oの量を示します。
-k, --kilobytes
人間が読みやすい表記の変わりにキロバイト表示にします。
このオプションはバッチモードの出力をスクリプトが処理するときに役立ちます。
通常は最適な単位を選択して表示しますが、このオプションが指定されると
常にキロバイト表示となります。
-t, --time
各出力行にタイムスタンプを加えます。(このオプションは--batchオプションを含みます)
タイムスタンプは行の先頭に置かれます。
-q, --quiet
ヘッダ行を取り除きます。(このオプションは--batchオプションを含みます)
このオプションはヘッダの非表示のレベルによって最高3回まで指定できます。
-q カラム行は最初に表示されるだけです
-qq カラム行は出力されません
-qqq I/Oの合計値も出力されません
SEE ALSO
ionice(1), top(1), vmstat(1)
AUTHOR
iotop was written by Guillaume Chazarain.
This manual page was started by Paul Wise for the Debian project
and is placed in the public domain.
April 2009 IOTOP(1)
結構意訳になってる
IOTOP(1) IOTOP(1)
NAME
iotop - シンプルなIOモニター
SYNOPSIS
iotop [OPTIONS]
DESCRIPTION
iotopはLinuxカーネルからI/O使用情報を取得し(カーネル2.6.20以上を必要とします)、
プロセス・スレッド毎にI/O使用状況を表示します。
カーネルのビルドオプションに以下を含める必要があります。
CONFIG_TASK_DELAY_ACCT, CONFIG_TASK_IO_ACCOUNTING, CONFIG_TASKSTATS and CONFIG_VM_EVENT_COUNTERS
iotopはI/Oのプロセス/スレッドごとのI/O帯域を表示間隔毎に表示します。
また、プロセスがI/Oの処理によって待たせれている時間の割合も表示します。
各プロセスについてI/Oの優先度(クラス/レベル)が表示されます。
加えて、表示間隔の間に読み書きされた総I/O帯域は一番上に表示されます。
左矢印、右矢印キーを使うとソート項目を変更できます。rでソート順を逆転できます。
oで--onlyオプションの有効、無効を切り替えられます。(IOを使用しているプロセスだけを表示するかどうか)
pで--processesオプションの有効、無効を切り替えられます。(プロセスのみを表示してスレッドは表示しないかどうか)
aで--accumulatedオプションの有効、無効を切り替えられます。(IOの累積値表示に切り替えるかどうか)
qで終了します。
iでスレッド/プロセスの優先度を変更できます。
その他のキーを押すと最新の情報に更新できます。
OPTIONS
--version
バージョンを表示し終了します。
-h, --help
使用方法を表示し、終了します。
-o, --only
実際にI/Oを使用しているプロセス/スレッドのみを表示します。これはoを押すことで
表示中にも切り替えることができます。
-b, --batch
対話的な表示でなくなります。(バッチモード)これは状態を記録するときに便利です。
-n NUM, --iter=NUM
自動的に終了する時間を指定します。(デフォルトでは自動的に終了しません。)
これはバッチモードで役に立ちます。
-d SEC, --delay=SEC
表示間隔を設定します。(デフォルトは1秒) 1.1秒のような少数も指定可能です。
-p PID, --pid=PID
表示するプロセスIDを指定します。(デフォルトは全て表示します)
-u USER, --user=USER
表示するユーザーIDを指定します。(デフォルトは全て表示します)
-P, --processes
プロセスのみ表示します。通常は全てのスレッドを表示します。
-a, --accumulated
I/O帯域幅の代わりにI/Oの累積値を表示します。
iotopを実行してから、プロセスが使用したI/Oの量を示します。
-k, --kilobytes
人間が読みやすい表記の変わりにキロバイト表示にします。
このオプションはバッチモードの出力をスクリプトが処理するときに役立ちます。
通常は最適な単位を選択して表示しますが、このオプションが指定されると
常にキロバイト表示となります。
-t, --time
各出力行にタイムスタンプを加えます。(このオプションは--batchオプションを含みます)
タイムスタンプは行の先頭に置かれます。
-q, --quiet
ヘッダ行を取り除きます。(このオプションは--batchオプションを含みます)
このオプションはヘッダの非表示のレベルによって最高3回まで指定できます。
-q カラム行は最初に表示されるだけです
-qq カラム行は出力されません
-qqq I/Oの合計値も出力されません
SEE ALSO
ionice(1), top(1), vmstat(1)
AUTHOR
iotop was written by Guillaume Chazarain.
This manual page was started by Paul Wise for the Debian project
and is placed in the public domain.
April 2009 IOTOP(1)
2011年10月11日火曜日
2011年9月25日日曜日
postfixでメールフィルタを設定
1.main.cfに以下を追加
2.master.cfに以下を追加
参考リンク
Postfix キューに入った後のコンテンツフィルタ
Postfix設定パラメータ
content_filter=filter:dummy
2.master.cfに以下を追加
filter unix - n n - - pipe flags=Rq user=hogeuser argv=/tmp/filter.pl $recipient※$recipientは受信者が引数に渡される
参考リンク
Postfix キューに入った後のコンテンツフィルタ
Postfix設定パラメータ
2011年8月27日土曜日
2011年8月21日日曜日
Linuxでスキャナを使うには
aptか何かでsaneとxsaneをインストール
sane-find-scannerで検索
/etc/sane.d/mustek_usb.confを編集
以下の行だけ有効化
option max_block_size 1024 usb 0x04b8 0x010a /dev/usb/scanner0
あとはrootでログインしてxsaneをメニューから選択すればできた
ちなみに試したのはEpsonのGT-8700
参考リンク
http://samidarehetima.blog9.fc2.com/blog-entry-8.html
検索した結果
2011年8月20日土曜日
2011年8月14日日曜日
WindowsでもMplayerを使う
Mplayerはオープンソースのメディアプレイヤー
公式サイトからDownloadと進んで
「MPlayer SVN Windows with SMPlayer GUI (recommended)」をえらんだ
最初に設定したのは以下の通り
Screenshotsの場所を変更
※これはファイル毎に再生ポジションを記憶してくれたりする
設定ファイルはC:\Documents and Settings\hoge\.smplayerにある
Instancesタブで一つのウィンドウしか開かないようにした
あと注意しなければならないことは
マルチディスプレイだと左のウィンドウに移動したときに
Video→Screenをえらんでディスプレイ先を切り替えること
公式サイトからDownloadと進んで
「MPlayer SVN Windows with SMPlayer GUI (recommended)」をえらんだ
最初に設定したのは以下の通り
General
Media Settingで「Remember Settings for all files」を外したScreenshotsの場所を変更
※これはファイル毎に再生ポジションを記憶してくれたりする
設定ファイルはC:\Documents and Settings\hoge\.smplayerにある
Interface
Recent filesを20に変更Instancesタブで一つのウィンドウしか開かないようにした
File types
関連付けする拡張子にチェックあと注意しなければならないことは
マルチディスプレイだと左のウィンドウに移動したときに
Video→Screenをえらんでディスプレイ先を切り替えること
2011年8月13日土曜日
lighttpdでバーチャルホスト設定
lighttpd.confを少しいじるだけで出来た
以下のように設定した
hogehoge.netのホスト(HTTP_HOST)またはプライベートIPで指定してきたら
/var/wwwを見せる
それ以外なら/var/www2を見せる
という制御にした
今回はドキュメントルート以外は全部同じ設定にしてあるので、conf-enabled/05-auth.confとかも同じ設定になるので注意
以下のように設定した
hogehoge.netのホスト(HTTP_HOST)またはプライベートIPで指定してきたら
/var/wwwを見せる
それ以外なら/var/www2を見せる
という制御にした
server.document-root = "/var/www2" $HTTP["host"] == "hogehoge.net" { server.document-root = "/var/www" } else $HTTP["host"] == "192.168.0.4" { server.document-root = "/var/www" }
今回はドキュメントルート以外は全部同じ設定にしてあるので、conf-enabled/05-auth.confとかも同じ設定になるので注意
2011年8月12日金曜日
sudoku(数独)の日本語man
Linux用のsudokuゲームの日本語manです
sudoku [options] ... [<filename>]
(問題を作成)
sudoku -g [<num>] [options] ...
(問題を解く)
sudoku -v [options] ...
(難易度を計算)
sudoku -s [options] ...
9 blocks of 3x3 squares. The objective is to fill the empty squares with the
digits 1-9, so that each row, column, and block contains each of the digits 1-9
(and hence, it is not possible for any digit to appear twice in the same row,
column or block).
ゲームを開始すると使用できるキー入力の説明と共に中央に問題が表示されます。
カーソルは矢印キーかviのキーバインドで動かすことが出来ます。
正方形のマスに(最初から数値が入っているマスを除き)対応する数値を
入力します。0か.キーを入力すると消すことが出来ます。
すでに用意された問題ファイルから表示されます。
-nコマンドが渡された場合はすでに用意されている問題ファイルからのみ表示します。
まずcキーを押して問題をクリアし、初期値を入力します。
その後、fキーを押すことで問題を固定できます。
固定した値は変更できなくなります。
それは次に入力できるマスの領域をハイライトします。
繰り返しヒントを使用すると入力すべき値まで教えてくれます。
たまにヒントが不可解な場合があります。例えば以下のように
ヒントは「3の数字を試して下さい」と表示しますが、
この3という数字がどのマスに入るかは明白ではありません。
指定された難易度の問題が作成します。
指定できる難易度は"very easy", "easy", "medium", "hard", "fiendish"です
-d
問題を解くまでの入力方法を示します。必ず-vオプションと共に使用してください。
-f<format>
問題を保存する時の出力形式を指定します。サポートされている形式は以下の通り:
standard デフォルトのフォーマット;省略形std
compact 小さなテキストフォーマット
csv CSV出力, スプレッドシートなどでインポートする場合に適しています。
postscriptps はショートカットです。
html シンプルなHTML出力です。
-g[<num>]
<num>で指定された数だけ問題を作成します。(指定がなければ1問)問題は標準出力に出力されます。
-n
ランダムに問題を作成しません。このオプションを使用する場合問題ファイルを指定する必要があります。
-r
途中でのセーブを認めない制限されたモードで起動します。
-s
指定される問題ファイルの難易度を計算します。-vオプションと共に使用することが出来ます。
-t<filename>
デフォルトで使用するテンプレートファイルの変わりにオプションでしていした<filename>ファイルが使用されます。
-v
問題ファイルを解いた状態で標準出力に出力します。
<filename>
問題ファイル名を指定します。
Template file for generating new sudoku boards.
/usr/share/sudoku/precanned
Optional file, containing `precanned' sudoku boards.
The template file contains a sequence of patterns that are used for generating new sudoku boards. Each pattern is started by a line with a leading
`%' character, and consists of 9 lines of 9 characters. The character `.' represents a square that is initially blank, and the character `*' rep‐
resents a square with a digit that is initially displayed.
ゲーム盤の表現を含むところが違います。
それぞれのゲーム盤(問題)は%を含む文字と共に始まります。%の後には
その問題のタイトルが書かれています。
その後に9x9の文字が書かれています。
"."が空の値、"1-9"までの値がその問題で最初から与えられている値です。
sudokuプログラムはこのフォーマットの問題ファイルを読むことができます。
-fcompactオプションを指定すれば保存時にこのフォーマットで出力されます。
ブロックを区切る文字が付加されています。
sudokuプログラムはこの形式で保存された問題ファイルを読むことが出来ます。
また、-fオプションを指定しない場合はデフォルトでこの形式を使い出力します。
それは9行のカンマで区切られたファイルです。
それぞれ、ブランクか数字が入っています。
sudokuプログラムはこのファイルを読み込むことが出来ません。
-fcsvオプションを指定した場合に出力できます。
standardフォーマットやcompact textフォーマットとは異なり
各問題を区切る行がないため、実際保存できる問題数は1問だけです。
sudokuプログラムはこのフォーマットを読み込むことは出来ません。
-fpostscriptオプションを指定した場合、このフォーマットで出力します。
standardフォーマットやcompact textフォーマットとは異なり複数の問題を
ひとつのファイルに保存できません。
sudokuプログラムはこのフォーマットを読み込むことは出来ません。
--fhtmlオプションを指定した場合、このフォーマットで出力します。
standardフォーマットやcompact textフォーマットとは異なり複数の問題を
ひとつのファイルに保存できません。
game boards that can be challenging to solve, and others provide strategies for finding moves.
any purpose whatsoever, however NO WARRANTY, of any sort, applies to this work.
NAME
sudoku - 数独ゲームSYNOPSIS
(ゲームを始める)sudoku [options] ... [<filename>]
(問題を作成)
sudoku -g [<num>] [options] ...
(問題を解く)
sudoku -v [options] ...
(難易度を計算)
sudoku -s [options] ...
DESCRIPTION
The sudoku board game is played on a 9x9 grid, divided into rows, columns, and9 blocks of 3x3 squares. The objective is to fill the empty squares with the
digits 1-9, so that each row, column, and block contains each of the digits 1-9
(and hence, it is not possible for any digit to appear twice in the same row,
column or block).
GAME INTERFACE
数独は、単純なテキスト・インターフェース(curses(3) ライブラリを使用)です。ゲームを開始すると使用できるキー入力の説明と共に中央に問題が表示されます。
カーソルは矢印キーかviのキーバインドで動かすことが出来ます。
正方形のマスに(最初から数値が入っているマスを除き)対応する数値を
入力します。0か.キーを入力すると消すことが出来ます。
Generating a New Board
新しい問題はnキーを押すことで表示できます。新しい問題はランダムに生成されたものかすでに用意された問題ファイルから表示されます。
-nコマンドが渡された場合はすでに用意されている問題ファイルからのみ表示します。
Entering a Custom Board
独自の問題を解くことも出来ます。(例えばインターネットや新聞で見つけた問題)まずcキーを押して問題をクリアし、初期値を入力します。
その後、fキーを押すことで問題を固定できます。
固定した値は変更できなくなります。
Hints
このプログラムでは問題を解くための支援をするヒント機能が存在します。それは次に入力できるマスの領域をハイライトします。
繰り返しヒントを使用すると入力すべき値まで教えてくれます。
たまにヒントが不可解な場合があります。例えば以下のように
v v v . . 7 | . . 9 | . . . 9 . 6 | 7 4 . | . 1 5 . . 2 | 5 1 . | . . . -------+-------+------- > 6 . 5 | . 7 . | . . 8 < ><v^の文字で示されるエリアがヒントです。 > . 7 . | . . . | . 3 . < > 8 . . | . . . | 7 . 6 < -------+-------+------- . . . | . 6 7 | 8 . . 7 4 . | . 5 . | 9 6 2 . 6 . | 4 . . | . . . ^ ^ ^
ヒントは「3の数字を試して下さい」と表示しますが、
この3という数字がどのマスに入るかは明白ではありません。
OPTIONS
-c<class>指定された難易度の問題が作成します。
指定できる難易度は"very easy", "easy", "medium", "hard", "fiendish"です
-d
問題を解くまでの入力方法を示します。必ず-vオプションと共に使用してください。
-f<format>
問題を保存する時の出力形式を指定します。サポートされている形式は以下の通り:
standard デフォルトのフォーマット;省略形std
compact 小さなテキストフォーマット
csv CSV出力, スプレッドシートなどでインポートする場合に適しています。
postscriptps はショートカットです。
html シンプルなHTML出力です。
-g[<num>]
<num>で指定された数だけ問題を作成します。(指定がなければ1問)問題は標準出力に出力されます。
-n
ランダムに問題を作成しません。このオプションを使用する場合問題ファイルを指定する必要があります。
-r
途中でのセーブを認めない制限されたモードで起動します。
-s
指定される問題ファイルの難易度を計算します。-vオプションと共に使用することが出来ます。
-t<filename>
デフォルトで使用するテンプレートファイルの変わりにオプションでしていした<filename>ファイルが使用されます。
-v
問題ファイルを解いた状態で標準出力に出力します。
<filename>
問題ファイル名を指定します。
ENVIRONMENT
このプログラムは環境変数を使用しません。FILES
/usr/share/sudoku/templateTemplate file for generating new sudoku boards.
/usr/share/sudoku/precanned
Optional file, containing `precanned' sudoku boards.
FILE FORMATS
/usr/share/sudoku/templateThe template file contains a sequence of patterns that are used for generating new sudoku boards. Each pattern is started by a line with a leading
`%' character, and consists of 9 lines of 9 characters. The character `.' represents a square that is initially blank, and the character `*' rep‐
resents a square with a digit that is initially displayed.
Compact text フォーマット
このフォーマットはテンプレートファイルのフォーマットと似ていますが、ゲーム盤の表現を含むところが違います。
それぞれのゲーム盤(問題)は%を含む文字と共に始まります。%の後には
その問題のタイトルが書かれています。
その後に9x9の文字が書かれています。
"."が空の値、"1-9"までの値がその問題で最初から与えられている値です。
sudokuプログラムはこのフォーマットの問題ファイルを読むことができます。
-fcompactオプションを指定すれば保存時にこのフォーマットで出力されます。
Standard text フォーマット
このフォーマットは小さなテキストフォーマットに似ていますが、ブロックを区切る文字が付加されています。
sudokuプログラムはこの形式で保存された問題ファイルを読むことが出来ます。
また、-fオプションを指定しない場合はデフォルトでこの形式を使い出力します。
CSVフォーマット
このフォーマットはスプレッドシートにインポートするときに役立ちます。それは9行のカンマで区切られたファイルです。
それぞれ、ブランクか数字が入っています。
sudokuプログラムはこのファイルを読み込むことが出来ません。
-fcsvオプションを指定した場合に出力できます。
standardフォーマットやcompact textフォーマットとは異なり
各問題を区切る行がないため、実際保存できる問題数は1問だけです。
Postscript フォーマット
このフォーマットは、問題ファイルを印刷する時に役立ちます。sudokuプログラムはこのフォーマットを読み込むことは出来ません。
-fpostscriptオプションを指定した場合、このフォーマットで出力します。
standardフォーマットやcompact textフォーマットとは異なり複数の問題を
ひとつのファイルに保存できません。
HTML フォーマット
このフォーマットは、問題ファイルを印刷する時に役立ちます。sudokuプログラムはこのフォーマットを読み込むことは出来ません。
--fhtmlオプションを指定した場合、このフォーマットで出力します。
standardフォーマットやcompact textフォーマットとは異なり複数の問題を
ひとつのファイルに保存できません。
SEE ALSO
There are a large number of websites dedicated to the sudoku puzzle that can be found easily using a search engine. Some of these sites providegame boards that can be challenging to solve, and others provide strategies for finding moves.
DIAGNOSTICS
There are limited diagnostics available when an error occurs.COPYRIGHT
This manual page, and all associated files, have been placed into the public domain by Michael Kennett, July 2005. They may be used by anybody forany purpose whatsoever, however NO WARRANTY, of any sort, applies to this work.
/etc/init.dに作った起動スクリプトのリンク設定とか
起動時、終了時等のランレベルが変更されたときに走るスクリプトは/etc/init.dに
格納するが、rc0.d/~rc6.d/のディレクトリにリンクを張る必要がある
昔は手動でやっていたが、今は決まった書式でコメントを書いておけば自動的にアップデートしてくれるらしい
update-rc.dというコマンドで行える
ヘッダさえちゃんと書けばinsservというコマンドを打つだけで全スクリプトのリンクが張られる
詳しくは/etc/init.d/READMEを見れば分かる
関連記事
init.d/とか各ランレベルごとの起動スクリプトについて
rep2をオンメモリーにして高速化2
格納するが、rc0.d/~rc6.d/のディレクトリにリンクを張る必要がある
昔は手動でやっていたが、今は決まった書式でコメントを書いておけば自動的にアップデートしてくれるらしい
update-rc.dというコマンドで行える
ヘッダさえちゃんと書けばinsservというコマンドを打つだけで全スクリプトのリンクが張られる
詳しくは/etc/init.d/READMEを見れば分かる
関連記事
init.d/とか各ランレベルごとの起動スクリプトについて
rep2をオンメモリーにして高速化2
2011年8月11日木曜日
KDMの設定をGUIで行う
今まで:kcontrol
これから:systemsettings
だそうです
参照
なのでsystemsettingsをインストールしたらそこから設定してみよう
Advancedタブ→LoginManagerで設定できる
日本語がいいならついでにkde-l10n-jaを入れておくと良いかも
これから:systemsettings
だそうです
参照
なのでsystemsettingsをインストールしたらそこから設定してみよう
Advancedタブ→LoginManagerで設定できる
日本語がいいならついでにkde-l10n-jaを入れておくと良いかも
LinuxでHDDの使用率を調べるには?
HDDの各フォルダの使用量を調べる方法について調べた
duコマンドで計ってもいいけど
Baobabってコマンドでもいいかも
参考リンク
ハードディスク使用率をグラフィカルに表示するには
ディレクトリやディスクの使用量を調べるには
duコマンドで計ってもいいけど
Baobabってコマンドでもいいかも
参考リンク
ハードディスク使用率をグラフィカルに表示するには
ディレクトリやディスクの使用量を調べるには
2011年7月16日土曜日
FF12攻略まとめ
まとめWiki
Final Fantasy XII WIKI
FF12攻略情報-ZAPAnet
武器・防具について
武器の特徴
武器・防具の入手方法
防具リスト
武器リスト
ライセンス
ライセンスボードの位置
技・魔法
技・魔法入手場所
サブイベント
Final Fantasy XII WIKI
FF12攻略情報-ZAPAnet
武器・防具について
武器の特徴
武器・防具の入手方法
防具リスト
武器リスト
ライセンス
ライセンスボードの位置
技・魔法
技・魔法入手場所
サブイベント
2011年7月14日木曜日
wineで入れたソフトのアンインストールについて
ここに書いてあった
以下のコマンドで出来るらしい
その他にregeditというコマンドでレジストリも編集できるらしい
まあなにかおかしくなったら~/.wineを削除すればOKだろう
参考リンク
http://linux.ikoinoba.net/index.php?mode=page&aim=wine
以下のコマンドで出来るらしい
uninstaller
その他にregeditというコマンドでレジストリも編集できるらしい
まあなにかおかしくなったら~/.wineを削除すればOKだろう
参考リンク
http://linux.ikoinoba.net/index.php?mode=page&aim=wine
2011年7月13日水曜日
オープンソースの音楽再生ソフト「subsonic」を使ってみる
SubsonicはWebベースの音楽再生ソフトでサーバーにある音楽をitunesの様に管理・再生できるソフトみたい
インストールは驚くほど簡単だった
Debian Squeeze
1.Subsonic動作に必要なファイルをインストールしておく
↓あたりをaptとかでインストールしておく(詳しくはこちら)
2.ダウンロードしたSubsonicをインストール
3.ブラウザでアクセスして設定
http://localhost:4040/にアクセス(もしくは違う端末からIPアドレス指定でもOK)して
設定する。
まずは日本語にするにはSetting→General→Languageを日本語にすればOK
あとはadminのパスワードと必要なアカウントの作成、音楽フォルダの指定、必要ならネットワーク設定を行えば使えるようになる
※注
以下の機能はSubsonicプロジェクトに寄付しないと継続して使用できません
参考リンク
http://d.hatena.ne.jp/Molokheiya/20110628/p1
関連ソフト
gnump3d
Ampache
AudioGalaxy
インストールは驚くほど簡単だった
Debian Squeeze
1.Subsonic動作に必要なファイルをインストールしておく
↓あたりをaptとかでインストールしておく(詳しくはこちら)
openjdk-6-jre flac faad vorbis-tools ffmpeg
2.ダウンロードしたSubsonicをインストール
dpkg -i subsonic-x.x.deb
3.ブラウザでアクセスして設定
http://localhost:4040/にアクセス(もしくは違う端末からIPアドレス指定でもOK)して
設定する。
まずは日本語にするにはSetting→General→Languageを日本語にすればOK
あとはadminのパスワードと必要なアカウントの作成、音楽フォルダの指定、必要ならネットワーク設定を行えば使えるようになる
※注
以下の機能はSubsonicプロジェクトに寄付しないと継続して使用できません
- Android、iPhoneやWindows Phone 7のへのストリームの音楽配信
- ビデオストリーミング
- subsonic.orgのDNSサービス
- Webインターフェイスで広告が表示されない
参考リンク
http://d.hatena.ne.jp/Molokheiya/20110628/p1
関連ソフト
gnump3d
Ampache
AudioGalaxy
2011年7月1日金曜日
弾を光らせて軌跡を作り見やすくする曳光弾
曳光弾というらしい
これにより弾の軌道が分かるんだと・・・
参考リンク
http://karapaia.livedoor.biz/archives/51767062.html
http://www.nicovideo.jp/watch/sm14657423
これにより弾の軌道が分かるんだと・・・
参考リンク
http://karapaia.livedoor.biz/archives/51767062.html
http://www.nicovideo.jp/watch/sm14657423
2011年6月6日月曜日
シンプルで軽量なブラウザsurf
Debianのsidならパッケージがあったのでこんな感じでリポジトリを設定
-iオプションで画像を無効化、-pでFLASH等のプラグインを無効化、-sでJavaScript無効化とか出来るので
重いサイトを見るときには重宝しそう
ただ、レンダリングはChromeの方が早い気がする
似ている名前でsurfrawというのがあるけどこれはWebから指定した単語の検索結果をブラウザに渡してくれるソフトらしい
こんな感じで書くとgoogleでdebianを検索した結果がブラウザに渡される
-iオプションで画像を無効化、-pでFLASH等のプラグインを無効化、-sでJavaScript無効化とか出来るので
重いサイトを見るときには重宝しそう
ただ、レンダリングはChromeの方が早い気がする
似ている名前でsurfrawというのがあるけどこれはWebから指定した単語の検索結果をブラウザに渡してくれるソフトらしい
こんな感じで書くとgoogleでdebianを検索した結果がブラウザに渡される
surfraw google debian
2011年6月5日日曜日
2011年5月30日月曜日
2011年5月29日日曜日
モンロー/ノイマン効果とは
円形に配置した爆発物が爆発すると中央部にエネルギーが集中してどうたらこうたら・・・
魔法少女まどか☆マギカの11話参考とのこと
参考リンク
ほむほむ11話戦闘シーン
モンロー/ノイマン効果(Wikipedia)
魔法少女まどか☆マギカの11話参考とのこと
参考リンク
ほむほむ11話戦闘シーン
モンロー/ノイマン効果(Wikipedia)
2011年5月24日火曜日
top系のコマンドをまとめてみる(システムモニタリングツール)
システムモニタリング
top標準インストール?の基本的なモニタリングソフト
htop
もっとユーザフレンドリーなUIになって見やすくなったtop
iotop
IOに着目して負荷を見るためのtop
atop
アクティブなプロセスのみを表示、前表示と差分があったものを表示するtop
ネットワークモニタリング
apachetopapacheのログからアクセスをリアルタイムに解析してくれる
lighttpdのログでも使えた
iftop
インターフェイスごとにトラフィックを計測
nethogs
アプリ毎にトラフィックを測定
dnstop
DNSのトラフィックを表示
jnettop
ホストとポート毎にトラフィックを表示
sntop
接続を検地するtop
参考リンク
http://phpspot.org/blog/archives/2010/12/top.html
http://journal.mycom.co.jp/news/2009/09/07/005/index.html
pam-auth-updateで認証方式の変更
DTIのVPSの認証方式がKerberosになってたからコマンド打って再設定した
/etc/pam.d/common-password
を見るとよいかも
/etc/pam.d/common-password
を見るとよいかも
2011年5月22日日曜日
Linuxの面白そうなゲーム
全てaptでインストールできる
sudoku -> コンソールでできる数独
xshogi -> 将棋ゲーム 軽くて良い感じ
kraptor -> シューティングゲーム
ltris -> 軽いテトリス
netris -> コンソール版のテトリス
viruskiller -> シューティングゲーム?(動作せず)
xblast -> ボンバーマンのクローン
flobopuyo -> ぷよぷよのクローン
xfireworks -> デスクトップに花火が出る
xfishtank -> デスクトップが水族館みたいになる
xpenguins -> デスクトップにペンギンが出る
xsol -> ただのソリティア
参考リンク
http://www10.atwiki.jp/gleaning/pages/32.html
http://penguin.tantin.jp/mori/category.html#af0d8275
sudoku -> コンソールでできる数独
xshogi -> 将棋ゲーム 軽くて良い感じ
kraptor -> シューティングゲーム
ltris -> 軽いテトリス
netris -> コンソール版のテトリス
viruskiller -> シューティングゲーム?(動作せず)
xblast -> ボンバーマンのクローン
flobopuyo -> ぷよぷよのクローン
xfireworks -> デスクトップに花火が出る
xfishtank -> デスクトップが水族館みたいになる
xpenguins -> デスクトップにペンギンが出る
xsol -> ただのソリティア
参考リンク
http://www10.atwiki.jp/gleaning/pages/32.html
http://penguin.tantin.jp/mori/category.html#af0d8275
perlで日付文字を解析するのに便利なモジュール
Date::Parse というらしいとても便利
#!/usr/bin/perl use Date::Parse; $unix_time=str2time ("May 15 01:19:02","JST"); print $unix_time;
2011年5月15日日曜日
パイプ処理の進行状況を教えてくれるコマンドpv
パイプビュー というpv コマンドらしい
どうやらpvはcatみたいな効果があるみたい
こうやって2つのパイプの間に挟むのも手
http://d.hatena.ne.jp/dharry/20110210/1297268423
http://yebo-blog.blogspot.com/2009/02/pipe-viewer.html
どうやらpvはcatみたいな効果があるみたい
pv rss.log* | gzip -c > /tmp/hoge.gz
こうやって2つのパイプの間に挟むのも手
cat rss.log* |pv | gzip -c > /tmp/hoge.gz参考リンク
http://d.hatena.ne.jp/dharry/20110210/1297268423
http://yebo-blog.blogspot.com/2009/02/pipe-viewer.html
2011年5月14日土曜日
WindowsXPの自動起動(オートラン)機能を無効化する
レジストリを以下のようにすればOKらしい
先日、友人からもらったUSB見たら6bi8wr29.exeというウィルスがUSBドライブの直下にあったからこれやっといてよかった危ない危ない・・・
参考リンク
http://www.mnet.ne.jp/~angie/kbase/xp-autorun.html
http://yonyon-blog.net/youmei/2008/05/27/cddvd%E3%82%84usb%E3%83%A1%E3%83%A2%E3%83%AA%E3%81%AE%E8%87%AA%E5%8B%95%E5%AE%9F%E8%A1%8C%E3%82%92%E7%84%A1%E5%8A%B9%E3%81%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer] "NoDriveTypeAutoRun"=dword:000000b5
先日、友人からもらったUSB見たら6bi8wr29.exeというウィルスがUSBドライブの直下にあったからこれやっといてよかった危ない危ない・・・
参考リンク
http://www.mnet.ne.jp/~angie/kbase/xp-autorun.html
http://yonyon-blog.net/youmei/2008/05/27/cddvd%E3%82%84usb%E3%83%A1%E3%83%A2%E3%83%AA%E3%81%AE%E8%87%AA%E5%8B%95%E5%AE%9F%E8%A1%8C%E3%82%92%E7%84%A1%E5%8A%B9%E3%81%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/
2011年5月11日水曜日
ハッシュ解析の常套手段レインボーテーブル
レインボーテーブルとはあらかじめ作っておいたハッシュテーブルと平分の対応表を照らし合わせ、平分を得るテクニックらしいです。
チェインと呼ばれる単位に集約されているので、テーブルの容量が少なくてすむ利点があります。
ソフトはここら辺からどうぞ
http://project-rainbowcrack.com/index.htm
参考リンク
http://backslash.ddo.jp/wordpress/index.php/archives/584
チェインと呼ばれる単位に集約されているので、テーブルの容量が少なくてすむ利点があります。
ソフトはここら辺からどうぞ
http://project-rainbowcrack.com/index.htm
参考リンク
http://backslash.ddo.jp/wordpress/index.php/archives/584
2011年5月10日火曜日
LANの盗聴について
昔、調べたことがあったのでメモ
有線LANの盗聴にはいくつか種類があって調べた限りだと以下の方法がある
以下の方法の殆どを行えるソフトはettercapがあるman ettercapとやるだけで勉強になる
→MAC Floodはdsniffの中にあるmacofを使うと良いかも
ARP Spoofingについてはこちらが参考になる
参考リンク
LAN内の盗聴とその予防
スプーフィング
MACアドレス書き換えで通信傍受!
ARPスプーフィングで通信傍受!
有線LANの盗聴にはいくつか種類があって調べた限りだと以下の方法がある
以下の方法の殆どを行えるソフトはettercapがあるman ettercapとやるだけで勉強になる
→MAC Floodはdsniffの中にあるmacofを使うと良いかも
- ARP Spoofing
- ICMP Redirect
- DHCP Spoofing
- Port Stealing
- MAC Flood
APR Spoofing
偽のARP応答を返すことでARPテーブルを変更し中間者攻撃を行う手法ARP Spoofingについてはこちらが参考になる
ICMP Redirect
ICMPリダイレクトを使って経路情報を書き換えDHCP Spoofing
DHCPを使ってIPアドレスを振るときにGWを盗聴できるように変更Port Stealing
L2スイッチのポート情報を書き換えることでパケットをこちらに流すようにするMAC Flood
L2スイッチのMACテーブルを溢れさせて馬鹿ハブにして盗聴する荒業参考リンク
LAN内の盗聴とその予防
スプーフィング
MACアドレス書き換えで通信傍受!
ARPスプーフィングで通信傍受!
X Window Systemでスクリーンショットを取る
以下のコマンドで出来るらしい
対象をウィンドウだけを取るなら以下のコマンド
コマンドを打ってから対象をクリックでOK
全体を取るには以下のコマンド
これは打った瞬間に取られる
参考リンク
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/861minsysps.html
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/010prtsc.html
対象をウィンドウだけを取るなら以下のコマンド
コマンドを打ってから対象をクリックでOK
xwd -frame -out 001.xwd
全体を取るには以下のコマンド
これは打った瞬間に取られる
xwd -root -out 002.xwd
参考リンク
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/861minsysps.html
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/010prtsc.html
インプットメソッドibusを試す
aptで以下をインストール
インストールしたら
dwmだとツールバーが無いので以下のように設定
参考リンク
http://glandium.org/blog/?p=989
ibus ibus-anthy ibus-gtk ibus-qt4 kasumi im-switch
インストールしたら
im-switch -s ibusで切り替え
ibus-setupでセットアップ
dwmだとツールバーが無いので以下のように設定
参考リンク
http://glandium.org/blog/?p=989
Xセッションからログアウトしたときにスクリプトを実行する
ログアウトの制御は使用しているディスプレイマネージャに依存するみたいです。
Gnomeなら/etc/gdm/PostSession/Default
XDMなら/etc/X11/xdm/Xreset
KDEなら/etc/kde4/kdm/Xreset
WDMなら/etc/X11/wdm/Xreset(ディスプレイ毎に設定なら/etc/X11/wdm/Xreset_0等)
らしい
kdmからなら/etc/kde4/kdm/Xreset→/etc/X11/Xreset→/etc/X11/Xreset.d
と呼ばれているのが分かったので/etc/X11/Xreset.dにスクリプトを置けばOKみたい
あと環境変数$USERでログアウト対象のユーザー名を取得できるらしい
参考リンク
http://superuser.com/questions/65460/create-a-logoff-script-task-for-linux
http://haraita9283.blog98.fc2.com/blog-entry-406.html
Gnomeなら/etc/gdm/PostSession/Default
XDMなら/etc/X11/xdm/Xreset
KDEなら/etc/kde4/kdm/Xreset
WDMなら/etc/X11/wdm/Xreset(ディスプレイ毎に設定なら/etc/X11/wdm/Xreset_0等)
らしい
kdmからなら/etc/kde4/kdm/Xreset→/etc/X11/Xreset→/etc/X11/Xreset.d
と呼ばれているのが分かったので/etc/X11/Xreset.dにスクリプトを置けばOKみたい
あと環境変数$USERでログアウト対象のユーザー名を取得できるらしい
参考リンク
http://superuser.com/questions/65460/create-a-logoff-script-task-for-linux
http://haraita9283.blog98.fc2.com/blog-entry-406.html
2011年5月8日日曜日
xsessionrcのプロセス制御
前回、前々回でwhileでループさせた後xsessionで壁紙やらステータスバーを変更してたけど、それだといろいろと不具合があることが分かったので修正する。
修正後のxsessionrcは以下のようになった
まず不具合の原因はwhileループがXをログオフしても生き続けること
下図参考このように30sの間にログオフ→ログインが行われると2つのプロセスが実行されてしまう
それを防ぐためにwhileのwhileのプロセスを記録しておく
このときディスプレイ番号も記録し他のXセッションも切らないようにする
pstreeでみるとこんな感じ
こうしておけば次にログインするときにWhileプロセスを殺してくれる。whileプロセスが無いので時間が経てば消えるので良しとした
ちなみにこの方法は再起動した時でも前回のプロセス番号をkillしようとするので完全ではない。
たまたま、同じプロセス番号+Xsessionコマンドで実行されていれば間違えてしまう可能性がある
過去記事
Dwmのステータスバーと壁紙を変更してみる
Linuxでランダムに壁紙を変更するスクリプト書いた
修正後のxsessionrcは以下のようになった
#!/bin/bash #xsetroot -solid DarkSlateBlue #hsetroot -full /usr/share/lxde/wallpapers/garasunodice.jpg D_NUM=`echo $DISPLAY | cut -f 2 -d:` PIDFILE=~/.xsession_${D_NUM}.pid for psnum in $(cat $PIDFILE) do cmd=`ps -p $psnum | tail -1 ` if echo $cmd | grep Xsession > /dev/null ; then kill $psnum fi done rm -f $PIDFILE while true do DATE=`date +"%Y/%m/%d %H:%M"` LOAD=`loadav.pl` xsetroot -name "Load Average:$LOAD $DATE" || exit sleep 30s || exit done & echo $! >> $PIDFILE while true do /usr/local/bin/random_wallpaper.pl /jitaku/local/pic/Linux_wallpaper/ || exit sleep 30m || exit done & echo $! >> $PIDFILE
まず不具合の原因はwhileループがXをログオフしても生き続けること
下図参考このように30sの間にログオフ→ログインが行われると2つのプロセスが実行されてしまう
それを防ぐためにwhileのwhileのプロセスを記録しておく
このときディスプレイ番号も記録し他のXセッションも切らないようにする
pstreeでみるとこんな感じ
こうしておけば次にログインするときにWhileプロセスを殺してくれる。whileプロセスが無いので時間が経てば消えるので良しとした
ちなみにこの方法は再起動した時でも前回のプロセス番号をkillしようとするので完全ではない。
たまたま、同じプロセス番号+Xsessionコマンドで実行されていれば間違えてしまう可能性がある
過去記事
Dwmのステータスバーと壁紙を変更してみる
Linuxでランダムに壁紙を変更するスクリプト書いた
Linuxでランダムに壁紙を変更するスクリプト書いた
いろいろソフトとかあるみたいだけどスクリプトでやってみる
.xsessionrcに書いておけばOK
参考リンク
ペンギンの杜 〜 Linux ソフト集 〜アミューズメント/壁紙
美女LinuxをUbuntu(GNOME)の壁紙にする
参考記事
xsessionrcのプロセス制御
#!/usr/bin/perl use strict; use warnings; ################################## # ランダムに壁紙を変更するスクリプト ################################## my $WALLPAPER_DIR=shift; ################################## chdir $WALLPAPER_DIR or die $!; my @pic_lst=(<*.jpg>,<*.png>); my $random_num=int rand(scalar @pic_lst); system "hsetroot -full $pic_lst[$random_num]" and die $!;このスクリプトをrandom_wallpaper.plとして保存した
.xsessionrcに書いておけばOK
while true do /usr/local/bin/random_wallpaper.pl /jitaku/local/pic/Linux_wallpaper/ || exit sleep 30m done &
参考リンク
ペンギンの杜 〜 Linux ソフト集 〜アミューズメント/壁紙
美女LinuxをUbuntu(GNOME)の壁紙にする
参考記事
xsessionrcのプロセス制御
2011年5月7日土曜日
bashrcに書いておくと便利な行
#キーバインド set -o #キーバインドをviに stty stop undef #端末ロックをやめる bind C-f:menu-complete #Ctrl-fでメニューコンプリート bind C-l:clear-screen #Ctrl-lで端末のクリア #エイリアス alias bc='bc -q' #bc の最初のメッセージがうるさいので alias mv='mv -i' #お好みでrootのbashrcには必要? alias rm='rm -i' #お好みでrootのbashrcには必要?
注意点はset -o viの前にbindでキーバインドを設定しても無効になってしまうこと
必ずset -o viした後にbindを書くこと
過去記事
bashでCtrl-S押すと端末がロックされる
bashで端末ロック機能を解除する
bashでTAB補完する(menu-complete)
2011年5月1日日曜日
タスク切り替えソフトを選ぶ
使いやすい+早いと思ったのは
ufsかなぁ
ctclもなかなか良い感じだけど
切替の早さはufsかなぁ・・・
参考リンク
http://d.hatena.ne.jp/ampll/20090602/1243924925
ufsかなぁ
ctclもなかなか良い感じだけど
切替の早さはufsかなぁ・・・
参考リンク
http://d.hatena.ne.jp/ampll/20090602/1243924925
Xmingを試してみる
2011年4月30日土曜日
ddclientでキャッシュが邪魔して更新されない件
どうやらキャッシュを参照して前回と同じIPなら更新しない仕様みたい
更新日が30日以上の間隔が空いてるなら更新するみたいだけど、待ってられないので
こんなスクリプトをcronに登録しておいた
過去記事
ddclientでワーニングが出る問題
ddclientでDynDNSのIPをアップデートしてみようか
更新日が30日以上の間隔が空いてるなら更新するみたいだけど、待ってられないので
こんなスクリプトをcronに登録しておいた
#!/bin/bash CACHE_FILE="/var/cache/ddclient/ddclient.cache" NOW_IP=`host hogehoge.net | cut -f 4 -d' '` echo "now ip is $NOW_IP" CACHE_IP=`cat $CACHE_FILE | tail -1 | cut -f 5 -d, | cut -f 2 -d= ` echo "cache ip is $CACHE_IP" if [ "$NOW_IP" = "$CACHE_IP" ] ; then echo "IP check OK" else echo "IP check NG" rm $CACHE_FILE fi
過去記事
ddclientでワーニングが出る問題
ddclientでDynDNSのIPをアップデートしてみようか
nmapでサーバーの生存確認をする
自分の家のサーバー構成は前回話した感じになっている
(DNSを切り替えることでつながる先をスイッチしている)
自宅のサーバーが落ちるときにDynDNSを更新してレンタルサーバーに向くようにしているけど、これが結構失敗したりするので、レンタルサーバー側でも定期的に監視するようにした。
監視は以下の手順で行う
1.まずDNSで名前を引いて自分(レンタルサーバー側)に向いているか自宅に向いているか調べる
→自分に向いていたら問題ないので処理終了
→自宅に向いていたら2へ
2.自宅のサーバーのメールポートにコネクションが張れるか確認
→張れたら問題なく稼動しているので処理終了
→駄目なら自宅鯖が落ちてると判断しDynDNSを更新してDNSを自分に向かせる
以上の処理をcronに登録して1時間置きにやってみる
nmapでスキャンするときには-PNと-sTをつけるのがポイント
-PN → 自宅のルーターはpingに反応しないのでホストの生存確認は不要
-sT → ルーターからNAPT環境だとステルススキャン(-sS)はうまくいかなかった
あとは適当にスクリプトを組む
参考リンク
nmap日本語man
(DNSを切り替えることでつながる先をスイッチしている)
自宅のサーバーが落ちるときにDynDNSを更新してレンタルサーバーに向くようにしているけど、これが結構失敗したりするので、レンタルサーバー側でも定期的に監視するようにした。
監視は以下の手順で行う
1.まずDNSで名前を引いて自分(レンタルサーバー側)に向いているか自宅に向いているか調べる
→自分に向いていたら問題ないので処理終了
→自宅に向いていたら2へ
2.自宅のサーバーのメールポートにコネクションが張れるか確認
→張れたら問題なく稼動しているので処理終了
→駄目なら自宅鯖が落ちてると判断しDynDNSを更新してDNSを自分に向かせる
以上の処理をcronに登録して1時間置きにやってみる
nmapでスキャンするときには-PNと-sTをつけるのがポイント
-PN → 自宅のルーターはpingに反応しないのでホストの生存確認は不要
-sT → ルーターからNAPT環境だとステルススキャン(-sS)はうまくいかなかった
nmap hogehoge.net -p 25 -v -PN -sT
あとは適当にスクリプトを組む
#!/usr/bin/perl use strict; use warnings; ################################# # LOG my $LOG="/var/log/hogelog"; ################################# my @result = `nmap hogehoge.net -p 25 -PN -sT`; if ( join("",@result) =~/25\/tcp\s+open\s+smtp/ ){ system "logger 'JITAKU MAIL IS LIVE!!'" and die $!; logadd (@result); } else { system "logger 'JITAKU MAIL IS DEAD!!'" and die $!; my @ddc=`ddclient -verbose -ip 123.123.123.123`; logadd (@ddc); } sub logadd { my @data=@_; open (WR,">>$LOG") or die $!; print WR @data; close WR; }
参考リンク
nmap日本語man
2011年4月25日月曜日
DTIのVPSにPukiWikiをインストール
必要なのはphp5オンリーなので楽
ユーザ制御・アクセス制御
QAユーザー認証
セキュリティQA
- ダウンロード 公式サイトからダウンロード 今回は「pukiwiki-1.4.7_notb_utf8.tar.gz」を選択 こちらは以下のコマンドで展開すればパーミッションの設定を省けるので良い
- インストール 基本的には ここ に書いてある通りやればOK md5値は以下のようにして算出できる
- 個別設定 その他個人の設定はお好みで
tar xvzpf pukiwiki-1.4.7_notb_utf8.tar.gz
echo -n 'pass' | md5sumこの値を設定すればOK 上記例だとこんな感じ
$adminpass = '{x-php-md5}1a1dc91c907325c69271ddf0c944bc72'
アップロードサイズの変更
vi plugin/attach.inc.phpここを参考にして アップロードサイズ上限を16MBに変更した(19行目付近)
// Max file size for upload on script of PukiWikiX_FILESIZE define('PLUGIN_ATTACH_MAX_FILESIZE', (16 * 1024 * 1024)); // default: 1MB※ただしphp.iniの制限に引っかかっていたら意味ないので見直すこと→詳しくはこちら
はてなマークを消す方法
以下のようにnowikinameを1に変更する
$nowikiname = 1;
ユーザ制御・アクセス制御
QAユーザー認証
セキュリティQA
2011年4月18日月曜日
よく使うCGIスクリプト
無料で使えてとても助かってる
フォトアルバム
pipipiga
UTF-8用のファイルとか用意していてくれる
http://popilol.lolipop.jp/NiconicoPHP/
Fuploader
FLASHで出来てる アップローダ
100Mまでアップロード可能
http://www.yumemaboroshi.net/cgi4905/
UTF-8+LFへの変換は
wikiはPukiWikiが設置が簡単で良いと思う
フォトアルバム
pipipiga
UTF-8用のファイルとか用意していてくれる
http://popilol.lolipop.jp/NiconicoPHP/
Fuploader
FLASHで出来てる アップローダ
100Mまでアップロード可能
http://www.yumemaboroshi.net/cgi4905/
UTF-8+LFへの変換は
nkf -w8 -Lu ファイル名でOK
wikiはPukiWikiが設置が簡単で良いと思う
2011年4月17日日曜日
lighttpdでアクセス制御
こんな感じで指定すると
/upload配下以外はユーザー認証が必要
参考リンク
lighttpdの記述方法
lighttpdのmod_auth使用方法
/upload配下以外はユーザー認証が必要
$HTTP["url"] !~ "^/upload" { auth.require = ( "" => ( "method" => "basic", "realm" => "wolzone", "require" => "valid-user" ) ) }
参考リンク
lighttpdの記述方法
lighttpdのmod_auth使用方法
2011年4月12日火曜日
2011年4月11日月曜日
bug.nを試してみた
前回Dwmにはまったので
Windowsでも出来ないか探してみたらあった
bug.nというらしい
使い方はLinuxの時とほぼ同じ
※(Winは左Windowsキー)
アクティブウィンドウの切り替え
ウィンドウのリサイズ
ウィンドウのクローズ
分割の縦横切り替え
タイトルバーの表示非表示
ウィンドウの入れ替え
マスターウィンドウの左右切り替え
よく分からないけどレイアウトの変更
タスクバーの表示非表示
bug.nの終了
参考リンク
http://sourceforge.jp/projects/tilingwm/wiki/FrontPage
Windowsでも出来ないか探してみたらあった
bug.nというらしい
使い方はLinuxの時とほぼ同じ
※(Winは左Windowsキー)
アクティブウィンドウの切り替え
Win+↑ Win+↓
ウィンドウのリサイズ
Win+← Win+→
ウィンドウのクローズ
Win+c
分割の縦横切り替え
Win+Ctrl+Tab
タイトルバーの表示非表示
Win+Shift+d
ウィンドウの入れ替え
Win+Shift+Enter
マスターウィンドウの左右切り替え
Win+Ctrl+Enter
よく分からないけどレイアウトの変更
Win+Ctrl+← Win+Ctrl+→
タスクバーの表示非表示
Win+Space
bug.nの終了
Win+Shift+q
参考リンク
http://sourceforge.jp/projects/tilingwm/wiki/FrontPage
Linuxで使える軽い画像ビューワ
使いやすくて軽い画像ビューワー
画像フォルダで
shift-z ファイル一覧表示
z Windowsにフィット
Space 次の画像へ
b 前の画像へ
矢印キー 画像を任意の方向へスクロール
s 画像をズームイン
S 画像をズームアウト
F2で画像をリネームできるのがポイント
xzgv
というらしい画像フォルダで
xzgv *で起動して
shift-z ファイル一覧表示
z Windowsにフィット
Space 次の画像へ
b 前の画像へ
矢印キー 画像を任意の方向へスクロール
s 画像をズームイン
S 画像をズームアウト
mirage
基本はマウスで出来るF2で画像をリネームできるのがポイント
Dwmのステータスバーと壁紙を変更してみる
デフォルトのステータスバーはあまりにそっけないので変更してみた
下記参考リンクを参照すれば分かると思うけど
Dwmの上のバーの右上はxsetroot -nameで示される名前を表示しているので
~/.xsessionrcにこんな感じのスクリプトを書いてやる
※.xsessionrcはXのセッション開始時に読み込まれる詳しくは/etc/X11/Xsession参照
~/.xsessionrc
xsetroot は背景色の設定(ここでは下の行で壁紙を設定してるから意味無いけど・・・)
hsetroot が壁紙の設定hsetroot をインストールする必要はある
参考リンク
ステータスバーの変更について
参考記事
xsessionrcのプロセス制御
下記参考リンクを参照すれば分かると思うけど
Dwmの上のバーの右上はxsetroot -nameで示される名前を表示しているので
~/.xsessionrcにこんな感じのスクリプトを書いてやる
※.xsessionrcはXのセッション開始時に読み込まれる詳しくは/etc/X11/Xsession参照
~/.xsessionrc
#!/bin/bash xsetroot -solid DarkSlateBlue hsetroot -full /usr/share/lxde/wallpapers/block.jpg while true do DATE=`date +"%Y/%m/%d %H:%M"` xsetroot -name "$DATE" || exit sleep 30s done &
xsetroot は背景色の設定(ここでは下の行で壁紙を設定してるから意味無いけど・・・)
hsetroot が壁紙の設定hsetroot をインストールする必要はある
参考リンク
ステータスバーの変更について
参考記事
xsessionrcのプロセス制御
Debianのデスクトップ環境をDwmに変更してみた
軽量と言われるLXDEだけどやはり10年前のノートPCだと重いと感じてきたので変更する
変更するのはウィンドウマネージャのDwm
インストールはaptとかでさくっとできるはず
デフォルトのMod1キーはAltキーなのでいつもAltキーが必要です
起動して左上に表示されている1~9の数字は仮想デスクトップでここではタグと呼びます
基本操作は以下のとおり
uxtermの起動
ウィンドウ間のフォーカスを切り替え
ウィンドウのサイズ変更
フォーカスされているウィンドウを閉じる
6番目のタグへ移動
全てのタグを選択(全ウィンドウが表示されます)
現在フォーカスされているウィンドウを4番目のタグへ移動
ウィンドウの入れ替え
前回選択してたタグへ移動
上のバーの表示/非表示切り替え
ウィンドウをタイル表示(重ならないように配置)
フローティングレイアウト表示へ(重なって表示)
常に最大化表示(ひとつのウィンドウが最大化表示)
Dwmを終了
その他詳しいことは
ステータスバーを変えるにはこちら
参考リンク
http://sourceforge.jp/projects/tilingwm/wiki/FrontPage
変更するのはウィンドウマネージャのDwm
インストールはaptとかでさくっとできるはず
デフォルトのMod1キーはAltキーなのでいつもAltキーが必要です
起動して左上に表示されている1~9の数字は仮想デスクトップでここではタグと呼びます
基本操作は以下のとおり
uxtermの起動
Alt+Shift+Return
ウィンドウ間のフォーカスを切り替え
Alt+j Alt+k
ウィンドウのサイズ変更
Alt+h Alt+l
フォーカスされているウィンドウを閉じる
Alt+Shift+c
6番目のタグへ移動
Alt+6
全てのタグを選択(全ウィンドウが表示されます)
Alt+0
現在フォーカスされているウィンドウを4番目のタグへ移動
Alt+Shift+4
ウィンドウの入れ替え
Alt+Return
前回選択してたタグへ移動
Alt+Tab
上のバーの表示/非表示切り替え
Alt+b
ウィンドウをタイル表示(重ならないように配置)
Alt+t
フローティングレイアウト表示へ(重なって表示)
Alt+f※Alt押しながらマウスで移動できます
常に最大化表示(ひとつのウィンドウが最大化表示)
Alt+m
Dwmを終了
Alt+Shift+q
その他詳しいことは
man dwm
ステータスバーを変えるにはこちら
参考リンク
http://sourceforge.jp/projects/tilingwm/wiki/FrontPage
2011年4月4日月曜日
2011年4月3日日曜日
2011年4月2日土曜日
DebianにOperaをインストール
このとおりやれば出来た
/etc/apt/sources.listにリポジトリを追加
以下のコマンドを実行
apt-keyについては
以下を参照
基本的にはapt-key updateでいいはず
http://debian.fam.cx/index.php?AptGet#secapt
/etc/apt/sources.listにリポジトリを追加
deb http://deb.opera.com/opera squeeze non-free
以下のコマンドを実行
aptitude update wget -O - http://deb.opera.com/archive.key | apt-key add - aptitude update aptitude install opera
apt-keyについては
以下を参照
基本的にはapt-key updateでいいはず
http://debian.fam.cx/index.php?AptGet#secapt
2011年3月27日日曜日
一定時間だけログイン可能なユーザーを作った
sshのログインは基本的には鍵認証にしているのだが、
出先などでどうしてもログインしたい場合鍵が無くて困ることがあるので、一定時間だけパスワード認証できるユーザーを作った。
仕組みは以下のとおり
1.SUIDのセットされたperlスクリプトで実行するコマンドはusermod --lockコマンド →suidperlについて
2.アンロックされる
3.sshのパスワード認証によってログインする ※1
4.cronにusermod --unlockを仕込んでおく
※1 特定のユーザーのみパスワード認証を許可する
hogeuserが今回の対象とする場合
参考リンク
http://d.hatena.ne.jp/isseium/20100923/1285225757
出先などでどうしてもログインしたい場合鍵が無くて困ることがあるので、一定時間だけパスワード認証できるユーザーを作った。
仕組みは以下のとおり
1.SUIDのセットされたperlスクリプトで実行するコマンドはusermod --lockコマンド →suidperlについて
2.アンロックされる
3.sshのパスワード認証によってログインする ※1
4.cronにusermod --unlockを仕込んでおく
※1 特定のユーザーのみパスワード認証を許可する
hogeuserが今回の対象とする場合
Match User hogeuser PasswordAuthentication yes AllowTcpForwarding no
参考リンク
http://d.hatena.ne.jp/isseium/20100923/1285225757
suidperlを使ってSUIDがセットされたperlスクリプトを動かす
Debianにて
perl-suidをインストール
シェバンを以下にして
sbinを動かすなら
PATHの設定も忘れずに・・・
というかsuidperlをインストールするくらいならsudoとか使った方がいいのかなぁ・・・
参考リンク
http://d.hatena.ne.jp/hogem/20080227/1204125414
perl-suidをインストール
シェバンを以下にして
#!/usr/bin/suidperl
sbinを動かすなら
PATHの設定も忘れずに・・・
$ENV{PATH}="/usr/sbin/";
というかsuidperlをインストールするくらいならsudoとか使った方がいいのかなぁ・・・
参考リンク
http://d.hatena.ne.jp/hogem/20080227/1204125414
2011年3月22日火曜日
rsyncのWindows版 cwRsyncを試す
公式サイトからリンクを辿ってcwRsync_4.0.4_Installer.zip
をダウンロード&インストール今回は最小構成でインストール
Secure Channel Wrapperは入れなかった
PATHに"C:\Program Files\cwRsync\bin"を追加
あとはrsyncコマンドがつかえるので使用する今回はネットワークドライブからローカルへ同期してみた
例)Nドライブ→Cドライブのtestフォルダを同期
参考リンク
http://satospo.sakura.ne.jp/blog_archives/tech/tool/cwrsync.html
をダウンロード&インストール今回は最小構成でインストール
Secure Channel Wrapperは入れなかった
PATHに"C:\Program Files\cwRsync\bin"を追加
あとはrsyncコマンドがつかえるので使用する今回はネットワークドライブからローカルへ同期してみた
例)Nドライブ→Cドライブのtestフォルダを同期
rsync -av --delete /cygdrive/n/backup/Firefox/ /cygdrive/c/test/※心配なら-nオプションを付けて挙動を確認すると良いかも
参考リンク
http://satospo.sakura.ne.jp/blog_archives/tech/tool/cwrsync.html
2011年3月20日日曜日
ブログランキングサイトまとめ
・TopHatenar
国内のサイトで比較できるので分かりやすい
グラフとかも出て自分の順位が把握しやすい
登録までに1日かかる
このブログの結果
・BlogChart
レーダーチャートで表示してくれる
分かりやすいLv表示
このブログの結果
・ウェブク
ドメインの価値を表示してくれる
表示単位はドメイン
このブログの結果
・ブログ戦闘力チェッカー
ブログを戦闘力で例えてくれる
ドラゴンボールが好きな人は分かりやすい?
TopHatenarのデータを使っているのでTopHatenarへの登録が必要
このブログの結果
過去の記事
あなたのドメインの価値を教えてくれるサイト
BlogChartってサイトでこのBlogのレベルを測定してみる
国内のサイトで比較できるので分かりやすい
グラフとかも出て自分の順位が把握しやすい
登録までに1日かかる
このブログの結果
・BlogChart
レーダーチャートで表示してくれる
分かりやすいLv表示
このブログの結果
・ウェブク
ドメインの価値を表示してくれる
表示単位はドメイン
このブログの結果
・ブログ戦闘力チェッカー
ブログを戦闘力で例えてくれる
ドラゴンボールが好きな人は分かりやすい?
TopHatenarのデータを使っているのでTopHatenarへの登録が必要
このブログの結果
過去の記事
あなたのドメインの価値を教えてくれるサイト
BlogChartってサイトでこのBlogのレベルを測定してみる
2011年3月14日月曜日
Debian squeezeにしたらコンソールの解像度が変わった
事象は/etc/default/grubのGRUB_GFXMODEを変更しても
GRUB2の選択画面はその解像度になるがブート後のコンソール画面が狂ってしまうというもの
こんな単語でググったらいろいろ見つかった
こちらの情報を参考に設定してみた
1./etc/default/grubを編集
2./etc/grub.d/00_headerを編集
39行目あたりにある
if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=640x480 ; fi
の下に以下の行を追記
set gfxmode=${GRUB_GFXMODE}
の下に
3.update-grub
update-grubする
その他
なんでもgfxtermとか言うらしい・・・詳しいことはよく分からない
参考リンク
https://forums.ubuntulinux.jp/viewtopic.php?pid=44077
http://linux.derkeiler.com/Mailing-Lists/Debian/2010-01/msg01695.html
GRUB2の選択画面はその解像度になるがブート後のコンソール画面が狂ってしまうというもの
こんな単語でググったらいろいろ見つかった
こちらの情報を参考に設定してみた
1./etc/default/grubを編集
GRUB_GFXMODE=1024x768というように設定
2./etc/grub.d/00_headerを編集
39行目あたりにある
if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=640x480 ; fi
の下に以下の行を追記
GRUB_GFXPAYLOAD="${GRUB_GFXMODE}"127行目あたりの
set gfxmode=${GRUB_GFXMODE}
の下に
set gfxpayload=${GRUB_GFXPAYLOAD}を追記
3.update-grub
update-grubする
その他
なんでもgfxtermとか言うらしい・・・詳しいことはよく分からない
参考リンク
https://forums.ubuntulinux.jp/viewtopic.php?pid=44077
http://linux.derkeiler.com/Mailing-Lists/Debian/2010-01/msg01695.html
2011年3月13日日曜日
2011年3月7日月曜日
bashでTAB補完する(menu-complete)
↓で出来るらしいスゴイ
今までzshじゃなきゃできないと思ってた
参考リンク
http://debian.fam.cx/index.php?Japanese#ped4bcbd
今までzshじゃなきゃできないと思ってた
bind TAB:menu-complete
参考リンク
http://debian.fam.cx/index.php?Japanese#ped4bcbd
2011年2月27日日曜日
トルネコの大冒険(SFC)のチートコード
改造コードは以下
満腹度固定 7E0DE573 HP減らない 7E0BB7FF 7E0BB800 HPの最大値MAX 7E0BCBFF 7E0BCC00 力の最大値MAX 7E0DDF63 力最大 7E0DE063
2011年2月25日金曜日
cronの各処理の実行時間を測定してみた
なんかcron.dailyの実行がやけに重いなーとおもったので各スクリプトのどの処理が重いか調べてみた
1.timeプログラムのインストール
まずtimeプログラムが必要ですbashからなら普通に打てるのですがbinに入っているものじゃないとエラーになったのでインストール
debianならtimeパッケージをインストールすれば/usr/bin/timeが出来ました
2.実行時間測定スクリプトの作成
次に/tmpに以下のスクリプトを置き
time.pl
3.anacrontabの編集
/etc/anacrontabを編集(/etc/crontabの人はそちらを)
1.timeプログラムのインストール
まずtimeプログラムが必要ですbashからなら普通に打てるのですがbinに入っているものじゃないとエラーになったのでインストール
debianならtimeパッケージをインストールすれば/usr/bin/timeが出来ました
2.実行時間測定スクリプトの作成
次に/tmpに以下のスクリプトを置き
time.pl
#!/usr/bin/perl use strict; use warnings; use feature qw(say); use Time::HiRes; my $runpg=shift; say "### $runpg START ### ",Time::HiRes::time; system "/usr/bin/time $runpg" and die $!; say "### $runpg END ### ",Time::HiRes::time;
3.anacrontabの編集
/etc/anacrontabを編集(/etc/crontabの人はそちらを)
# 1 5 cron.daily nice run-parts -v /etc/cron.daily 1 5 cron.daily nice run-parts --list /etc/cron.daily | xargs -i /tmp/time.pl {}ポイントはrun-partsを--listにして実行ファイル一覧を出力させてそれを引数として実行時間を計るプログラムに渡す
2011年2月13日日曜日
2011年2月6日日曜日
2011年1月30日日曜日
2011年1月22日土曜日
ctagsを使ってみる
タグファイル(tags)を作ればCtrl+]で飛べる
使い方は
基本的には拡張子で判断してくれるらしいから
--language-forceは不要かも
対応言語は以下のコマンドで出力できる
ちなみにcscopeというC言語専用だけど高機能な解析ツールもあるらしい・・・
参考リンク
http://hp.vector.co.jp/authors/VA025040/ctags/ctags_j.html
使い方は
ctags --language-force=perl hoge.plこうすれば同じ場所にtagsファイルが作られる
基本的には拡張子で判断してくれるらしいから
--language-forceは不要かも
対応言語は以下のコマンドで出力できる
ctags --list-languages
ちなみにcscopeというC言語専用だけど高機能な解析ツールもあるらしい・・・
参考リンク
http://hp.vector.co.jp/authors/VA025040/ctags/ctags_j.html
2011年1月17日月曜日
radikoを聞くperlスクリプト書いた
ポイントはforkして指定した時間で落とすこと
#!/usr/bin/perl ################################################ # radiko を聞くスクリプト # 引数で制御する # # ヘルプを表示するにはh # radiko.pl -h ################################################ use strict; use warnings; use Getopt::Std; my %opt; getopts("hc:f:t:",\%opt); if (exists $opt{h}){ print << "HELP"; usage: radiko.pl [-h] [-c channel] [-f outfile] [-t playtime] -h print this message -c channel select play channel default: LFR * FMT TOKYO FM * FMJ J-WAVE * LFR nippon housou * TBS TBS radio -f outfile default: /tmp/channel.flv -t playtime default: 1 hour HELP exit; } my $CHANNEL; if (exists $opt{c}){ $CHANNEL=$opt{c}; } else { $CHANNEL="LFR"; } my $OUTFILE; if (exists $opt{f}){ $OUTFILE=$opt{f}; } else{ $OUTFILE="/tmp/$CHANNEL.flv"; } my $PLAYTIME; if (exists $opt{t}){ $PLAYTIME=$opt{t} * 60 * 60; } else{ $PLAYTIME= 1 * 60 * 60; } unlink $OUTFILE if -e $OUTFILE; my $com = << "CMD"; rtmpdump -v -e -s 'http://radiko.jp/player/swf/player_2.0.1.00.swf' \\ -r 'rtmpe://radiko.smartstream.ne.jp/$CHANNEL/_defInst_' \\ --playpath 'simul-stream?ucid=1dbab2acb98174787146465a40ba9eba' \\ -p 'http://radiko.jp/player/player.html' \\ -f 'WIN 10,1,102,64' \\ -o $OUTFILE CMD print "${com}\nplaytime=$PLAYTIME\n"; my $pid=fork; die $! unless defined $pid; print $pid; if ($pid){ sleep $PLAYTIME; kill 9,$pid; } else{ exec "$com"; }
2011年1月16日日曜日
デビルメイクライ3攻略リンク集
丁寧な攻略チャートがある
http://dmc-labo.secret.jp/DMC-Labo.html
武器アクション
スタイルアクション
http://www.geocities.jp/no0sloter/devil/index.html
MISSION 13のパズル解答
スペシャルエディションの裏技
タイトル画面でL1L2R1R2を押したまま十字キー上と左を押しながら左スティックを右下に入れる
バジールのコシュチューム一覧
・普通のバジール
・上半身軽装のバジール
・魔人化無制限のバジール(幻影剣は減る)
・ネロアンジェロに返信できるバジール
・ネロアンジェロ無制限のバジール(幻影剣も無制限)
http://dmc-labo.secret.jp/DMC-Labo.html
武器アクション
スタイルアクション
http://www.geocities.jp/no0sloter/devil/index.html
MISSION 13のパズル解答
スペシャルエディションの裏技
タイトル画面でL1L2R1R2を押したまま十字キー上と左を押しながら左スティックを右下に入れる
バジールのコシュチューム一覧
・普通のバジール
・上半身軽装のバジール
・魔人化無制限のバジール(幻影剣は減る)
・ネロアンジェロに返信できるバジール
・ネロアンジェロ無制限のバジール(幻影剣も無制限)
iptablesまとめ
よく忘れるのでメモ
因みにfilterテーブルなら省略可
参考リンク
iptablesで設定したルールを再起動後も反映したい
iptablesによるフィルタ設定
ルールの表示
例)natテーブルのルールを表示因みにfilterテーブルなら省略可
iptables -t nat -L
ルールの追加
例)80番ポートへのアクセスを遮断iptables -A OUTPUT -p tcp --dport 80 -j DROP
ルールの削除
iptables -D INPUT 3
パケット転送
80番ポートのアドレスを192.168.0.4:4000へ転送iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.0.4:4000
参考リンク
iptablesで設定したルールを再起動後も反映したい
iptablesによるフィルタ設定
任意のIPを作って送れるソフト
sendip
debianならリポジトリにある
例)memo.txtの内容をtcpで送る
参考リンク
http://masy.families.jp/diary/?200010c
debianならリポジトリにある
例)memo.txtの内容をtcpで送る
sendip -d memo.txt -p ipv4 -p tcp 192.168.0.3
参考リンク
http://masy.families.jp/diary/?200010c
2011年1月15日土曜日
rtmpdump試してみた
NHKオンデマンドに挑戦
1.URLを解析
2.hostsを変更
今回は192.168.0.4にrtmpsuckを走らせておく
3.でダウンロード
出来るはずだったが、なんか出来なかったOTZ
因みにこんな方法もあるLinuxならiptablesで転送する
hogeuserをすべてlocalhostへ飛ばす例
iptables -t nat -n -L で確認
iptables -t nat -D OUTPUT 1 で削除
参考リンク
http://h.hatena.ne.jp/syouhi/9259273302189983422
気を取り直してradiko録音これはrtmpsuckで一発OK
rtmpdumpならこうかな
FMT・・・TOKYO FM
FMJ・・・J-WAVE
LFR・・・ニッポン放送
TBS・・・TBSラジオ
1.URLを解析
fms0000.nod.ipcasting.jp
2.hostsを変更
今回は192.168.0.4にrtmpsuckを走らせておく
192.168.0.4 fms0000.nod.ipcasting.jp
3.でダウンロード
出来るはずだったが、なんか出来なかったOTZ
因みにこんな方法もあるLinuxならiptablesで転送する
hogeuserをすべてlocalhostへ飛ばす例
iptables -t nat -A OUTPUT -p tcp --dport 1935 -m owner \! --uid-owner hogeuser -j REDIRECT
iptables -t nat -n -L で確認
iptables -t nat -D OUTPUT 1 で削除
参考リンク
http://h.hatena.ne.jp/syouhi/9259273302189983422
気を取り直してradiko録音これはrtmpsuckで一発OK
rtmpdumpならこうかな
#!/bin/bash rtmpdump -v -e -s 'http://radiko.jp/player/swf/player_2.0.1.00.swf' \ -r 'rtmpe://radiko.smartstream.ne.jp/FMJ/_defInst_' \ --playpath 'simul-stream?ucid=1dbab2acb98174787146465a40ba9eba' \ -p 'http://radiko.jp/player/player.html' \ -f 'WIN 10,1,102,64' \ -o FMJFMJの部分を変更すれば他の曲にもなる
FMT・・・TOKYO FM
FMJ・・・J-WAVE
LFR・・・ニッポン放送
TBS・・・TBSラジオ
2011年1月1日土曜日
tmuxを試してみた
tmuxの考え方
セッション・・・複数のウィンドウを持つ固まりウィンドウ・・・複数のペインを持つ1画面
ペイン・・・いわゆる操作できる端末
プレフィックスキー
全てプレフィックスキー(デフォルトはC-b)を押した後に入力する※ $で始まるものはコマンド操作
それ以外はプレフィックスキー後に入力する
セッション操作
hogesessionというセッション名で作成
$ tmux new -s hogesession
セッション選択
:choose-session
セッション一覧を表示
$ tmux ls
hogeセッションにアタッチ
$ tmux a -t hoge
ウィンドウ操作
windowのリネーム,※:set-window-option automatic-rename onにするとデフォルトになる
新しいwindowの作成
c
windowの数字選択指定
0~9
windowの数字を変更
.
ウィンドウを8番へ移動
move-window -t 8
ウィンドウ選択
:choose-window
ウィンドウの入れ替え(1と入れ替える)
swap-window -t 1
ペインpane操作
ペインの入れ替え
{
}
pane番号表示
q
レイアウト変更
SPACE
上下左右サイズ変更
+
-
<
>
ペインの入力同期 on/off
:set-window-option synchronize-panes on
:set-window-option synchronize-panes off
ペインを:1ウィンドウから一枚もらってくる
:join-pane -s :1
ペインを:1ウィンドウに移す
:join-pane -dt :1※:1.3という指定にすればペイン番号3指定
その他操作
コピーバッファの選択
=
コピーバッファを一覧を表示
lsb
コピーバッファの1番をペースト
paste-buffer -b 1
時計表示
t
screenと比べて
- 画面分割の制御が楽(上下左右のリサイズが楽)
- 画面表示が崩れない気がする
- 軽い気がする
- screenに比べて設定ファイルが分かりやすい気がする ※
- ウィンドウの中に画面分割のペインが紐付いているので管理が楽(分割された画面で画面が変わってしまうこちらはウィンドウの分割状態をそのまま保持できるため)
- クラサバ志向なので他人がすでにアタッチしているセッションに参加できる(2人で同じ端末をみれる何気にすごい)
- コピーバッファが何個も持てる
自分の設定
#key bind s split-window -v bind v split-window -h bind j select-pane -D bind k select-pane -U bind h select-pane -L bind l select-pane -R bind -r < resize-pane -L 1 bind -r > resize-pane -R 1 bind -r - resize-pane -D 1 bind -r + resize-pane -U 1 bind : command-prompt bind C-i select-pane -t :.+ bind Escape copy-mode setw -g mode-keys vi set -g prefix C-a bind C-a send-prefix #option set -g display-time 6000 set -g status-interval 30 set -g mouse-select-pane on #status line set -g status-right "#(uptime|cut -d, -f 3 | cut -d: -f 2) %Y/%m/%d (%a) %p %I:%M" setw -g window-status-format "#I:#W" setw -g window-status-current-format "#I:#W_#P" set -g status-bg black set -g status-fg cyan set -g status-left-fg black set -g status-left-bg magenta set -g status-right-fg black set -g status-right-bg green set-window-option -g window-status-current-attr bright,reverse set-window-option -g window-status-current-bg cyan set-window-option -g window-status-current-fg black #window new -s def -n rss_log "tail.pl /var/log/rss.log" splitw -h 'cd /var/log ; tailf allevent & tailf samba/log.nmbd &tailf samba/log.smbd & tailf lighttpd/access.log ' neww
参考リンク
日本語manWikiNote
登録:
投稿 (Atom)