2019年3月14日木曜日

Swap領域作成

topを見ると。
top - 22:39:48 up 244 days, 23:54,  1 user,  load average: 0.00, 0.01, 0.05
Tasks:  82 total,   2 running,  80 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1016780 total,   249264 free,   546088 used,   221428 buff/cache
KiB Swap:        0 total,        0 free,        0 used.   257548 avail Mem  # ← swapが0になっている。
→swapがない。


2Gのswap領域を作る

[user1@server1 ~]$ ll /s
sbin/ srv/  sys/
[user1@server1 ~]$ sudo dd if=/dev/zero of=/swap bs=1M count=2048
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 15.9838 s, 134 MB/s
[user1@server1 ~]$ ll /s
sbin/ srv/  swap  sys/
[user1@server1 ~]$ ll /s
sbin/ srv/  swap  sys/
[user1@server1 ~]$ sudo mkswap /swap
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=85d63f02-cc26-40ab-bc40-f92b0b698543
[user1@server1 ~]$ sudo swapon /swap
swapon: /swap: insecure permissions 0644, 0600 suggested.

[user1@server1 ~]$ sudo chmod 0600 /swap
[user1@server1 ~]$ ll / | grep swap
-rw-------.  1 root root 2147483648 Mar 13 22:41 swap

top - 22:45:18 up 245 days, 0 min,  1 user,  load average: 0.01, 0.04, 0.05
Tasks:  81 total,   2 running,  79 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1016780 total,    68808 free,   542788 used,   405184 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   253468 avail Mem
→swap できた。

再起動したときに自動でswapが有効になる設定

[user1@server1 ~]$ sudo vim /etc/fstab
/swapfile none swap sw 0 0 
を追加

2019年3月7日木曜日

comfortable_mexican_sofa assets:precompileでエラー

`comfortable_mexican_sofa` いれたらassets:precompile が失敗する。。

rake aborted!
ExecJS::RuntimeError:
(execjs):1
/home/hoge/.rbenv/versions/2.5.1/bin/bundle:23:in `load'
/home/hoge/.rbenv/versions/2.5.1/bin/bundle:23:in `
' Tasks: TOP => assets:precompile (See full trace by running task with --trace)

nodejsをアップデートしても
therubyracerを入れてみてもだめ

config/environments/production.rbで
config.assets.js_compressor = Uglifier.new(harmony: true)
をコメントアウトするとassets:precompieは通った。

触ってみて
- アセットコンパイルでエラーになる
- CMSのデータをRailsで触ろうとするときにちょっと面倒
- メモリをたくさん使う?(developmentモードでプロセスがkillされた。。)

など懸念もあるがいったん使ってはみることにした。

2019年2月27日水曜日

Sinatraでリダイレクト

Sinatraでフォームでpostした後にthanksページに飛ばすようなときのリダイレクトは
下記のように書く。

redirect to('/inquiry/thanks')

リダイレクトのステータスはデフォルトで303(See Other)なのでこのまま。

2019年2月17日日曜日

品川におでかけ

子供の誕生日のお祝いにお出かけ。品川水族館へ。

今日の一日
8:00 起床
8:30 朝食(ゴママフィン)
10:30 出発
11:00 品川AQUA PARK
13:00 イルカショー
14:00 ランチ(品川インターシティーの大戸屋)
16:00 帰宅

ゴママフィンは子供に不評。甘さが足りなかった。
AQUA PARKはなかなか楽しかった。行ったことあるしどうかなと思ったが、
自分も楽しめた。

イルカショーもよかったがアシカも芸達者で驚いた。
これまでみたアシカで一番。
インターシティーの店は日曜は大体しまってる。

2019年1月31日木曜日

MySQL 外部サーバからのアクセス権限追加



# 付与済みの権限の確認
mysql> show grants for 'user1'@'192.168.4.10';
+--------------------------------------------------------------------------------------------------------------------+
| Grants for user1@192.168.4.10                                                                                   |
+--------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'user1'@'192.168.4.10' IDENTIFIED BY PASSWORD '*EFCDCAF0F0A39E39459EB2XCFDREWOKSIX1D' |
| GRANT ALL PRIVILEGES ON `my_shop_app_development`.* TO 'user1'@'192.168.4.10'                                |
| GRANT ALL PRIVILEGES ON `my_shop_app_production`.* TO 'user1'@'192.168.4.10'                                 |
+--------------------------------------------------------------------------------------------------------------------+
3 rows in set (0.00 sec)

# ログインはできるので、新しいデータベースの使用権限を追加
mysql> GRANT ALL PRIVILEGES ON `my_blog_production`.* TO 'user1'@'192.168.4.10';
Query OK, 0 rows affected (0.16 sec)

# 追加できた
mysql> show grants for 'user1'@'192.168.4.10';
+--------------------------------------------------------------------------------------------------------------------+
| Grants for user1@192.168.4.10                                                                                  |
+--------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'user1'@'192.168.4.10' IDENTIFIED BY PASSWORD '*EFCDCAF0F0A39E39459EB2XCFDREWOKSIX1D' |
| GRANT ALL PRIVILEGES ON `my_blog_production`.* TO 'user1'@'192.168.4.10'                                   |
| GRANT ALL PRIVILEGES ON `my_shop_app_development`.* TO 'user1'@'192.168.4.10'                                |
| GRANT ALL PRIVILEGES ON `my_shop_app_production`.* TO 'user1'@'192.168.4.10'                                |
+--------------------------------------------------------------------------------------------------------------------+
4 rows in set (0.00 sec)

2019年1月27日日曜日

psをメモリ使用順でソートする。メモリを使っているプロセスを探す

メモリを食っているプロセスを探す方法。
psをメモリ使用順の降順でソートして先頭の20件を表示する。

[user1@server1 /tmp]$ ps aux --sort -rss | head -n 20
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
user1      27816  0.0  9.8 478200 100216 ?       Sl   Jan18   0:06 Passenger AppPreloader: /deploy/hoge-shop/current (forking...)
root     19319  0.0  1.3 666912 13332 ?        SNl  Jan01  33:40 Passenger core
root      5225  0.0  1.2 575880 12240 ?        Ssl   2018  28:26 /usr/bin/python -Es /usr/sbin/tuned -l -P
root       336  0.0  1.1  44308 11904 ?        Ss    2018   3:07 /usr/lib/systemd/systemd-journald
root      5261  0.0  0.7 269596  7956 ?        Ssl   2018  15:33 /usr/sbin/rsyslogd -n
polkitd   5212  0.0  0.7 538540  7748 ?        Ssl   2018   0:05 /usr/lib/polkit-1/polkitd --no-debug
nginx    19330  0.0  0.7 115224  7236 ?        S    Jan01   0:07 nginx: worker process
root     24746  0.0  0.6 113144  6760 ?        Ss    2018   0:00 nginx: master process /usr/sbin/nginx
root     19316  0.0  0.5 363308  5876 ?        SNsl Jan01   0:05 Passenger watchdog
root     28716  0.0  0.5 154612  5564 ?        Ss   12:12   0:00 sshd: user1 [priv]
root         1  0.0  0.5 193440  5196 ?        Ss    2018   3:09 /usr/lib/systemd/systemd --system --deserialize 22
postfix  28888  0.0  0.3  89740  4052 ?        S    12:16   0:00 pickup -l -t unix -u
user1     28726  0.0  0.2 154612  2528 ?        S    12:12   0:00 sshd: user1@pts/0
root      2551  0.0  0.2  46484  2288 ?        Ss    2018   0:00 /usr/lib/systemd/systemd-udevd
user1      28727  0.0  0.2 115440  2140 pts/0    Ss   12:12   0:00 -bash
root     23385  0.0  0.2 112816  2072 ?        Ss    2018   0:37 /usr/sbin/sshd -D
user1     29961  0.0  0.1 155464  1900 pts/0    R+   12:57   0:00 ps aux --sort -rss
root      5327  0.0  0.1 126312  1504 ?        Ss    2018   0:28 /usr/sbin/crond -n
root       463  0.0  0.1  26656  1400 ?        Ss    2018   1:37 /usr/lib/systemd/systemd-logind

2019年1月18日金曜日

Rails5 yarnでjsをインストールしてapplication.jsに追加

 最近jsのライブラリでインストール方法に
npm install hoge
と書いてあるものがある。npmはjsのパッケージ管理ツール。

yarnはnpm互換のツールで同じpackage.jsonを読み込んでより高速に動作する。

使いたいライブラリはpackage.jsonに以下のように記載。

layzr.jsを追加する場合
{
  "name": "my app",
  "private": true,
  "dependencies": {
    "layzr.js": "2.2.2"
  }
}

それから
bundle exec rake yarn:install

するとnode_modules 以下に、ライブラリがインストールされるのでapplication.jsに書き入れる。

//= require jquery
//= require rails-ujs
//= require turbolinks
//= require layzr.js/dist/layzr.js # 追加した。node_modules以下はassets_pathに追加されている。
//= require_directory