2021年11月9日火曜日

ansibleでタイムアウトを設定する2つの方法

その1
ansible.cfgにtimeoutを設定する。単位は秒
timeout = 60

その2
playbookの実行引数に--timeoutをつける。単位は秒
ansible-playbook hoge.yml --timeout=60

どっちがいいかは一長一短

2021年10月21日木曜日

msys2で自前証明書をインポートする

mysys2で自前の証明書のインポートのやり方。
update-ca-trustを使う方法でいいのだけど、windowsだとシンボリックリンクが作れないので、ひと手間掛けないと行けない
  1. /etc/pki/ca-trust/source/anchors/に、pemフォーマットの証明書を置く
  2. update-ca-trustを実行
  3. 本来ならupdate-ca-trustでsymlinkができるが、windowsだと作れないので、ファイルをコピーしちゃう
    1. cp -f /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem /usr/ssl/certs/ca-bundle.crt
    2. cp -f /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem /usr/ssl/cert.pem
    3. cp -f /etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt /usr/ssl/certs/ca-bundle.trust.crt

これでいけるはず。

2021年10月5日火曜日

グラボの発表時価格(ドル)の一覧

ディスプレイに白線が出るようになって、ディスプレイが壊れたかと思っていたらグラボが壊れておった。
グラボ買い換えないといけないんだけど、今のこの頭のイカれた値段たちの中では買い換える気がしねぇ…。軒並み高すぎてゲボ吐きそう。
もともとはどんなもんだったっけ?と思ったので、発表時価格(ドル)をまとめてみた
やっぱ今は異常すぎる高さ。全体的に値上がりしすぎて感覚が麻痺しそうだ。

NVIDEAドル
GeForce GTX 1660 SUPER229
GeForce RTX 2060349
GeForce RTX 2070499
GeForce RTX 2080699
GeForce RTX 3060329
GeForce RTX 3070499
GeForce RTX 3080699
GeForce RTX 30901499

AMDドル
Radeon RX 55080
Radeon RX 56099
Radeon RX 570169
Radeon RX 580 4GB199
Radeon RX 580 8GB229
Radeon RX 5500 XT199
Radeon RX 5600 XT279
Radeon RX 5700 XT399
Radeon RX 5700 XT399
Radeon RX 6600 XT379
Radeon RX 6700 XT479
Radeon RX 6800 XT649
Radeon RX 6900 XT999

2021年9月16日木曜日

raspberry piでopencl

raspberry piに乗ってるGPUでopenCLしてみた
ぐぐると、VC4Cを使う方法がまず出てくる。
軽く試してみたところ
  • VC4CLStdLib はビルドできる。
  • VC4C はビルドエラー。
  • という状況になった。


    できないのもなんか悔しいので試行錯誤した結果、なんとか動いたので、その時のメモ。以下手順
    1. 必要なものを入れる
    2.   $ sudo apt-get update
        $ sudo apt-get upgrade
        $ sudo apt-get install cmake git libraspberrypi-dev
        $ sudo apt-get install ocl-icd-opencl-dev ocl-icd-dev
        $ sudo apt-get install opencl-headers clinfo
        $ sudo apt-get install clang clang-format clang-tidy
        
    3. gitからVC4Cを持ってくる
    4.   $ mkdir opencl
        $ cd opencl
        $ git clone https://github.com/doe300/VC4CLStdLib.git
        $ git clone https://github.com/doe300/VC4C.git
        $ git clone https://github.com/doe300/VC4CL.git
        
    5. 順番にビルド&インストール
    6.   $ bash -c "cd VC4CLStdLib && mkdir build && cd build && cmake .. && make && sudo make install && sudo ldconfig"
        $ bash -c "cd VC4C && mkdir build && cd build && cmake .. && make && sudo make install && sudo ldconfig"
        $ bash -c "cd VC4CL && mkdir build && cd build && cmake .. && make && sudo make install && sudo ldconfig"
        
    7. clinfoで確認
    8.   $ sudo clinfo
        

    2021年9月8日水曜日

    raspberry piでmonacoinをマイニングしてみる

    暇だったので、ラズパイ3でcpuマイニングしてみた。
    ハッシュレートは35Kくらい
    うんちすぎて草
    消費電力は7wくらいだけど、普通に赤字なのでやるだけ無駄である。
    冷却を考えないと、すぐスロットリングになるので、負荷テストに使えるかもしれない。


    てじゅんのめも
  • OSはraspbian(32bit)
    1. 必要そうなパッケージを入れる。適当にパッケージ入れたからいらんもん入っているかも・・・。
    2. % sudo apt-get install aclocal automake autoconf pkg-config libcurl4-openssl-dev libjansson-dev libssl-dev libgmp-dev make g++
    3. cpuminer-multiをgit cloneしてソースを取ってくる。
    4. % git clone --depth 1 https://github.com/tpruvot/cpuminer-multi.git
    5. cloneしたcpuminer-multiのディレクトリでbuild.shを叩く。
    6. % cd cpuminer-multi/;./build.sh
    7. 実行。
    8. % ./cpuminer.exe -a lyra2rev2 -o stratum+tcp://プールurl:ポート -u ユーザ -p パスワード

    2021年9月2日木曜日

    OpenSSH新形式からOpenSSH旧形式に変換

    古い形式の鍵しか読めないアプリのために、新形式から旧形式へ変換する必要があったので、方法を調査した際のメモ

    旧刑式は、ファイルのヘッダ部分が
    BEGIN RSA PRIVATE KEY
    新形式は、ファイルのヘッダ部分が
    BEGIN OPENSSH PRIVATE KEY
    と、なっている。
    以下のsh-keygenで変換できる。元の鍵ファイルはバックアップを取っておいたほうがよい。 ちなみに、当然だが元がRSAじゃないと変換できへんで。
    $ ssh-keygen  -m PEM -f 鍵ファイル
    

    2021年9月1日水曜日

    chrome osでVisual Studio Code(vscode)をインストール

    そんなに難しくない。
    1. ChromOSの設定から、linuxを有効にする。
    2. VScodeのページから、パッケージをダウンロード。ダウンロードするパッケージは.debパッケージ
    3. ダウンロードしたファイルを、ファイルエクスプローラーの右クリックメニューの"Linuxでのインストール"でインストールする
    以上、カンタン
    でも、メモリ4Gのマシンだと、普通にきついので、メモリは多いほうがいいですね。
    あと、VSCodeのメニューから更新はできないくさいので、更新する場合は再インストールする必要があるみたい

    2021年8月31日火曜日

    curlコマンドのsftpは遅い

    ワンライナーでsftpできるからcurlでsftpしていたが、どうも遅い。
    sftpコマンドで転送知る場合と比べると明らかに遅いので、速度がほしいならcrulでやらないほうがいいっぽい
    実装上の問題みたいで、ソースをいじれば多少早くなる。
    ここらへんの情報 WHY SFTP IS STILL SLOW IN CURL
    ざっくりいうと、CURL_MAX_WRITE_SIZE が小さすぎるから、大ききくすれば良い。

    2021年8月28日土曜日

    javaで自動化っぽいことをする

    あえてjavaでやる必要があるのか謎
    AWTのRobotクラスとか使うとマウスとか操作できる
    たとえば、一定時間無操作だとスリープになったり、退席中になったりするのを回避するために
    60秒に一回、マウスを動かしていることにするコードを書いてみる。

    以下のコードは、マウスの現在座標にマウスを動かすことで通常時の操作をせずに
    無操作の場合でもマウスイベントを定期的に出してスリープさせないようにする
    import java.awt.Robot;
    import java.awt.AWTException;
    import java.awt.MouseInfo;
    import java.awt.PointerInfo;
    import java.lang.InterruptedException;
    
    public class App {
        public static void main(String[] args){
            try{
                Robot r = new Robot();
                PointerInfo pointerInfo = MouseInfo.getPointerInfo();
                r.mouseMove(pointerInfo.getLocation().x,
                    pointerInfo.getLocation().y);
                Thread.sleep(60000);
            }catch(InterruptedException | AWTException e){
                e.printStackTrace();
            }
        }
    }
    
    

    2021年8月16日月曜日

    単純なjsonから値を取る方法

    以下の様な単純なjson


    $ cat test.json

    {"item1":"value1","item2":"value2","item3":"value3"}


    から、例えばitem2の値を取る場合。

    $ cat test.json|grep -o '"item2":"[^"]*'|awk -F'"' '{print $4}'


    整形しているjsonとか配列の要素とかは取れないけど。

    jqとか使ったほうが多分楽。大人の事情でインストールできない場合とか用

    2021年8月10日火曜日

    curlでhttpステータスコードを取る方法のメモ

    -oオプションでレスポンスをファイルに落として、httpステータスコードを標準出力に出す。 

    curl https://www.google.com -w '%{http_code}\n'  -o response.html

    2021年7月28日水曜日

    shadowファイルのパスワードの確認

     

    事情があって、shadowファイル(/etc/shadow)に設定されているパスワードを確認しなければならなかった。

    その際のメモ。

    ・shadowファイルのパスワードフィールドにはソルト値が含まれている

    構造は

    ハッシュ方式+ソルト値+ハッシュ

    ハッシュ方式は、先頭の$+数値で、数値がハッシュ方式を表している。

    現在は6($6)で、sha512が選択されている。

    ハッシュ方式の次の$からその次の$の前部分までがソルト値

    ソルト値の後ろにハッシュが入っている。

    -> $6$ソルト$ハッシュ

    perlのcryptで確認できる。(*以下はたぶん$のエスケープが必要)

    perl -e 'print crypt("パスワードの平文", "$6ソルト$");"

    2021年7月23日金曜日

    crhomebookのメモリ

     amazonで安くなっていたchromebookを買いました。

    メモリが4GBなのですが、はっきり言って足りません。

    タブ2個開いたらもうカツカツ。きつすぎるぜ。8GBのほうが絶対いい。

    安いからってメモリケチったらだめですね。まぁCPUもケチってるんですけど。

    とにかく4GBは足りてない。8GB以上にしましょう。

    2021年7月1日木曜日

    Linux UUID

    たまたまRHELのレスキューモードでディスクのUUIDを調べる必要にかられたため、その時のメモ。


    レスキューモードだとファイルシステムが/mnt/sysimageにマウントされる。

    https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/installation_guide/sect-rescue-mode

    というわけで、レスキューモードでシステムのUUIDを調べるには、レスキューモードのプロンプトで次のようにすればいいんじゃあないかな。

    $ ls -l /mnt/sysimage/dev/disk/by-uuid/

    2021年6月27日日曜日

    Linux 証明書のインポート

    LinuxでCA証明書をインポートする。
    1. RHELの場合 
    1.1. 証明書ファイルを /usr/share/pki/ca-trust-source/anchors/ または/etc/pki/ca-trust/source/anchors/に配置する。
    1.2. update-ca-trust を実行する。

    2. Ubuntuの場合
    2.1. /usr/share/ca-certificates/ の下にディレクトリを作成する。
    2.2. 2.1で作成したディレクトリに証明書ファイルを置く。
    2.3. /etc/ca-certificates.conf に、2.2 で置いたファイルへの、/usr/share/ca-certificates/ からの相対パスを追加する。
    2.4. /usr/sbin/update-ca-certificates を実行する

    2021年6月22日火曜日

    ssh 鍵接続

    接続元で $ ssh-keygen $ ssh-copy-id 接続先ユーザ@接続先ホスト 以上!

    2021年6月20日日曜日

    sshの鍵接続で接続できない

    秘密鍵をもらって、接続しようとしたが接続に失敗した。
    原因がわかったので備忘録として残しておこう。

     秘密鍵をおいた場所と同じ場所に、別の秘密鍵のペアとなる同名ファイルの公開鍵があると、キーペアが一致せずにssh接続に失敗すり。

    sshポート転送

    local:222 -> 192.168.1.10:22 -> 192.168.2.10:22 

     1. ローカルから、ポート転送するために接続する。
     $ssh user@192.168.1.10 -L 222:192.168.1.10:22 

    2. 1.が接続している状態で、ローカルに対してssh:222に接続すると192.168.10に転送される。
    このときのユーザ/パスワードは192.168.2.10のもの。