スキップしてメイン コンテンツに移動

投稿

7月, 2019の投稿を表示しています

Ubuntu19.04 に Dokcer をインストールしてみた

ふと Docker をインストールしてみたくなったのでその手順をまとめる。 Dockerとは、仮想環境の一つでOSの一部を仮想化するし高速に起動する。 以下のサイト等を参照。下記サイトはCentOSにインストールしている。 さくらナレッジ Docker とは https://knowledge.sakura.ad.jp/13265/ Docker には、 無償版のDocker CE (Docker Community Edition) と 商用版 Docker EE (Docker Enterprise Edition)がある。 ここでは Docker CE を導入する。 導入手順は Docker のマニュアルに従った。 https://docs.docker.com/install/linux/docker-ce/ubuntu/ Ubuntu 19.04 なのでそれに従う。 まず、導入前の環境を整える。 次のコマンドで必要なプログラムの導入をする。 $ sudo apt update $ sudo apt install apt-transport-https ca-certificates  curl  gnupg-agent software-properties-common リポジトリを追加するので GPGキー を登録。 $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 次のコマンドで導入したキーのフィンガープリントを確認できる。 $ sudo apt-key fingerprint 0EBFCD88 リポジトリを登録する。 CPUを選択し、stable nightly test から一つ選ぶ。 よほどのことがない限り stable を選択する。 $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" あとは Docker-CE のインストールを行う。 $ sud

webサイトが開けなくなった。

nginx で公開しているWebサイトがブラウザで見られなくなった。 このWebサーバは nginx + Let's Encrypt でhttps接続をするように設定してあるが、 開くと次のようなエラーが表示される ========== このサイトは安全に接続できません 無効な応答が送信されました。 ERR_SSL_PROTOCOL_ERROR ========== 三日前に表示できたのに突如上記表示がされるようになった。 19-7-22 表示できた 19-7-24 cronによりLet's Encryptの自動更新 19-7-25 表示できない 調べると自動更新後から見れなくなっている可能性が高い。 取り敢えず次のサイトを参考に対処した。 [参考] Let's Encryptの自動更新でERR_SSL_PROTOCOL_ERROR発生 https://qiita.com/MasaGon/items/c6719e723e9fb57e3a4f 結論をいえば、 Let's Encrypt導入時に自動的に作られたファイルを修正した。 修正したファイル  /etc/nginx/conf.d/default.access.conf 追加した内容  ssl_session_tickets  off; この一行を追加してnginxを再起動したら復旧した。 原因はセッションの手続きに問題があったようだ。 https://github.com/jwilder/nginx-proxy/issues/580 この件を調べている最中にSSLのテストを行うサイトで確認をした。 [参考] Chromeで「このサイトは安全に接続できません」となり接続エラーとなる場合の解除方法は?  https://aprico-media.com/posts/1592 SSL Server Test  https://www.ssllabs.com/ssltest/ SSL Server Test では SSLの証明書に登録されているドメイン名について色々調べてくれるようだ。

Linux において コンソール (Textログイン) で日本語を表示する

Linux のコンソールでは、フレームバッファを使い日本語を表示することができる。 多くのLinuxでは通常グラフィカル環境をセットアップするのであまり影響ないかもしれない。 グラフィカルの画面で Ctrl + Alt + F1 等を押したり、XをインストールしなかったりするとCUIの画面のみを触ることになる。 しかし、日本語設定になっていると ( LANG=ja_JP.UTF-8 ) エラーメッセージに日本語が出力されるが表示できない。 $ man sl sl ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ この状態を避けるためには、日本語を出力しない 又は 日本語を表示できるようにする。 日本語を出力しないように英語の出力をするためには次のコマンドを実行する。 $ LANG=C このコマンドは一時的なのでログアウトするとまた元に戻る。 日本語を表示出来るようにするには、フレームバッファを用いると表示できる。 次のような仮想コンソールがあるようだが、fbterm をインストールした。 fbterm  https://code.google.com/archive/p/fbterm/ jfbterm  https://ja.osdn.net/projects/jfbterm/ kmscon  https://github.com/dvdhrm/kmscon zhcon  http://zhcon.sourceforge.net/ 以下はUbuntuでの話。 まず、インストール。 # apt install fbterm fbtermを実行するユーザをvideoグループに追加。 # gpasswd -a [username] video 該当ユーザでログインしfbtermを起動。 $ fbterm これでコンソールで日本語が表示されるようになる。

Linuxのランレベルとsystemd の関係と 切り替え方

Linux にはランレベルと言う物がある。 モードによりシステムの動作が変わるのでどんな状況で動いているかがわかる。 systemd が導入されるとこのランレベルに変わるものが導入された。 どの様にランレベルを変更できるか下記に記述する。 ランレベル /etc/inittab 0 電源オフ 1 シングルユーザモード 2 マルチユーザモード(ネットワークはオフ) 3 マルチユーザモード(ネットワークはオン) 4 未使用 5 グラフィカルモード 6 再起動 現在のランレベルは次のコマンドで確認できる。 $ runlevel 一時的な変更は次のコマンドで行う。次の例は ランレベルを1に変更する例。 # init 1 恒久的に変更するためには /etc/inittab を修正する必要がある。 次のように記述されているなら次回起動時はランレベル3になる。 id:3:initdefault: systemd では管理の仕方が変わりランレベルは次のようになった。 0 -> poweroff.target 1 -> rescue.target 3 -> multi-user.target 5 -> graphical.target 6 -> reboot.target 2と4に対応するものは無い。 このtargetファイルは /etc/systemd/ に色々ファイルが有り、 この中のファイルは /lib/systemd の中のファイルのシンボリックファイルになっている。 /etc/systemd/system/default.target は何のファイルのシンボリックリンクになっているかでランレベルが決まる。 現在のランレベルは次のコマンドで確認できる。 $ runlevel または、次のコマンドでも確認できる。 $ systemctl get-default systemctl で表示されるのは、現在セットされている内容を見ているので 厳密には今のランレベルというわけではない。 一時的にランレベルを変更するのは次のコマンド。 # systemctl isolate graphical.target または次のコマンドでも変更できる。 # ini

ftpコマンドでサーバーからファイルをダウンロードする

ftpコマンドでサーバーからファイルをダウンロードしたい。 昔、Windowsでバッチファイルを組んで使っていたが忘れてしまったので、 それを思い出しながらまとめてみた。 ftpコマンドには -n オプションがある。 このオプションは自動起動しないようにするオプションなので、 このオプションを付けて起動したftpコマンドにリダイレクトで必要な操作を与える。 $ ftp -n < ftpfile このときの ftpfile ファイルは操作する内容を書いておく。 === ftpfile === open FTPSERVER user USERNAME PASSWORD prompt bin get GETFILENAME mget GET*FILE*NAME quit === ftpfile === 1行目はログイン先のftpサーバの指定 2行目はログイン名とパスワードの設定 (例えば ユーザ名 anonymous パスワード anony@example.com) この後ログインした後の操作を記述する。 [参考]ftpコマンド処理を自動化したい https://www.itmedia.co.jp/help/tips/linux/l0462.html

Ubuntu で RAIDディスクをマウントする

謎のHDDが見つかった。 データを確認するためWindowsにつなぐもマウントされず。 これは extとかffsの辺りかなと思い、Linux(Ubuntu)に繋ぐ。 しかし、自動マウントされない。 取り敢えずマウントする。 # mount /dev/sdb1 /mnt/disk すると'linux_raid_member'とエラー表示された。 ということで、まずファイルシステムを確認。 # parted -l このコマンドでファイルシステムが表示される。 また、Gparted でも表示される。 そこでRAIDディスクを扱うためにmdadmパッケージをインストール。 # apt install mdadm ネットでは mountコマンドの -t オプションで明示的にファイルシステムを指定するとマウントできると書いてあったのでそれを試すとマウントできた。 # mount -t ext3 /dev/sdb1 /mnt/disk 内容を確認すると不要なデータだったのでデータを削除する。 # shred -v /deb/sdb この処理はとても時間がかかるので普段使わないコンピュータで処理をした。