[Memo2017][ITPASS]Hiki のインストールと設定
Hiki のインストール
ファイルの取得
- hiki をインストールした.
# apt-get install bundler ruby-dev libmysqld-dev # apt-get autoremove # (不要なパッケージを削除) # cd /usr/local/ # git clone https://github.com/hiki/hiki.git # cd hiki # bundle install
'E: Package 'libmysqlclient-dev' has no installation candidate' というエラーが出た.
- 以下のコマンドでパッケージをインストールすることによって 'libmysqlclient-dev' を入手した
# apt-get install libmariadbclient-dev # ln -s hikiconf.rb.sample hikiconf.rb.sample.ja
- ika-itpass の ~itpass/ftp/server/2016/hiki-update-files-2016 をディレクトリごと/usr/local/hiki/ に置いた.
hiki の環境設定
Table を使えるようにするための設定
- hiki-update-files-2016 内の table_form_rd.rb を以下の場所に置いた.
# cp table_form_rd.rb /usr/local/hiki/misc/plugin/
- session.rb と 00default.rb のバックアップをとった
$ cd /usr/local/hiki $ sudo mkdir backup $ cd backup $ sudo cp ../lib/hiki/session.rb . $ sudo cp ../lib/hiki/plugin/00default.rb .
- hiki-update-files-2016 内の session.rb と 00default.rb を以下の場所に置いた.
/usr/local/hiki/lib/hiki/session.rb /usr/local/hiki/lib/hiki/plugin/00default.rb
- rdtool と rttool のインストールを行った
# apt-get install rdtool rttool
formatter.rb について
/usr/local/hiki/lib/hiki/style/rd+/formatter.rb
hiki-update-files-2016 内の rd2html.rb を以下の場所に置いた.
- hiki-update-files-2016 の rd2html.rb の, require 'style/rd+/anchorlist' が require 'hiki/style/rd+/anchorlist' となっていることを確認した.
- 場所は以下の通り.
/usr/local/hiki/lib/hiki/style/rd+/rd2html.rb
/usr/local/hiki/hiki-update-files-2016/hikisetup を確認した
- 38 行目
Dir.glob(File.join(HIKIDIR, "lib/hiki/messages/*.rb")).map{ |s| s.scan(%r!([^/]+)\.rb$!).first }
- 52 行目
@plugin_path = '/usr/local/hiki/lib/hiki/plugin' if ! @plugin_path
- 108 行目
#!/usr/bin/ruby -I{HIKIDIR}/lib
- 135 行目
cp "/usr/local/hiki/dot.htaccess", ".htaccess"
ファイルを置き換えた.
$ sudo cp /usr/local/hiki/hiki-update-files-2016/hikisetup /usr/local/bin/
確認作業
chikuwa3 ユーザで hiki ページを作成し, Hiki のトップページにアクセスできるか確認した
- chikuwa3 のホームディレクトリに public_html ディレクトリを作成し, ブラウザからアクセスできるかどうかを確認した.
- Hiki 用のディレクトリを作成した.
$ cd ~chikuwa3 $ mkdir hiki $ chmod 2775 hiki
- hiki ディレクトリに移動し, hikisetup を実行した.
$ cd /home/chikuwa3/hiki $ hikisetup --lang ja INFO: hiki basedir is /home/chikuwa3/hiki Please input data_path [/home/chikuwa3/hiki/data]:
hikisetup による初期設定
- hikisetup コマンドを用いて, 必要なファイルを /home/chikuwa3/hiki 以下にインストールした. データパスはデフォルトのものを選んだ.
$ cd /home/chikuwa3/hiki $ hikisetup --lang ja INFO: hiki basedir is /home/chikuwa3/hiki Please input data_path [/home/chikuwa3/hiki/data]:
hikisetup で作成されたファイルの移動
$ cd /home/chikuwa3/hiki $ mkdir cgi $ mv .htaccess hiki.cgi hikiconf.rb theme cgi/ $ chmod -R g+w cgi $ chmod 2775 `find cgi/ -type d`
data ディレクトリのパーミッション設定
- www-data に書き込み/読み込み権限を渡した.
$ sudo chown -R www-data:www-data data $ sudo chmod -R g+w data $ sudo chmod 2775 `find data/ -type d`
public_html 以下からのシンボリックリンクの作成
$ cd /home/chikuwa3/public_html $ ln -s ../hiki/cgi hiki
CVS 管理の準備
CVS のインストール
CVS をシステムにインストールした.
# apt-get install cvs
cvsroot の作成
CVS データを管理するための CVS レポジトリの作成を行った.
$ sudo cvs -d /home/chikuwa3/hiki/cvsroot init
作成後, cvsroot ディレクトリに関しても権限を www-data に渡した.
$ cd /home/chikuwa3/hiki $ sudo chown -R www-data:www-data cvsroot $ sudo chmod 2775 `find cvsroot/ -type d`
CGI の基本動作のチェック
- Apache を再起動した
# /usr/local/apache2/bin/apachectl -k graceful-stop
# /usr/local/apache2/bin/apachectl -k start https://133.30.109.21/~chikuwa3/hiki
へアクセスし, Hiki のトップページが見えることを確認した.
以下の, cache, info.db, text 等の自動的に 作成されたファイルのパーミッションも再度設定した.
$ cd /home/chikuwa3/hiki $ sudo chown -R www-data:www-data data $ sudo chmod -R g+w data $ sudo chmod 2775 `find data/ -type d`
RD 形式で記述するための作業
- /home/chikuwa3/hiki/cgi/hikiconf.rb の末尾に以下を追加した.
# RD 形式で記述するための設定 # header_depth では '=' を <h2> にするよう設定 @style = 'rd+' @options['rd.header_depth'] = 2 * 2回目の mkdir hiki 以下の作業時には追加する場所を /usr/local/hiki/hikiconf.rb.sample に変更した $ cd /usr/local/hiki/ $ cp hikiconf.rb.sample hikiconf.rbbu.sample
- /usr/local/hiki/lib/hiki/style/rd+/formatter.rb と /usr/local/hiki/lib/hiki/style/rd+/parser.rb を以下のように書き換えた
- 事前にバックアップをとる
formatter.rb の書き換え
module Hiki module Formatter class RD < Base
となっているのを,
module Hiki module Formatter # class RD < Base class RDPLUS < Base
とする.
parser.rb の書き換え
module Hiki module Parser class RD
となっているのを,
module Hiki module Parser # class RD class RDPLUS
とする.
- 書き換えた内容を反映させるために Hiki ディレクトリを再度作成した
$ sudo rm -r hiki
- 作業ログの "$ mkdir hiki" 以下を実行
- 確認のためアクセスした.
https://133.30.109.22/~chikuwa3/hiki
- 書き込みテストをした
Keyword(s):
References:[[ITPASS2017]2017年度サーバ構築ログ]