根負けしてWindows 10へ更新…

メインで使っている自宅デスクトップでは、Windows 10への更新の通知について、頻繁に出てくる通知アイコン
20151211205636
をレジストリを書き換えてそれが出ないようにしていたはずだが、いつの間にか表示するよう戻ってしまっていて、それでもしばらくは様子見をしようとしていたら、今度はその通知プログラムのGWX.exe絡みなのか、「GWXUX.exe – アプリケーションエラー」とかいうのが出るようになってしまった。
20151211205232
パソコンを付けていると、忘れたころに警告音が鳴って、このエラーが表示される。

「彼奴らの術中」に嵌まっているようで、はなはだ不満だが、このエラーがうざい(過ぎる)し、周りでWindows 10へ更新して問題なさそうな人も出てきたので、もう更新することにした。

このパソコン自体はだいぶ古くて調子がおかしくなって来ているWindows 7なのだが、うまく更新できますように…。

怒涛のめもめもリンク集 | 根負けしてWindows 10へ更新… (2)へ続く:結局、更新後Win7へ戻すことになりました)

リンク

重複行を数えるにはuniq -c

重複行のあるデータ:

#データ例

$ echo -e "A\nB\nC\nB\nA\nA"
A
B
C
B
A
A

で、ざっくり重複数を数えようとsortコマンドで並べ替えたのはいいが、久しぶりだったので重複行をまとめるのに sort コマンド側の -u (uniq) オプションを使ってしまって、重複件数が数えられなかった。

$ echo -e "A\nB\nC\nB\nA\nA" | sort -u
A
B
C

なんどか、sortコマンドのヘルプやらマニュアルページやら眺めたが、(当然ながら)あると思い込んでいるその機能が見当たらない。

そうではなく、さらに uniq コマンドに渡して -c (count) オプションを使うべきだった。

$ echo -e "A\nB\nC\nB\nA\nA" | sort | uniq -c
      3 A
      2 B
      1 C

ownCloud同期失敗

Windows上で試しに使っているownCloudクライアントでの同期がうまくいかない。

存在しているフォルダが同期できなかったり、削除したフォルダが反映されなかったり。

クライアント設定の画面ではフォルダがきちんとサーバ側と対応しても、実際のローカル側のフォルダでは対応していない。

延々と、Windowsのタスクバーの通知アイコンに「同期アクティビティ」に「削除しました」「失敗しました」だと表示されるが、クリックしても何度も表示される。「設定画面で確認して下さい」とも出るが、設定画面の同期アクティビティのログクリアの方法もよくわからん(そのようなボタンはない)。同期に失敗しました、と言われても対策として何をすればいいのかはわからない。

進行表示アイコンが青になっていても、メッセージではエラーになっていたり、同期中となってみたり、きちんと対応が取れていない。同期済の表示があっても、さらに下の進行メッセージでは待機中やら、検索中やら。アイコンが赤×でも、すべてのファイルは同期済みとの表示とか。

サーバ側のデータベースとしてSQLiteを選択していてこれが性能不足だったのかと、MySQLへ移行してみたが改善せず。

しかたないので、Windows側のクライアントソフトでのアカウントを一度削除し、同期フォルダも空で新規に作成して、再度同期させてみることにした。

会社のクラウド構築用にownCloudをとの広告も見掛けるのだが、こんな品質で商用に耐えるのかな?

[追記]
DropBoxのフォルダをownCloudで同期させているせいか、ログを見ているとその関連のファイルでいくつか「操作はキャンセルされました」と出ている。そのファイルの同期だけキャンセルされるならまだしも、どうもそれ以降の処理すべてもキャンセルされているもよう…。なんじゃそりゃ。

エラーになっているらしきフォルダの同期を外してみたが、他のフォルダのファイルでも改善せず。

エラーログを見直すと、上記したキャンセル表記の下に「server replied: Service Unavailable」とか出てる。このあたりが原因か。

[追記]
エラーログは、Windows側のクライアントでは詳しい内容は確認できなくて、ブラウザ側からアクセスして見てみると、「Encryption not ready: Module with id: OC_DEFAULT_MODULE does not exist.」などと出てくる。更新手順に従った際には特にエラーはなかったはずなのだが、管理画面から暗号化を確認するとチェックが入っておらず、これを有効にしようとして「移行を開始」としてもエラーになってしまう(「問題が発生しました。ログファイルを確認してください。(Error: Autoload path not allowed: /var/www/html/owncloud/apps/encryption/lib/migration.php)」)。

この絡みで検索していると、ownCloudのバージョン更新で7⇒8の場合に、ファイル暗号化を指定していると更新に失敗して、ファイルを復号できなくなるんだと。って、え?!

ファイルは全削除になるのかな?過去ファイルを、どうにかver.7のツールで抽出できないのかしら…。ひでぇアプリ…。上記のサイトの方は、再インストール後にクライアントパソコン側に残っていたファイルを、再アップロードしたらしい。

コマンドラインツールで「php occ encryption:migrate」で移行せよとの情報も出てくるんだが、これを実行してみてもoccのencryptionにはこのコマンドはないもよう。

(あと、(上記の暗号化云々とは関係ないはずだが、)Windows側のクライアントのバージョン表示が2.0.2で「アップデートはありません。」となっているからうのみにしていたら、配布サイト側で確認してみたら2.1.0が提供されていた…。)

[追記]
ブラウザからownCloudにアクセスして、自身の共有ファイルのうち、過去分で暗号化されていると思われる分を削除したらWindowsのクライアント側でも正しく動作するようになった(感じ)。で、ローカルにリネームしていたフォルダもあるからと、いったん全共有ファイルとフォルダを削除して初期化しようとしていたのだが、削除したあとになぜか後からサーバ側で復活してきていた。理由はよくわからんが、他で繋いでいるWindowsクライアント側の共有ファイルの情報で復活更新されてしまったのかもしれない。

共有動作はうまくいっていそうなので、管理パネルから暗号化も有効化しようとしたのだが、この場合でもやはり「Error: Autoload path not allowed」となってしまって暗号化は失敗してしまった。「Autoload path」がどこを指しているのか、所有者権限の問題なのかがこれだけでは不明で、また、encryption/lib/migration.phpのファイルを眺めてみても要領を得ないのだが、しばらくは暗号化なしで動作させるしかないかな?(別でもうひとつのownCloudをアップグレードではなく、まったくの新規に動作させてみて、そちらでの暗号化が動作するかを確認してみるのもいいかもしれない)。

シンボリックがどうこうという記述も見掛けたので、ownCloudのディレクトリをシンボリックで設定していたのを外したりもしてみたが、こちらも効果なかった。

CentOS: remiでremi-php56が見つからない?

CentOS-6.7 (Final) x86_64の環境で、phpを5.5から5.6へ更新しようとしているが、remiをレポジトリに追加してもremi-php56が有効にできない、というか、存在しない。以前、他の環境で更新した場合にはremi-php56として更新できていたのだが。

remiにphp56というのはあるが、これらはphp56-phpのように現環境と並行してインストールする場合に使うものらしい。他で、remi-php55とremi-php70はあるのだが、remi-php56はどこに行っちゃったんだろう…??

# yum repolist --disablerepo=* --enablerepo=remi* | grep php
 * remi-php55: remi.xpg.com.br
 * remi-php70: remi.xpg.com.br
remi-php55           Les RPM de remi de PHP 5.5 pour Enterprise Linux 6 -    391
remi-php55-debuginfo Les RPM de remi de PHP 5.5 pour Enterprise Linux 6 -    263
remi-php70           Remi's PHP 7.0 RPM repository for Enterprise Linux 6 17+161
remi-php70-debuginfo Remi's PHP 7.0 RPM repository for Enterprise Linux 6     89

[追記]
/etc/yum.repo.d/を見直すと、remi.repo以外にremi.repo.rpmnewという2015年7月末付のファイルがあって、そこにはremi-php56の記載もあった(↓)。

[remi-php56]
name=Remi's PHP 5.6 RPM repository for Enterprise Linux 6 - $basearch
#baseurl=http://rpms.remirepo.net/enterprise/6/php56/$basearch/
mirrorlist=http://rpms.remirepo.net/enterprise/6/php56/mirror
# WARNING: If you enable this repository, you must also enable "remi"
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
priority=1

[remi-php56-debuginfo]
name=Remi's PHP 5.6 RPM repository for Enterprise Linux 6 - $basearch - debuginfo
baseurl=http://rpms.remirepo.net/enterprise/6/debug-php56/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

これをコピーするとremi-php56も参照可能になった。

# yum repolist --disablerepo=* --enablerepo=remi* | grep php
 * remi-php55: remi.xpg.com.br
 * remi-php56: remi.xpg.com.br
 * remi-php70: remi.xpg.com.br
remi-php55           Les RPM de remi de PHP 5.5 pour Enterprise Linux 6 -    391
remi-php55-debuginfo Les RPM de remi de PHP 5.5 pour Enterprise Linux 6 -    263
remi-php56           Remi's PHP 5.6 RPM repository for Enterprise Linux 6    387
remi-php56-debuginfo Remi's PHP 5.6 RPM repository for Enterprise Linux 6    269
remi-php70           Remi's PHP 7.0 RPM repository for Enterprise Linux 6 14+164
remi-php70-debuginfo Remi's PHP 7.0 RPM repository for Enterprise Linux 6     89

Ruby: rmagick更新

メール添付の画像ファイルの読み取り用のRubyスクリプトがエラーになるようになっちゃって、エラーメッセージを見てみるとどうもRMagick絡みでのエラーの模様。

Command output: [DEPRECATION] requiring
"RMagick" is deprecated. Use "rmagick" instead
/usr/lib64/ruby/1.9.1/rubygems/custom_require.rb:60:in `require':
libMagickCore.so.2: cannot open shared object file: No such file or
directory - /usr/lib64/ruby/gems/1.9.1/gems/rmagick-2.15.2/lib/RMagick2.so
(LoadError)
...

で、RMagickを更新するのかと思ってgemで作業したらエラー

# gem install rmagick
Building native extensions. This could take a while...
ERROR: Error installing rmagick:
ERROR: Failed to build gem native extension.

/usr/bin/ruby extconf.rb
checking for gcc... yes
checking for Magick-config... no
checking for pkg-config... yes
Package MagickCore was not found in the pkg-config search path.
Perhaps you should add the directory containing `MagickCore.pc'
to the PKG_CONFIG_PATH environment variable
No package 'MagickCore' found
checking for outdated ImageMagick version (<= 6.4.9)... *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options. Provided configuration options: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/ --with-make-prog --without-make-prog --srcdir=. --curdir --ruby=/usr/bin/ruby Gem files will remain installed in /usr/lib64/ruby/gems/1.9.1/gems/rmagick-2.15.4 for inspection. Results logged to /usr/lib64/ruby/gems/1.9.1/gems/rmagick-2.15.4/ext/RMagick/gem_make.out

ImageMagickがサーバ上で削除されちゃったか、古くなってしまっていたためらしい。これをyumでインストール:

# yum install ImageMagick
読み込んだプラグイン:fastestmirror, priorities, refresh-packagekit, security
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
 * base: centos.usonyx.net
 * elrepo: ftp.cc.uoc.gr
 * extras: mirror.vodien.com
 * updates: mirror.vodien.com 依存性の解決をしています
 --> トランザクションの確認を実行しています。
---> Package ImageMagick.x86_64 0:6.7.2.7-2.el6 will be インストール
--> 依存性の処理をしています: libwmf-0.2.so.7()(64bit) のパッケージ: ImageMagick-6.7.2.7-2.el6.x86_64
--> トランザクションの確認を実行しています。
---> Package libwmf.x86_64 0:0.2.8.4-25.el6_7 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
パッケージ アーキテクチャ
バージョン リポジトリー 容量
================================================================================
インストールしています:
ImageMagick x86_64 6.7.2.7-2.el6 base 1.9 M
依存性関連でのインストールをします。:
libwmf x86_64 0.2.8.4-25.el6_7 updates 132 k

トランザクションの要約
================================================================================
インストール 2 パッケージ

総ダウンロード容量: 2.0 M
インストール済み容量: 7.4 M
これでいいですか? [y/N]y
パッケージをダウンロードしています:
(1/2): ImageMagick-6.7.2.7-2.el6.x86_64.rpm | 1.9 MB 00:00
(2/2): libwmf-0.2.8.4-25.el6_7.x86_64.rpm | 132 kB 00:00
--------------------------------------------------------------------------------
合計 349 kB/s | 2.0 MB 00:05
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
インストールしています : libwmf-0.2.8.4-25.el6_7.x86_64 1/2
インストールしています : ImageMagick-6.7.2.7-2.el6.x86_64 2/2
Verifying : libwmf-0.2.8.4-25.el6_7.x86_64 1/2
Verifying : ImageMagick-6.7.2.7-2.el6.x86_64 2/2

インストール:
ImageMagick.x86_64 0:6.7.2.7-2.el6

依存性関連をインストールしました:
libwmf.x86_64 0:0.2.8.4-25.el6_7

完了しました!

しかし、これだけでは不足だったのか、どうもImageMagick-develも必要だったらしく、またエラーになってしまったのでこちらもインストール(rmagick用にはこちらだけでもよかったのかも?):

# yum install ImageMagick-devel
読み込んだプラグイン:fastestmirror, priorities, refresh-packagekit, security
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
* base: centos.usonyx.net
* elrepo: ftp.cc.uoc.gr
* extras: mirror.vodien.com
* updates: mirror.vodien.com
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package ImageMagick-devel.x86_64 0:6.7.2.7-2.el6 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
パッケージ アーキテクチャ
バージョン リポジトリー
容量
================================================================================
インストールしています:
ImageMagick-devel x86_64 6.7.2.7-2.el6 base 94 k

トランザクションの要約
================================================================================
インストール 1 パッケージ

総ダウンロード容量: 94 k
インストール済み容量: 424 k
これでいいですか? [y/N]y
パッケージをダウンロードしています:
ImageMagick-devel-6.7.2.7-2.el6.x86_64.rpm | 94 kB 00:00
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
インストールしています : ImageMagick-devel-6.7.2.7-2.el6.x86_64 1/1
Verifying : ImageMagick-devel-6.7.2.7-2.el6.x86_64 1/1

インストール:
ImageMagick-devel.x86_64 0:6.7.2.7-2.el6

完了しました!

このあとgemでrmagickをインストール:

# gem install rmagick
Building native extensions. This could take a while...
Successfully installed rmagick-2.15.4
1 gem installed
Installing ri documentation for rmagick-2.15.4...
Installing RDoc documentation for rmagick-2.15.4...

あと、バーコード認識用に使っていたzbarもなぜかエラー(↓)になっちゃってて、こちらも再インストールした。

# ruby -e 'require "zbar"'
/usr/lib64/ruby/gems/1.9.1/gems/zbar-0.2.2/lib/zbar/lib.rb:12:in `rescue in ': Didn't find libzbar on your system (LoadError)
Please install zbar (http://zbar.sourceforge.net/) or set ZBAR_LIB if it's in a weird place
FFI::Library::ffi_lib() failed with error: library names list must not be empty
from /usr/lib64/ruby/gems/1.9.1/gems/zbar-0.2.2/lib/zbar/lib.rb:9:in `'
from /usr/lib64/ruby/gems/1.9.1/gems/zbar-0.2.2/lib/zbar/lib.rb:1:in `'
...

gemでインストール:

# gem install zbar

zbar: This gem depends on the "zbar" C library.
If it's not installed, `require "zbar"` will fail.

Successfully installed zbar-0.2.2
1 gem installed
Installing ri documentation for zbar-0.2.2...
Installing RDoc documentation for zbar-0.2.2...

zbarのライブラリ自体も再インストールが必要だった(リポジトリにepelを指定):

# yum --enablerepo=epel install zbar
読み込んだプラグイン:fastestmirror, priorities, refresh-packagekit, security
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
epel/metalink | 5.6 kB 00:00
* base: centos.usonyx.net
* elrepo: ftp.cc.uoc.gr
* epel: mirror.wanxp.id
* extras: mirror.readyspace.com
* updates: mirror.vodien.com
epel | 4.3 kB 00:00
http://mirror.wanxp.id/epel/6/x86_64/repodata/d85fb3f508595e4e5ee2a425b729e19696f44916af9e52baf249441f62f207e4-primary.sqlite.bz2: [Errno 12] Timeout on http://mirror.wanxp.id/epel/6/x86_64/repodata/d85fb3f508595e4e5ee2a425b729e19696f44916af9e52baf249441f62f207e4-primary.sqlite.bz2: (28, 'Operation too slow. Less than 1 bytes/sec transfered the last 30 seconds')
他のミラーを試します。
http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/repodata/d85fb3f508595e4e5ee2a425b729e19696f44916af9e52baf249441f62f207e4-primary.sqlite.bz2: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
他のミラーを試します。
http://mirror.premi.st/epel/6/x86_64/repodata/d85fb3f508595e4e5ee2a425b729e19696f44916af9e52baf249441f62f207e4-primary.sqlite.bz2: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
他のミラーを試します。
epel/primary_db | 5.7 MB 00:00
119 packages excluded due to repository priority protections
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package zbar.x86_64 0:0.10-25.el6 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
パッケージ アーキテクチャ バージョン リポジトリー 容量
================================================================================
インストールしています:
zbar x86_64 0.10-25.el6 epel 143 k

トランザクションの要約
================================================================================
インストール 1 パッケージ

総ダウンロード容量: 143 k
インストール済み容量: 298 k
これでいいですか? [y/N]y
パッケージをダウンロードしています:
zbar-0.10-25.el6.x86_64.rpm | 143 kB 00:00
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
インストールしています : zbar-0.10-25.el6.x86_64 1/1
Verifying : zbar-0.10-25.el6.x86_64 1/1

インストール:
zbar.x86_64 0:0.10-25.el6

完了しました!