2016年9月22日

redmineのアップグレード

Filed under: Cloud,Computing,Linux — nabecyan @ 2:56 PM

サーバのredmineを2.* から3.0にアップグレードする

前提:Ubuntu 16.04 LTS

1. ruby, rails, bundlerをアンインストール

$ apt-get remove ruby rails bundler

2. rvmをインストールする

  • 事前作業として、curlをインストールする

$ sudo apt-get install curl

  • 公開鍵の取得

$ curl -sSL https://rvm.io/mpapis.asc | gpg --import -

  • 続けてrvmをインストールする

$ curl -L https://get.rvm.io | bash -s stable --ruby

  • ~/.bashrc に下記を環境変数を追加して、読み込ませる。

$ vi ~/.bashrc

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

$ source ~/.bashrc

  • rvmのコマンドを実行し動作を確認

$ rvm -v

rvm 1.27.0 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

3. rubyをインストールする

  • 下記コマンドを実行しrvmでインストール可能なリストを確認する

$ rvm list known

  • ruby2.3.0をインストールする(–defaultは、複数バージョンが混在している際にデフォルト使用するものを指定するオプション)

$ rvm install ruby-2.3.0 --default

  • 下記コマンドでインストールできたことを確認する

$ ruby -v

ruby 2.3.0p0 (2015-12-25 revision 53290) [i686-linux]

4. railsをインストールする

  • rails3からjavascriptのランタイムが必要であるため、node.jsをインストールしておく

$ sudo apt-get install nodejs

  • railsのインストール可能なバージョンを確認する

$ gem search -r rails

...

radiojs-rails (0.2.1)

radius-rails (0.0.6)

rails (5.0.0.1)

rails-3-settings (0.1.1)

rails-action-args (0.1.1)

...

  • インストールしたruby2.3.0と、これからインストールするrails(5.0.0.1)を「rails5_0_0_1」という名前のgemsetとして定義しておく

$ rvm gemset create rails5_0_0_1

$ rvm 2.3.0@rails5_0_0_1

  • railsをインストールする

$ gem install rails

  • コマンドを実行しインストールできたことを確認

$ rails -v

Rails 5.0.0.1

 5. redmineをインストールする

  • file-tail とpassengerをインストールする。

$ gem install file-tail

$ gem install passenger

  • mod_passenger をビルドする

Webサーバは Apache なので,これ向けのモジュールをビルドする。

$ passenger-install-apache2-module --auto --languages ruby

  • Apache の設定を修正する

事前準備

libapache2-mod-passenger を apt-get でインストールし、a2enmod passenger で有効化しておく

$ vi /etc/apache2/mods-aveilable/passenger.load

## modified by H.Tanabe 20160922

LoadModule passenger_module /usr/local/rvm/gems/ruby-2.3.0/gems/passenger-5.0.30/buildout/apache2/mod_passenger.so

$ vi /etc/apache2/mods-aveilable/passenger.conf

## modified by H.Tanabe 20160922

<IfModule mod_passenger.c>

PassengerRoot /usr/local/rvm/gems/ruby-2.3.0/gems/passenger-5.0.30

PassengerDefaultRuby /usr/local/rvm/gems/ruby-2.3.0/wrappers/ruby

</IfModule>

## H.Tanabe

PassengerDefaultUser www-data

RailsBaseURI /redmine

$ vi /etc/apache2/sites-aveilable/redmine.conf

<VirtualHost *:80>
  ServerName redmine.example.com:80
  ServerAdmin webmaster@example.com
  DocumentRoot /var/www/vhosts/redmine/public/

  <Directory /var/www/vhosts/redmine/public/>
    Options Indexes FollowSymLinks -MultiViews -ExecCGI
    AllowOverride All
    PassengerResolveSymlinksInDocumentRoot on
  </Directory>
</VirtualHost>

  • gem “mysql2″ をインストールする

$ gem install mysql2

  • gem “bundler” をインストールする

$ gem install bundler

$ rake generate_session_store

(in /var/lib/redmine)

Please configure your config/database.yml first

Could not find gem 'rails (= 4.2.7.1)' in any of the gem sources listed in your Gemfile or available on this machine.

Run `bundle install` to install missing gems.

エラーになるので、bundle installしてみる。

$ bundle install

$ rake generate_session_store

(in /var/lib/redmine)

Please configure your config/database.yml first

/usr/local/rvm/gems/ruby-2.3.0/gems/htmlentities-4.3.1/lib/htmlentities/mappings/expanded.rb:465: warning: key "inodot" is duplicated and overwritten on line 466

Note: The rake task generate_session_store has been deprecated, please use the replacement version generate_secret_token

  • シークレットトークンを作成する

bundle exec rake generate_secret_token

  • データベースの移行をする

$ RAILS_ENV=production bundle exec rake db:migrate

  • デフォルトデータの反映

$ RAILS_ENV=production bundle exec rake redmine:load_default_data

Webアクセスしてもプロジェクトなどが表示されず、エラーログを確認。

config/databese.ymlがないというエラーだったので

$ ln -s /etc/redmine/default/database.yml /var/lib/redmine/config/

でシンボリックリンクを貼って

$ bundle install

で見えるように なった。

しかしながら、アップグレード前のデータを移行していないので、projectをクリックしても(当然ながら)表示エラーとなる。

$ cd /var/lib/redmine

$ bundle exec rake db:migrate RAILS_ENV=production

$ /etc/init.d/apache2 restart

でようやくWebアクセスできるようになった。

 

 

2015年8月21日

G4 CubeをDVI接続で普通のモニタに接続

Filed under: Computing,Mac,ガジェット — nabecyan @ 11:24 PM

G4 CubeをDVI接続で普通のモニタに接続する方法を調べてみた。

どうやら標準で付属していたADC-DVIアダプタでは+5Vが供給されてないので、モニタ側がDDCの情報を提供してくれないようだ。

そこで、DVI–DVI&VGAアダプタを流用して5Vを供給できるようにしてみた。

G4Cube === ADC-DVIアダプタ === DVI-DVI&VGAアダプタ === モニタ

で、このDVI-DVI&VGAアダプタを

VGA(pin9/pin10)  … 5V/GND … USB(VBUS/GND)

というように接続して、G4 CubeのUSBから5Vをとるようにしてみた。

 

結果、うまくモニタに画がでました!

 

2015年6月28日

OSX Yosemite Serverのsshd設定

Filed under: Computing,Mac — nabecyan @ 10:43 PM

OSX Yosemiteのサーバでsshdを動かして外部からアクセスできるようにしているのだけど、Brute force attackの対策もしなくちゃいけないということで、ちょっと対策。本当はdenyhostsで弾きたいとこなんだけど、なんかうまく動かないので、とりあえずの対策。(Ubuntuサーバもsshd動かしてるけど、ポートを変更してるのと、denyhostsで弾くようにしているし、tcpwrappersもかけてるので大丈夫かな)

 

1. /etc/sshd_configに以下を追記
PermitRootLogin no
MaxAuthTries 3
ClientAliveInterval 300
ClientAliveCountMax 3
MaxStartups 10:30:100
AllowUsers hideki

2. OS X Server:Adaptive Firewall を有効にする方法 でアダプティブフィルタを有効にした。
sudo pfctl -f /etc/pf.conf
sudo /Applications/Server.app/Contents/ServerRoot/usr/sbin/serverctl enable service=com.apple.afctl
sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -c
sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -f

 

さて、効果あるかなぁ。

 

2015年4月13日

Lubuntuにリモートデスクトップ接続

Filed under: Computing,Linux — nabecyan @ 10:21 PM

LutbuntuにXRDPをインストールしてリモートデスクトップ接続できるようにした。

1.xrdpをインストール
$ sudo apt-get install xrdp lxde

2.ユーザ hideki のホームディレクトリに所定のファイルを作成。
$ echo lxsession -s LXDE -e LXDE > ~/.xsession

3./etc/xrdp/xrdp.iniを編集
$ sudo vi /etc/xrdp/xrdp.ini

crypt_levelをlowからhighにする
## H.Tanabe 20150411
#crypt_level=low
crypt_level=high

xrdp1セクションの書き換え
[xrdp1]
name=sesman-Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1

## H.Tanabe 20150411
#port=-1
port=ask-1

4.最後にこれを実行
$ sudo gsettings set org.gnome.Vino require-encryption false

5.サービスの起動
sudo service xrdp restart
または
sudo /etc/init.d/xrdp restart
デスクトップの共有設定からリモートデスクトップアクセスを許可する

6.iptablesの設定
sudo vi /root/iptables/iptables-rules.resotre

### for XRDP (VNC/RemoteDesktop)
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3389 -j ACCEPT sudo /etc/init.d/iptables restart
sudo iptables -L | grep 3389 sudo netstat -an | grep 3389

7.接続してみる
mstsc /v:<接続先コンピュータ名またはIPアドレス>
mstsc /?したらヘルプメッセージダイアログが出現する
Moduleはsesman-Xvncのままにする.
usernameとpasswordはLinuxマシンのそれを入力する.
portは,初回接続時は-1で良い

こんな感じになるので、ユーザ名、パスワードを入力してログインする。Moduleはsesman-Xvnxでよい。

こんな感じになるので、ユーザ名、パスワードを入力してログインする。Moduleはsesman-Xvnxでよい。

 

2014年5月30日

Intel SSD 8MB病

Filed under: Computing,Linux,Mac,Windows — nabecyan @ 11:50 PM

Mac miniに入れてるIntel SSD 320シリーズが認識しなくなったので、確認したら‥ 容量が8.4MBとなってしまった。
ファームウェアのアップデートは済ませてあったのだけど。
どうもアップデートで100%修正されているわけではないらしい。
電源の瞬停でもあったのだろうか。

Intelのサイトからisoイメージのアップデータをまずダウンロードして、CD-Rに焼き込んで、Mac mini上でトライ。
Mac miniではアップデータで起動はできるものの、マウス、キーボードが認識しなくなり、うまくいかない。

次にSSDをWindowsマシンに接続してWindows版SSD Toolboxでチャレンジ。

まず、ToolboxがWindwos8だとSecureEraseできないとのたまう。
互換性の設定でWindows7互換のプログラムとして動作させたらSecureEraseの機能が使えるように。さて、一件落着と思いきや、電源ケーブルを一旦抜き差ししなさいときた。

なんとか、ここまでやってSecureErase成功。600GBの容量に復活。

2014年5月19日

postfixのmail transport修正

Filed under: Computing,Linux — nabecyan @ 10:08 PM

JmicronのRAIDエラーをメール通知設定する際にDyndnsへのtransport設定でエラーになっているのに気づいた。

原因はsasl passwordが設定できてなかったこと。

/etc/postfix/sasl/sasl_password に

outbound.mailhop.org ユーザ名:パスワード

を記述、

$ sudo postmap /etc/postfix/sasl/sasl_password

でハッシュdbに変換してエラーがなくなった。

2014年4月30日

sshのアクセス制限

Filed under: Computing,Linux — nabecyan @ 11:19 PM

sshで接続がうまくできないことがあって、調査。

  1. JeganにはローカルネットのどのマシンからもSSHログインできる
  2. ReGZはJegan以外のマシンからはログインできる。Jeganからはタイムアウト
  3. nmap -sS 192.168.11.112 -p 22 で確認すると、filtered port となってる?
  4. 以前iptablesで22番ポートに細工をしてたのが原因みたい。
  5. 22番ポートは普通にacceptしてやることで解消。

SSH自体はできるようにしたけど、やっぱり外部からの攻撃は鬱陶しい。

ということで、denyhostsをインストールと思ったら…ubuntu 14.04ではサポートしないみたい。仕方なく、代替の方法をさらに調査。

fail2banというのが使えるっぽい。ログを監視してiptablesに登録してくれる便利なやつらしい。

sudo apt-get install fail2ban sudo vi /etc/fail2ban/jail.confで

  • ignoreip = 127.0.0.1/8   192.168.0.0/16

としてローカルネットは検査対象にかけないようにする。

取り敢えずはこれで様子見しよう。

2014年4月27日

Ubuntu 14.04LTS + LXDE

Filed under: Computing,Linux — nabecyan @ 8:22 AM

Ubuntu14.04LTSがリリースされたので、サーバのOSを全面的に見直し。

・Unityは2Dが廃止されたので、LXDEを入れる

→ 一旦は緩慢なUnity3Dで起動してパッケージマネージャからLXDE,lubuntu-desktopsをインストール

→ LXDEで再ログイン、Unityはpurgeしておく。

結果、1080pの画面解像度でのデスクトップが実現できた。

Ubuntu 12.04LTSのXGA画面のときより快適かな。 他、各種サービスも順次復元。

 


これまでに復元したもの


<BIND9、ddlient>

設定をほぼそのまま復元で問題なく動作。

 

<apache2>

設定をconf-available/mods-available/sites-availableに移動してa2enconf/a2enmods/a2ensitesで有効にするように変更。

 

<wordpress>

mysqlのデータベースを本来エクスポート→インポートで移行すべきだが、今回はmysql設定、wordpressのデータベース、Webディレクトリをそのままコピーして、強制的に移行した。

mysql側で読み込めるユーザの設定で手間取ったが、なんとか復元。(今、正に復元したwordpressに書き込んでる)

 

<postfix,dovecot>

main.cf,dovecot.confの設定を書き直し。

 

<webdav>

最初クライアントからうまく接続できなかったが、エイリアスパスとディレクトリパスの最後の’/’の統一で解消。(これまではいい加減な設定でも動いてた?)

 

<ntpd>

ntp.confのNTPサーバの記述だけ変更。

  1. server eagle.center.osakafu-u.ac.jp
  2. server -4 ntp.nict.jp
  3. server -4 ntp.jst.mfeed.ad.jp

 

 


動作はできたけど、まだ完全ではないもの


<dhcpd>

これまでのprimary,secondaryの構成がうまく動かない。(Master側のReGZのCPUだけプロセス稼働率が90%以上になってしまう)

仕方ないので、failover peerの設定をコメントアウトして、ReGZだけのdhcpサーバとして今は動かしている。

できればsecondaryサーバを動かしてやりたいのだが。もう少し調査してからか?

 

<samba>

smb.confをUbuntu 12.04LTSのときとと同じにした。

OSXクライアントからゲストで接続はできたが、Linuxユーザアカウントでの接続ができない状態。

 

<hostapd>

設定自体は良さそうにみえるものの、/etc/init.d/hostapd start でフェイルしてしまう。

ネットで調べたところ、

http://askubuntu.com/questions/435253/doesnt-ubuntu-13-10-support-the-hostapd-nl80211-driver

にあった、以下の2つのコマンドを使ったら、/etc/init.d/hostapd restartが通った。

  1. sudo nmcli nm wifi off (ネットワークマネージャを経由してWiFiをオフにする?)
  2. sudo rfkill unblock wlan (WLANの再有効化をするのかな?)

ということで、nmcli,rfkillを/etc/init.d/hostapdのstart,restartのデーモン起動開始前に実行するようにして、Jegan(Atheros AR9285)、ReGZ(Ralink RT3070)ともアクセスポイントとして見えるようにできた。

 

4/29 アクセスポイントとしては見えるけれど、接続するとうまくIPアドレスが払い出されない。無線LANの認証は通っているんだけど。もう少し設定を見直さないとだめかなぁ。

 

2013年11月6日

FacebookとWordPressの連携

Filed under: Wordpress — nabecyan @ 10:49 PM

自宅サーバのWordpressへの投稿をFacebookにフォワードするプラグインWordbookerを入れてみました。
Wordpress側でプラグインをインストールするだけ。

MacBook Pro バッテリを互換品に交換

Filed under: Computing,Mac — nabecyan @ 10:22 PM

2006年版のMacBook Proのバッテリーを互換品にしてみた。

システムプロファイルはこんな感じ。

機種情報:
シリアル番号: ˇ
製造元: topping-battery
デバイス名: ASMB012
Pack Lot Code: 3230
PCB Lot Code: 30db
ファームウェアのバージョン: ddae
ハードウェアのリビジョン: dac2
セルのリビジョン: 2b39
充電量情報:
残りの充電量(mAh): 3718
充電完了: いいえ
充電中: はい
完全充電時の容量(mAh): 5387
状態情報:
充放電回数: 1
状態: 正常
バッテリー装着: はい
アンペア数(mA): 2516
電圧数(mV): 12062

ちゃんと使えるっぽい。しばらくはこれでなんとか動いてくれるかな。

次ページへ »

HTML convert time: 0.668 sec. Powered by WordPress