カテゴリー
Microsoft

【Git Bash】Windows でもっと簡単にファイルを tail -f する方法

コマンド

tail /c/Path/To/logFile.log | iconv -c -f SJIS
カテゴリー
Apple

【Mac】Homebrew インストールの Git でタブ補完、ブランチ表示をする設定

環境

Homebrew でインストールした Git ですの。

$ brew info git
git: stable 2.10.1 (bottled), HEAD
... 略 ...

Git のタブ補完、ブランチ表示する設定コマンド

# Git のタブ補完、ブランチ表示する設定を追記
cat >> ~/.bashrc <<'EOF'
# ターミナルでタブ補完を有効
source /usr/local/etc/bash_completion.d/git-prompt.sh
source /usr/local/etc/bash_completion.d/git-completion.bash
# ターミナルにブランチ名を表示
GIT_PS1_SHOWDIRTYSTATE=true
export PS1='\h\[\033[00m\]:\W\[\033[31m\]$(__git_ps1 [%s])\[\033[00m\]\$ '
EOF

# 反映
source ~/.bashrc
カテゴリー
Apple

【Mac】Finder で隠しファイルを表示させる方法

Finder で隠しファイルを表示させる手順

ターミナルから次のコマンドを実行

# 隠しファイルを表示
defaults write com.apple.finder AppleShowAllFiles TRUE
# Finder 再起動で設定を反映
killall Finder
カテゴリー
Linux

CentOS 7 に PostgreSQL 9.2 をインストール、設定のノート

インストール

yum -y install postgresql-devel postgresql-server

特にリポジトリの追加等は行っておりません。

次のバージョンがインストールされました。

# psql --version
psql (PostgreSQL) 9.2.15
#

初期設定

CentOS 6 では、initdb は postgresql-setup ではなく、service postgresql initdb でした。

CentOS 7 となり、サービスの起動等以外にも変更となり、この点がとくに分かり辛く、調べるのに時間を使ってしまいました><。

# 初期化
postgresql-setup initdb
# 自動起動を有効
systemctl enable postgresql.service
# 起動
systemctl start postgresql.service

設定ファイル編集 1. パスワード認証へ変更

# バックアップ
cp -a /var/lib/pgsql/data/pg_hba.conf /var/lib/pgsql/data/pg_hba.conf.org
# パスワード認証へ変更
sed -i -i 's|local   all             all                                     peer|local   all             all                                     md5|' /var/lib/pgsql/data/pg_hba.conf
sed -i -i 's|host    all             all             127.0.0.1/32            ident|host    all             all             127.0.0.1/32            md5|' /var/lib/pgsql/data/pg_hba.conf
sed -i -i 's|host    all             all             ::1/128                 ident|host    all             all             ::1/128                 md5|' /var/lib/pgsql/data/pg_hba.conf

次のように変更されました♪

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

設定ファイル編集 2. パスワード暗号化 (設定変更せず)

password_encryption (boolean)
ENCRYPTEDもしくはUNENCRYPTEDの指定なしで、CREATE USER もしくはALTER USERにてパスワードが指定されている場合、このパラメータはパスワードを暗号化するか否かを決定します。 デフォルトはon(パスワードを暗号化)です。

デフォルトでオンのため、次の修正は行いませんでした。

# バックアップ
cp -a /var/lib/pgsql/data/postgresql.conf /var/lib/pgsql/data/postgresql.conf.org
# パスワード暗号化
sed -i -e 's/#password_encryption = on/password_encryption = on/' /var/lib/pgsql/data/postgresql.conf

設定ファイル編集 3. スーパーユーザに (postgres) にパスワード設定

ヒアドキュメントを使って、シェルから実行しました。

su - postgres <<EOT
psql -U postgres
ALTER USER postgres encrypted password 'vagrant';
\q
exit
EOT

確認は、次の SQL で行うことができました。

SELECT * FROM pg_shadow;

設定変更の反映

PostgreSQL を再起動して、変更した設定を反映させています。

# 再起動して設定反映
systemctl restart postgresql.service

おわりに

次の Vagrant のテンプレート作成のために、久しぶりに PostgreSQL のインストールを行いました。

調べる中で覚えておきたいこともございましたので、Github にコードを反映させる以外にノートいたしました。

以上です。

カテゴリー
Microsoft

【Windows】【Visual Studio Code】PHP ファイルを開くと表示される ‘php.validate.executablePath’ エラーに対処する

ポイント

  • php.exe を指定してやれば解決できる。
  • エラー回避が目的で、Windows で PHP を実行することが目的ではない。
    そのため、PHP の種類、バージョンや、環境変数を厳密に設定しない。
  • PHP は Non Thred Safe 版をダウンロードした。
    これは、IIS (Internet Infomation Services) で PHP を使用する場合に利用するとのこと。
  • PHP バージョンを出来るだけ開発環境に合わせようと思ったが、開発環境のバージョンが低すぎてダウンロードできなかったため、この時点で最も低いバージョンである 5.5 をダウンロードした。
  • PHP のパス、つまり環境変数 PATH の設定はしていない。
カテゴリー
コンピューター

【Git】bare リポジトリで無いならば、push を受け入れないことを知りました

ポイント

カテゴリー
Linux

【phpmig】【MySQL】マイグレーション時に文字化けする時の修正方法

ポイント

  • PDO をインスタンス化する際に、文字コードを指定する。
  • PHP バージョンによって指定方法が異なることに注意

環境

  • PHP 5.3.3 (cli) (built: Aug 11 2016 20:33:53)
  • mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
カテゴリー
Linux

【Vagrant】EC-CUBE 3 環境を Mac で構築した時の共有フォルダ mount_options 設定ポイント

EC-CUBE 3 を Vagrant にインストールするとき、次の問題に遭遇しました><。

  • インストールシェルファイルが実行できない。
  • インストールできても、パーミッションの問題で、どんなページでも表示すらできない。

これを解決しましたので、ノートいたします♪

解決できたコードとそのポイント

  • 共有フォルダ・ファイルのパーミッション設定を、ディレクトリは 777、ファイルは 766 とする。
config.vm.synced_folder "synced_folder/ec-cube/", "/var/www/ec-cube",
  create: true, mount_options: ['dmode=777', 'fmode=766']
カテゴリー
Linux

インストール済みのパッケージを rpm で再度インストールしようとした時、if 無しでもシェルを止めない方法

Vagrant のプロビジョニング時、シェルファイルを幾つか組み合わせます。

シェルには set -eux を書いていますので、エラーが発生したタイミングで停止させております。

汎用性を高めるために、何度か同じパッケージを rpm でインストールするコマンドを書いています。

そうしますと、2 回目の rpm インストールでエラーと扱われてしまい、シェルが止まってしまいました。

この状況を打開すべく、検討し、結果が出ましたのでメモいたします。

ポイント

  • >/dev/null 2>&1 で無視しようとしたが、エラー扱いとなり、シェルは止まってしまった。
  • rpm インストール前後で、シェルのデバッグモードのオンオフを切り替えることで対処した。
  • 具体的には、コマンド前に set +e し、コマンド実行し、最後に set -e する。
カテゴリー
コンピューター

2016年9月のアクセス解析

先月 2016 年 9 月の 1 ヶ月間の Google アナリティクスの結果です。

  • ユーザー > サマリー(左に先月、右に先々月と比較表示)
  • 行動 > サイトコンテンツ > すべてのページ
  • 集客 > ソーシャル > 参照元ソーシャル ネットワーク
  • 集客 > 検索エンジン最適化 > 検索クエリ

以上の 4 種類の Google Analytics 結果です。