matthew as a q.

競技プログラミングメイン

omnibus版gitlabでサブディレクトリに設定する方法

omnibus版だと、/etc/gitlab/gitlab.rbに書かれた設定がreconfigureする度に各種設定ファイルに反映される。そのため各種設定ファイルを直接手動でいじっても、reconfigureするたびに消えてしまう。

しかし、gitlab.rbでどのように項目を修正したらよいかわからなかったので、旧式の方法で手動で設定を行った。

gitlabをreverse proxy下で動かしたりsubdirectory設定したり - Argmax.jp

上の記事にいじるべきファイルの場所が書いてあった。
以上の設定を直接ファイルに書き込み、reconfigureをしないようにする。


gitlab.rbに書いて設定したい。。

sshのポートフォワード機能を使ってとあるサーバにつなぐ方法

あるサーバ(humidai.example)をポートフォワードして、研究室の目的のサーバ(target.example)へアクセスする。

ssh -L 9999:target.example:22  hogehoge@humidai.example

(humidai.exampleが指定してあるサーバにおいて、すでに「hogehoge」というユーザで公開鍵ログインできるように設定されているものとする)

これで、ローカルホストの9999番ポートにアクセスすることで、target鯖に入ることができる。

ssh fugafuga@localhost -p 9999

(target鯖において、すでに「fugafuga」というユーザで鍵ログインできるように設定されているものとする)

サーバに固定IPアドレスを設定する

割り当てられたIPアドレスをサーバのほうに設定する必要があるらしい。

[Linux]CentOSで手動で固定IPアドレスの設定を行う | QUALL - blog

上記の記事に従って、
/etc/sysconfig/network-scripts/ifcfg-eth0
に設定を記入した。

DNSの設定や、ゲートウェイの設定はよくわからなかったので、特になにもしていない。

サーバ室に持って行って、つながればいいなぁ。。

追加したHDD(SATA)を利用できるようにする

  • 概略

自作PCをいじったことがなかった私は知らなかったのだが、HDDは追加しただけでは、その中身を参照したり、書き込みをしたりすることができない。
ファイルシステムを作成して、指定したフォルダにマウントしてやる必要がある。

  • 目標

今回は、HDD(500G)を2つの構成で、1つはメイン(そのまま使えている)で、もう1つをバックアップ用とする予定である。

  • やったこと

はじめての自宅サーバ構築 - Fedora/CentOS - 物理ディスクの増設
にしたがって、スレーブのSATAを/extdisk1にマウントするところまで。

このマウントした先に、バックアップをとっておきたいフォルダをrsyncでバックアップとるようにする。
rsync バックアップ設定 | CentOSサーバー構築マニュアル
cron設定 週次(週1回)起動:技術/開発 メモ

とりあえず、毎日午前5時10分に指定のフォルダにhome以下のファイルをバックアップとるように記述した。

10 05 * * * /usr/bin/rsync -a --delete /home /extdisk1/backup_test > /dev/null 2>&1

Mavericksにgdbを入れる(続き)

ここを参考にhomebrew経由でインストールすることにした。

Installing GDB on OS X Mavericks - Neil Traft


さくっと入った。

f:id:takeknock:20140628041304p:plain

gdb単体で起動するのであれば、これでよいのだが、emacsから起動しようとすると、(undefined command interpreter-execのような感じの)エラーが出た。


さきほどの記事に従って、コード署名を行うと、emacs上からもgdbを起動して、gdbのコマンドが効くようになったことを確認した。

Mavericks に gdbをいれる

Marvericksでは標準で入っていないようなので、入れる。
また、gdbデバッグする際には、コンパイラgccのほうがよいので、そちらも用意する。(gdbをインストールするときにどうせ必要になる)今回は、homebrewでインストールする。

brew install gcc

gccの入ったディレクトリを把握する。

which gcc-4.8
/usr/local/bin/gcc-4.8

今回は、/usr/local/bin/gcc-4.8にあることがわかったので、それを指定して、gdbをインストールする。事前に
GDB: The GNU Project Debuggerこちらからgdbをダウンロードして、解凍して、解凍されたフォルダの中で以下の操作を行う。

CC=/usr/local/bin/gcc-4.8 ./configure
CC=/usr/local/bin/gcc-4.8 make

ここで、以下のエラーが出た。

In file included from gdb.c:19:0:
defs.h:104:17: fatal error: bfd.h: No such file or directory
 #include "bfd.h"
                 ^
compilation terminated.
make: *** [gdb.o] Error 1

def.hの中でincludeしている、bfd.hというファイルがないらしい。

適当に「bfd.h」で検索して、ダウンロードしてきた。

それを入れて、再度

CC=/usr/local/bin/gcc-4.8 make

すると、今度は、

gcc-4.8: error: version.c: No such file or directory
gcc-4.8: fatal error: no input files
compilation terminated.
make: *** [version.o] Error 1

で、version.cというファイルがないらしい。

とりあえず、ここまで。

(追記)
homebrewから直接入れられた。(
Mavericksにgdbを入れる(続き) - takeknockの日記

centosでKUINS3から外部につなぐ

KUINS3から外部につなぐ際には、特定のポート以外では、proxyサーバ(proxy.kuins.net)をかます必要がある。


centosでは、yumのパッケージをアップデートしたりする際には、
/etc/yum.conf
に、

proxy=proxy.kuins.net:8080

を追加して、プロキシサーバを指定してやるといい。

また、学術ネットワークの内側でとってこれれば速いので、jaistとかwideのサーバから取ってくるようにしたらよい(/etc/yum.repos.d/CentOS-Base.repoのbaseurlの項目を編集する)(ただ、パッケージ的に取ってこれないものもあるので、のbaseの項目だけjaistとwideのに変えたらよいと思われる。)