Programming Memo

RailsとかAWSとか色々

viの基本 他

今日インターンでやったこと。

  • [x] viの基本
  • [x] UNIXの基本
  • [x] Debianをインストールする

viの基本

知ってるコマンドを飛ばしつつ、一通り目を通す。

Filesystem Hierarchy Standard - Wikipedia

nanasi.jp

Unix

リンク先の記事を読みつつ、内容の幾つかをピックアップ。

http://pen.agbi.tsukuba.ac.jp/~RStiger/hiki2/?UNIX%A4%C8%A4%CF+%2F+CUI%A4%C8GUI+%2F+%A4%CA%A4%BCUNIX%A4%CA%A4%CE%A4%AB%3F

www.garunimo.com

テキストデータ処理

  • awk 列の抽出、計算、条件分岐、ソートなどの処理ができる言語とのこと。 awkを極めればこのコマンドだけで様々な処理ができるとの噂を前々から聞いていたものの、 まだ使いこなせていないためにその真価を理解できていません。 awkの書籍があるぐらいなので、そのうち目を通しておきたいです。

バイナリデータ処理

現状バイナリデータを処理した経験がなく、今回初めて目にしたコマンドの oddd

SSH

  • ポートフォワーディング

    SSHの強力な機能として、「ポートフォワーディング」というものがある。これは、あるUNIXサーバー(SSHサーバー)を踏台にして、別のサーバーに接続する技術である。たとえば、あるUNIXサーバー(これをAと呼ぼう)が、あるサービスを、特定のクライアントにしか提供していないとする。しかし、もしその「特定のクライアント」のひとつ(これをBと呼ぼう)がSSHサーバーであるならば、そのSSHサーバーに接続することができる人ならば、世界中のどのクライアントからでも、そのSSHサーバーBを踏台にして、サーバーAのサービスを受けることができる。

iptablesで設定できるFORWARDチェインのことみたいですね。

Debianをインストールする

プラクティスにDockerを利用する場合のリンクがあったので、 未だにDockerを触っていなかった私はいい機会だと思い、DockerとDocker Imageを利用してDebianをインストールしました。 しかし、あまりにも簡単すぎて自力でインストーラーを使ってインストールする方法を学ぶことができませんでした。 これでは本末転倒なので、次回ほかのVPS上などでインストールしたいと思います。

ちなみに以下がDockerにおけるDebianのインストール方法です。 これはほんとに簡単だ...。 あとはDocumentなどに目を通してDockerの概念を理解しておきたいです。

$ brew cask install virtualbox
$ brew install docker
$ brew install docker-machine
$ docker-machine create --driver virtualbox debian-docker
$ docker-machine ls
NAME            ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER    ERRORS
debian-docker   -        virtualbox   Running   tcp://192.168.xx.xxx:xxxx           v1.12.1
$ docker-machine status debian-docker
Running
$ docker-machine ssh debian-docker
$ docker pull debian:latest
$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
debian              latest              031143c1c662        2 weeks ago         125.1 MB
$ docker run -i -t debian