OS -> Linux

Docker Compose で作られたデータボリュームには現在のディレクトリ名が接頭語として付与される

具体例 こんな感じで docker-compose.yml 内で volumes を定義したとします。カレントディレクトリは /path/to/fruits であるとします。 volumes: apple: orange: banana: そして $ docker-compose up してから $ docker volume list すると以下のようになり…

ssh_exchange_identification: Connection closed by remote host と出て SSH 接続ができないとき

一つの理由 sshd が起動していない 背景 Docker のイメージを作っていて遭遇しました*1。 *1:Docker イメージでは SSH を受け付けるべきではない、という定石はとりあえず置いとくとして

CentOS 上の nginx で リバースプロキシ によるアクセスが Permission denied になるとき

結論 SELinux。したがって以下のようにして許可をすればいい。 $ sudo setsebool httpd_can_network_connect on -P

CentOS 7 で rbenv install しようとしたら no acceptable C compiler found in $PATH と出た場合

結論 gcc を入れます。 $ sudo yum install -y gcc 補足 rbenv/ruby-build の Wiki には以下のように書いてあります。が、これだけだと標題のエラーが出てしまいました。 CentOS/Fedora: # (`dnf install` on Fedora 22+) yum install -y gcc-6 bzip2 openss…

Ubuntu 18.04 で apt-get したときの対話画面をスキップする

※2022年1月10日 現在では非推奨です 結論 apt-get dist-upgrade の場合です $ DEBIAN_FRONTEND=noninteractive sudo -E apt-get dist-upgrade -y 状況 grub-pc などで以下のような画面が出て対話が必要なときがあります。これを避けたい場合です。 根拠 $ ma…

Squid で Basic認証 が有効にならなくて 5分 くらいハマった

結論 http_access allow は deny よりも上に書く。

squid.conf の文法チェックをする方法

結論 $ sudo squid3 -k check

Ubuntu における Squid の認証に用いる basic_ncsa_auth の場所

結論 Ubuntu 18.04 /usr/lib/squid3/basic_ncsa_auth*1 Ubuntu 22.04 /usr/lib/squid/basic_ncsa_auth 補足 以下のコマンドで調べれば済むと思います。 $ find / -name *ncsa_auth* *1:Ubuntu 18.04.1 LTS (GNU/Linux 4.15.0-1031-aws x86_64) です

WSL では Windows のエクスプローラからファイルやディレクトリを新規作成してはいけない

理由 パーミッションが問答無用で 777 になるから。 解決策 2018/01/05現在、ない*1。 参考 WSL File System Support – Windows Subsystem for Linux 補足 上記のように WSL 上で開発するのは危険なので、基本は SSH を使って 開発して、Rubocop のようなロ…

WSL + Visual Studio Code の環境で Rubocop (ruby-rubocop) を使う方法

結論 こちらをご覧ください。

WSL の Ubuntu で Windows のドライブをマウントした際にそれらの中身に chmod が効かない場合

結論 マウントする際に metadata オプションを付与する。 答えそのもの https://qiita.com/remin/items/a726128ab388cb73d9ee 遠因 補足 これでようやく WSL*1 での Ubuntu 運用が「使い物にならない」レベルからは脱却できたかと思います。 が、実際には WS…

SSH 接続をしようとして Too many authentication failures と出た場合の解決策の一つ

追記 最も素直な解決方法は以下のとおりです。 $ ssh-add -D 前提 以下のような状況で Too many authentication failures が出たとします。 ~/.ssh/config にめちゃくちゃ多くの接続情報を書いている 結論 接続先の /etc/ssh/sshd_config を編集する。具体的…

Monit の exec アクションで複数のコマンドを実行する方法

結論 シェルスクリプトなどを作ってそれを実行する。 だめな例 exec "/usr/bin/touch /tmp/foobar && /usr/bin/curl -I 'https://www.google.co.jp'" exec "/usr/bin/touch /tmp/foobar & /usr/bin/curl -I 'https://www.google.co.jp'" exec "/usr/bin/touc…

SSH Agent Forwarding を用いる際に微妙にハマったところ

SSH Agent Forwarding SSH Agent Forwarding とは、多段で SSH 接続をする場合に秘密鍵を中継場所に置かないようにする手法です。それを実現するために ssh-agent という機能を用います。ssh-agent は SSH Agent Forwarding とは直接関係はない技術です。 ss…

Raspberry Pi や M1 Mac(ARM) 上の Docker で MySQL を使う

結論 mysql/mysql-server - Docker Hub を用います 注意点として v8 からでないと arm のイメージがありません 旧結論 hypriot/rpi-mysql を用いる*1。 - hypriot/rpi-mysql 公式イメージが現時点(2018/10/26)では存在しないので……。 補足 MariaDB の場合…

Open Media Vault の Remote Mount を使った際にファイルの書き込みができない場合

結論 共有オプションで uid=12345 などと uid を指定する。なお uid には数値だけではなく文字列(ユーザ名)を指定することもできます。結果として「オプション」の部分の値は _netdev,iocharset=utf8,vers=2.0,nofail,uid=12345 のようになるかと思います…

Linux で削除してしまったファイルやディレクトリを復元する

結論 extundelete を用います。2018/10/23 現在では 0.2.4 が最新版です。 インストール方法 コンパイルする 自前でコンパイルする必要があります。ソースをダウンロードしてからコンパイルします。下記では書き出し先に/tmp/extundelete を指定しています。…

Raspberry Pi で OpenMediaVault に SSH で初期ログインする

結論 1. GUI の SSH の設定画面で ルートログイン を一時的に有効にする 2. 以下の ユーザ名 と パスワード で SSH でログインする USERNAME root*1 PASSWORD openmediavault 3. ログインできたはず あとは各自頑張って下さい。 補足 root 以外のユーザでロ…

Raspberry Pi で OpenMediaVault を使う

結論 イメージファイル を落として MicroSD に書き込む Raspberry Pi を起動する Raspberry Pi のアドレスに Webブラウザ でアクセスする ログイン画面が出たら以下の ID と パスワード でログインする ID: admin PASSWORD: openmediavault 補足 初回起動時…

Raspberry Pi を初期設定するときに画面を見ないで設定を済ませる(SSH できるようにする)

前提 Raspbian Stretch Lite を使います 有線LAN 接続です USBキーボード を使います

Ubuntu 16.04 LTS, 18.04 LTS で再起動後にサービスを自動起動する方法

結論 $ sudo systemctl enable [サービス名] 実例 $ sudo systemctl enable ssh 補足 サービスの自動起動を止めるには disable を用います。 $ sudo systemctl disable ssh

Mac に mitamae (MItamae) をインストールする

特別に行うことはないです。 1. releases から Mac 用のバイナリをダウンロード 今の Mac なら mitamae-x86_64-darwin ですね。 2. リネームする mitamae-x86_64-darwin のままでも動かないということはないですが、mitamae という名前に変えておきます。 $ …

SSHトンネル・トンネリング(ポートフォワード)で接続が切れてしまう場合の対策

結論 サーバ側の設定(必須) /etc/ssh/sshd_configの 112行目 くらい*1にある ClientAliveInterval 0 を有効*2にする必要がある その ClientAliveInterval の値として*3適切な値を与える(まずは 60 くらいでしょうか) SSHサーバを再起動する クライアント…

Raspberry Pi (Raspberry Pi 3 Model B) では ARM 32bit のバイナリを使う(peco の例)

結論 標題のとおりですが、例えば peco をインストールする場合には、Releases のページから peco_linux_arm.tar.gz をダウンロードしてインストールします。 それ以外のバイナリでは実行時に 実行形式エラー と怒られて実行できません。 補足 uname -m を実…

Raspberry Pi で CLI でサクッとサーバを立てて SSH するまで持っていく

結論 1. OS のイメージを落とす Raspbian の Stretch Lite の方を落とします。 2. OS のイメージを MicroSD に書き込む 公式ドキュメントで説明されているとおり、Etcher というイメージ書き込みソフトを用います。 3. HDMI でモニタにつなぎ キーボード を…

Ubuntu で名前解決ができないとき

症例 外からは入ってこられる*1けど外に出ていけない。 結論 /etc/resolv.conf が適切でない ただし、Ubuntu ではこれを直接編集しないで /etc/network/interfaces を編集する*2 *1:SSH で入れる *2:再起動時に /etc/resolv.conf 自体はリセットされるため

SSH で トンネル するときに注意すること

背景 自分がドハマりしてしまったので同じようなことをしてほしくないから*1。 注意すること 登場するメンバーは 3人 いるということ 接続元 踏み台 接続先 上記のうち、踏み台については単に経由するだけなので、そこのポート番号を考える必要はない ただし…

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 です

Powered by はてなブログ