2012年12月28日金曜日

2012年12月27日木曜日

PANIC: Could not open

ようやく原因がわかりました。。。

■問題
AVDManagerを起動してAVDを作成するがStartするとPANIC: Could not openとなりAVDを起動することができない

■解決策
C:\Users\username\Documents\.android

にあるフォルダを

C:\Users\username\.android

に移動します

■原因
AVDManagerでAVDを作成するとドキュメント配下にAVDのファイルが作成されるが
AVDManagerでStartとすると参照する先がusername直下の「.android」を参照しにいく


えーって感じだけど自分だけなのかなー。
起きた背景としてはeclipseを3.7から3.8にバージョンアップしたのと
SDKManagerからアップデートしただけなんだけどなー

まぁとりあえずはAVDを作成したらコピーして緊急対応したいと思います

2012年12月25日火曜日

eclipseをバージョンアップする方法

  1. eclipseを起動します
  2. メニューバーから Windows→Preferences を選択します
  3. ダイアログが表示されるので、左メニューから Install/Update を選択します
  4. Available Software Sites でアップデートしたいバージョンのアップデートサイトが登録されているか確認します(以下、例を参照)
    • 4.4・・・http://download.eclipse.org/releases/luna/
    • 4.3・・・http://download.eclipse.org/eclipse/updates/4.3
    • 4.2・・・http://download.eclipse.org/eclipse/updates/4.2
  5. 確認できたら一旦ダイアログを閉じます
  6. メニューバーから Help→Check for Updates でアップデートします

eclipseの公式サイトからわざわざダウンロードしなくてもeclipseから直接アップデートできます
お試しあれー

・バージョンアップサイト一覧

・Tips
自分が経験したのでメモしておきますが、上記方法でupdateしたらうまくeclipseが起動できなくなることがありました
その場合は最新版のeclipseのzip版ををダウンロードして既存のディレクトリに上書き展開したら起動しました
ただ、プラグインがうまく動作しないものがあったのでその場合は面倒ですが、該当するプラグインをuninstall -> install しました
「-clean」オプションを付与するとうまく起動する可能性もありますが自分はダメでした 


2012年12月24日月曜日

Location of the android sdk has not been setup in the preferences

eclipseをJUNO(3.8)にアップデートしたらタイトルのエラーが出るようになった

eclipseからAVDManagerが起動できなくなった。。。

ちゃんとパスも設定されているのになぜだ。とずっと悩んでいたがようやく原因がわかった。

パスの設定に「\」が入っているとダメになる場合があるようで

「\」→「/」

にするとエラーがなくなり、設定したVirtualDeviceも認識されるようになった。

うーん、バグなのかな。

P.S
最後にも「/」を入れてあげるようにしましょう

P.S2
どうやらeclipseのバージョンが3.8(Juno)である場合には毎回Android SDKのパスを設定する必要があるみたいです
毎回「/」を入れて(あったら削除して)読み込んであげないとダメみたい・・・バグだろ

githubに公開されているAndroidリポジトリをeclipseプロジェクトにする方法

すいません、この記事何度も追記しております。。。
20140603の追記がちょっと下にありますのでその手順が一番いいと思いますのでその手順を参考にしてみてください

  1. git cloneでリポジトリをローカルにコピー
  2. eclipseで適当な名前でいいのでAndroidプロジェクト(Android Application Project)をデフォルトの設定で作成
  3. cloneしたリポジトリのファイルから「libs」「res」「src」「AndroidManifest.xml」「proguard-project.txt」「project.properties」を作成したプロジェクト配下に上書きコピー
  4. プロジェクトをcleanする(おそらくエラー状態になります)
  5. src 配下のデフォルトで作成されたパッケージを削除します
  6. bin, gen フォルダを削除して再生成させます
  7. 一旦eclipseを再起動でエラーが解消されると思います

自分がやった限りだとこれが一番手っ取り早い気がします。

ただ、この場合eclipseからコミットできないんですよね。。。
コミットしたら再度上書き保存でプロジェクトclean。。。せつない。。。

なんか他に良い方法とかあるのかなー。。。

P.S 20140116
もっと簡単な方法があったので紹介します
  1. githubからandroidプロジェクトのリポジトリをcloneします
  2. eclipseを開き「Package Explorer」のどこかで右クリックしNew->Otherをクリックします
  3. ウィザードで「Android Project from Existing Code」を選択しNextをクリックします
  4. RootDirectoryの選択で先ほどcloneしたフォルダの1つ上のフォルダを選択します
  5. ※C:\git\android-ncmb-sampleにクローンしたら「C:\git」を選択します
  6. Finishをクリックすればプロジェクトの作成が完了です

P.S 20140131
上記の既存コードをプロジェクトにする方法ですが自分がやった感じだと3系のeclipseだとうまくいかないことがありました
ルートフォルダを選択してもうまくAndroidのプロジェクトを探してくれません
4系のeclipseだと問題なくインポートできたので4系にする必要があるかもしれません

P.S 20140603
いろいろ書きましたがやり方自体が間違っていたようです
以下の手順が一番簡単なインポート方法かと思います

1. githubから対象のandroidプロジェクトのリポジトリをcloneします
git clone https://github.com/kakakikikeke/android-data-trade-sample.git
※Windows環境でgitコマンドが使えない場合は「git for Windows」や「msysgit」をインストールしてください

2. eclipseを開き右上のパースペクティブの選択で「Git」を選択します
※eclipseでgitを使うにはプラグインで「EGit」をインストールする必要があります
※EGitのインストールはEclipse Marketplaceを使うのが簡単です


3. パースペクティブが切り替わったら左ペインから「Add an existing local Git repository」をクリックします


4. eclipseに追加するリポジトリを選択します、先ほどcloneしたディレクトリを入力して「Search」をクリックするとgitリポジトリを検索してくれます
リポジトリが見つかったチェックボックスをONにしてFinishをクリックします
※Searchしてもリポジトリが見つからない場合は検索しているディレクトリがcloneしたディレクトリになっているか確認してください


5. リポジトリが追加されたらリポジトリを選択し右クリックで「Import Projects...」を選択します


6. プロジェクトとしてインポートする方法を選択するウィザードが開きますので「Import existing projects」を選択しNextを押します


7. プロジェクトとしてeclipseにインポートする際のプロジェクト名が表示されますのでFinishをクリックしてインポート完了です


このとき「No Projects found」となって以下のようなエラーになる場合には


Githubからcloneしたリポジトリ内に「.classpath」と「.projects」ファイルがないのが原因です
大抵のJavaプロジェクトはGithubで公開するときに .classpath や .projects ファイルを .gitignore に記載してコミットしないようにしています
eclipseはこの2つのファイルを元にプロジェクトをインポートするので、この2つのファイルが存在しないとインポートできません
すでにeclipseに他のプロジェクトがある場合はその配下にある .classpath と .projects ファイルをコピーしてもいいですが、内容が全く同じではダメなので適宜書き換える必要があります
もし既存のプロジェクトもない場合に一度インポートするプロジェクトと同じプロジェクトをeclipse上に作成し、そのプロジェクト配下から .classpath と .projects をコピーしてくるのがいいかと思います
また、今回インポートしようしとしているプロジェクトはAndroidプロジェクトなので別途作成するプロジェクトはAndroidプロジェクトを作成してください
MavenプロジェクトやTomcatプロジェクトを作成すると .classpath や .projects の内容が大きく異なりますのでご注意ください(主に異なるのは .classpath になるかと思います)
.classpath と .projects をcloneしたリポジトリにコピーしたら.projectsファイルのを開いて<name>タグの部分を編集します
ここにはeclipseにインポートする際のプロジェクト名を記載する必要がありますので、既存のプロジェクト名と重複しないようにして好きなプロジェクト名を入力してください
編集が完了したら再度 6. の手順からインポートするとエラーとならずインポートできるかと思います

8. インポートが完了したらパースペクティブをGitからJavaに変更すればインポートしたプロジェクトが左ペインに表示されているかと思います
ここでプロジェクトにエラーが発生している場合は一度プロジェクトをcleanしてみるといいかもしれません
それでもエラーが発生している場合は「クラスパスの問題」や「足りていないライブラリある」「文字コードがおかしい」等いろいろな要因が考えられますので
eclipseのデバッグコンソールからエラー内容を確認して対処していくのがいいと思います

rsyncでproxyを使う方法【Squid編】

■Squidインストール
yum -y install squid

■Squid設定
vi /etc/squid/squid.conf
574行目あたり
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 873      # ← add 873
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl Safe_ports port 873         # for rsync proxy ← new
acl CONNECT method CONNECT

■rsyncdの設定(xinit.dの設定)
vi /etc/xinetd.d/rsync
service rsync
{
        disable = no # ここをnoにする
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}
/etc/init.d/xinetd reload

■rsync設定
export RSYNC_PROXY=proxy_server:873

■実行
rsync -av test.txt root@dest_server:/root/




とか必死こいていろいろググったりして設定したけど結局正解は以下でしたw
vi /root/.ssh/config
Host dest_server
        ProxyCommand ssh root@proxy_server nc %h %p
http://kakakikikeke.blogspot.jp/2012/03/10ssh.html
sshのノンパス設定を実施してからすれば2回パスを聞かれることもありません

ヒントになったのは以下のエラーメッセージでした
ssh: connect to host 172.29.32.206 port 14022: Connection timed out
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(463) [receiver=2.6.8]

ネットの情報も全部信じちゃダメよってことですね

2012年12月23日日曜日

init_cache_dir /var/spool/squid... /etc/init.d/squid: line 62: 9145 アボートしました

■エラーメッセージ詳細
init_cache_dir /var/spool/squid... /etc/init.d/squid: line 62: 9145 アボートしました$SQUID -z -F -D >> /var/log/squid/squid.out 2>&1
squid を起動中: /etc/init.d/squid: line 42: 9146 アボートしました$SQUID $SQUID_OPTS >> /var/log/squid/squid.out 2>&1

■対処方法
vi /etc/squid/squid.conf
visible_hostname hostname
service squid start

2012年12月21日金曜日

【capistrano】upload via sftp failed on XXX.XXX.XXX.XXX: Net::SFTP::StatusException (Net::SFTP::StatusException open hogehoge (2, "no such file"))

■原因
指定しているパスの後ろに改行文字が入ってしまいパスが正常に認識できなくなっている

■解決策
パスの部分にString.stripのメソッドを一旦かませると正常にパスを認識する

2012年12月20日木曜日

ブログでソースコードをきれいに見せる方法【blogger SyntaxHighlighter】

P.S 20140811
文章の体裁を整えました
他の言語のhighlight方法を追記しました

①各ブログサービスで直接HTMLを編集できるページに移動
bloggerの場合はテンプレート→HTMLの編集で編集画面に遷移できます

②HTMLの<head>タグ内の最後に以下の行をすべて追加し保存
<link href='http://alexgorbatchev.com/pub/sh/current/styles/shCore.css' rel='stylesheet' type='text/css'/>
<link href='http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/>
<script src='http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js' type='text/javascript'></script>
<script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJava.js' type='text/javascript'></script>
<script language="javascript" type="text/javascript">
 SyntaxHighlighter.config.bloggerMode = true;
 SyntaxHighlighter.all();
</script>

③class要素付きの<pre>タグで囲めば完了
<pre class="brush: java">
</pre>
で囲みます
以下サンプルです
public static void main (String[] args) {
    System.out.println("test");
}

■注意事項
  • 今回はJavaを使用しましたが、他にもいろいろなソースコードを表示するためのスタイルが用意されています
  • shBrushJava.jsの部分をshBrushRuby.jsに変更して等追記することで他の言語に対応可能です http://javascript.webcreativepark.net/library/syntaxhighlighterにbrushのリストが記載されております
  • bloggerの場合、プレビューまで表示しないと反映されているかどうかがわかりません(HTMLと作成の切り替えだけではわかりません)
  • 直接CSSを編集する方法はここでは紹介しませんが、bloggerでも頑張ればできるようです

■参考サイト

2012年12月18日火曜日

Windowsでchef-soloを使用してソフトのインストールを設定をしてみる

■事前準備
http://kakakikikeke.blogspot.com/2012/12/windowschef-solo.html

上記の記事を参考にwindowsにchef-soloをインストールしてください

■cookbooksを配置するフォルダを作成
C:\opscode\chef-repo

のパスになるようにフォルダを作成してください
chef-repoフォルダを作成するだけで大丈夫だと思います。(それ以外はデフォルトで存在していると思います)

■cookbooksのダウンロードと配置
Windows用のgitbashを起動してopscodeの公式cookbooksをダウンロードします
https://github.com/opscode/cookbooks

gitbashがインストールされていない場合には以下の記事を参考にしてgitbashをインストールしてください
http://kakakikikeke.blogspot.com/2012/05/windows7git.html

gitbashを起動したら
  1. C:\opscode\chef-repoに移動し
  2. git clone git://github.com/opscode/cookbooks.gitを実行します

するとopscodeの全てのcookbooksがダウンロードされ配置されます(7-zipのcookbooksがあることも確認できると思います)

■実行前の設定
C:\opscode\chef-repo
配下に7-zip.jsonファイルを作成し、以下のように記述しましょう
{
     "run_list": ["recipe[7-zip]"]
}

また同じ階層にsolo.rbを作成しましょう
以下のように記述してください
cookbook_path ["C:\\opscode\\chef-repo\\cookbooks"]

■chef-solo実行
chef-solo -j 7-zip.json -c solo.rb

-j、-cのオプションで作成したファイルそれぞれのパスを指定しましょう
上記の場合はC:\opscode\chef-repoにすでに移動している場合です

■7zの動作確認
コマンドプロンプトを新たに起動して「7z」とコマンドを実行してみましょう
ヘルプコマンドが表示されるはずです
これが表示されればインストール完了です


また、chef-solo実行時にopenldapのcookbooksでエラーを吐く場合があります
以下を参考にして回避すれば大丈夫です
参考にしてみてください
http://kakakikikeke.blogspot.com/2012/12/cheffatal-nomethoderror-undefined.html

2012年12月17日月曜日

zabbix1.8でphp5.3を使用する方法

■背景
  • zabbix-jp1.8.1を使用していた
  • わけあってphpMyAdminを使用することになりphpのバージョンを5.1から5.3にバージョンアップした
  • するとzabbix-web系のパッケージが同時に削除されてしまいzabbixが動作しなくなった

■解決方法
http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel5/x86_64/
から
  • zabbix-web-mysql-1.8.15-1.el5.JP.x86_64.rpm
  • zabbix-web-1.8.15-1.el5.JP.x86_64.rpm
の2つをダウンロードし以下のコマンドを実行

rpm -ivh zabbix-web-* --nodeps

一応これでzabbix-serverの起動を確認することができました
どうやらzabbix1.8.1はphpのバージョンが5.1でないとパッケージの依存性エラーが出てしまうようです


P.S
上記で再インストールを実施するとzabbix_serverではなくzabbix_server_mysqlのプロセスが起動してしまい上手く動作しないようです
以下で一旦パッケージを削除してから再インストールしたところ動作の確認ができました

yum remove zabbix zabbix-server zabbix-server-mysql zabbix-web zabbix-web-mysql
rpm -ivh zabbix-* --nodeps

インストール対象のrpmは以下となります
zabbix-1.8.15-1.el5.JP.x86_64.rpm
zabbix-agent-1.8.15-1.el5.JP.x86_64.rpm
zabbix-server-1.8.15-1.el5.JP.x86_64.rpm
zabbix-server-mysql-1.8.15-1.el5.JP.x86_64.rpm
zabbix-web-1.8.15-1.el5.JP.x86_64.rpm
zabbix-web-mysql-1.8.15-1.el5.JP.x86_64.rpm

あとは/etc/zabbix/配下の設定ファイルをすべて書き換えて完了です
結構たいへんでした・・・


2012年12月16日日曜日

【chef】FATAL: NoMethodError: undefined method `length' fornil:NilClass

[2012-12-16T15:58:11+09:00] INFO: *** Chef 10.16.2 ***
[2012-12-16T15:58:20+09:00] INFO: Run List is []
[2012-12-16T15:58:20+09:00] INFO: Run List expands to []
[2012-12-16T15:58:20+09:00] INFO: Starting Chef Run for yoshi2
[2012-12-16T15:58:20+09:00] INFO: Running start handlers
[2012-12-16T15:58:20+09:00] INFO: Start handlers complete.
[2012-12-16T15:58:21+09:00] WARN: Missing gem 'right_aws'
[2012-12-16T15:58:21+09:00] INFO: Missing gem 'mysql'

================================================================================

Recipe Compile Error in C:/opscode/chef-repo/cookbooks/openldap/attributes/default.rb
================================================================================


NoMethodError
-------------
undefined method `length' for nil:NilClass

Cookbook Trace:
---------------
  C:/opscode/chef-repo/cookbooks/openldap/attributes/default.rb:19:in `from_file'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/mixin/from_file.rb:30:in `instance_eval'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/mixin/from_file.rb:30:in `from_file'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_context.rb:192:in `block in load_attributes'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_context.rb:230:in `call'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_context.rb:230:in `block (2 levels) in foreach_cookbook_load_segment'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_context.rb:229:in `each'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_context.rb:229:in `block in foreach_cookbook_load_segment'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_cotext.rb:227:in `each'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_context.rb:227:in `foreach_cookbook_load_segment'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_context.rb:189:in `load_attributes'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/run_context.rb:65:in `load'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/client.rb:198:in `setup_run_context'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/client.rb:418:in `do_run'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/client.rb:176:in `run'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/application.rb:140:in `run_chef_client'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/application/solo.rb:224:in `block in run_application'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/application/solo.rb:216:in `loop'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/application/solo.rb:216:in `run_application'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/lib/chef/application.rb:72:in `run'
  c:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.16.2/bin/chef-solo:25:in `<top (required)>'
  c:/opscode/chef/bin/chef-solo:19:in `load'  c:/opscode/chef/bin/chef-solo:19:in `<main>'
Relevant File Content:
----------------------
C:/opscode/chef-repo/cookbooks/openldap/attributes/default.rb:

 12:  # Unless required by applicable law or agreed to in writing, software
 13:  # distributed under the License is distributed on an "AS IS" BASIS,
 14:  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 15:  # See the License for the specific language governing permissions and
 16:  # limitations under the License.
 17:  #
 18:
 19>> if domain.length > 0
 20:    default[:openldap][:basedn] = "dc=#{domain.split('.').join(",dc=")}"
 21:    default[:openldap][:server] = "ldap.#{domain}"
 22:  end
 23:
 24:  openldap[:rootpw] = nil
 25:
 26:  # File and directory locations for openldap.
 27:  case platform
 28:  when "redhat","centos"

[2012-12-16T15:58:21+09:00] ERROR: Running exception handlers
[2012-12-16T15:58:21+09:00] ERROR: Exception handlers complete
[2012-12-16T15:58:21+09:00] FATAL: Stacktrace dumped to C:/chef/cache/chef-stacktrace.out
[2012-12-16T15:58:21+09:00] FATAL: NoMethodError: undefined method `length' fornil:NilClass



とまぁこんな感じでchef-solo実行時にエラーになってしまいました。
環境はWindowsです。
いろいろ調べたんですが、どうやってもダメでした。
で結局たどり着いた解は

rm -rf chef-repo/cookbooks/openldap/

ってな感じでcookbooks自体を削除してしまうことでしたw
バグなのかなーと思ったけどとりあえずこれで回避できました

Windowsにchef-soloをインストール

■chef-soloインストール
http://wiki.opscode.com/display/chef/Installing+Chef+Client+on+Windows

上記のサイトからwindowsに必要なchef一式のインストーラをダウンロードしインストールします
以下のリンクの場所になります



インストールは全てデフォルトのままで問題ないです

■インストールの確認
コマンドプロンプトを開いてchef-soloを実行します
以下のように表示されればインストールは完了です



FATALレベルのエラーが出ていますが、これはcookbooksがないので出ているだけです

次回はopscodeで配布しているcookbooksを利用して実際にchef-soloを実行してみたいと思います

2012年12月15日土曜日

Error importing repomd.xml for zabbix-jp: Damaged repomd.xml file

yum updateを以下のようなエラーがでました

http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel5/x86_64/repodata/repomd.xml: [Errno -1] Error importing repomd.xml for zabbix-jp: Damaged repomd.xml file

yum clean allとか試してみましたが、ダメでした。

なんだろうなー。といろいろ調べたのですが、どうやらzabbix.jpのドメインが落ちている様子・・・
ブラウザでzabbix.jpのサイトにアクセスしてもレスポンスが帰って来なかった・・・
たまたま自分がアクセスしたときだけだったかもしれませんが。

回避方法としては/etc/yum.repos.dに登録されているzabbixのリポジトリ情報を削除すればエラーがなくなります。
ただ、zabbixのリポジトリからyumを使ったインストールができなくなります。

とりあえず回避したいだけなら上記をお試しくださいませー

2012年12月14日金曜日

Twitterのあるアカウントが凍結されているか確認する方法

TwitterのAPIにはどうやらないみたいです。

ってことでAPIを使わないでも簡単に確認できる方法を紹介します。


RESULT=`curl "https://twitter.com/kakakikikeke" | wc -l`; echo $RESULT;


これでRESULTが0以外なら凍結(suspend)されてないことになります。

逆に0なら凍結状態ってことになります。

シェルスクリプトでかけるので、あとはforとか駆使すれば一気に確認できると思います。

2012年12月5日水曜日

WaveoutGetSelectControl() failed

CamStudioで録音設定でスピーカーを選択すると出るみたい
バグだとかなんだとか・・・

修正するには

Recode audio from microphone

を選択するとちゃんと音楽も録音できてエラーも出なくなるみたい

2012年12月2日日曜日

VMware Playerでプロキシサーバを使っていVMware toolsをインストールする方法


仮想マシンを一台起動している状態で
メニューバーから
「Player」→「ファイル」→「Playerの環境設定」
を開きます


真ん中あたりのソフトウェアの更新の設定で
「接続設定」
があるので、それを開く


プロキシ設定の欄があるので、そこにプロキシを設定すれば完了です

作成したVMのブラウザやOS自体のプロキシの設定をしても
PlayerがダウンロードするVMware toolsのプロキシの設定にはならないので注意してください

2012年11月30日金曜日

phpMyAdminで接続先のDBを変更する方法

cd /var/www/html/phpMyAdmin/
cp -ipr config.sample.inc.php config.inc.php
vi config.inc.php

  $cfg['Servers'][$i]['host'] = '192.168.91.1';

service httpd restart

2012年11月29日木曜日

CentOS6.3にphpMyAdminをインストール

■環境
CentOS release 6.3 (Final)

http://wiki.centos.org/Download
上記から
CentOS-6.3-x86_64-bin-DVD1.isoをダウンロードしインストール
インストール時の設定はすべてデフォルトでインストールする

■apacheインストール
既にインストールであった
未インストールの場合はyumでインストールすれば問題ない
ドキュメントルートの確認だけしておく
grep DocumentRoot /etc/httpd/conf/httpd.conf

■phpインストール
yum install -y php
yum install -y php-mysql
echo "" >> /var/www/html/index.php

■phpのMySQL拡張用モジュールのインストール
ダウンロード先
http://rpmfind.net/linux/rpm2html/search.php?query=mysqli.so
MySQLに接続するための拡張モジュールが必要
これを入手できていれば以下の方法でやる必要はない

wget wget ftp://rpmfind.net/linux/centos/5.8/os/i386/CentOS/php53-mysql-5.3.3-5.el5.i386.rpm
rpm2cpio php53-mysql-5.3.3-5.el5.i386.rpm | cpio -id
cp -ip usr/lib/php/modules/* /usr/lib64/php/modules/
echo "/usr/lib64/php/modules" >> /etc/php.ini


※上記はやる必要がないと判明したためやる必要なし

■phpMyAdminのダウンロードとインストール
wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.5.4/phpMyAdmin-3.5.4-all-languages.tar.gz/download
cd /var/tmp
tar zxvf phpMyAdmin-3.5.4-all-languages.tar.gz
mv phpMyAdmin-3.5.4-all-languages phpMyAdmin
mv phpMyAdmin /var/www/html/
chmod -R apache:apache /var/www/html/phpMyAdmin

■SELinux設定
vi /etc/selinux/config
SELINUX=disable
にする
reboot -h

■起動
chkconfig httpd on
service httpd start

http://localhost/
⇒phpの画面が表示されること
http://localhost/phpMyAdmin
⇒phpMyAdminの画面が表示されること

2012年11月28日水曜日

【CentOS】yum install時に「/sbin/ldconfig: /usr/lib64/libhadoop.so.1 is not a symbolic link」が出る場合の対処方法

■原因
yum updateを実施すると以下のようなエラーが発生しました

/sbin/ldconfig: /usr/lib64/libhadoop.so.1 is not a symbolic link
/sbin/ldconfig: /usr/lib64/libhdfs.so.0 is not a symbolic link

原因はldconfigの設定が足りないようです

■対応方法
[root@yoshi3 ~]# grep lib64 /etc/ld.so.conf.d/*
/etc/ld.so.conf.d/mysql-x86_64.conf:/usr/lib64/mysql
/etc/ld.so.conf.d/vmware-tools-libraries.conf:/usr/lib/vmware-tools/lib64/libvmGuestLib.so
/etc/ld.so.conf.d/vmware-tools-libraries.conf:/usr/lib/vmware-tools/lib64/libvmGuestLibJava.so
/etc/ld.so.conf.d/vmware-tools-libraries.conf:/usr/lib/vmware-tools/lib64/libDeployPkg.so
/etc/ld.so.conf.d/xulrunner-64.conf:/usr/lib64/xulrunner-2

hadoopの設定がないためにエラーが発生していた

[root@yoshi3 ~]# vi /etc/ld.so.conf.d/hadoop.conf
/usr/lib64/libhadoop.so.1
/usr/lib64/libhdfs.so.0

上記2行を追加する

2012年11月27日火曜日

【Zabbix】アクションでシェルスクリプトを実行する方法

■環境
Zabbix 1.8.13
CentOS release 5.8 (Final)

■zabbix-agentd.conf設定
emacs /etc/zabbix/zabbix_agentd.conf

EnableRemoteCommands=0

EnableRemoteCommands=1

service zabbix-agent restart

■トリガーの設定


トリガーを作成するときは必ず
ノーマル+障害イベントを継続して生成
にして作成しましょう。でないとアクションが実行されません

■アクションの設定


設定するスクリプトは
hostname:command
の形式で設定します
コマンドがうまく実行されない場合は権限を疑いましょう
一番手っとり早いのはzabbix-agentをrootユーザとして立ち上げるので
zabbix_agentd.conf

AllowRoot=1
に設定してzabbix-agentを再起動しましょう


上記の設定例はサーバのディスク容量のルートパーティションが15GBを超えた時にアクションが実行される例となります
「監視データ」→「イベント」のアクション欄が正常になっていればアクションで設定したスクリプトが実行されています
また、イベントのステータスに「不明」が出ている場合もスクリプトが実行されていないので設定を見なおしてみましょう






2012年11月26日月曜日

【CentOS】zabbixのmysqlデータの保存先を変更する方法

zabbixはデフォルトで

/var/lib/mysql

に保存されるようになっています
これはzabbixだけではなく大元のmysqlもデフォルトでここをデータの保存先としています

ローカルなので、追加ディスク等に変更したい場合には
追加ディスク上にデータを以降したあとにシンボリックリンクを貼ることで対応するのがベストです

service mysqld stop
service zabbix-agent stop
cd /var/lib
mv mysql /yoshi3
ln -s /yoshi3/mysql mysql
service zabbix-agent start
service mysqld start

2012年11月22日木曜日

【TeraTermマクロサンプル】動的に変化するIPアドレスに対して一定のユーザ名とパスワードでログインし続けるためのマクロ

完全に自分用ですがw

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
username = 'Please input your username'
password = 'Please input your password'
keyfile = 'Please input the path of keyfile'
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

msg = 'Enter connect IP address'
inputbox msg 'Get IP address'

msg = inputstr
strconcat msg ':22 /ssh /auth=publickey /user='
strconcat msg username
strconcat msg ' /keyfile='
strconcat msg keyfile
strconcat msg ' /passwd="'
strconcat msg password
strconcat msg '"'
connect msg

しかもデフォルトでTeraTermに付属しているサンプルを元にして作っているだけです
メモ用ってことで


2012年11月21日水曜日

perlで対話式のy/nをすべてYesで答える方法

--default

というオプションをつけてperlスクリプトを実行すると全てYesの方になります。
vmware-toolsを入れる時とかはすごい便利かもしれないです。

2012年11月20日火曜日

eclipse起動時にローカルのmavenリポジトリを自動更新させない方法

eclipse起動後に

Window→Preferences

で以下のダイアログが表示されるので赤枠の部分のチェックボックスを外して完了です



2012年11月19日月曜日

【CentOS】ISOファイルを作成する方法とマウントする方法

■作成
dd if=/dev/sdb0 of=test.iso

■マウント
mount -o loop test.iso /mnt/iso


/mnt/isoがない場合は勝手にフォルダ作って大丈夫そうです。
ちまみにddでisoを作るときに直接ファイルとかを指定するとできないってぽいです。
パーティションを指定する必要がありそうです。

http://d.hatena.ne.jp/festango/20091008/p1

便利でした。ありがとうございます。

2012年11月17日土曜日

シングルユーザモード時にfsckが実行されたがrootのパスワードがわからなくてどうしようもなくなったときの対処方法

single

を基本的にはGRUBのパラメータを追加する画面で入力していると思いますが、
それに以下を追加すると幸せになるかもしれません

init=/bin/sh

上記でダメだったらinit=/bin/bashもチャレンジしてみるといいと思います


■参考サイト
http://linuxcat.org/showthread.php?tid=21&pid=27

2012年11月16日金曜日

Vmware上にdebian6をインストールしてみた

■ISOの入手
以下のサイトにアクセスしDownloadをクリック

http://cdimage.debian.or.jp/

今回は64bit版のdebian6「debian-6.0.6-amd64-DVD-1.iso」を使ってインストールしてみます

■インストール手順
特に引っかかるところはなくどんどんインストールしていけば大丈夫だと思います。
一応ポイントになりそうなところだけ
  • グローバルにつながるネットワークがある場合にはパッケージをネットから持ってくることもできる
  • デフォルトではネットワークカードの認識を自動で行なってくれるが、一つのカードしか認識してくれないのでログイン後に他のカードの設定を実施する必要がある
  • vmxnet3は認識してくれません。E1000を使いましょう
  • 自動認識で設定した場合はデフォルトでdhcpになっているので、必要であれば手動で設定しなおすことも可能
  • サーバタイプを選択するときはsshサーバは選んだほうがいいと思います

参考までに自分がインストールした設定を以下に記載しておきます



























2012年11月15日木曜日

ドコモからauにMNPする際に必要なもの


というのが最低の情報で
ポイントはここから

上記は

名義が本人でない場合で
本人名義でない場合にはさらに以下が必要になります

  • 名義人自身が同行する or 名義人が執筆した委任状と名義人の本人確認ができるもの
  • 名義人が発行したMNP予約番号

とかなり厳しいです。
ドコモの契約では名義と契約者という2つがあり、契約者が本人でも名義が本人でない場合があるので要注意です
しかもMNP予約番号も名義人でしか発行できないので、これも注意です

いっそのこと変更しようとしているドコモの携帯の名義を本人に変更するという手もありますが、
実はこれをやるのも名義人の同行もしくは委任状が必要になります。
まぁ名義人命って感じですねw

いやーめんどくさい
自分は結局名義人が違うって言われて契約の途中で断念せざるを得ませんでした
だったら初めから本人名義じゃないとダメって言ってほしかったです。。。

というわけでみなさんも気をつけてください。MNPはいろいろ大変です!



P.S 20130407
実際にMNPでドコモからauに乗り換えたのでそのときのメモも書いておきます

■スマートバリュー加入条件
auひかり回線を引いている住所=契約者の身分証見書に記載されている住所
かつ
苗字が同じ

でなければなりません。
家族の誰かがauひかりの回線を引いていたも登録する住所が異なってしまう場合にはスマートバリューは適用されません

またスマートバリューは契約した月は「適用にならず」翌月以降の適用になります

■費用
・2年間
980円(基本料金)+5,985円(LTE料金)+315(LTE NET)+通話料-980円(ウェルカム割)-2,140円(毎月割)-1,480円(スマートバリュー)=2,680円+α
・2年後
980円(基本料金)+5,985円(LTE料金)+通話料-980円(スマートバリュー)=5,985円+α

ウェルカム割、毎月割、スマートバリューは翌月以降からの割引となります(初月は割引なしの満額が来ます)
上記に記載はしていません、プラスでユニバーサルサービス料(3円)がかかります
事務手数料もかかります(下記参照)
あとはスマートパスとかデザリングオプションとか通話料金の上乗せとかで変化します
詳細は以下を御覧ください
http://www.au.kddi.com/mobile/charge/iphone5/

■契約時の注意事項
MNPでの乗り換えだとauに3,150円の事務手数料が取られます
課金タイミングは初回の引き落とし時です
同時にドコモ側にもMNPの事務手数料で2,100円取られます
こちらはドコモの最終課金月で合算して引き落としされます

auに切り替わるとすぐにドコモの携帯は使用できなくなります
それを考えると特に月初に変えなくてもいいかもしれません(むしろ月末のほうが翌月課金がないのでいいかもしれないです)

課金は初月からかかります

2012年11月13日火曜日

VMware上にTurbolinux 11 Serverをインストールしてみた

■ISOの入手
以下のサイトにアクセスしDownloadをクリック

http://www.turbolinux.co.jp/products/starterkit.html

アドレス情報を登録するとメールが届くので、そのメールに記載されているダウンロードリンクから2枚のISOをダウンロードします。
今回は64bit版をダウンロードしました。

また、今回ダウンロードしたISOは30日間無償で使用できるライセンスとなりますので、それ以上の利用を希望される際には公式サイトからユーザ登録を行い製品版を購入しましょう。

■インストール手順
  1. ダウンロードしたISOのうち「musasabi64-SP1-disk1.iso」をまずはインストールする
  2. VMを1台作成し起動、BIOS画面からCD-ROMドライブで起動するように設定しCD-ROMをマウントし再起動
  3. するとISOから起動し始めるのでインストールを開始する
  4. インストール終了後更に追加したいパッケージがある場合には「musasabi64-SP1-disk2.iso」をマウントして必要なものをインストールする

参考までに自分がインストールした設定を以下に記載しておきます




今回は日本語インストールを実行します




標準インストールでいきます


日本語キーボードを選択




パーティションは自動で切ってもらいます


ブートローダはインストールします






標準サーバとしてインストールします


今回Xはインストールしませんが、設定はしておきます








追加パッケージのインストール画面になったらマウントしていたmusasabi64-SP1-disk1.isoをアンマウントし,musasabi64-SP1-disk2.isoをマウントしなおします




vmware-toolsのインストールに必要なperlとgccをインストールします
※実はmake等も必要でしたが、実際にvmware-toolsをインストールするときにTurbolinuxのインストールディスクをマウントしたら自動で必要なパッケージをインストールしてくれました





ここまでインストールできたら再起動します起動後にvmware-toolsの自動インストールを実行して終了となります

■その他(メモ)
  • ブートローダはRHEL系のanacondaではなく独自のmongooseと呼ばれるブートローダを使用している
  • 実はvmxnet3のドライバが入っていない。そのためE1000でネットワークカードをつける必要がある(すごいはまりました・・・)


いじょうです
TurboLinuxは商用なので、ISOを手に入れるのが一番大変かもしれませんw