2014年11月21日金曜日

【解決済み】OS X 10.10 にアップグレードしたら brew の httpd22が動かない

今朝、時間が出来たので、OS X 10.10 yosemiteのupdateをすると、
homebrew でインストールしているhttpd2.2.29が動かず、
"It Works!!"と元気な文字が。 

「あれ?」と思いながらもどうやら、defaultの2.4.9が動いている様子。
 homebrew reinstall httpd22や、 apr含め入れなおすも依然としてdefault が生きています。
まぁ止めればいいんですが、再起動毎にそんな手間は掛けられないので、
いろいろ試行錯誤しても改善しないので、googleで検索すると、 stackoveflowでも同様の現象で悩んでいるケースがちらほら。 
その中でも秀逸だったのが以下。 僕はこれで一旦解決しました。

  参考までに。

2014年10月20日月曜日

fuelphpでMongoDBのfixtureを作成する

最近業務で、FuelPHPを触っています。
PHPUnitでテストを書く際にMongoDBのデータをいじるのですが、
fixtureが必要になり、Webを探しているとkenjisさんの記事を発見。
FuelPHP での PHPUnit によるユニットテスト
DBUtilを利用している部分をちょっと修正し、以下のようにしてみました。


ちゃんと作成されるようで一件落着

2014年10月17日金曜日

【解決済み】OS X Yosemiteにアップグレードしたらphpstormが起動しなくなった。



本日macをOS X Yosemiteにアップグレードしたら
PHPStormが起動しなくなりました。
webで解決方法を探るとJetBrainsのこちらのスレッドに解決方法がありました。

IDE doesn't start after updating to Mac OS Yosemite or Mavericks


どうやらyosemiteはJAVA6をサポートしてないみたいです。
またPHPStorm側もJVMのversion指定に誤りがありそうです。
※そのうちupdateされるでしょう

解決した方法は
以下からJAVA8をダウンロードし、インストールします。
その後PHPStormのInfo.plistを修正
/Applications/PhpStorm.app/Contents/Info.plist

From: 
1.6*

To: 

1.6+


ふぅ一安心。

2014年7月18日金曜日

「Noto Fonts」をCSSのfont-familyで指定する


GoogleFonts

プロジェクトは以下です。
Noto[code.google.com]


文字セットは以下
https://www.google.com/fonts/specimen/Noto+Sans#charset

源ノ角ゴシック(Source Han Sans) をCSSのfont-familyで指定する

CSSの「font-family:」では「総称名」での指定はできないようです。
適用するには「SourceHanSansJP-Regular」という形式で書く必要があります。
/*
 * Font-style
 */
body {
    font-family:
        'Open Sans', Georgia,
        "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN",
        SourceHanSansJP-Regular
}

2014年7月11日金曜日

【Android Studio】【対処法】 「Error: Could not create the Java Virtual Machine」と表示される場合の対処法

AndroidStudioを使っていると、 「Error: Could not create the Java Virtual Machine」と表示され、 実機インストールが出来なくなってしまいました。

 どうやらメモリ不足のようです。

 {android-studio installpath}\bin\studio.exe.vmoptions をテストエディタで開き

 -Xms128m

-Xms512m

 とする事で対処出来ました。

 以下を参考にさせて頂きました。
http://stackoverflow.com/questions/16589585/android-studio-error-could-not-create-the-java-virtual-machine?answertab=active#tab-top

2014年6月24日火曜日

Centos に軽量ブラウザのmidoriをyumでinstallする。

VNCで接続中にブラウザからルータを覗く必要があったので 備忘録です。
[user@localhost ~]$ wget http://li.nux.ro/download/nux/dextop/el6/i386/nux-dextop-release-0-1.el6.nux.noarch.rpm

or 

[user@localhost ~]$  wget http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-1.el6.nux.noarch.rpm
[user@localhost ~]$ sudo rpm -Uvh nux-dextop-release-0-1.el6.nux.noarch.rpm
[user@localhost ~]$ sudo vim /etc/yum.repos.d/nux-dextop.repo
[user@localhost ~]$ sudo yum -y --enablerepo=nux-dextop install midori
via http://minimallinux.blogspot.jp/2012/07/centos-6-install-midori-browser.html

2014年5月9日金曜日

phpでwhois情報を取得する

footerなんかの年号をwhoisのcreationdateから取得してみては?と思いついたのですが、
coreserverはwhoisコマンドがインストールされていません。
 検索してみるとどうやらwhoisの結果をjsonで返すサービスがあったので、 以下のように取得してみました。 ひとりよがりです。 追記: packagistに結構ありますね。 https://packagist.org/search/?q=whois

2014年5月1日木曜日

[PHP]サーバの稼働時間を取得する

サーバーの連続稼働時間を取得したいと考えました。
秒数はこの方法でとりあえず書いてみましたが、もっといい方法があるはず。 html側ではこんな感じに書くと、setIntervalで1秒毎に取得しにいきます。

2014年3月11日火曜日

CnetOS 6.5 にMariaDB 10.0.8 をyum で導入 して HandlerSocket を有効にする

MariaDBをインストールして、MySQLデータベースへのアクセスを高速化するためのプラグイン「HandlerSocket」を導入します。 GPGキーを導入
[user@localhost ~]$ rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
mariaDBリポジトリを設定
[user@localhost ~]$ vi /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0.1/centos6-x86
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
enabled=1
yumでインストール
[user@localhost ~]$ yum install MariaDB-devel MariaDB-client MariaDB-server
MariaDBの起動
[user@localhost ~]$ service mysql start
Starting MySQL. SUCCESS!
自動起動設定
[user@localhost ~]$ chkconfig mysql on
[user@localhost ~]$ chkconfig --list mysql
mysql           0:off   1:off   2:on    3:on    4:on    5:on    6:off
初期設定
[user@localhost ~]$ mysql_secure_installation




NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):  #← 空ENTER
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n]  #← 空ENTER(rootパスワード設定)
New password:  #← rootパスワード応答
Re-enter new password:  #← rootパスワード応答(確認)
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n]  #← 空ENTER(匿名ユーザー削除)
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n]  #← 空ENTER(リモートからのrootログイン禁止。必要なら n を選択)
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n]  #← 空ENTER(testデータベース削除)
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n]  #← 空ENTER
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!
HandlerSocketとは?
簡単に言うと、MySQLデータベースへのアクセスを高速化するためのプラグインです。MySQLのSQLパーザをすっ飛ばし、ネットワーク通信とマルチスレッド処理周辺を置き換えることによって、InnoDB等のデータベースエンジンの性能を限界まで引き出します。 このHandlerSocketですが、すでにモバゲータウンにて実際に運用しています。 従来MySQLとmemcachedの構成で運用していた箇所を、HanderSocketを組み込んだMySQLだけの構成に置き換えました。 その結果、MySQLサーバの負荷軽減、memcachedの負荷軽減、ネットワークトラフィック減少の効果がありました。 また、単純にHandlerSocketに置き換えたことだけによる効果というわけではないのですが、アプリケーションのCPU負荷も大幅に減少しています。
 via http://engineer.dena.jp/2010/08/handlersocket-plugin-for-mysql.html

MariaDBは、デフォルトでHandlerSocketプラグインが梱包されています。 コマンドでINSTALL PLUGIN 構文を打つか、設定ファイル.cnfに記述するだけでHandlerSocketを有効にすることができます。
MariaDB [(none)]> install plugin handlersocket SONAME 'handlersocket.so';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> 
confに読み込むように記載します。
[user@localhost ~]$ vi /etc/my.cnf.d/server.cnf
~
[mysqld]
plugin-load=handlersocket.so

2014年2月28日金曜日

CentOS 6.5 に yum で webminをインストール

yum で webminをインストールしてみます。
こちら(Using the Webmin YUM repository)に詳しく書いてあります。




[user@localhost ~]$ vim /etc/yum.repos.d/webmin.repo
[Webmin]
name=Webmin Distribution Neutral
#baseurl=http://download.webmin.com/download/yum
mirrorlist=http://download.webmin.com/download/yum/mirrorlist
enabled=1

gpg-keyの取得とinstall
[user@localhost ~]$ wget http://www.webmin.com/jcameron-key.asc
[user@localhost ~]$ rpm --import jcameron-key.asc
webminのinstall
[user@localhost ~]$ yum install webmin
webminはデフォルトで10000番ポートを利用します。 ポートを閉じている場合はiptables等で10000番を開放してください。

2014年2月25日火曜日

CentOS 6.5 に yum で最新のPHP をinstall する。

既存のリポジトリだとPHPは5.3.3-27となっています。
ここでは5.5をinstallしてみたいと思います。

リポジトリを追加


EPELのrepositoryを追加
[user@localhost ~]$ rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm を取得中
警告: /var/tmp/rpm-tmp.SSssDq: ヘッダ V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
準備中...                ########################################### [100%]
   1:epel-release           ########################################### [100%]
remiのrepositoryを追加
[user@localhost ~]$ rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
http://rpms.famillecollet.com/enterprise/remi-release-6.rpm を取得中
警告: /var/tmp/rpm-tmp.u3YZaw: ヘッダ V3 DSA/SHA1 Signature, key ID 00f97f56: NOKEY
準備中...                ########################################### [100%]
   1:remi-release           ########################################### [100%]
php 5.5はremi-php55というrepoです。
[user@localhost ~]$ yum install --enablerepo=remi-php55 php php-devel php-mbstring php-mcrypt php-mysql php-phpunit-PHPUnit php-pecl-xdebug
以下のようにphp 5.5.9がインストールされました。
[user@localhost ~]$ php -v
PHP 5.5.9 (cli) (built: Feb 18 2014 14:51:38) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans

vagrant で box 追加後SSH接続する

boxは以下にまとめられています。
http://www.vagrantbox.es/

今回はCentOSを例に導入してみます。



boxを導入

[user@localhost ~]$ vagrant box add CentOS01 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.1/centos65-x86_64-20131205.box
Downloading box from URL: https://github.com/2creatives/vagrant-centos/releases/download/v6.5.1/centos65-x86_64-20131205.box
Extracting box...te: 981k/s, Estimated time remaining: --:--:--)
Successfully added box 'CentOS01' with provider 'virtualbox'!
[user@localhost ~]$ vagrant init CentOS01                                                                                                                                                                         
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
[user@localhost ~]$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
[default] Importing base box 'CentOS01'...
[default] Matching MAC address for NAT networking...
[default] Setting the name of the VM...
[default] Clearing any previously set forwarded ports...
[default] Clearing any previously set network interfaces...
[default] Preparing network interfaces based on configuration...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] Booting VM...
[default] Waiting for machine to boot. This may take a few minutes...
[default] Machine booted and ready!
[default] Mounting shared folders...
[default] -- /vagrant
ここで追加したboxに対しSSHを行おうとすると、怒られる。
[user@localhost ~]$ vagrant ssh                                                                                                                                                                                   
`ssh` binary could not be found. Is an SSH client installed?
んー。
[user@localhost ~]$ ss
ss          ssh-keygen  sshd        ssltap
sshコマンドがない。ので導入します。ssh コマンドはopenssh-clientsで導入出来ます。
[user@localhost ~]$ yum install openssh-clients
これでSSH接続出来るようになりました。
[user@localhost ~]$ 
vagrant ssh
[vagrant@vagrant-centos65 ~]$ pwd
/home/vagrant

CentOS 6.5 に yum の localinstall で vagrant を導入

rpm -Uvh もいいですが、今回は yum の localinstall を試してみます。

vagrantを取得

最新のvagrantは以下を参照 http://www.vagrantup.com/downloads
[user@localhost ~]$ wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.4.3_i686.rpm

yum で localinstall

[user@localhost ~]$ yum localinstall vagrant_1.4.3_i686.rpm                                                                                                                                                       
Loaded plugins: downloadonly, fastestmirror
Setting up Local Package Process
Examining vagrant_1.4.3_i686.rpm: 1:vagrant-1.4.3-1.i686
Marking vagrant_1.4.3_i686.rpm to be installed
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
Resolving Dependencies
--> Running transaction check
---> Package vagrant.i686 1:1.4.3-1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=================================================================================================================================================================================================================
 Package                                        Arch                                        Version                                             Repository                                                  Size
=================================================================================================================================================================================================================
Installing:
 vagrant                                        i686                                        1:1.4.3-1                                           /vagrant_1.4.3_i686                                         48 M

Transaction Summary
=================================================================================================================================================================================================================
Install       1 Package(s)

Total size: 48 M
Installed size: 48 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : 1:vagrant-1.4.3-1.i686                                                                                                                                                                        1/1 
  Verifying  : 1:vagrant-1.4.3-1.i686                                                                                                                                                                        1/1 

Installed:
  vagrant.i686 1:1.4.3-1                                                                                                                                                                                         

Complete!

2014年2月24日月曜日

CentOS 6.5 にVirtualboxをインストール

Xenや、VMWareではなくて今回はVirtualBoxをCentOSにインストールしてみます。 

yumリポジトリにVirtualBoxリポジトリを追加

[user@localhost ~]$ sudo vi /etc/yum.repos.d/virtualbox.repo

[virtualbox]
name=RHEL/CentOS-$releasever / $basearch - VirtualBox
baseurl=http://download.virtualbox.org/virtualbox/rpm/rhel/$releasever/$basearch
enabled=0
gpgcheck=1
gpgkey=http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc

キーを取得

[user@localhost ~]$ wget http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
[user@localhost ~]$ sudo rpm --import oracle_vbox.asc
[user@localhost ~]$ rm -r oracle_vbox.asc

インストール

[user@localhost ~]$ yum --enablerepo=virtualbox install VirtualBox
Loaded plugins: downloadonly, fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
virtualbox                                                                                                                        |  951 B     00:00     
virtualbox/primary                                                                                                                | 5.7 kB     00:00     
virtualbox                                                                                                                                         22/22
Setting up Install Process
No package VirtualBox available.
Error: Nothing to do

見つからない・・・。ので検索してみる。


[user@localhost ~]$ yum --enablerepo=virtualbox search VirtualBox

Loaded plugins: downloadonly, fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
================================================================ N/S Matched: VirtualBox ================================================================
VirtualBox-3.2.i686 : Oracle VM VirtualBox
VirtualBox-4.0.i686 : Oracle VM VirtualBox
VirtualBox-4.1.i686 : Oracle VM VirtualBox
VirtualBox-4.2.i686 : Oracle VM VirtualBox
VirtualBox-4.3.i686 : Oracle VM VirtualBox

  Name and summary matches only, use "search all" for everything.

最新版を指定してインストール


[user@localhost ~]$ yum --enablerepo=virtualbox install VirtualBox-4.3.i686                                                                                 
Loaded plugins: downloadonly, fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
Setting up Install Process

~依存関係は省略~

================================================================================
 Package              Arch       Version                 Repository        Size
================================================================================
Reinstalling:
 VirtualBox-4.3       i686       4.3.6_91406_el6-1       virtualbox        72 M

Transaction Summary
================================================================================
Reinstall     1 Package(s)

Total download size: 72 M
Installed size: 146 M
Is this ok [y/N]: y
Downloading Packages:
VirtualBox-4.3-4.3.6_91406_el6-1.i686.rpm                |  72 MB     03:06     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : VirtualBox-4.3-4.3.6_91406_el6-1.i686                        1/1 

Creating group 'vboxusers'. VM users must be member of that group!

No precompiled module for this kernel found -- trying to build one. Messages
emitted during module compilation will be logged to /var/log/vbox-install.log.

Stopping VirtualBox kernel modules [  OK  ]
Recompiling VirtualBox kernel modules [  OK  ]
Starting VirtualBox kernel modules [  OK  ]
  Verifying  : VirtualBox-4.3-4.3.6_91406_el6-1.i686                        1/1 

Installed:
  VirtualBox-4.3.i686 0:4.3.6_91406_el6-1                                       

Complete!

バージョンを確認


[user@localhost ~]$ vboxmanage -v
4.3.6r91406
ただ、vboxmanage -vで時に以下のようなメッセージが表示される
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (2.6.32-431.el6.i686) or it failed to
         load. Please recompile the kernel module and install it by

           sudo /etc/init.d/vboxdrv setup

         You will not be able to start VMs until this problem is fixed.
こんな時は恐らく、gcc、kernel-develいずれか(もしくはどちらも)がインストールされていない事が原因でrecompileが出来ない状態です。 以下のようにgcc、kernel-develをインストール後、再起動してから、VirtualBoxをreinstallしてみてください。

[user@localhost ~]$ yum install kernel-devel gcc

~可能なら再起動~

[user@localhost ~]$ yum reinstall VirtualBox-4.3