約束の地

キャロ組

OS -> Linux

Docker で IPアドレス を固定する方法

結論 オーソドックスな方法の一つです。 1. Docker の ネットワーク を作成する 以下のようにしてネットワークを新規に作ります。--subnet=10.123.123.0/24 の部分は場合に応じて変更します*1。 $ docker network create --subnet=10.123.123.0/24 my_docker…

Wekan を Docker で起動しようとしても起動しない(アクセスできない)場合

Wekan Trello のクローンの OSS です。 結論 その1 アプリのポートは 8080番ポート をさらけ出していますか? v1.24 からは、従来の 80番ポート に代わって 8080番ポート が外に開けられるようになりました。 その2 MongoDB のイメージのバージョンを正しく…

Ubuntu 16.04 LTS または Linux Mint 18.2 Sonya に Docker CE をインストールする

前提 インストールする対象の OS は Ubuntu 16.04 LTS または Linux Mint 18.2 Sonya です インストールする(された) Docker CE のバージョンは Docker version 18.06.0-ce, build 0ffa825 です

Ubuntu で pyenv で Python を ビルド しようとしたら bz2 と sqlite3 がないと怒られたとき

状況 以下のような状況です。 $ pyenv install 3.7.0 Downloading Python-3.7.0.tar.xz... -> https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz Installing Python-3.7.0... WARNING: The Python bz2 extension was not compiled. Missing the …

シェルからパーミッションを一気に変更するコマンド

パーミッションを一括変換 誤ったパーミッションの設定をしてしまったとき、一気にそれを変えるためのコマンドです。find を使えばシェルでできます。 具体例 以下のコマンドですと「ファイルが全て0644」となり「ディレクトリが全て0755」になります。 $ fi…

パーミッション分類

どういう場合にどういうパーミッションを与えるか 結論 0644 一般的なファイル シェルの設定に umask 0022 と書くこと 0755 一般的なディレクトリ 実行可能ファイル 0600 鍵ファイルや ~/.ssh など 0777 Webに公開するディレクトリかつ書き込みが行われるデ…

Windows 10 の Ubuntu 18.04 のファイルは Windows 上ではどこにあるか

結論 C:\Users\foobar\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_12abcd3efghij\LocalState\rootfs 補足 foobar のところにはユーザー名が入ります CanonicalGroupLimited.Ubuntu18.04onWindows_12abcd3efghij の 12abcd3efghij …

Windows から Samba の ファイル や フォルダ を Git で扱うと内容が変わっていないのに全て Modified 扱いになるとき

結論(理由) パーミッションが変わった。 結論(対応方法) umask で設定する値と smb.conf で設定する値を同一にするとよい。例えば、umask が 022 ならば、smb.conf は以下のように書きます。 [your_share_name] path = /path/to browseable = yes writab…

PostgreSQL で postgres ユーザ(root ユーザ)のパスワードがわからなくなった時

postgres ユーザ(ロール) PostgreSQL では postgres というユーザ(ロール)がいわゆる root ユーザになりますが、こいつのパスワードを忘れたときの対処法です。 結論 1. pg_hba.conf を編集して認証をスキップさせる Ubuntu 16.04 LTS ならば /etc/postg…

SSH で IPアドレス でアクセスすると Permission denied (publickey) になる

結論 ググりまくったけど前例が見つからず、完全解決していない*1。またもやドハマりした(している)。 前提 パーミッションやら何やらは問題なく設定できていると思います*2。 *1:たぶん簡単なことだと思う *2:もしかしたらできていないのが原因かも……

XShell を用いて SSHトンネル を作る方法

XShell Windows用 の SSHクライアント です。現状ではこれが Windows ではベストだと思っています。個人利用ならばフリーです。 SSHトンネルを構築する XShell を用いて SSHトンネルを構築する方法を示します。なお、事前の準備としていわゆる踏み台サーバの…

rsync で --exclude を指定したのに正しく除外されない場合

結論(の一つ) --exclude オプションのディレクトリ指定は sync先 の 相対パス で書く。

psコマンドで出力したプロセスはどこの場所(パス)で実行されているか

背景 psコマンドを実行したら以下のような表示になり、この unicorn を何?出どころはどこ?となりました。 $ ps aux | grep unicorn foobar 4856 0.0 0.1 86892 17952 ? Sl 2月20 0:02 unicorn master -c unicorn_config.rb -D

Ubuntu 16.04 LTS で ストレージ を フォーマット し、マウント をして使えるようにするまでの手順

注意 コマンドを羅列しただけなので、それぞれの意味を把握した上で作業しましょう。

Ubuntu 16.04 LTS で mount したディレクトリ内で作成したディレクトリやファイルの所有者が root になってしまう場合

結論 mount する際に -o オプション で gid と uid を指定してあげましょう。 補足 外付けストレージが頻繁に /dev/* を変えてくる場合にも有効です。 参考

Ubuntu 16.04 LTS にて smartctl を用いてストレージのヘルスチェックをする(監視する)

手順 1. smartctl をインストールする smartctl は smartmontools というパッケージに入っています。インストール後に smartctl --help でインストールされているかを確認します。 $ sudo apt-get install smartmontools -y $ smartctl --help

SSHトンネルを用いて、インターネットからアクセスできないマシンにログインする

結論 いわゆるSSHトンネリングをすればいいです。 「A」をインターネットからはアクセスできないマシン(しかしインターネットに向かっては出ていける)とし、「B」はインターネットからSSH可能なマシンとします*1。 このとき、「A」→「B」とつなぐことはも…

Ubuntu 16.04 LTS で MeCab を NEologd とともにインストールする

MeCab あえて記載する必要はないかと思いますが、形態素解析エンジンです。「和布蕪」です。 MeCab: Yet Another Part-of-Speech and Morphological Analyzer Ubuntu 16.04 LTS にインストール OS や バージョン ごとに微妙にインストール方法が異なるので、…

Ubuntu 16.04 LTS で他の Ubuntu のストレージを特定のユーザでマウントする

前提 Samba は設定済みとします。 結論 $ sudo mount -t cifs //10.10.10.123/mount_taisho_no_namae /mnt/mount_suru_basho_no_namae -o username=anata_no_namae,password=anata_no_password,gid=1234,uid=1234 補足 gid と uid は、マウントするマシンで…

Webブラウザ で ターミナル を扱える Butterfly を使う

Butterfly これです。 何ができるか Webブラウザ で ターミナル の操作ができます。公式ページ をぜひご覧ください。 こんな感じになります(公式サイトの画像より)。

Ubuntu 16.04 LTS で JDK(JRE) と Maven はどこにあるか

結論 JDK (JRE) /usr/lib/jvm/java-8-openjdk-amd64/jre Maven /usr/share/maven 備考 $ ls -l を使ってシンボリックリンクをたどっていけば分かります 参考(感謝)

Sidekiq をバックグラウンド(daemon)で起動する方法

結論 --logfile の指定は必須です。 $ sidekiq --daemon --logfile /tmp/foobar.log 補足 ヘルプを見ましょう。ググるよりもまず公式です。 $ sidekiq --help 2018-02-27T05:00:02.740Z 14493 TID-gojqgqogs INFO: sidekiq [options] -c, --concurrency INT …

Rack をバックグランド(daemon)で起動する方法

結論 $ rackup -D

cron が動かない(コマンドラインでは動く)場合には PATH が通っているかを調べる(Whenever でハマった)

結論 cron の初期パス(というか環境変数)は貧弱なので、cron の設定ファイル内に必ずパスを設定してあげましょう。「ターミナルでは動くけど cron で動かない」理由の最たるものではないかと思っています。 Whenever での例 Whenever で PATH を設定するに…

h5ai で設定したほうがよいオプション

h5ai 以前紹介しましたこれです。 オプション設定 private/conf/options.json でオプションを設定できるのですが、以下の2つはデフォルトから変えておいたほうがよいかなと思いました*1。 *1:もちろん場合によります

ヘッドレス Chrome でスクリーンショット(画像やPDF)を取得する

ヘッドレス Chrome Chrome 59 から Headless Chrome が搭載されました。PhantomJS の現状を考えると、早めにこちらに移行するのがいいかと思います。詳しくは以下の公式ページなどを。 スクリーンショットを取得する 上記の公式ページに書かれていますが、動…

monit で個別の監視項目ごとにメールで通知する方法

結論 個別の監視定義ファイルに alert foo@bar.com などと書きましょう。

Ubuntu 16.04 LTS にて Lighthouse をコマンドライン(CLI)で実行する

Lighthouse これです。

続・Ruby で UTF-8 の文字を Shift JIS の文字に変換する

以前に書いた記事の別解です。

Ubuntu 16.04 LTS に MozJPEG をインストールする

MozJPEG これです。 Guetzli と比べられるやつです。 Ubuntu 16.04 LTS に MozJPEG をインストール Ubuntu 16.04 LTS に MozJPEG をインストールするには以下の手順でソースからコンパイルしていきます。

Powered by はてなブログ