ミムの部屋

社内SEが,興味をもったことを書いていきます.

RStudio Serverをインストール(Ubuntu,Rstudio Server)

今回は,Ubuntu上でRstudioのサーバ版をインストールしたいと思います.

RStudio Serverのインストール

まず,Rのパッケージ関係をインストール
$ sudo apt-get install r-base
RStudio Serverをダウンロードして,ダウンロードファイルを解凍するためのコマンドをインストール
ダウンロードするファイルのバージョンは,ここで確認してください.ちなみに,私は 0.99.473 でした.
# RStudio Serverをダウンロード
# バージョンの例:rstudio-server-0.98.493-amd64.deb
$ wget http://download2.rstudio.org/rstudio-server-(今のバージョン)-amd64.deb

# ダウンロードファイルを解凍するためのコマンドをインストール
$ sudo apt-get install gdebi-core

# 解凍
$ sudo gdebi rstudio-server-(今のバージョン)-amd64.deb
これでインストールは終わりです.あとは,http://(server-ip):8787 に接続すると利用することが可能になります.もし接続ができない場合は,ポートが開放されていない場合が有ります.そのため,iptablesとかをいじるといい思います.

参考サイト

Crontabで定期的にコマンドを打つ(Crontab)

Ubuntu Server 上で今日は,定期的に動かしたい実行ファイルやコマンドを打つようにしたいと思います.
シェルスクリプトで書かれたバックアップの実行ファイルを定期的に実行したい場合は,非常に便利だと思います.
私の環境では,以下のことがありました.
  • crontab -eでは,crontabに記述しても無理であった
  • nano /etc/crontabに記述するとできた
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin


#restart at 7:00
0 7 * * * root shutdown -r now

# 「実行ファイル名1.jar」を7時5分に起動させる.
# 「バックアップファイル名1.log」に標準出力を記述
05 7 * * * root java -jar /home/*****/実行ファイル名1.jar >> /home/*****/バックアップファイル名1.log

# 「実行ファイル名2.jar」を1分毎にに起動させる.
# 「バックアップファイル名2.log」に標準出力を記述 
*/1 * * * * root java -jar /home/*****/実行ファイル名2.jar >> /home/*****/バックアップファイル名2.log

Ubuntu 14.04 LTSで日本語の文字化けが・・・

今回は,Ubuntu 14.04 LTSで日本語が文字化けし,いろいろ不便だなって思ったため調査しました. とりあえず,やっていったことを以下に記していきたいと思います.

1.日本語関連のパッケージを入れる

sudo aptitude -y install language-pack-ja-base language-pack-ja ibus-mozc

2.言語設定の変更 言語設定を日本語に変更するために,以下の言語設定ファイルを編集
#言語設定を日本語に変更
$ sudo nano /etc/default/locale

#ファイルの内容を以下だけにする
LANG="ja_JP.UTF-8"

3.言語設定変更を反映

# 反映のため
$ source /etc/default/locale
# 反映されたか確認
$ echo $LANG 
ja_JP.UTF-8

# 再度,確認のために適当にコマンドをうつ
(例)$ apt-get

参考サイト

形態素解析器mecabをインストール(mecab,Ubuntu 14.04 LTS)

今回は,Ubuntu 14.04 LTSにmecabをインストールしたいと思います. といっても,以下のコマンドを入れれば入ってしまったのでどうってことはないのですが,一応記します.
sudo apt-get -y install mecab libmecab-dev mecab-ipadic-utf8 mecab-jumandic-utf8

参考サイト

taoru's memo:Ubuntuに形態素解析(ChaSen,Mecab)をインストール

AmaterasUMLをEclipseにインストール(Amateras, GEF, Eclipse,Mac)

今回は,Eclipse にクラス図などを作る事ができるAmaterasをインストールをしようと思います. やろうとした理由としては,また一からシステムを作ろうと考えたので,UMLを最初に作ってやったほうが楽だろう思ったためです.

Amaterasをインストールをするにあたって,必要なものは以下の3つです.
  • Eclipse(インストール済みとする)
  • GEF
  • Amateras
ここから,GEFとAmaterasのインストール方法を紹介します.

1.GEFのインストール

Amaterasを使用するためには,GEFをインストールしなければならない. そのため,はじめに紹介しようと思います.
  1. Eclipse の「Help」から「Install New Software」を押す.
  2. 作業対象を「--All Available Sites--」に変更
  3. テキストボックスに「GEF」を入力する.(しばらく待つ)
  4. インストール候補の一覧から「Modeling」を押して,「Graphical Editing Framework GEF SDK」を選択
  5. 「次へ」を二回押して,「I accept the terms of the license agreement」を選択して「Finish」を押す
  6. Eclipseを再起動

2.Amaterasのインストール

  1. ここのサイトから「AmaterasUML_?.?.?.zip」をクリックし,ダウンロード
  2. ダウンロードしたファイルを解凍
  3. Eclipseのアプリがあるフォルダに移動
  4. 「plugins」に移動
  5. 2で解凍されたファイル(jar)を,ここに移動
  6. Eclipseを再起動
以上でインストールは終了です.

参考サイト

ffmpengを用いてTSをMP4に変換(ffmpeng, ts, mp4, Ubuntu 14.04 LTS)

今回は,TSファイルをMP4にffmpengを用いて変換する方法を調べました.

録画サーバの録画ファイル(TS)をそのまま保存するのであればいいんですけど,容量を非常に食う. そのため,mp4の形式にすることで,圧縮しようと考えました. 調べてみたら,ffmpengというものがあるらしい.

さっそく,インストールしてみることにしました.
$ sudo apt-get update
$ sudo apt-get install build-essential automake autoconf zlib1g-dev libtool libx264-dev yasm
$ wget http://ffmpeg.org/releases/ffmpeg-2.6.tar.bz2
$ tar xjf ffmpeg-2.6.tar.bz2
$ cd ffmpeg-2.6
$ ./configure --enable-libx264 --enable-gpl
$ make
$ sudo make install
これで,インストール完了です.では,変換してみます.
ffmpeg -i test.ts test.mp4
なんか,下のようなエラーが...
The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it.
よくわからんが,"-strict -2"をオプションで追加すればいいらしい.
ffmpeg -i test.ts -strict -2 test.mp4
エラー起きずに出来ました.めでたしめでたし♪( ´▽`)

参考サイト

自宅サーバにOpenVPNを入れる(Ubuntu 14.04 LTS, OpenVPN)

今回は,安全に外部から自宅サーバーに接続させるために,OpenVPNを入れてみることにしました.

1. OpenVPNをインストール

$ sudo apt-get install openvpn libssl-dev openssl easy-rsa

2.外部から接続するときに認証に必要なものを入れるディレクトリを作成

$ sudo make-cadir /etc/openvpn/easy-rsa

3.鍵作成

$ source vars && ./clean-all && ./build-ca
$ ./pkitool --initca && ./pkitool --server server
$ ./build-key-server (サーバー用鍵の名前.適当につけましょう)
$ ./build-dh

# /etc/openvpn に鍵関連のファイルをコピー
$ cd keys/
$ cp server.crt server.key ca.crt dh1024.pem /etc/openvpn/

# 各マシンに入れる鍵を生成
# 後で各マシンに移動させる鍵
$ cd ..
$ ./build-key (鍵の名前)

# VPN自体の鍵(TLS)を生成
$ openvpn --genkey --secret ta.key

# 各マシンの鍵とVPN自体の鍵をコピー
$ cd keys/
$ cp ta.key /etc/openvpn

4.OpenVPNの設定

$ cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
$ gzip -d server.conf.gz

# いろいろの設定を変更
$ nano server.conf
server.confで,私が変更をした部分を以下に書きます.
#ファイルに追記する部分
mode server
tls-server
tls-auth ta.key 0 # TLS暗号化を有効にする

# DH パラメータの指定
;dh dh1024.pem 
dh dh2048.pem # 鍵を作成の工程で,このファイルが作成されたので,こっちに変更

# 外部からアクセスする自分のネットワークアドレスを入力する.
push "route 192.168.xxx.0 255.255.255.0"

# DNS サーバのIPアドレスを設定
# $ cat /etc/resolv.conf で調べることができる
push "dhcp-option DNS 192.168.xxx.xxx"

################################
## コメントアウトを外すものを以下に書く##
################################

# VPN Clinent(外部からアクセスする端末)のすべてのトラフィックVPNサーバを通るらしい.
push "redirect-gateway def1 bypass-dhcp" 

# 通信暗号化の設定
# サーバーとクラインアント間での暗号化方式を指定する.
# これが,異なると接続エラーが起きる
cipher AES-256-CBC

# サービスユーザの変更
# セキュリティ向上のために行う
user nobody
group nogroup

# クライアント間通信の有効化
client-to-client
この変更を反映するために,OpenVPNの再起動
$ sudo service openvpn restart

 * Stopping virtual private network daemon(s)...
 *   Stopping VPN 'server' [ OK ] 
 * Starting virtual private network daemon(s)...
 *   Autostarting VPN 'server'

5.ルーティングの設定

フォワーディングの設定をします.

iptablesの設定

$ apt-get install iptables-persistent

# インターネットに接続しているIFを指定.
# プライペートアドレスをインターネットに送信する際にもアドレスが変換される. 
$ iptables -t nat -A POSTROUTING -s (VPNで使うIPアドレス) -o (使用するNICの名前) -j MASQUERADE

$ /sbin/iptables-save -c > /etc/iptables.rule
$ nano /etc/network/if-pre-up.d/適当なファイル名
$ sudo chmod +x 適当なファイル名
ちょっと,時間かかりそうなので,今日はここまでにしておきます.すいません

参考サイト