2022年1月アーカイブ

 

 

MovableTypeの復元方法(ざっくり説明)

2021/10に発表されたMTのXMLRPC APIの脆弱性の影響で、MTの本体が消されてしまって、管理画面にログインできなくなった人もいるかと思います。

本サイトでも、この脆弱性について書きました。
https://www.eripyon.com/mt/2021/11/vulnerability_mt-xmlrpc.html

ここでは、
・さくらのレンタルサーバーを使っている(そうでない人もOKかも)
・MTの本体が消される被害にあった
・DBは残っている
・特別なプラグインは使っていない(使っていても、そのファイルがあればOK)
という人向けに、復元手順の概要を書いてみます。

mt_recovery2.png

1.まず、使っていたMTのバージョンを確認しましょう。
わからない時は、さくらのコンパネにログインして、phpMyAdminでMT用のDBへアクセスし、mt_config内に書いてあるバージョンを確認します。
DBのパスワードがわからなくて、mt-config.cgiのバックアップもない場合は、DBのパスワードを変更しちゃいましょう。ただし、他の目的でDBを使っている場合は、そちらにも影響が出るので要注意です。

ここでヒント。
MTは、mt_xxxという感じで、mt_で始まるテーブルを見に行くようになっているのですが、それ以外のプリフィックスになっていた場合は、のちに説明する手順でMT本体を復元したあとで、以下のプログラムの mt_ をその違っているものに書き換えてください。
/lib/MT/ObjectDriver/Driver/DBI.pm の $param{prefix} ||= 'mt_';
/lib/MT/ObjectDriver/Driver/DBD/Legacy.pm の $table =~ s{ \A mt_ }{}xms;

2.該当バージョンのMT本体を入手します。
古いバージョンの場合は、
GitHub https://github.com/movabletype/movabletype の master の Tagsタブより
MTOS https://movabletype.org/downloads/archives/ の 4.x、5.x

3.MT
本体をサーバーの所定の場所にアップロードして、実行権の付与や、mt-config.cgiの内容を適切なものに変更します。
この時、mt-xmlprc.cgiの削除(または実行権の削除)を忘れないでやっておきましょう。
また、手もとにあるプラグインもアップロードします。

以上でMTの管理画面にアクセスできるようになったはずなので、アクセスしてみます。

ここでもうひとつヒント。
MTをバージョンアップしてしまい、Upgrade.pmで
failed to execute statement CREATE INDEX
failed to execute statement ALTER TABLE
などのエラーが出てしまったら、
MT本体の下にある lib/MT/Upgrade.pm の以下のように修正します。
# ignore drop errors; the table/sequence/constraint
# didn't exist
if (( ( $stmt !~ m/^drop /i )
&& ( $stmt !~ m/DROP CONSTRAINT /i ) )
&& (( $stmt !~ m/^create /i )
&& ( $stmt !~ m/ALTER TABLE /i )
&& ( $stmt !~ m/CREATE INDEX /i ) ))
{
die "failed to execute statement $stmt: $err";
}

mt_recovery3.png

ざっくりとこんな感じです。

ぐっどらっこ。

Thnuderbird起動時に、新着の音がして、通知も「○○通の未読メッセージ」と出るのに、受信トレイにメッセージが表示されない(メッセージが消えた)ときは、

三本線アイコン→アカウント設定→(問題のアカウントの)「サーバー設定」で「新着メッセージを自動的にダウンロードする」のチェックをオン

にして、Thnderbirdを再起動してみてください。


thunderbird_receive_not_working2.jpg

この現象は、バージョン 91 になってから発生しているようです。

ぐっどらっこ。

Windows 10でのお話です。
ある日、Adobe Reader DCでPDFを開くと、

C:\Program Files(x86)\Common FileAdobe\ARM\1.0\AdobeARM.exe
このアプリケーションのサイド バイ サイド構成が正しくないため、アプリケーションを開始できませんでした。
詳細については、アプリケーションのイベント ログを参照するか、コマンド ライン ツール sxstrace.exeを使用してください。

side_by_side configuration_error_adobearm_exe_not_found1.jpg

指定されたデバイス、パス、またはファイルにアクセスできません。
これらの項目にアクセスするための適切なアクセス許可がない可能性があります。

side_by_side configuration_error_adobearm_exe_not_found2.jpg

というエラーが発生するようになりました。

Adobe Reader DCは最新で、64bitです。
Adobe Readerは起動できて、PDFの閲覧も可能です。
でも、Adobe Reader DCを起動するたびにこのエラーが表示されるので、ちょっとうざいです。

AdobeARM.exeはAuto Update用のアプリのようですが、「Program Files(x86)」とあるので、64bitアプリへの置き換えに、完全に成功しなかったのか?疑惑が出てきました。
そして、以下の手順で解決できました。

1.Adobe Reader DC 64bitをスタート→設定→アプリ からアンインストールする。

2.Adobe Reader DC 32bitをインストールする。
  https://get.adobe.com/jp/reader/otherversions/

side_by_side configuration_error_adobearm_exe_not_found4.png

3.Acrobat Reader(Adobe Reader)用Cleaner Tool をダウンロードして実行する。
  http://labsdownload.adobe.com/pub/labs/acrobat_ittools/AdobeAcroCleaner_DC2015.zip

side_by_side configuration_error_adobearm_exe_not_found3.jpg

4.Adobe Reader DC 64bitをインストールする。

ぐっどらっこ。

iPhoneや一部のandroidスマホからWSR-1166DHPL2/PLに接続できない!という相談を受けて、調べてみました。
症状としては、一旦は接続できるものの、接続直後にすぐに切れてしまいます。
すべてのiPhoneと、一部のandroidで発生します。
接続時の暗号化方式や周波数2.4G、5Gには関係がないようです。

could_not_connect_to_wsr_1166dhpl2_pl.jpg

調べたところ、ファームウェアが1.06だったのですが、1.07へバージョンアップすることで解決しました。

バージョンアップ用のファイルは以下にありますが、
 WSR-1166DHPL2 ファームウェア (Windows)
 https://www.buffalo.jp/support/download/detail/?dl_contents_id=62180
ルーターにログインしてから、「詳細設定」→「管理」→「ファームウェア更新」にて、「オンラインバージョンアップ」で1.07を選ぶと簡単にバージョンアップできます。

ぐっどらっこ。

無線LAN接続のプリンターがパソコンから見つけつことができないときの解決方法のお話です。

結論から言うと、今回は、無線LANアクセスポイント装置の「プライバシーセパレーター」機能が原因でした。
この機能がオンになっていると、無線LAN接続しているデバイス同士の通信ができないため、結果として、無線LAN接続のパソコンから無線LAN接続のプリンターが見つからないという現象になるようです。
無線LANアクセスポイントの「プライバシーセパレーター」をオフにすると、パソコンからプリンターが見つかりますが、LAN内の「プライバシーセパレーター」が働かなくなるので、プリンターを有線LAN接続にするか、違うネットワークセグメントにぶら下げるかなどの対応が必要になるケースもあるでしょう。

無線LAN接続のプリンターでのあるあるですが、突然のトラブル対応依頼の場合、頭の中が真っ白になってしまって気づかないこともあるかと。
以下は顛末の詳細です。

話の始まりは、「プリンターを移設したが、つながらない」というものでした。
どうせ、ネットワークのセグメントが違ってるだけだろうと安易に考えていました。

プリンターはEPSONのEP-706A。結構年季ものです。
固定IPが設定されていましたが、パネルからはIP変更ができないので、パネルから「ネットワーク設定のみを購入時に戻す」を行って、IP自動取得に変更後、手動でWiFiの設定を行いました。
ステータスシートでは「正常に動作しています」となっていて、IPも自動取得できているし、電波状態も「非常に良い」となっています。

could_not_find_printer1.jpg

それなのに、パソコンからプリンターを検出できないのです。
検出は、
・PING
・設定→デバイス→プリンターとスキャナー で「+ プリンターまたはスキャナーを追加します」
・EPSONのEpsonNet Config
のどれもがNGでした。

プリンターの対応ネットワークはW-Fiのみ。なので、有線LAN接続で!という選択肢はありません。
無線LANアクセスポイントは、BUFFALOのWSR-1166DHPL2/PL(量販店モデル)。
他の端末のWi-Fi通信は問題ないし....。ん?バッファロー?
そういえば、変な機能があったなあーー。と、調べてみたら、2.4Gと5Gでの両方で「プライバシーセパレーター」がオンになっていました。

could_not_find_printer2.png

さっそくアクセスポイントへブラウザからログインして、「プライバシーセパレーター」をオフにしたら、パソコンからプリンターが見つかり、ドライバーがインストールされ、印刷できるようになりましたとさ。
おしまい。

ぐっどらっこ。

androidスマホで@を入力する方法のお話です。

スマホの初期設定や漢字入力アプリの種類によっては、なんなく入力できる@(アットマーク)ですが、素のandroidスマホでは、どうやるんだけ?的な状態になることがあります。

アットマークは、メアドを入力する際に使いますね。

方法1

gboardのフリック入力の場合は、数字画面にしてから、ゼロを押したまま右にフリックすれば入力できます。

atsign_4.png

方法2

アルファベットを入力する場合は、QWERTYが便利ですが、そのQWERTYモードでキーボードが表示されるものの、@がどこにあるのかわからない場合は、以下のように記号を表示させて長押しで入力する設定にすると便利です。

atsign_1.png

  ↓

atsign_2.png

android 9でQWERTYキーボードに、記号を表示させる方法は次のとおりです。

・設定→システム→「言語と入力」をタップ。
・仮想キーボードをタップ。
・Gboardをタップ。
・設定をタップ。
・画面下部へスクロールして「長押しで記号表示」をオンに。

atsign_3.png

以上で設定は完了です。
QWERTYキーボードにしてから a を長押しすると @ を入力できます。
入力を試してみてください。

ぐっどらっこ。