Pages

VirtualBoxにubuntu(サーバー版)をインストールして、LAMP構成を作ってみる

2014-08-24

VirtualBoxにubuntu(サーバー版)をインストールして、LAMP構成を作ってみる。

環境は以下

  • ホストOS : ubuntu Desktop 14.04
  • ゲストOS : ubuntu server 14.04
  • VirtualBox : 4.3.10

やりたいこと

  • ホストOS - ssh -> ゲストOS
    ホストOSからゲストOSはSSHで接続できる
  • ゲストOS <- ssh -> ゲストOS
    ゲストOS同士はSSHで接続できる
  • ゲストOS -> インターネット
    ゲストOSはインターネットに接続できる
  • ゲストOS <- インターネット
    インターネットからはゲストOSに接続できない

接続方法

SSHでホストOSからゲストOSへ接続するには下記2通りがある。

  • NAT + ポートフォワーディング
  • ホストオンリーアダプタ

今回は、ホストオンリーアダプタを設定し、ゲストOSにIPアドレスを割り振って接続する。

すること

  • Virtual Boxへのインストール
  • NATの設定
  • ホストオンリーアダプタの設定

Virtual Boxへのインストール

  • ダイアログにしたがってインストールをするめる。
  • パッケージを選択する。
    ubuntuをVirtual Boxにインストールする際にデフォルトでインストールするパッケージの組み合わせを選択できる。
    選択できるのは下記の組み合わせ。

    * OpenSSH sever
    * DNS server
    * LAMP server
    * Mail server
    * PostgreSQL server
    * Print server
    * Samba file server
    * Tomcat Java server
    * Virtual Machine host
    * Manual package selection
    

    今回はOpenSSH sever、とLAMP serverを選んだ。(これを選ぶとopenssh-serverとLAMP構成に必要なパッケージ(apacheとかMySQLとかPHPとか)やがインストールされるっぽい)

  • MySQLのrootパスワードの設定
    rootパスワードを設定する
    ss-01-01.png
  • シェルの言語を設定する
    また、インストール時に日本語で設定していてもフォントが入っていないせいか、コマンドを実行した時に文字化けしてしまう。

     ss-01-02.png
    
    なので、ログインシェル(bash)の言語の設定を英語に変えておく。
    
    ```bash
    $ echo export LANG=en_US >> .bashrc
    ```
    
    書き換えたら無事、文字化けが解消。
    
     ss-01-03.png
    

NATの設定

  • VirtualBoxのVMの設定からネットワーク-> アダプタ1 割り当て:NATを選択 -> [OK]
    ss-02-01.png
  • VMを起動
  • eth0にIPアドレスが割り当てられることを確認
    bash
    $ ip addr
  • ゲストOS -> インターネットの接続確認
    bash
    $ ping google.com

ホストオンリーアダプタの設定

  • VMを停止する
  • VirtualBox の[ファイル] -> [環境設定] でVirtualBox の設定を開く
    ss-02-02-01.png
  • [ネットワーク] -> [ホストオンリーネットワーク] のタブを開き、ホストオンリーネットワークを追加する。
    ss-02-02-02.png
    vboxnet0が追加される
  • VirtualBoxのVMの設定からネットワーク-> アダプタ2 -> [ネットワークアダプタを有効]にチェック -> [割り当て] に[ホストオンリーアダプタ] を追加する。
    ss-02-02-03.png
  • VMの起動
  • eth1にIPを割り振る

    1. /etc/network/interfaceを編集する
      $ sudo su -
      
      # vi  /etc/network/interface
      

    /etc/network/interfaceに下記を追記する

    auto eth1
    iface eth1 inet static
    address 192.168.56.103
    netmask 255.255.255.0
    1. eth1を再起動する

      
      # ifdown eth1
      
      
      # ifup eth1 
      
    2. eth1の設定を確認する

      $ ip addr
  • ゲストOSにSSHで接続
    1. ホストOSからSSHで接続する
      bash
      $ ssh test01@192.168.56.103
Read more ...

sqlite3のdumpとリストア

2014-07-08

DBの作成

$ sqlite3 dbname

テーブルの作成

$ sqlite3 dbname 'create table test_table (colum1 , c2 )'

DBに入っているテーブルの確認

  • テーブル名のみ確認
$ sqlite3 dbname .tables
  • テーブル名とスキーマの確認
$ sqlite3 dbname .s

DBのダンプ

$ sqlite3 dbname .d

ダンプファイルをリダイレクトして、.gzに固める。

$ sqlite3 dbname .d |gzip >dbname_`date +%Y-%m-%d`.gz

さっき取得したdumpのリストア

$ sqlite3 dbname 'drop table test_test'
$ gzip -dc bdname_2014-06-10.gz |sqlite3 dbname
Read more ...

ssh越しにvimのexplorer(netrw)を使う

2014-05-27

アマゾンでAWSを借りてEC2を使ってみた。
アカウントの作り方から、インスタンスの起動の仕方までは、公式サイトに動画付きで解説がある。
そのため、ものの15分ほどでインスタンスの起動まで行き着くことができた。

ここでは、EC2にログインする方法。特に、vimのプラグインであるnetrwを使う方法を記載する。

まず、sshの設定でHost名に短い別名を設定し、netrwの機能でscpを使う。

借りているEC2のインスタンスについて

借りたEC2のスペックは無料枠で使えるubuntuにした。
こんな感じ。
-Instance type : micro
-OS : ubuntu 14.04 64 bit

ssh普通にログインする方法

まずは、sshを使って普通にログインする方法。

1.秘密鍵のダウンロード

インスタンスを一番最初に起動するときに、秘密鍵をダウンロードしていると思う。
ダウンロードした秘密鍵のパスを

~/aws/PriKey01.pm

とする。

2.インスタンスのURLの確認

ブラウザでインスタンスのURLを確認する。

URLの確認方法は

AWS Management Consoleホーム -> EC2 -> instances

から、 起動しているインスタンスの左のチェックボックスにチェックを入れ、Descriptionのタブに表示されている”Public DNS”がインスタンスのURLになる。

3.ログインする

ターミナルからsshで起動しているインスタンスにログインする。
インスタンスのOSにubuntuを選択すると、ユーザは”ubuntu”になるので、

ssh -i ~/aws/PriKey01.pem ubuntu@ec2-hogehoge-hogehoge.compute.amazonaws.com

でログインする。

ログインできれば、

Welcome to Ubuntu 14.04 LTS (GNU/Linux 3.13.0-24-generic x86_64)

Last login: Mon May 26 15:12:47 2014 from pkos004-049.kcn.ne.jp
ubuntu@ip-172-31-22-28:~$

みたいな感じに表示されるはず。

sshの設定

sshに別名を設定して、その設定した別名で接続できるようにする。
sshの設定は

~/.ssh/config

に記載する。

1.接続するときの別名を設定

接続先のホスト名が長すぎて、いちいち書いてられないので別名を設定する。

Host ec2-01
Hostname ec2-hogehoge-hogehoge.compute.amazonaws.com

2.ユーザ名を設定する

ログオンするときのユーザ名を設定する。

User ubuntu

3.秘密鍵のパスを設定する

IdentityFile ~/aws/PriKey01.pem

4.パスワード認証を使用しない

EC2は公開鍵方式によるsshアクセスなので、パスワード認証は使用しない。
そこで、下記設定を追加する。

PasswordAuthentication no

5.設定した別名でログオン

ssh -i ~/aws/PriKey01.pem ubuntu@ec2-hogehoge-hogehoge.compute.amazonaws.com

としてログインしていたのが、

ssh ec2-01

でログオンできるようになる。

netrwを使う方法

やっと本題のnetrwを使用する方法。
netrwがサポートしているプロトコルは多数あるけど、その中でssh/scpをサポートしている。

なので、

:e scp://ec2-01//

で、起動しているEC2インスタンスのルートディレクトリを表示できる。

Read more ...

ubuntu 14.04 にMySQLをインストール

2014-05-23

仕事で少し触る機会のあったperlを忘れないように、perlの練習がてらいわゆるLAMP環境なるものを作ってみた。

とりあえず、MySQLをインストールした時の設定を忘れないようにメモっておく。

1.MySQLのインストール
いつものように、apt-get installでインストール.

$sudo apt-get install mysql-server

インストールの最後にMySQLのrootのパスワードの設定を勧められるので正直に、パスワードを設定する。

2.MySQLにログイン
mysqll> というプロンプトが出てくればOK。

$sudo mysql -u root -p

3.文字コードの設定
設定ファイルは/etc/mysql/my.cnfにあるので、viか何かで開いて、下記設定を追加。

[client]
default-character-set=utf8>
[mysqld]
skip-character-set-client-handshake
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8

MySQLにログインしてデフォルトの文字コードの設定を確認する。

mysql> status

もしくは

mysql> show variables like 'character_set%';

statusでは下記の様に表示されていればOK。

Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8

Read more ...

StackEditを使ってMarkdownでBlogの記事を書いてみる

2014-05-23

StackEditというブラウザエディタを使ってblogを書いてみた。
MarkDown記法を使えるし、シンタックスハイライトも効くからいい感じに書ける。

参考にした記事は下記。
1. http://qiita.com/yuu116atlab/items/a9f4ed8407033b6b898f
2. http://tizio1976.blogspot.jp/2013/11/chrome-stackedit-markdown-blogger.html

Read more ...

GZ-EX250-Sを購入した

2012-08-26
ビックカメラでGZ-EX250-Sを購入した。
25000円、ポイントが10%だったので、実質21000円ほどで購入した。

目玉機能であるwifiによる遠隔操作はまだ使っていない。
と言うより、この機能を使う場面がいまいち想像できないw

撮影した動画をPCに取り込むには、付属のUSBケーブルを接続するだけで、
GZ-EX250側のモニタに、接続する機器を選択する画面が出てくる。
そこで"パソコンと接続"を選択すると、次に"パソコンで見る"や"バックアップする"といった選択が出てくる。
しかし、windows用の管理ソフトを入れていない場合は、USB MASS STRAGEとして認識されるようだ。
ubuntu12.04では JVCCAM_MEM という名前でマウントされて、デフォルトでShotwellが起動するようだ。

撮影した動画ファイルは、*.mtsという拡張子のファイルで以下のディレクトリに保存されている。
/media/JVCCAM_MEM/AVCHD/BDMV/STREAM
撮影した画像は以下に保存される。
/media/JVCCAM_MEM/DCIM/100JVCSO

画質に関しては、ちょっと期待はずれだった。普段から動画撮影をしないため比較できないけれど。

UPXモードで撮影した*.mtsファイルをSM Playerで再生していたのだけれど、非常にカクツク。
ffmpegをgitのソースコードを取ってきてコンパイル -> インストールすると、totemでも再生できるようになった。
しかも、SM Playerよりスムーズに再生できた。

Read more ...

ubuntu 12.04でN656Uを使う

2012-08-26

この度、結婚することになりました。

で、結婚式式のプロフィールビデオを作成しようと思い、子供の頃の写真をスキャンする必要が出てきた。
そこで、父親が持っていた古いスキャナを引っ張り出してきた。
CanonのCanoScan N656Uという機種で10年ほど前の機種らしい。

ubuntuには、saneというスキャナ用のツールがあるらしい。
そこで、インストールする。
sudo apt-get install sane
ダッシュボードから"scan"で検索すると、simple scanというソフトがあるので、
クリックして起動させる。

"スキャン"ボタンをクリックするとスキャンしてくれる。
"スキャン"ボタンの右の下三角をクリックすることで、テキスト用か写真用かを選択してスキャンできる。

"ドキュメント" -> "設定"で解像度等が設定できる。

"保存"ボタンをクリックすることで"名前をつけて保存"のダイアログが出てくる。
保存する形式はダイアログの左下の"ファイルタイプの選択"で選択できる。
デフォルトではjpgで保存されるが、PDFは複数ページをまとめて保存、PNGはロスレスで保存できる。
Read more ...

ubuntuでEclipseをインストールし、日本語化する

2012-01-15
Eclipseをインストールする。
$ sudo apt-get install eclipse

/usr/lib/eclipse
にインストールされていた。

Eclipse の日本語化プラグインである pleiades を利用して日本語化を行う。
http://mergedoc.sourceforge.jp/

今回は安定板である1.3.3をダウンロードした。
$ cd /usr/lib/eclipse
$ sudo wget -O pleades.zip "http://sourceforge.jp/frs/redir.php?m=iij&f=%2Fmergedoc%2F52508%2Fpleiades_1.3.3.zip"
展開し
$ sudo unzip pleades.zip
eclipse.iniを開き
$ sudo vim eclipse.ini
ファイルの末尾に日本語化プラグインの相対アドレスを書いた。
-vmargs
-Xms40m
-Xmx384m
-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=/usr/share/eclipse/dropins
-javaagent:/usr/lib/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
これで日本語化完了。

Read more ...

ubuntu11.10で環境変数(PATHとか)を設定するのは~/.pam_environmentに記述するべき、、、らしい。

2012-01-15
Pathの設定をどこに書くかは、Community Ubuntu Documentationの環境変数の項目を参考にした。
shellや、デスクトップ環境によって違いが出るけど、サーバとしてではなくデスクトップ用途としてubunuを使うのなら
    ~/.pam_environment
に書くのがおすすめらしい。
こんなこと、日本語のblogには全然載ってないから心配になる。

~/.pam_environment は、スクリプトファイルではなくて、一行に一つづつの代入式で構成されるらしい。
This file is specifically meant for setting a user's environment. It is not a script file, but rather consists of assignment expressions, one per line.
スクリプトファイルではないということはつまり
export JAVA_HOME=/java-dir
export PATH=$JAVA_HOME:$PATH
みたいな書き方は出来ず、
JAVA_HOME=/java-dir
みたいにしか書けないということらしい。


デフォルトでは~/.pam_environment がなかったので以下のようにしてJavaのパスを書き込んだ
    $ echo "JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386">~/.pam_environment
さらに、PATHも書き込んだ。
    $ echo "PATH=/usr/lib/jvm/java-7-openjdk-i386:$PATH">>~/.pam_environment
これで、ログアウトして、ログインしなおしたところ、
$ echo $JAVA_HOME
/usr/lib/jvm/java-7-openjdk-i386
$ echo $PATH
/usr/lib/lightdm/lightdm:/usr/lib/jvm/java-7-openjdk-i386:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
とことで反映された。
Read more ...

ubuntu11.10にJDKをインストールし設定する

2012-01-15
openJDK 7をインストールする。
別にJava7の新機能が使いたいってわけでもないけど、新しいほうがなにかいいかもしれない。

    $ sudo apt-get install openjdk-7-jre
    $ sudo apt-get install openjdk-7-doc
    $ sudo apt-get install openjdk-7-source
JDK7を使えるようにupdate-alternativesで設定する。
    $ sudo update-alternatives --config java
    alternative java (/usr/bin/java を提供) には 2 個の選択肢があります。

      選択肢    パス                                         優先度  状態
    ------------------------------------------------------------
    * 0            /usr/lib/jvm/java-6-openjdk/jre/bin/java        1061      自動モード
      1            /usr/lib/jvm/java-6-openjdk/jre/bin/java        1061      手動モード
      2            /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java   1051      手動モード

    現在の選択 [*] を保持するには Enter、さもなければ選択肢の番号のキーを押してください: 2
   
バージョンを確認する
    $ java -version
    java version "1.7.0_147-icedtea"
    OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
    OpenJDK Server VM (build 21.0-b17, mixed mode)
ちゃんと設定されている。

次に環境変数を設定する。
PATH以外に、Tomcatとかが使う$JAVA_HOMEという環境変数も設定したほうがいいらしい。

Read more ...