Nextcloud を 15 にアップグレードしようとしてコケる

Nextcloud 15 がリリースされました. Changelog – Nextcloud 14.0.4 からアップグレードしようとしましたが失敗しました.そのメモです. $ sudo -u www-data php7.0 ./occ upgrade Nextcloud or one of the apps require upgrade – only a limited number of commands are available You may use your browser or the occ upgrade command to do the upgrade Set log level to debug Updating database schema Updated
Continue reading Nextcloud を 15 にアップグレードしようとしてコケる

特定プロセスのcpu利用率を制限するcpulimitを試す

先日mysqldump + xz 圧縮の間に pv を挟んで帯域制限をして xz の負荷を下げました. mysqldump を pv で制限 – matoken’s meme しかしこの方法ではそんなに負荷がない mysqldump もずっと動かしっぱなしで db にもよろしく無いです.mysqldump は先に済ませて xz だけを制限することにします. before umask 0266 && nice -n 19 ionice -c 3 /usr/bin/mysqldump –defaults-file=/mnt/backup/micro/.my-backup.cnf –single-transaction –quick –all-databases –events | pv -L 128k 2>/dev/null | nice -n 19 ionice -c 3 /usr/bin/xz -9 > /mnt/backup/micro/`date
Continue reading 特定プロセスのcpu利用率を制限するcpulimitを試す

Debian, Ubuntu で 上流のパッケージを借りてくる

以前以下のような記事を書きました. Ubuntu 16.04 aarch64環境でmozc pkgが無いのでsource pkgからbuild – matoken’s meme Debianでもarm64でmozc build – matoken’s meme 今でもこのblogの中ではアクセスが多く,最近もトラックバックをもらいました. Chromebook C101PAのcrostiniでLinuxアプリを使ってみた | ぽんぽんテック この当時は arm64 の mozcパッケージがなくて自分でbuild したという話なのですが,現在はDebian では buster(testing), Ubuntu ではartful(17.10) 以降でパッケージが存在します. なのでこの野良パッケージを使うよりも公式の上流パッケージを借りるほうが大抵の場合いいと思います. ということで手順を書いておきます. パッケージファイルだけが必要な場合はパッケージのページからダウンロード可能です. Debian — パッケージ検索結果 — mozc Ubuntu – パッケージ検索結果 — mozc 野良パッケージは近日中に削除します. Debian stretch arm64 に Debian buster arm64 の mozc を借りてくる Debian stretch arm64 では mozc-data しかない $ apt-cache
Continue reading Debian, Ubuntu で 上流のパッケージを借りてくる

mysqldump を pv で制限

mysqldump 動いてる時間に同サーバで GNU social とか Nextcloud とかの mysql を利用しているアプリケーションが重くて使い物にならないです.nice + ionice は指定していますが効いてない感じ. dump した sql を圧縮している xz コマンドが cpu を1 core 使い潰しているようです.このマシンは2 core あるのですが,もう1つの core もその他の処理でほぼ使い切って待ちが出ているような感じ. $ vmstat 1 10 procs ———–memory———- —swap– —–io—- -system– ——cpu—– r b swpd free buff cache si so bi bo in cs us sy id wa st 2 0
Continue reading mysqldump を pv で制限

Nextcloud 14 の Telegram を使った2要素認証

先日ファイル共有ソフトの Nextcloud 14がリリースされました. Nextcloud 14 now available with Video Verification, Signal/Telegram 2FA support, Improved Collaboration and GDPR compliance – Nextcloud 新機能のうちSignal/Telegram/SMS による2要素認証のサポートが気になります. Signal/Telegram/SMS 2FA support A new 2-factor authentication provider named ‘gateway’ was introduced which allows users to use the secure messaging apps Signal and Telegram as well as various SMS gateways as second factor
Continue reading Nextcloud 14 の Telegram を使った2要素認証

HDDのS.M.A.R.Tから温度を取得して表示してくれるhddtemp

hddtempというコマンドを知りました.熱いし熱が気になる時期だしお手軽に温度を知れるのは良さそうと試してみました. guzu.net 導入 $ sudo apt install hddtemp help $ hddtemp -h Usage: hddtemp [OPTIONS] [TYPE:]DISK1 [[TYPE:]DISK2]…    hddtemp displays the temperature of drives supplied in argument.   Drives must support S.M.A.R.T.   TYPE could be SATA, PATA or SCSI. If omitted hddtemp will try to guess.   -b   –drivebase   :  display database file content that allow hddtemp to                        recognize supported drives.  -D   –debug       :  display various S.M.A.R.T. fields and their values.                        Useful to find a value that seems to match the                        temperature and/or to send me a report.                        (done for every drive supplied).  -d   –daemon      :  run hddtemp in TCP/IP daemon mode (port 7634 by default.)  -f   –file=FILE   :  specify database file to use.  -F   –foreground  :  don’t daemonize, stay in foreground.  -l   –listen=addr :  listen on a specific interface (in TCP/IP daemon mode).  -n   –numeric     :  print only the temperature.  -p   –port=#      :  port to listen to (in TCP/IP daemon mode).  -s   –separator=C :  separator to use between fields (in TCP/IP daemon mode).  -S   –syslog=s    :  log temperature to syslog every s seconds.  -u   –unit=[C|F]  :  force output temperature either in Celsius or Fahrenheit.  -q   –quiet       :  do not check if the drive is supported.  -v   –version     :  display hddtemp version number.  -w   –wake-up     :  wake-up the drive if need.  -4                 :  listen on IPv4 sockets only.  -6                 :  listen on IPv6 sockets only. Report bugs or new drives to <hddtemp@guzu.net>.hddtemp version 0.3-beta15 デバイスを指定すると温度が取得できます./dev/sd[a-z]とか/dev/sd?とかも使えました./dev/sdd, /dev/sdeはS.M.A.R.Tを使えないUSBアダプタ経由で繋いでいるので取得できませんでした. $ sudo hddtemp /dev/sda/dev/sda: VB0250EAVER: 37°C$ sudo hddtemp /dev/sda /dev/sdb/dev/sda: VB0250EAVER: 38°C/dev/sdb: Hitachi HDS5C3030ALA630: 39°C$ sudo hddtemp /dev/sd?/dev/sda: VB0250EAVER: 37°C/dev/sdb: Hitachi HDS5C3030ALA630: 37°C/dev/sdc: WDC WD30EZRX-00MMMB0: 40°C/dev/sdd: WDC WD30EZRX-00DC0B0: S.M.A.R.T. not available/dev/sde: TOSHIBA DT01ACA300: S.M.A.R.T. not available デーモン化もできます.tcp 7634にアクセスると値が取得できます. $ sudo hddtemp -d /dev/sda$ nc localhost 7634|/dev/sda|VB0250EAVER|37|C| 停止 $ pgrep hddtemp11832$ sudo kill 11832 複数デバイスも行けるけどそのままでは見にくいですね. $ sudo hddtemp -d /dev/sd?$ nc localhost 7634|/dev/sda|VB0250EAVER|38|C||/dev/sdb|Hitachi HDS5C3030ALA630|39|C||/dev/sdc|WDC WD30EZRX-00MMMB0|41|C||/dev/sdd|WDC WD30EZRX-00DC0B0|NA|*||/dev/sde|TOSHIBA DT01ACA300|NA|*|$ nc localhost 7634|sed -e ‘s/||/|\n|/g’|/dev/sda|VB0250EAVER|37|C||/dev/sdb|Hitachi HDS5C3030ALA630|38|C||/dev/sdc|WDC WD30EZRX-00MMMB0|40|C||/dev/sdd|WDC WD30EZRX-00DC0B0|NA|*||/dev/sde|TOSHIBA DT01ACA300|NA|*| S.M.A.R.Tの値を元にしているのでこのツールを使わず大抵の環境で入っているsmartctlでも良い気もします. $ sudo smartctl -a /dev/sda|grep -i temp190 Airflow_Temperature_Cel 0x0022   063   056   045    Old_age   Always       –       37 (Min/Max 31/43)194 Temperature_Celsius     0x0022   037   044   000    Old_age   Always       –       37 (0 11 0 0 0) 環境 $ lsb_release -dDescription:    Ubuntu 16.04.4 LTS$ uname -mx86_64$ dpkg-query -W hddtemp smartmontoolshddtemp 0.3-beta15-52smartmontools   6.4+svn4214-1

StarDictからGoldenDictに移行した

StarDict The original StarDict project has recently been removed from SourceForge due to copyright infringement reports. Most of the files were lost with the demise of the project. てことで後継のGoldenDictを試してみました. GoldenDict StarDictでは辞書は英辞郎(テキストデータ版)とstardict-dic-jaを利用していました. 英辞郎(えいじろう・EIJIRO)の最新情報 Index of /repo/pkgs/stardict-dic-ja 英辞郎の辞書は以下のページのscriptを利用してStarDict形式に変換しました. 英辞郎をStarDict形式に直接変換するスクリプト「eiji2sd」 – 実録コンピュータ物語 eiji2sd_20160307.zipの中のPerl版(eiji2sd-text.pl)を利用して変換後StarDictの辞書ディレクトリにコピーしていました.以下は古めのマシンで実行しているので30分近く変換に掛かっていますが,通常はもっと短い時間で終わると思います. $ unzip eiji2sd_20160307.zip $ time perl eiji2sd-text.pl ../EIJIRO-1444.TXT Now reading: yohimbine activation Sorting… Writing dictionary:
Continue reading StarDictからGoldenDictに移行した

スワップファイルを作ってお手軽にスワップを増やす

RAMを大量に必要とするプログラムがあって遅くてもいいから一時的にスワップを増やしてやり過ごすことがあります.また,RAMの少ないマシンでディスクの構成をいじるのが面倒なときにもスワップファイルが使えます.ということで今回RAMが2GBでそこそこあるけど偶に使い切ってしまう(主にchromium!)のでスワップファイルを用意してみました. スワップファイルを作成します.今回は/var/tmp/swap.imgというファイルで2GB用意しました. $ sudo install -o root -g root -m 0600 /dev/null /var/tmp/swap.img $ sudo dd if=/dev/zero of=/var/tmp/swap.img bs=1M count=2048 $ sudo mkswap /var/tmp/swap.img とりあえずスワップファイルをアドホックに有効にします. $ sudo swapon /var/tmp/swap.img .スワップが増えています. $ swapon -s Filename Type Size Used Priority /dev/zram0 partition 254688 80024 5 /dev/zram1 partition 254688 80016 5 /dev/zram2 partition 254688 79940 5 /dev/zram3 partition
Continue reading スワップファイルを作ってお手軽にスワップを増やす

OpenJDK で JOSM

Javaで動作するOpenStreetMapエディタのJOSMをLinux上のOpenJDKで動かすメモです. Debian sid amd64 / Ubuntu 16.04 LTS ARM64 で確認しています. JOSMの入手 JOSMを次のページから入手します.josm-tested.jar をよく使っています. JOSM OpenJDKインストール 2015年12月くらいにはこんなメッセージが出ていて現在はJava 8以上が必要になっています. このバージョンのJavaはもうすぐサポート対象から外れます。 Java 8以上にアップグレードしてください! う” #osmjp — JOSM – Java OpenStreetMap エディタ このバージョンのJavaはもうすぐサポート対象から外れま… ここでは OpenJDK 8 を導入 $ sudo apt install openjdk-8-jre javaの確認 OpenJDK 8になっている.もし違うバージョンが表示されたら次の項目へ. $ java -version openjdk version "1.8.0_151" OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.16.04.2-b12) OpenJDK 64-Bit Server
Continue reading OpenJDK で JOSM

mysqlのdatadirを変更したらapparmorに怒られて起動しなくなった

ディスクの都合でmysqlのデータの置き場所を変更しました. mysqldを停止して,データを移動して,シンボリックリンクも一応貼っておく. /etc/mysql/mysql.conf.d/mysqld.cnfでdatadirを変更. [mysqld] datadir = /export/data/var/lib/mysql この状態でmysqlを起動するとこんな感じのエラーで起動しなくなってしまいました. 2018-02-17T16:12:54.184655Z 0 [ERROR] InnoDB: The innodb_system data file 'ibdata1' must be writable 2018-02-17T16:12:54.184718Z 0 [ERROR] InnoDB: The innodb_system data file 'ibdata1' must be writable 2018-02-17T16:12:54.184734Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error 2018-02-17T16:12:54.785643Z 0 [ERROR] Plugin 'InnoDB' init function returned error. 2018-02-17T16:12:54.786151Z 0 [ERROR]
Continue reading mysqlのdatadirを変更したらapparmorに怒られて起動しなくなった