GPGを設定してからgit commitしようとするとパスフレーズを求められる

GithubのためにGPGによる署名をコミットにつけてみた – bgbgbg
でGPGを設定してからgit commitしようとするとパスフレーズを求められる環境があったので対応してみました

Ubuntu 14.04で行いました

$ git commit
すると

gpg: gpg-agent is not available in this session
Enter passphrase: 

な感じだったので必要そうなものをインストール

$ sudo apt-get install gnupg-agent pinentry-curses

gpg-agentを実行
$ eval $(gpg-agent –daemon)

これでもダメだったので.bashrcに追記

$ vim .bachrc

if test -f $HOME/.gpg-agent-info && \
    kill -0 `cut -d: -f 2 $HOME/.gpg-agent-info` 2>/dev/null; then
    GPG_AGENT_INFO=`cat $HOME/.gpg-agent-info | cut -c 16-`
else
    # No, gpg-agent not available; start gpg-agent
    eval `gpg-agent --daemon --no-grab --write-env-file $HOME/.gpg-agent-info`
fi
export GPG_TTY=`tty`
export GPG_AGENT_INFO

一度読み込ませて
$ source ~/.bashrc

これでうまく行きました

GithubのためにGPGによる署名をコミットにつけてみた

GitHubでGPGにより署名されたコミットにバッジが表示されるようになったので設定してみる – Qiita

を参考に設定してみました
Ubuntu 14.04でやってます

デフォルトでgpgが入っていたのでそれを使いました
Gpg v2にするには

$ sudo apt-get install gnupg2

を実行して gpg2 でできるようです

$ gpg –gen-key

で指示通りに打ち込んで設定

$ gpg –list-keys

pub   4096R/xxxxxxxx 2016-04-10
uid           sample foobar <sample@sample.com>
sub   4096R/yyyyyyyy 2016-04-10

と用意が出来ました

xxxxxxxx部分がpublic keyのidなのでgitに設定

$ git config –global gpg.program gpg
$ git config –global user.signingkey xxxxxxxx

コミット時に署名をつける設定もして
$ git config –global commit.gpgsign true

GithubにGPGを登録します

$ gpg –armor –export xxxxxxxx

で出てきたものをすべてコピーして、
SSH and GPG keys
に登録

これでできるはずが、できない..と思ったらgitのバージョンが古かったです

$ git –version

git version 1.9.1

だったのでアップデート

$ git –version

git version 2.8.1

試しにgit pushして、コミットをGithubで確認したら Verified が出てたのでできてました

ftpコマンドではディレクトリがダウンロードできない

レンタルサーバーだとftpしか用意されてなくて、まるごとダウンロードしたいとき、ftpコマンドではディレクトリがダウンロードできなくて困ります

ncftpを使うと解決しました
Ubuntu 14.04で試しています

インストール
$ sudo apt-get install ncftp

ftpサーバーにログインするには
(sample.comは自身のftpサーバーのアドレスに読み替えてください)

ダウンロードしたいディレクトリへ移動しておいて

$ ncftp
ncftp> open -u sample.com

でユーザーやパスワードを打ちこみます
もしくは一発で

$ ncftp -u ユーザー名 -p パスワード sample.com

ダウンロードしてみる

ncftp> ls

でディレクトリが見えるので

ncftp> get -R ダウンロードしたいディレクトリ

これでローカルへダウンロードされます
コマンドがわからなかったら

ncftp> help

で確認できます

nginxでPrimary script unknownのエラー

nginxでphp5-fpmを設定してindex.phpとかつくってアクセスするとエラーが..

[error] 29669#0: *1 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream

設定を確認

$ vim /etc/nginx/conf.d/sakura.conf

fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

がまずかったようです
変えて

    location ~ \.php$ {
        fastcgi_pass   unix:/var/run/php5-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    } 

アクセスできるようになりました