シェルスクリプトでJSON の処理

シェルスクリプトでJSON の処理

sRemo-R3 で
温湿度や時刻を取得すると
JSONで返ってくるので
これをファイルに保存

なお、これだけでもAmazon Echo で操作することができるけど
自動処理させるのをやりたいので
センサーの代わりに使うことに

curl -H "Authorization: Bearer jgw5E82Ic6BISXjssK4xoKf36XeJIfjHgL53KD69" https://uapi1.sremo.net/user_api/av63hsbsyxq/get_thl > sremo.json


curl の結果を
sremo.json に保存

中身は

{"t":28,"h":45,"l":17}

となっている

シェルスクリプトで json を使うには
jq が必要なので

sudo apt-get install jq

でインストール

bashやshなどのsh系スクリプトでJSON形式のデータを読み込む【サンプルプログラムあり】

を参考に
まずはJSONデータの読み込み

## 1. JSONデータを取得
jsonData=`cat sremo.json`

#echo $jsonData | jq '.t'
temp=$(echo $jsonData | jq '.t')
echo $temp

とすればJSONデータから温度の取り出しと表示ができる

ただし、この結果は文字列扱いのため
数値変換しないと if で操作ができない

jq の tonumberで数値変換が可能とのことだが

expr コマンドを使えば
bash で文字列を数値変換して実行可能

bashで文字列を数値に変換して数値計算する方法

では数値変換による計算の例が載っている

【 expr 】コマンド――計算式や論理式を評価する

では論理式での例が載っている

これを元に

## 1. JSONデータを取得
jsonData=`cat sremo.json`

#echo $jsonData | jq '.t'
temp=$(echo $jsonData | jq '.t')

if [ 'expr $temp >= 25' ]; then
curl -H "Authorization: Bearer APIアクセストークン" https://APIサーバ/user_api/sRemo識別子/send_sig?sig=画面番号-a-n-2-1-4-22
fi

とすれば気温が25度以上になれば
22度設定でエアコンが起動するという処理になる

同じように照度25以上なら消灯するようにするのなら

## 1. JSONデータを取得
jsonData=`cat sremo.json`

illumi=$(echo $jsonData | jq '.l')

if [ 'expr $illumi >= 25' ]; then
curl -H "Authorization: Bearer APIアクセストークン" https://APIサーバ/user_api/sRemo識別子/send_sig?sig=画面番号-l-2
fi

というようにすれば消灯させることができる

こちらは後々人感センサーと合わせて処理すれば
退席したら照明を消すようなものを作成できる

ラズパイ3に外付けHDDでNAS 構築

ラズパイ3に外付けHDDでNAS 構築

ラズパイZeroW で動画撮影できるようになったけど
容量が足りないため
NAS へ保存することに

ただ、NASは高いため
ラズパイ3と外付けHDDで構築

今回使用したのは昔購入した外付けHDDがあったので
これを活用

今回は
Raspberry Pi 3 に Samba 4.2 をインストール

を参考に実践

すでに過去にインストールなどは済ませてあるので
ssh で接続

ssh pi@192.168.1.208

というように
pi@ラズパイのIPアドレスで接続

なお、パスワードは変更済みだけど
デフォルトのパスワードは
raspberry

ここからは root ユーザで実行するので

sudo su

で root ユーザに切り替え

apt-get update

でリポジトリ更新

apt-get -y upgrade

でソフトのアップデート

次にSamba のインストール

apt-get -y install samba

次に外付けHDDの設定

とはいっても
デバイスがどのパスになっているのかは
それぞれの環境により異なるので
ラズパイ3 外付けhdd
で検索し
Raspberry Pi 3 ModelB で外付けHDDをファイルサーバー化する

を参考に

 fdisk -l

Device     Boot Start        End    Sectors   Size Id Type
/dev/sda1          63 1953520064 1953520002 931.5G 83 Linux

と表示されるので
/dev/sda1 にあることを確認

次に再起動時に自動マウントさせるために
UUIDを調べたいので

blkid /dev/sda1

でUUIDを確認

今回の結果は

/dev/sda1: LABEL="outhdd" UUID="3c00b165-8ba1-481d-8f0d-372b8bbbcb66" TYPE="ext4" PARTUUID="c675b7b1-01"

なお blkid コマンドについては
【 blkid 】コマンド――ブロックデバイスの属性を表示する

を参考に

次にext4 形式でフォーマットするので
もともと書き込まれていたファイルシステムの情報を削除

使用するコマンドは wipefs コマンド

ファイルシステム関連コマンドについては
ファイルシステムの痕跡(メタデータ)をクリアする方法あれこれ(wipefsほか)

を参考に

wipefs -a /dev/sda1

を実行したものの

wipefs: error: /dev/sda: probing initialization failed: デバイスもしくはリソースがビジー状態です

となってしまう

このため

df

でマウント位置の確認

ファイルシス   1K-ブロック      使用   使用可 使用% マウント位置
/dev/root         26651708  11079260 14195580   44% /
devtmpfs            468084         0   468084    0% /dev
tmpfs               472692         4   472688    1% /dev/shm
tmpfs               472692     12472   460220    3% /run
tmpfs                 5120         4     5116    1% /run/lock
tmpfs               472692         0   472692    0% /sys/fs/cgroup
/dev/mmcblk0p6       66528     22541    43988   34% /boot
tmpfs                94536         0    94536    0% /run/user/1000
/dev/sda1        961301000 820207676 92238940   90% /media/pi/outhdd
/dev/mmcblk0p5       30701       398    28010    2% /media/pi/SETTINGS

/media/pi/outhdd
にマウントされているようなので

デバイスもしくはリソースがビジー状態です

を参考に
umount コマンドでアンマウント

umount -f /media/pi/outhdd/

そして再度

wipefs -a /dev/sda1

とすると成功

次にパーティションの新規作成

fdisk に関しては
fdisk でパーティションのサイズを変更する

を参考に

fdisk /dev/sda1

を実行すると

Changes will remain in memory only, until you decide to write them. Be careful before using the write command.  Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0xe590c949.

となるので
n を入力し Enter

Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): 

となるので、そのままEnter

Partition number (1-4, default 1): 

となるので、これも Enter

First sector (2048-1953520001, default 2048): 

も Enter

Last sector, +sectors or +size{K,M,G,T,P} (2048-1953520001, default 1953520001):

もEnter

これで

Created a new partition 1 of type 'Linux' and of size 931.5 GiB.

Command (m for help): 

とでたら
p を入力するとパーティーション情報が表示される

今回は

Disk /dev/sda1: 931.5 GiB, 1000202241024 bytes, 1953520002 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xe590c949

Device      Boot Start        End    Sectors   Size Id Type
/dev/sda1p1       2048 1953520001 1953517954 931.5G 83 Linux

Command (m for help): 

これで設定反映のため
w とすると

The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: 無効な引数です

The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).

となってしまう

エラーメッセージから検索したところ
37.3. パーティションの作成と削除
https://www.turbolinux.co.jp/products/server/11s/user_guide/partition.html
によれば再起動が必要とのこと

再起動前にフォーマットやマウントをしておきたいので

mkfs.ext4 /dev/sda1

を実行

Found a dos partition table in /dev/sda1
Proceed anyway? (y,N)

となるので y を入力

次に外付けHDDのマウント先を作成し
マウント

mkdir /mnt/hdd
mount /dev/sda1 /mnt/hdd/

外付けHDDを ext4 でフォーマットしているので

blkid /dev/sda1

で確認

結果

/dev/sda1: UUID="96cc41c9-808c-4851-83f5-53bdfa487787" TYPE="ext4" PARTUUID="c675b7b1-01"

となっているので

nano /etc/fstab 

で設定ファイルを開き

最終行に

UUID="96cc41c9-808c-4851-83f5-53bdfa487787"     /mnt/usb1       ext4    defaults 0 0

を追記

あとは設定反映のため再起動するので

reboot

を実行

これで

 df 

を実行し
マウントされていればOK

今回だと

ファイルシス   1K-ブロック     使用    使用可 使用% マウント位置
/dev/root         26651708 11079248  14195592   44% /
devtmpfs            468084        0    468084    0% /dev
tmpfs               472692        4    472688    1% /dev/shm
tmpfs               472692    12452    460240    3% /run
tmpfs                 5120        4      5116    1% /run/lock
tmpfs               472692        0    472692    0% /sys/fs/cgroup
/dev/mmcblk0p6       66528    22541     43988   34% /boot
/dev/sda1        960379088    77852 911446852    1% /mnt/hdd
tmpfs                94536        0     94536    0% /run/user/1000

というかんじ

次に samba 用フォルダ作成

mkdir /mnt/hdd/share
mkdir /mnt/hdd/share/family
chmod -R 777 /mnt/hdd/share/

次に設定ファイルの編集
ここからは使い慣れた vim で編集していきます

vim /etc/samba/smb.conf 

で設定ファイルを開き
/global で検索し
25行目あたりに

dos charset = CP932
unix charset = UTF-8
guest account = pi

を追加

なお、vim の場合 ctrl + shift + v で貼り付けが可能

そして
shift + g で最終行に移動し

[ファミリー]
        path = /mnt/hdd/share/family
        writable = yes
        guest ok = yes
        guest only = yes
        create mode = 0777
        directory mode = 0777

として保存

これで

service smbd restart

でSamba の再起動をすることでファイル共有が可能に

Ubuntu 16.04 の場合
エクスプローラで
ネットワークをクリックすると
RASPBERRYPI
と表示されるので

これを
クリックして今回設定したフォルダをクリックすると
ユーザ認証になるので
ユーザ名 pi
パスワード ラズパイ3のパスワード
とすることでログインしてファイル共有することが可能になります

wordpress の Mysql DB バックアップと Maria DB へのインポート

wordpress の Mysql DB バックアップと Maria DB へのインポート

GMOクラウドで構築した wordpress から
ConoHa VPS へ移行するため
mysql のバックアップを行う

WordPressサイトの移行手順まとめ(mysqldumpから別環境移行まで)

を参考にやってみる

DBの内容が多かったのが原因なのかは不明だけど
プラグインで実行しようとしたらできなかったので
mysqldump コマンドでバックアップすることに

データ容量が大きい場合,bzipでは圧縮は比較的早いが解凍に時間がかかるため
gzip を使ったほうがいいらしい

MySQLでバックアップ&圧縮をまとめて行うコマンド

でも バックアップと圧縮をパイプでまとめて行っている

バックアップのためのディレクトリを作成したいので

mkdir -p /var/www/backup/db_bak
chmod 777 /var/www/backup/db_bak

で作成して

個別のDBバックアップ圧縮なら

mysqldump -u username -h localhost -p databasename | gzip > mysqldump.sql.gz

すべてなら

mysqldump -u username -h localhost -p -A | gzip > mysqldump.sql.gz

でできるようだ

なお、復元に関しては
解凍&復元を同時に行う(zcat+mysql)

zcat mysqldump.sql.gz | mysql -u username -p databasename

とあるのでこれを行うには
zcat が必要になりそう

–all-databases  は
mysqldump のオプションで
全DBバックアップという意味

とりあえずバックアップしたファイルを sftp でダウンロード

今回は
mysql_backup_20181011.dump.gz
というファイルにしてダウンロード

mysql を MariaDB にインポートするので
後々問題になったときのため
バージョンを調べておくことに

/usr/local/mysql/bin/mysql --version

で調べたら

/usr/local/mysql/bin/mysql  Ver 14.14 Distrib 5.5.27, for Linux (x86_64) using  EditLine wrapper

なので
ver 5.5.27 みたい

次に

scp -p mysql_backup_20181011.dump.gz snowpool@サーバIP:/home/snowpool/

で公開鍵認証 scp で圧縮ファイルを転送

念の為
MariaDB のバージョンを

mysql --version

で確認したら

mysql  Ver 15.1 Distrib 5.5.60-MariaDB, for Linux (x86_64) using readline 5.1

またmysql のホスト名の違いについては

show variables like 'hostname';

で確認

DB全部バックアップしたものを復旧するなら

 mysql -u root < /vagrant/dump.sql

でよさげなので
MariaDB のデータを mysqldump でバックアップ・リストアする

を参考に実践

単純に

 zcat mysql_backup_20181011.dump.gz | mysql -u root -p

でできた

これで mysql のデータを maria DB にインポートできたので
次は virtualhost の設定をして
wordpress のインストールを行います

Ubuntu 16.04 LTS の準備

https://www.ubuntulinux.jp/News/ubuntu1604-ja-remix
へアクセスし
ISOイメージをダウンロード

今回は
北陸先端科学技術大学院大学

経由でダウンロード

次にISOイメージをDVDへ書き込み

書き込みには Ubuntu にインストールした k3b を使用

k3b を起動し More actions… をクリック

k3b

Burn Image をクリックし
空DVDをいれて

start をクリック

k3b2

あとは終了をまって close をクリック

k3b3

これで インストールDVDは準備OK

次にバックアップのための外付けHDDの準備

もし、重要データがあっても、バックアップがあれば復元可能

Linuxで外付けドライブをマウントがどうのこうの
http://nu-pan.hatenablog.com/entry/20140508/1399534550

を参考に実行し、ディスク情報の確認

sudo parted -l 

を実行

fdisk だと 2TB 以上のものは使えないようなので

モデル: ATA WDC WD10EARX-00N (scsi)
ディスク /dev/sda: 1000GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: msdos

番号  開始    終了    サイズ  タイプ    ファイルシステム  フラグ
 1    1049kB  992GB   992GB   primary   ext4              boot
 2    992GB   1000GB  8570MB  extended
 5    992GB   1000GB  8570MB  logical   linux-swap(v1)


モデル: I-O DATA HDCZ-UT (scsi)
ディスク /dev/sdf: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前                          フラグ
 1    17.4kB  134MB   134MB                     Microsoft reserved partition  msftres
 2    135MB   3001GB  3000GB  ntfs              Basic data partition          msftdata

mkfsコマンドでUbuntuのハードディスクのフォーマットを端末から実行する

http://ubuntuapps.info/blog-entry-691.html

を参考に

次に

df -h 

を実行し、残りの容量と、使用可能な容量を確認

使用可能な容量は Avail
使用している容量については Used に表示される

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G  4.0K  3.9G   1% /dev
tmpfs           797M  1.4M  796M   1% /run
/dev/sda1       909G  421G  443G  49% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none            3.9G  352K  3.9G   1% /run/shm
none            100M   56K  100M   1% /run/user
/dev/sdf2       2.8T  174M  2.8T   1% /media/snowpool/HDCZ-UT

今回の結果はこのとおり
とりあえず現状では半分使用していてまだ余裕がありそう

次にフォーマットしたいデバイス、今回は外付けHDDで
パスが /dev/sdf2 をアンマウント

 sudo umount /dev/sdf2 

次にファイルシステムの種類を
mkfs.ext4 でext4 でフォーマットし
-L オプションを使ってラベルを設定

sudo mkfs.ext4 /dev/sdf2 -L "UbuntuBackup"

これでフォーマットはできたけど
このままだと root のみしか使えない

hdd

なので

sudo chown snowpool /media/snowpool/UbuntuBaup/

を実行し
権限を変更することで、読み書き可能となりました

webサービス開発の準備

webサービスの開発と Android クライアントアプリを作成するため
環境を用意したいけど、ノートPCのHDDがすでにいっぱいのため
一度バックアップとってから初期化することに

なお、デスクトップもバックアップしようとしたけど
両方合わせると容量は2GB必要なため
USB 3.0対応の外付けHDD を購入することにしました

今回購入したのは

なお、電源をとろうとしても
すでにコンセントがいっぱいのため
コンセント差し込みの部分が稼働するものを購入

これで到着後に外付けHDD にデータをバックップ後
ノートパソコンを現状の Ubuntu 14.04 から
Ubuntu 16.04 LTS に変えようと思います

バックップ完了後、vagrant + virtualbox のインストール
を行い、centos 3台のサーバ構成を実験予定です

なお、開発する言語は php rails android python の予定になります

今後の予定では Ansible を使って
再度 環境構築するときに面倒にならないようにする予定です

13歳以下の子供がAppleIDを作成するにはファミリー共有設定が必要

AppleIDの作成は、満13歳以上でないとダメでした

この場合、保護者がサインインして

ファミリー共有設定しないと作成できません

設定方法は

ファミリー共有設定 で検索し

https://support.apple.com/ja-jp/HT201084

を参考に実践

使用していたiPod touchの

iOS が ver9 のものだったため

設定 > iCloud > 

ファミリー共有を設定

をタップしかし、そこから先に進めなかったので

MacBookAir から設定することにしました

どの端末から行うとしても、最初に

支払い方法の追加をする必要があり

クレジットカードの登録、もしくはキャリア決済を必要とします

このあたりの解説は

https://support.apple.com/ja-jp/HT201084

に書かれています

今回、 iPod touch にしたのは

決済の不安を消すためでしたので、

とりあえずはクレジットカードを登録します

次に子供のためのApple ID を作成します

ここからは再び ipod touchでやります

設定 > ファミリー共有 > 家族を追加 で

お子様用のAppleIDを作成

をタップ

生年月日、名前、メルアドを入力します

なお、ドメインは

@icloud.com

になります

これで後はアカウント設定で

子供用に作成したアカウントを入力すればokです

ディズニーモバイルの設定

au からdocomoへNMP しました

今回は、家族のものです

入院してるときにスマホが壊れたため

修理依頼したのですが

htc j という2012年のもので

修理には1万800円かかるとのこと

ちょうど、ディズニーモバイルのDM-01J

これがNMPと端末購入サポートで

1万5千円ぐらいで購入できるので

こちらへ変更

商品詳細は

http://www.disney.co.jp/mobile/d/dm01j.html

を参考に

今回の壊れた原因は

入院してるときに、子供に充電端子を舐められ

これが原因で中の基盤が錆びてしまい

電源も入らないという状態に

ちなみに、キャップはしてあったけど

1歳になると、外して舐めてしまうため

油断したのが原因でした

なお、修理中のときの代替機では

NMP申請ができないため

au ショップでのNMP申請となりました

au の場合、ネットからはNMP申請できず

店舗、もしくは電話からの申請となります

なお、店舗ならNMP番号のかかれた紙が

渡され

電話なら、聴きそびれてもSMSで

NMP番号が送られてくるので心配はありません

なお、店舗で行うと、余ってるau ポイントで

何か購入するか聞かれましたので

今回は食べ物関連にしました

アクセサリーなどは端末依存しますし

変更するのはiPhoneではないので

なお、今回は、新生児を連れてになってしまうため

docomoショップでは

委任状を使ったNMPとなりました

本人が行けない場合、

委任状

免許証などの本人確認できるもの

NMP番号

委任された人の免許証など

が必要になります

なお、auショップへNMPの申請や

修理中の代替機の返却は委任状では

できないようなので、本人が行くことになりました

端末そのものは、すでにmydocomoから

端末予約しておいてあり、

料金プランなどもすでに決めていたため

特に問題はありませんでした

なお、docomoの場合

ドコモ光とあわせると割引になりますが

あくまでこれは主回線のみであり

家族全員が割引にはならないようです

また、シェアパックも適用されるのは

翌月からとなり

新規の場合だと

カケホライト 1700円

sp モード 300 円

データSパック 3500円

ケータイ保証サービス 500円

トータルで6千円が初期の金額になります

なお、翌月からは、子回線扱いのため

カケホライト 1700円

sp モード 300 円

シェアオプション 500円

ケータイ保証サービス 500円

でトータル3千円となります

ただ、主回線が家族でシェアになり

シェアパック5になるため

現在の

データMパック 5000円

から

シェアパック5 6500円になります

シェアパックにしないと子回線は作れません

ここから、ドコモ光の割引

800円が割引になり

5700円になります

格安SIM と比べれば割高ですが

代替機が用意できなかったときの問題や

使う本人が詳しくないとトラブルになるため

今回はdocomoへNMPとしました

それでも、かつてのau のプランで

毎月8600円よりは安くなります

これで、端末は変更できたので

まずGoogleアカウントの設定

すでに5年前なので、パスワードは忘れたとのこと

GooglePlayを起動し

電話番号を入力

次に、パスワードを要求されるけど

忘れてるため

名前を入力

するとSMSで確認コードが送られてきて

画面がパスワード再設定画面になるので

新しいパスワード再設定

これで、パスワード再設定ができたので

後はGoogleの機能が追加されてるので

同意しますをタップし、有効化します

これでGooglePlayが使えるようになったので

次にWi-Fiの設定

DDM-01Jの場合、操作が変わってて

横へスライドだけでなく、縦にもスライドするため

最初は操作に戸惑います

次に、Twitterの設定

これもパスワード再設定が必要で

メールアドレスをGmailにしてあったので これも簡単に終わりました

後はクックパッド

印刷に必要なEPSON Print

そして、ディズニーモバイル関連は

docomoメールが鍵になるため

メールアドレスをランダムのものから変更

設定するときに初期は

ネットワーク暗証番号が0000なので

これを変更

これで、任意のメルアドにできるので

次に、MyDocomoの設定

MyDocomoはdocomoメールは使えないため

Gmailで登録

あとは、ディズニー関連の設定なので

Disneyマーケットを起動し

空メールを送信すれば設定画面になるので

そのまま設定してきます

次に、LINEの設定

ログイン で

メルアドとパスワード設定してあれば

問題ないのですが

メールアドレス未登録の場合 

番号認証をしても

LINEでメルアドが登録してログインできるようにしてないと

新規アカウント作成するしかないため

新しくアカウント作成することになります

なお、他にアカウント作成が必要なものが

多々あるため

パスワード管理ソフト

KeepassDroid

で管理することにしました

マイナンバーカード作成

今年の医療費がかなりかかり

さらに今後の確定申告を電子申告にするため

マイナンバーカードの作成

今年は確定申告へ会場へ行ったところ

4時間ほど待つことになったため

さすがに次回からは待たなくてよくしたいので

マイナンバーカードをつくるときに

申請書ID

が必要になるけど

引っ越しした場合、このIDが変更になるため

一度市役所で

個人番号カード交付申告書

電子証明書発行/更新申告書

を発行してもらう必要があります

しかもこれ、平日しかやってないという面倒なもの

とりあえず、発行してもらったら

https://net.kojinbango-card.go.jp/SS_SERVICE_OUT/FA01S001Action.do

へアクセス

スマホからやるとしても

最初に配布された個人番号の紙でない場合

QRコードがないため

URLからリンクしないとダメでした

ここで必要なのは

申請書ID

メールアドレス

ここで、これらを入力すると

メールアドレスに登録のためのURL

が送られてくるので

そのリンクへアクセス

ここでは、写真が必要になるため

スマホから行うと楽にできます

写真と生年月日をいれれば

あとは完成ですが

注意点としては電子証明書を不要に

チェックしてしまうと

e-Taxができなくなるため

e-Taxを行う予定があればこの機能はつけておきましょう

Ansibleモジュール

get_url:

wget コマンドみたいに

ダウンロードができるモジュール

url=

にはダウンロード先のurlを指定

dest=

には保存先のパスを指定

次に

unarchiveモジュール

これは tar コマンドみたいに

ファイルを展開するもの

–  name:  rubyの展開

   unarchive: 

     src=/tmp/ruby.tar.gz

     dest=/tmp

     copy=no

というように

src= には

展開したいファイルのパス

dest= には

展開先

copy=

にはコピーするかしないか

次にshellモジュール

これはシェルでの実行を指定できる

–  name:  rubyのインストール
   shell:  chdir=/tmp/{{  rubyver  }}  ./configure  –disable-install-doc

–  name:  make  ruby

   shell:  chdir=/tmp/{{  rubyver  }}  make

–  name:  make  install  ruby

   shell:  chdir=/tmp/{{  rubyver  }}  make install

というように指定する

あとsql 関連としては

postgresql_userモジュールがあり

これは

postgresql でユーザー作成するモジュール

–  name:  PostgreSQL  redmine  user作成
   postgresql_user:
     name=redmine

     password={{  password }}

というように

name=

へユーザー名

password=

へパスワード

を設定する

Ansibleと playbook

Ansibleは対象サーバーに多数の設定を一度に投入することが多いため

普通はansibleコマンド実行にはならない

複数処理させるなら

playbookをつくることになる

playbookは YAML 形式になり

拡張子は

.yml になる

–  hosts:  all
   tasks:
    –  name:  slコマンドのyumインストール

       yum:  name=sl

というplaybookなら

– hosts: には対象サーバーのIPを記述

もし all ならすべて対象になる

tasks:

のところには

処理する内容を記述していく

– name:

の部分は、ラベルやコメントのようなものなので

日本語でもok

あとは、この下へ処理を書いていく

今回はyum で sl をインストールするので

yum: name=sl

となる

ここまでの内容を

yum.yml

としてplaybookとして保存し

実行するには

ansible-playbookコマンドを使う

今回なら

ansible-playbook yum.yml

となる

ちなみにAnsibleでは

処理は重複しないので

2回実行しても設定済みと表示されるだけになる