Pages

2013年8月14日水曜日

Gitエラー「master -> origin/master (unable to update local ref)」の対応

■変更履歴の削除 ※他のgitプロセスが動いていない状態で行うこと

Jenkinsのビルド時に実行しているgit pullでタイトルのエラーを吐いていて、 Stackoverflowの回答を元にGitのクリーンアップしたら直ったのでメモ

■変更履歴の削除 ※他のgitプロセスが動いていない状態で行うこと

$ git gc --prune=now

■リモートリポジトリの削除ブランチをローカルからも消す

$ git remote prune origin

この後再ビルドしたら、ローカルのゴミ削除が履歴にずら〜っと

deleting .git/objects/6f/dfa256da223jrl38rflf
…

参考ページ

git pull fails "unalble to resolve reference" "unable to update local ref" - Stack Overflow

Git ユーザマニュアル (バージョン 1.5.3 以降用)

git(1)

2013年8月5日月曜日

CentOS6.3(on Azure)環境のセットアップ(PHP,Apache,MySQLほかインストール)

■タイムゾーンをJST-9に設定
$ cat /etc/redhat-release
CentOS release 6.3 (Final)

■タイムゾーンをJST-9に設定

$ sudo cp /usr/share/zoneinfo/Japan /etc/localtime

■PHP5.3.3及びApache2.2.15のインストール

yumの標準パッケージの確認

# yum list php
Available Packages
php.x86_64 5.3.3-14.el6_3 updates

バージョンが合ってることを確認後

# yum install php
# php -v
PHP 5.3.3 (cli) (built: Jul 3 2012 16:53:21)

Apacheもバンドルされてるので確認

# httpd -v
Server version: Apache/2.2.15 (Unix)

Apacheの起動

# apachectl -k start
httpd: Could not reliably determine the server's fully qualified domain name, using 100.80.94.7 for ServerName

httpd.confのServerNameにHOSTNAMEを設定

# cat /etc/sysconfig/network

もしくは

# hostname

でHOSTNAMEを調べ、httpd.confに設定する

ServerName hoge-vm:80

■MySQL5.5.19のインストール

MySQL5.5.19(バージョン指定)のRPMを取得 参考:http://christina04.blog.fc2.com/blog-entry-243.html

# cd /usr/local/src
# wget http://downloads.skysql.com/archives/mysql-5.5/MySQL-client-5.5.19-1.el6.x86_64.rpm
# wget http://downloads.skysql.com/archives/mysql-5.5/MySQL-shared-5.5.19-1.el6.x86_64.rpm
# wget http://downloads.skysql.com/archives/mysql-5.5/MySQL-server-5.5.19-1.el6.x86_64.rpm
# wget http://downloads.skysql.com/archives/mysql-5.5/MySQL-devel-5.5.19-1.el6.x86_64.rpm

取得したRPMからインストール

# rpm -ivh MySQL-client-5.5.19-1.el6.x86_64.rpm
# rpm -ivh MySQL-shared-5.5.19-1.el6.x86_64.rpm
# rpm -ivh MySQL-server-5.5.19-1.el6.x86_64.rpm

ここでMySQL-server-5.5.19-1.el6.x86_64 conflicts with file from package mysql-libs-5.1.67-1.el6_3.x86_64という競合エラーがでたので、mysql-libsをアンインストール

# yum remove mysql-libs

依存関係の他のものが消えちゃうらしいので、下記インストール

# wget http://downloads.skysql.com/archives/mysql-5.5/MySQL-shared-compat-5.5.19-1.el6.x86_64.rpm
rpm -ivh MySQL-shared-compat-5.5.19-1.el6.x86_64.rpm

再度、

# rpm -ivh MySQL-server-5.5.19-1.el6.x86_64.rpm

OK!

# rpm -ivh MySQL-devel-5.5.19-1.el6.x86_64.rpm

一旦確認

# mysql --version
mysql Ver 14.14 Distrib 5.5.19, for Linux (x86_64) using readline 5.1

OK!

■MySQLの設定

インストールが終わったのでmy.cnf の作成

$ sudo cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

サービスの起動

$ sudo /etc/init.d/mysql start
Starting MySQL....... SUCCESS!
$ sudo mysql -u root

■Memcached1.4.4とPECL Memcacheのインストール

yumにあるか調べる

# yum list memcached php-pecl-memcache
memcached.x86_64 1.4.4-3.el6 @base
php-pecl-memcache.x86_64 3.0.5-4.el6 @base

望みのバージョンだったのでそのままyum install

$ sudo yum install memcached php-pecl-memcache

複数プロセス起動設定 プロセス管理用ファイルの複製 $ sudo /etc/rc.d/init.d/memcached start

するとmemcached.pidが作られるのでそれをプロセス数(ポート)分コピー

$ sudo cp -p /var/run/memcached/memcached.pid /var/run/memcached/memcached_11211.pid
$ sudo cp -p /var/run/memcached/memcached.pid /var/run/memcached/memcached_11212.pid

設定ファイルの複製&編集

$ sudo cp -p /etc/sysconfig/memcached /etc/sysconfig/memcached_11211
$ sudo cp -p /etc/sysconfig/memcached /etc/sysconfig/memcached_11212
$ sudo vi /etc/sysconfig/memcached_11211
PORT="11211"
USER="memcached"
MAXCONN="50000"
CACHESIZE="512"
OPTIONS=""

もう一方のポートも同じように設定

$ sudo vi /etc/sysconfig/memcached_11212
PORT="11212"
USER="memcached"
MAXCONN="50000"
CACHESIZE="512"
OPTIONS=""

起動スクリプトの複製

$ sudo cp -p /etc/rc.d/init.d/memcached /etc/rc.d/init.d/memcached_11211
$ sudo cp -p /etc/rc.d/init.d/memcached /etc/rc.d/init.d/memcached_11212

起動スクリプトの編集(memcached_11212も同じように編集)

$ sudo vi /etc/rc.d/init.d/memcached_11211
if [ -f /etc/sysconfig/memcached_11211 ];then
. /etc/sysconfig/memcached_11211
fi

# Check that networking is up.
. /etc/sysconfig/network

if [ "$NETWORKING" = "no" ]
then
exit 0
fi

RETVAL=0
prog="memcached"
pidfile=${PIDFILE-/var/run/memcached/memcached_11211.pid}
lockfile=${LOCKFILE-/var/lock/subsys/memcached}

■Gitのインストール

# yum install git

■OSアカウントの追加

管理用アカウントの作成

wheelグループへのsudo権限付与する

# visudo
...
## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL
↑コメントを外す

管理用アカウントをwheelへ追加

# useradd -G wheel hoge
# passwd hoge
Changing password for user hoge.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
# usermod -G wheel hoge

確認

# id hoge
uid=500(hoge) gid=500(hoge) 所属グループ=500(hoge),10(wheel)
 

Life

Tech

Play