サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
衆院選
blog.rutake.com
モジュール化されていない場合はCommandかShellモジュールで実行するOSコマンドを記述する。 基本的にはCommandを利用するように推奨されているが、パイプやらリダイレクトやらがある場合はShellモジュールを利用する。 複数行記述するにはどうするか? 下記のように;で区切って並べるとよい。 ;を入れないと続きとみなされるので注意。 - name: git clone and rbenv shell: > git clone https://github.com/sstephenson/rbenv.git ~/.rbenv; git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build; echo 'export PATH="$HOME/.rbenv/bin:$PATH"'
templateモジュール自体はファイルコピーとほぼ同じなのだが、変数部分を置換後にコピーするというのが違い。 templateタスクの記載例はあるのだが、置換元のファイルの記載方法についてはあまりなかったようなのであげてみた。 下記例は/etc/hostsに変数hostnameに定義した値を展開してから、コピーするタスク。実施条件としてhostname変数があることも入れている。 # hosts - name: /etc/hosts setup template: src=hosts.j2 dest=/etc/hosts when: hostname is defined hosts.j2の記載は置換部分をansibleと同じように{{ 変数名 }} で記載しておく。 127.0.0.1 {{ hostname }}.localdomain {{ hostname }} localhos
jarファイルにすると当然一つのファイルにまとまる利点がある反面そう簡単に中身を更新はできない。 故にリソースファイル系にちょっと修正を加えて実行したい時にまたjarを作り直すのも面倒な話。 本来こういう場合はリソースファイルだけを切り出して、 クラスパスの優先順位を上位にすればそちらのリソースがjarの中身より優先して読まれるのだが、 残念ながらそうなっていないプロジェクトもある。 というわけでその場でjarファイル解凍して、再び作成するテクニック 1.作業用ディレクトリ確保 mkdir -p /tmp/jartmp 2.作業用ディレクトリに移動 cd /tmp/jartmp 3.解凍 jar xvf 目的のjarファイル 4.リソースファイルを変更する 5.jar再作成 jar xvf 新しいjarファイル名 * これでOK!
以前は基準となるファイルをtouchで作成して調べるやり方を紹介したが、もっとお手軽なもの。 30分以内に更新されたファイル find . -type f -mmin -30 3日以内に更新されたファイル find . -type f -mtime -3 -mmin オプションが分単位で -mtime オプションが日単位。 いずれにしても実行時点のシステム日付で結果が変わってくるので、前に上げた基準点となるファイルをtouchで生成して比べるやり方も有効なのである。
自宅待機を命じられたので久々にCakePHPでアプリを作成中。 せっかくなのでCakePHPのTIPSでもあげておくか。 まずテストで実施したり、CSVダウンロードなどViewを使わない場合にどうするか。 Actionのメソッドの中で以下の記述をすればよい $this->autoRender = false;
English Post: ClassNotFoundException cause and solution. ClassNotFoundExceptionの原因はNoClassDefFoundErrorなどに比べるとわかりやすい。 ClassForNameしているところが原因なので、たいていは引数のクラス名のスペルミス。 このエラーが発生するときは、間接的にしているClassForNameを使っているケースがほとんどだろう。 一例として、web.xmlのServletやFilterの定義でクラス名が間違っているとこれまたTomcat起動時にClassNotFoundExceptionで落ちる。 その場合は以下のようなメッセージがでてTomcatのコンテキスト起動に失敗する。この場合該当Servletは利用不可能となるので、「the requested resource is not a
現在の現場ではRSAキーをつかったワンタイムパスワードログインがあり、 その手順が煩雑なのでマクロが使えるTeraTermを利用している(普段はputty) puttyなら起動時に設定を読み込めるのだが、TeraTermはメニューを開いて読み込むという手作業がめんどくさい。 というわけでショートカット引数に設定ファイルを与えて起動時には設定完了状態にしておく技 teraterm.exe /F=設定ファイル名.ini これでよい。マクロの中で利用する場合はconnect時に設定ファイルを指定する。 connect ‘接続ホスト名 /F=設定ファイル名.ini’
CPUリソースを消費しまくる諸悪の根源「mscorsvw.exe」を動かしているのは「.net runtime optimization service」である。 このサービスを止めればmscorsvw.exeもプロセスから消えるのだが、果たして止めても良いものか? このサービスは.NET Frameworkの最適化を監視するもので、必要があればmscorsvw.exeを起動して、再コンパイルタスクを走らせる(これが時間かかって、CPU100%近く食う) .NETのアプリケーションを使っていないのであれば不要。また更新がなければ最適化の必要性も薄いので、 サービスは止めておき、気づいたとき(SP1いれた後とか)で他のアプリを動かしていないときに起動してあげる程度で良い気がする。 現に会社のPCではサービス停止になってるしね。
English Post is Here インストール直後のWindows7の動きがあまりにもぎこちないので調べてみると上記のプロセス「mscorsvw.exe」がCPU使用率100%の模様。 どうも.Net Frameworkの最適化のプロセスらしいがいい迷惑だ。もっと控えめにやれっつーの! というわけで最適化が終われば落ち着くのではある(わがPCでは5分ほど)が、速攻落としたい場合はサービス停止をするがよろし。 .NET Runtime Optimazation Service vxxではじまるサービスを止めてしまおう。 スタートメニューからファイル名を指定して実行で「services.msc」を入力すると即サービスの画面に行ける。サービス名が[.]で始まるので先頭付近にいるはず。 状態が開始となっていたら停止にしてしまおう。停止のままが気味が悪い人は時たま手動起動してあげれば問題ない
前回のエントリーでLinuxのうるさいBEEP音を消すやり方を書いた。 これで静寂の世界が訪れたと思いきやまだ甘かった。 viがうるさい。もともとemacs使いなのでviになれていないのを差し引いてもとにかくやたらbeep音がピーピーなる。というわけで今回はこいつを黙らせて見よう。 ここで紹介している方法はvim(Linuxのviはほとんどこれ)の話なのでSolarisとかには当てはまらないので注意。 vimの設定ファイルはホームの.vimrcに書いておくこいつを編集(なければ新規作成) set visualbell 直訳すると視覚的ブザーってところか。いままでbeep音がなる局面で今度は画面が微妙にフラッシュする。無設定時のbeep音騒音公害とちがって実に控えめである。 そもそもSSHターミナル使えよという突っ込みは拒否(コンソールの前でしなきゃならん作業もあるわけだ)
当然のことながらこれを実行するとセキュリティレベルが下がるので絶対必要な局面以外では行わないこと。 必要になる局面とは Apacheの再起動時にパスフレーズの入力を求められるので自動再起動ができなくて困るとか 公開鍵認証方式によるファイル交換システムを作成したいのだが、パスフレーズがあると困るとか である。 rsa方式で作った場合の除去方法 openssl rsa -in パスフレーズ除去前の秘密鍵 -out パスフレーズ除去後の秘密鍵 もっともこんなことをしなくても最初に秘密鍵を作成するときにパスフレーズを空にすればよいのだが(笑)
普段Linuxはputtyなどで操作しているから、たまにコンソール操作しているとタブ保管で候補が絞れない時とかまでBEEP音が鳴りまくりでびっくりする。 BSキーを連打などしているとすさまじい騒音源となること請け合いで周りの注目を集めること請け合い。何回も繰り返すとやがて殺意の目線を浴びることになるのでそうなる前にBEEP音を消してしまおう。 とりあえず下記はRedHatEnterprise3.0での設定例だが、おそらくFedoraやVineやCentOSなどのRedHat系なら共通で対処できると思う。 vi /etc/inputrc #set bell-style none →コメントをはずす 次回ログイン時からはとても静かな環境が展開されることだろう。
前回のCentOS5ネットワークインストールをした後の話である。 普段であればサーバー用途なのでGUIは入れないで後はyumでがつがつサーバーソフトウェアを入れていくのだが、せっかくLinuxデスクトップを利用しているのでCentOSでもXwindowを入れてみることにした。 デスクトップ用途だとディスクがいったい何枚必要になるのかわからないので、そういった意味でもネットワークインストール最小(途中でフリーズする危険がインストールサイズが大きくなるほど多い)でインストールを完了させ、その後yumで後からXwindowを入れるのがディスク1枚ですむので地球に優しいのである。 さてかといって一つ一つyumのパッケージを入れるのは大変なのでパッケージのさらにパッケージというのがyumにはある。実はコレインストール時に選ぶパッケージ群とほぼ同じと考えてよい。以下のコマンドをrootで実行する。する
proxy経由でしか外が見えない場合のproxy指定方法 以下の内容で~/.wgetrcを作成しproxyを設定する。 vi ~/.wgetrc http_proxy=PROXY_SERVER:PORT 環境変数http_proxyに設定する方法もある。ほかのプログラムでもこの環境変数を使うのでどう考えてもhttp_proxy環境変数に設定するほうがほうが楽。 当然ながらProxyサーバーの指定にはhttp://を忘れないように(昔忘れてうまくいかないと嘆いていた) vi ~/.bash_profile export http_proxy="http://プロキシサーバー名:ポート/" # proxy除外はnoproxyで指定 export no_proxy="localhost,example.com" その後は普通にwgetすればよい。 せっかくなのでほかのテクニックを # 複数のファ
このページを最初にブックマークしてみませんか?
『blog.rutake.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く