_RJ 技術メモ

人生を豊かにする技術を提供する、筋肉

コマンドでLAN内の接続デバイスを調べる

Bash LAN Network Mac Debian

概要

MacのLanScanなどでも同様のことができるが、 arp-scanを使ってコマンドラインで、LAN内の接続デバイスやIPやMACアドレスなどの情報を調べる。

arp-scan

インストール

brew install arp-scan
sudo arp-scan -l
apt-get install arp-scan
sudo arp-scan -l

実行結果

Interface: en0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.9 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
192.0.1.1       93:84:0d:d3:63:9f       Apple, Inc
192.0.1.97      68:f7:25:4c:13:13       (Unknown)
192.0.1.56      b4:4e:f6:49:45:ff       (Unknown)

515 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.9: 256 hosts scanned in 1.860 seconds (137.63 hosts/sec). 13 responded

共有フォルダのマウント

Linux samba mount bashrc Bash

概要

sambaなどの共有フォルダをマウントする。

コマンド

#sudo mount -t cifs -o username=ユーザー名,password=パスワード //IPアドレス/ディレクトリ名 マウント先 

mkdir ~/Servers/Projects
sudo mount -t cifs -o username=user,password=pass //192.168.1.2/Projects ~/Servers/Projects 

永続化

.bash_rcや.bash_profileなどに追記することで自動でマウントされる。

ルータ越えできない環境のRaspberry Piを外部から接続できるようにする

Linux RaspberryPi SSH VNC TeamViewer

TeamViewer Host

Raspberry PiSSHVNCで、外部から接続を行いたかったのだが、 ルーター越えできない環境であったため方法を探し、 TeamViewerのRaspberry Pi版がいつのまにかリリースしていたので使用。

導入

環境はRasbianで導入。

sudo apt-get update
sudo apt-get install teamviewer-host

実行

セットアップ

メールアドレスとパスワードでログインを求められ、 メールで認証を行う。

teamviewer setup

起動

sudo teamviewer start

停止

sudo teamviewer stop

ヘルプ

teamviewer help

外部から接続

他の端末でログインするとマイコンピュータの一覧に現れているので、そこから接続できる。

Docker とりあえず使うための基本コマンド一覧

docker Linux Mac MacOSX

63102bca-140a-25bb-0f49-c1971bd50b0d.png

イメージ

イメージの検索

sudo docker search {OS NAME}

$ sudo docker search centos

INDEX       NAME                                    DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
docker.io   docker.io/centos                        The official build of CentOS.                   2867      [OK]       
docker.io   docker.io/jdeathe/centos-ssh            CentOS-6 6.8 x86_64 / CentOS-7 7.2.1511 x8...   47                   [OK]

イメージ追加

バージョンは省略可能

sudo docker pull {NAME}:{VERSION}

$ sudo docker pull centos:7

Trying to pull repository docker.io/library/centos ... 
7: Pulling from docker.io/library/centos
32c4f4fef1c6: Pull complete 
Digest: sha256:1092df198d3da4faccc0660941b763ce5adf133b0ec71701b760d6f173c1f47b
Status: Downloaded newer image for docker.io/centos:7

イメージ一覧

sudo docker images

$ sudo docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
docker.io/ubuntu    latest              e4415b714b62        9 days ago          128.1 MB
docker.io/nginx     latest              05a60462f8ba        2 weeks ago         181.4 MB

イメージ削除

sudo docker rmi {IMAGE ID}

$ sudo docker rmi 15bcb6188d93

Untagged: docker.io/centos:7
Deleted: sha256:8315978ceaaa299fb99613509473b29a57600dcbf2fd5f114ff15c40fa498f5a
Deleted: sha256:d73c31c5daa6dd0f708bb547d48d103b63004fa8365515a0e40b4af620347148

コンテナ

コンテナのログイン後に、ctrl-p ctrl-q で起動したまま抜ける。 exitをするとコンテナが停止する。

コンテナ作成

sudo docker run –name {CONTAINER NAME} -i -t {IMAGE NAME} /bin/bash

$ sudo docker run --name CentOS7 -i -t centos:7 /bin/bash

[root@b44574e9cdaf /]#
ポートフォワーディング指定

-p クライアントポート:コンテナポート

$ sudo docker run -i -t -p 8080:80 centos:7 /bin/bash

[root@b44574e9cdaf /]#
メモリの指定

-m {MEMORY SIZE}

$ sudo docker run -i -t -m 512m centos:7 /bin/bash

[root@b44574e9cdaf /]#

起動中コンテナ一覧

sudo docker ps

$ sudo docker ps

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                  NAMES
b44574e9cdaf        centos:7            "/bin/bash"         4 minutes ago       Up 4 minutes                               test

停止中も含むコンテナ一覧

sudo docker ps -a

$ sudo docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS                  NAMES
b44574e9cdaf        centos:7            "/bin/bash"         5 minutes ago       Up 5 minutes                                       test

起動中コンテナを停止

sudo docker stop {CONTANER ID}

$ sudo docker stop e076a0d6f6ef

e076a0d6f6ef

起動中コンテナにアタッチ(ログイン)

sudo docker attach {CONTANER ID}

$ sudo docker attach e076a0d6f6ef

[root@e076a0d6f6ef /]#

停止中コンテナを起動

sudo docker start {CONTANER ID}

$ sudo docker start e076a0d6f6ef

e076a0d6f6ef

停止中コンテナの削除

sudo docker rm {CONTANER ID}

$ sudo docker rm e076a0d6f6ef

23047b8e5a02 

Quick LookでMarkdownをプレビュー

Markdown brew Mac

QLMarkdown

MacのQuick Lookで.mdファイルをプレビューできる。 Markdownのプレビューのみをしたい場面が多かったため。

capture1.jpg

インストール

brew tap phinze/homebrew-cask
brew cask install qlmarkdown

操作方法

マウスジェスチャで拡大、縮小を行うことができる。

参考

QLMarkdown

Angularjs ストレージ操作を簡単にする

AngularJS JavaScript

ngStorage

  • 面倒なストレージ操作を簡単にできる
  • ローカルストレージとセッションストレージでほぼ使い方が同じ

使い方

モジュール読み込み

var app = angular.module('myApp', ['ngStorage'])

コントローラー読み込み

app.controller('testController', ['$localStorage', '$sessionStorage', function($localStorage, $sessionStorage){ ... }])

ローカルストレージ保存

$localStorage.test = 'test';
$localStorage.$save();

ローカルストレージ読み込み

var test = $localStorage.test;

セッションストレージ保存

$sessionStorage.test = 'test';
$localStorage.$save();

セッションストレージ読み込み

var test = $sessionStorage.test;

ターミナルのタブ操作

tmux Terminal

使用するコマンド

screenではなくtmuxを使用 (開発が活発なため)

インストール

brew install tmux

基本ウィンドウ操作

C-b -> c ctrl+bを押したあと、cを押す

1.tmux起動

tmux

2.新規ウィンドウ (create)

C-b -> c

3.ウィンドウ一覧 (window)

C-b -> w

4.次のウィンドウ (next)

C-b -> n

5.前のウィンドウ (previous)

C-b -> p

6.ウィンドウを閉じる

exit

7.tmux終了

exit

タブ操作

1.起動

tmux

2.縦分割

C-b -> %

3.横分割

C-b -> "

4.タブ移動

C-b -> o

5.タブを閉じる

exit

6.タブを閉じる

exit

7.tmux終了

exit