Unix関連活用日記(旧Solaris_x86活用日記)

macOSやFreeBSD,Linuxを中心とした内容に変更
(自称Solarisエバンジェリスト)

MacBookのChromeのupdateに失敗する場合の決定的な対策

2023年12月16日 12時28分40秒 | TIPS
Mac用のGoogleChromeのアップデートは,
「メニューバー」→「Chrome」→「Google Chromeについて」
によって,手動実行できる。
しかし,何らかの原因で,必ずエラーとなってしまうと,2度と正常にアップデートができなくなってしまう。
An error occurred.(Error code:0)(Extra code:4)

その際の解決策がweb上で見つかった。
そのページに書かれている通りに,
  • /Library/Google/GoogleSoftwareUpdate/ 内の
 GoogleSoftwareUpdate.bundle ファイルを削除する。
  • Chromeを終了して、再度起動する。
これで一発で解決した。
情報ありがとうございました。
Googleはこのバグフィックスの方法を把握していないようだ。

Canon製プリンタ B200 エラー解決方法

2011年04月19日 05時29分20秒 | TIPS
リンク先のようなエラーが出たら、次の方法を試すと良い。
このエラーの原因の殆どは、ヘッドの接触不良だ。
アルコール系の接点復活剤を使用すると直る。
その方法は、こうだ。
1.ヘッドを本体からはずす。
2.接点部分(金色)に接点復活剤をスプレーして一旦綺麗に擦り落とす
3.再度、復活剤を吹きかける。または、垂らす。ここで大事なのは、液状として認識できるように濡らすことだ。電極同士が復活剤でつながってもショートを起こすことはないので安心して良い。

尚、接点復活剤には、αオレフィンを基剤にした物もあるが、このエラーには上の物で十分だ。
使用した製品名:ELECOM接点復活剤

PostgreSQLの列削除

2006年06月04日 10時45分24秒 | TIPS
7.3.2 からは ALTER TABLE DROP COLUMNをサポートしているので手間がかからないが,
それ以前のバージョンの場合は,削除列を除く列を選択し新たにテーブルを作り,以前のテーブルと置き換える必要がある.

[1]まず,削除したい列を含んだテーブルから残したい列を選択し,新たにテーブルを作成する.

SELECT col1,col2,・・・ INTO TABLE [new_table] FROM [old_table];
実際に思い通りのテーブルが作成されたかを確認する.

[2]次に以前のテーブルを削除する.
DROP TABLE [old_table];

[3]最後にテーブル名を変更する
ALTER TABLE [新規に作ったテーブル名] RENAME TO [依然あったテーブル名];

注:ビューなどのストアドプロシージャなどは.クエリ定義の再保存が必要になる.

Firefoxのトラブルシューティング

2005年12月26日 06時57分27秒 | TIPS
内容については、Solaris版に限定しない。
◎ダウンロード時の動作設定が無効になる
 <動作設定の表示と変更(V)をクリックしても何も登録されていない。>
・WindowsXPの場合
C:¥Documents and Settings¥Adomistrator¥Application Data¥Mozilla¥Firefox¥Profiles¥*****.defoault
の中の
localstore.rdf
mimeTypes.rdf
の2つのファイルを当該ユーザの当該ディレクトリにコピーをすればよい。

SSLその3

2005年01月16日 14時34分43秒 | TIPS
4.2 証明書の例
サーバ証明書ファイル

-----BEGIN CERTIFICATE-----
MIIC8DCCAlmgAwIBAgIBEDANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMCWkEx
FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD
VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv
biBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEm
MCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wHhcNOTkwNTI1
MDMwMDAwWhcNMDIwNjEwMDMwMDAwWjBTMQswCQYDVQQGEwJVUzEbMBkGA1UEChMS
RXF1aWZheCBTZWN1cmUgSW5jMScwJQYDVQQDEx5FcXVpZmF4IFNlY3VyZSBFLUJ1
c2luZXNzIENBLTIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMYna8GjS9mG
q4Cb8L0VwDBMZ+ztPI05urQb8F0t1Dp4I3gOFUs2WZJJv9Y1zCFwQbQbfJuBuXmZ
QKIZJOw3jwPbfcvoTyqQhM0Yyb1YzgM2ghuv8Zz/+LYrjBo2yrmf86zvMhDVOD7z
dhDzyTxCh5F6+K6Mcmmar+ncFMmIum2bAgMBAAGjYjBgMBIGA1UdEwEB/wQIMAYB
Af8CAQAwSgYDVR0lBEMwQQYIKwYBBQUHAwEGCCsGAQUFBwMDBgorBgEEAYI3CgMD
BglghkgBhvhCBAEGCCsGAQUFBwMIBgorBgEEAYI3CgMCMA0GCSqGSIb3DQEBBAUA
A4GBALIfbC0RQ9g4Zxf/Y8IA2jWm8Tt+jvFWPt5wT3n5k0orRAvbmTROVPHGSLw7
oMNeapH1eRG5yn+erwqYazcoFXJ6AsIC5WUjAnClsSrHBCAnEn6rDU080F38xIQ3
j1FBvwMOxAq/JR5eZZcBHlSpJad88Twfd7E+0fQcqgk+nnjH
-----END CERTIFICATE-----

証明書ファイルの内容

Certificate:
Data:
Version: 3 (0x2)
Serial Number: 1516 (0x5ec)
Signature Algorithm: md5WithRSAEncryption
Issuer: C=US, O=Equifax Secure Inc, CN=Equifax Secure E-Business CA
Validity
Not Before: Jul 12 15:21:01 2000 GMT
Not After : Jun 2 22:42:34 2001 GMT
Subject: C=us, ST=ga, L=atlanta, O=Equifax, OU=Rick, CN=172.18.116.44/Email=richard.sigle@equifax.com
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:c8:eb:93:26:97:ca:00:ce:4c:e4:f3:fd:43:31:
cd:53:ed:b4:8a:ad:93:84:dc:7a:48:39:b5:28:57:
03:7f:a9:ac:3e:58:6a:7a:e3:52:3e:1e:52:58:a2:
6f:23:ad:bb:84:d8:88:ed:6d:a5:da:08:6b:c8:6c:
a5:4c:34:67:d8:46:1c:ca:20:50:b0:e8:54:7f:ca:
5e:ef:09:ff:6e:8d:a6:2b:02:f5:54:0f:c2:d0:45:
12:ad:66:e7:8b:dd:68:be:64:a4:9b:69:bd:a4:1a:
5e:ef:09:ff:6e:8d:a6:2b:02:f5:54:0f:c2:d0:45:
12:ad:66:e7:8b:dd:68:be:64:a4:9b:69:bd:a4:1a:
5a:2f:3b:6e:73:84:d8:d6:17:bd:12:39:34:fa:3d:
d8:a9:e8:59:3c:c2:61:c5:b3
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Key Usage: critical
Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment
Netscape Cert Type:
SSL Server
X509v3 Authority Key Identifier:
keyid:5B:E0:A8:75:1C:78:02:47:71:AB:CE:27:32:E7:24:88:42:28:48:56
Signature Algorithm: md5WithRSAEncryption
87:53:74:e9:e1:a6:10:56:8c:fa:63:0e:7b:72:ff:76:4b:79:
0e:49:2a:58:ed:71:7a:bf:77:61:fa:e8:74:04:37:8c:d3:6a:
9a:3d:80:76:7a:c3:64:30:e7:1b:40:25:4e:2a:81:8b:e5:ac:
76:a4:38:67:cc:3f:93:43:e1:1d:c3:8d:ba:ed:cc:d7:aa:a4:
ab:d3:84:77:7c:8f:26:f6:dd:ba:3b:6a:99:81:e1:9e:7e:0f:
ca:a6:ff:c0:c3:59:6e:dc:a6:03:23:bf:8f:24:ff:15:ad:ac:
0d:85:fc:38:bf:d1:24:2d:1a:d3:72:55:12:95:5f:65:f0:60:
df:b1

秘密鍵ファイル

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,124F61450D85A480

ELz64SV+tFSRybsHjY9NH7CP7yDHXP6xcd9FY6MVgQykTkq2h0n7j+tmpfUPbStT
6jCgm/dTYM9mpkQ3jYZBALiVD5JNJ9t1dWisxQXY/nsak8LSTN7LhUtZSfk5xSmV
Zsl4gwQS20UdBzFiJ+4qDajP/pzocSdSuQvxIHq7UzNwJsW8UYxR3I1qrDgyNXKS
db41BWH4QdNtE0p+pi9VndDzXktqZGHEvtrQTV+39DV/dwOdnGBpYBETljMO5X6t
D42xcVs0Doa1vZ6PiMCkwFNPXsPlKHZtHwEL4I3CQdiH4E0oYh3klBzlXBY4YldN
A+s4xU44FpXp5xwt9nnVPUKHPo+NpdaRK7dAcRNO3GN3+ek1ggzvEjjuWKes3RQh
PlHPuF7VWo4KeaTfTIwJWfGxz4nvwlVByPJ6Z73Mn0VcDXCkVm6+h3PLlYL0FMqM
baUyQPpw6bhfW71FO/IIQxz3R1EqkxW7OHv74uuYl8kjHXf3S6qRZEGUG/zOGLGr
mI5s2qnU69HlBObFkc6WQq0QxMq4PiUi7HhCLMkH8+wBsNNMnb75+7lQKkEhdOeE
iUMKe5kgQqfd9w8jsBH5nu+J/nCfvPdp0isQW+P3/Rrh6YMwdKnlVfNZWdGiTzpQ
ngThAGq5lit4uf4zdTIYYrs+T9I5ltjj0KgCUD4VL5/7OfnR3gcphpbHXQf0E2cz
Qwq7q7ppKwCf/x92pHi8oVevlV5Dx9NQbGhEOA5pooqD6S2xZBbPLzkUKWDEO2il
oBZ5L1jClR5jjdF2U61w7aRrL0t6luDU/aRv/fcoYes=
-----END RSA PRIVATE KEY-----

秘密鍵ファイルの内容

read RSA key
Enter PEM pass phrase:
Private-Key: (1024 bit)
modulus:
00:c8:eb:93:26:97:ca:00:ce:4c:e4:f3:fd:43:31:
cd:53:ed:b4:8a:ad:93:84:dc:7a:48:39:b5:28:57:
03:7f:a9:ac:3e:58:6a:7a:e3:52:3e:1e:52:58:a2:
6f:23:ad:bb:84:d8:88:ed:6d:a5:da:08:6b:c8:6c:
a5:4c:34:67:d8:46:1c:ca:20:50:b0:e8:54:7f:ca:
5e:ef:09:ff:6e:8d:a6:2b:02:f5:54:0f:c2:d0:45:
12:ad:66:e7:8b:dd:68:be:64:a4:9b:69:bd:a4:1a:
5a:2f:3b:6e:73:84:d8:d6:17:bd:12:39:34:fa:3d:
d8:a9:e8:59:3c:c2:61:c5:b3
publicExponent: 65537 (0x10001)
privateExponent:
00:b6:57:7d:3b:58:24:1e:a9:1b:85:e9:9c:9e:5f:
d3:3d:69:0c:21:93:37:bf:2b:2c:da:e1:6c:74:48:
cb:c7:0f:60:5f:50:74:8a:44:45:be:54:5c:5d:4e:
45:58:f6:f1:a8:b5:af:46:f2:ec:c2:bc:43:bd:28:
44:b7:ad:13:d3:ca:de:59:24:e8:fa:f8:e5:5f:45:
38:2c:a0:a3:de:98:13:d8:80:38:e1:47:53:4c:ea:
e4:66:c3:82:93:89:c3:90:83:44:e1:13:4f:74:76:
e2:c0:89:97:77:5f:33:d8:7d:27:21:52:55:c2:d7:
dc:01:f9:bc:21:8d:a3:f5:c1
prime1:
00:e3:2d:6b:5e:05:6b:e1:46:e6:ab:ae:f3:8b:d0:
5f:94:5c:6f:f5:47:46:1d:4e:66:d3:7e:98:18:e0:
2c:0d:08:ca:b7:29:72:af:53:62:30:ec:be:26:1f:
cc:5a:ed:65:62:65:70:1e:18:19:61:e3:77:00:a7:
3a:9e:4e:12:93
prime2:
00:e2:69:56:78:e8:39:ff:17:db:cc:39:d7:7f:70:
41:dc:c5:59:43:16:c1:84:4c:ae:e7:5d:8a:c5:4b:
da:88:8e:03:99:7c:88:f2:8a:13:31:57:44:e0:b5:
c8:0a:60:b0:05:de:f6:9e:f2:00:ec:37:21:8d:3b:
dc:8e:c9:d4:61
exponent1:
1a:ad:6a:be:4f:c4:ab:5f:b8:16:d1:24:a8:76:7f:
c2:dc:58:09:65:a5:46:2b:be:c7:77:46:45:25:8e:
06:b9:d1:94:50:b9:b6:fd:03:ba:db:12:39:47:e2:
a7:8a:d9:2d:04:dc:75:ac:3e:ce:cf:f7:59:8c:49:
c5:ed:45:21
exponent2:
2d:4e:fd:32:06:ef:0c:40:7f:08:d8:8e:6a:7f:51:
7e:d7:b3:6c:3c:92:8f:62:35:22:31:d3:02:76:92:
8d:ff:35:73:32:bb:c9:25:9e:7f:a2:42:33:61:cd:
5d:5e:49:fb:72:ca:11:b6:c6:3e:7f:2d:e4:b0:95:
0b:b2:12:21
coefficient:
50:52:09:22:cb:fb:b2:b8:58:85:ab:1d:82:b9:6e:
d0:f6:dc:e8:ce:a6:5d:a1:ff:c8:4d:3b:2b:1c:19:
64:f0:c4:4a:bc:b2:1d:2b:2d:09:59:83:a3:9a:89:
f8:db:2c:2c:8a:bd:fd:a3:16:51:76:aa:ce:ea:85:
6b:1c:9f:f7

4.3 Web サーバの再起動

ウェブサーバを再起動するスクリプトは、おそらく /usr/local/sbinか、/usr/sbin (httpd というスクリプト名で)、あるいは /usr/local/apache/bin (apachectl というスクリプト名で) にあるでしょう。 SSL を有効にしてサーバを起動していないなら、サーバを停止して、起動させる必要があります。開始、再起動、停止のために、自分用のカスタマイズしたスクリプトを書いても構いません。SSL エンジンが起動する限り、問題はありません。

コマンドは -

httpd stop
httpd startssl
httpd restart

あるいは

apachectl stop
apachectl startssl
apachectl restart


SSLその2

2005年01月16日 14時33分57秒 | TIPS
4. Apache Server の設定

SSL をサポートするためには、Apache は追加の API モジュールを使うように設定される必要があります。多くの SSL ソフトウェアパッケージが利用できます。私の例では、ModSSL と OpenSSL 用に設定された Apache を元にしています。これらのプロダクトをサポートする数え切れないくらいのメーリングリストやニュースグループがあります。 Apache ウェブサーバを元にしているいくつかの商用 SSL パッケージにも、これらの手引きが有用だと思うかもしれません。

いくつか頭に入れておくべきことがあります - 同じサーバに複数のヴァーチャルホストをたてることができます。同じ IP アドレスで、名前ベースのヴァーチャルホストを多数たてることができます。同じ IP アドレスで、名前ベースのヴァーチャルホストを多数と、セキュアなヴァーチャルホストを 1 つたてることもできます。ただし - 同じ IP アドレスで、複数のセキュアなヴァーチャルホストをたてることはできません。多くの人がこう訊ねるでしょう- 何故? と。答えはこうです - SSL はアプリケーション層の下で機能します。名前ベースのホストは、アプリケーション層までは定義されていません。

特に、同じ SOCKET (IP アドレス + ポート) について、複数のセキュアなヴァーチャルホストをたてることはできません。デフォルトでは、セキュアなホストはポート 443 を使います。ヴァーチャルホストが同じ IP アドレスで異なるポート番号を使うことで、別のソケットを作成するように設定を変更することはできます。この方法には数多くの不都合があります。一番明確な不都合は、デフォルトポートを使っていない場合、セキュアサイトへのアクセスにおいて、URL にポート番号を含めなくてはならないことです。

例えば:

* デフォルトポートを使うサイト、www.something.com は、https://www.something.com でアクセスできます
* ポート 8888 を使うサイトでは、https://www.something.com:8888 でアクセスできます。

もう一つの不都合は、たくさんのポートを使うと、ポートを嗅ぎまわるハッカーにより機会を与えることになる、ということです。最後に、選んだポートが何か他で使われていると、衝突問題が発生することになります。

4.1 セキュアなヴァーチャルホストの定義

ヴァーチャルホストの設置は、全く簡単です。セキュアなヴァーチャルホストを設定する基本を、検討していきます。

これらの例において、.crt と .key ファイル拡張子を使います。これは、様々なファイルとの混乱を避ける、個人的な方法です。Apache を使うなら、好きな拡張子を使えますし、あるいは拡張子なしにもできます。

セキュアなヴァーチャルホストは全て、通常は httpd.conf ファイルの末尾に配置される、<IfDefine SSL> と </IfDefine> に包含される必要があります。

セキュアなヴァーチャルホストの例です -

<VirtualHost 172.18.116.42:443>
DocumentRoot /etc/httpd/htdocs
ServerName www.somewhere.com
ServerAdmin someone@somewhere.com
ErrorLog /etc/httpd/logs/error_log
TransferLog /etc/httpd/logs/access_log
SSLEngine on
SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key
SSLCACertificateFile /etc/httpd/conf/ssl.crt/ca-bundle.crt
<Files ~ ".(cgi|shtml)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/etc/httpd/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
CustomLog /etc/httpd/logs/ssl_request_log
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"
</VirtualHost>

SSL について最も重要なディレクティブは、SSLEngine on, SSLCertificateFile, SSLCertificateKeyFile, それから多くの場合で SSLCACertificateFile です。

SSL Engine

"SSLEngine on"- これは、SSL を開始するための ModSSL コマンドです。

SSLCertificateFile

SSLCertificateFile は、Apache に証明書ファイルの在処と、それがなんという名前なのかを指示します。上の例では、"server.crt" が証明書ファイル名として示されています。これは、Apache と一緒に ModSSL を設定した時に追加されるデフォルトです。個人的には、デフォルトの名前を使うことはお勧めしません。面倒なのをこらえて、証明書にサーバ名.crt (ドメイン名.crt) と名付けてください。同じように、デフォルトの /etc/httpd/conf/ssl.crt や /usr/local/apache/conf/ssl.crt とは別のディレクトリを使うこともできます。

SSLCertificateKeyFile

SSLCertificateKeyFile は、Apache に秘密鍵の名前とその在処を指示します。ここで指定されたディレクトリは root のみが読み/書き権限を持っている必要があります。他には誰もこのディレクトリにアクセスするべきではありません。

SSLCACertificateFile

SSLCACertificateFile ディレクティブは、Apache に中間証明書の場所を指示します。このディレクティブは、使用している CA によって必要だったり不必要だったりします。この証明書が本質的に信頼の輪となります。

中間証明書 - 証明書発行機関は、あなたとほとんど同じ方法で証明書を得ます。これは、中間証明書として知られています。これは、基本的には中間証明書の所持者が、いうものです。 ウェブブラウザは、各リリースごとに更新される、"信頼できる" 証明発行機関のリストを持っています。証明書発行機関が全く新しいなら、その中間証明書は、ブラウザの信頼できる CA リストには入っていないでしょう。ほとんどの人が自分のブラウザをそう頻繁にアップデートしたりしないという事実をこれと合わせると、こうなります- CA が自動的に信頼できるものとして認識されるには、数年かかります。解決策は、SSLCACertificateFile ディレクティブを使って、サーバに中間証明書をインストールすることです。たいてい、"信頼された" CA は中間証明書を発行しています。もしそうでなければ、SSLCertificateChainFile ディレクティブを使わねばならないかも知れませんが、これはまずないことです。

SSLその1

2005年01月16日 14時30分10秒 | TIPS
Apache の IP ベースのバーチャルホストサポート
http://httpd.apache.org/docs-2.1/ja/vhosts/ip-based.html

名前ベースのバーチャルホスト
http://httpd.apache.org/docs-2.0/ja/vhosts/name-based.html

4. Apache Server の設定
http://www.linux.or.jp/JF/JFdocs/SSL-RedHat-HOWTO-4.html

FedorCore3のApache起動時にエラーが出る

2004年12月15日 21時05分05秒 | TIPS
【1】httpd: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerNameというエラーが出る。
<原因>
/etc/httpd/conf/httpd.confの
ServerNameとネットワーク設定のホスト名、ドメイン名が一致しないのため
<解決方法>
一致させる。

【2】[warn] The Alias directive in /etc/httpd/conf/httpd.conf at line 487 will probably never match because it overlaps an earlier AliasMatch.というウォーニングが出る。
<原因>
Alias /manual "/var/www/manual"に対するディレクティブがないためです。
<解決方法>
Alias /manual "/var/www/manual"
の下に

<Directory "/var/www/manual">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory> 

を追加してみてください。
http://サーバのIPアドレス/manual
でマニュアルにアクセスできます。

Windowsネットワークのトラブルシューティング

2004年12月15日 20時52分48秒 | TIPS
【WindowsMeの[マイネットワーク]にワークグループの他のコンピュータ名が表示されないトラブルの解決方法】

次の手順で設定してください。ハード的な故障がない限り期待する結果が得られるはずです。

<<予備知識編>>
Windowsネットワークは、クライアント/サーバー接続の主従関係とは違って、ピアツーピア接続という対等な接続関係を持ちます。
次に、他のマシンをブラウズすることと、接続することを別々のプロトコルで行います。
これが、事態を複雑にしている最大の原因です。
(マイネットワークをクリックして相手マシンの共有フォルダにアクセスしているのは、巧妙に手続きを隠蔽しているわけです。)
しかも、このWindowsネットワークは、ピアツーピアでありながら、マスターとスレーブの関係をユーザ不在で自動的に行っています。
そこで、このマスターブラウザの役割を成すマシンを固定化すると、Windowsネットワークが安定します。

<<ソリューション編>>
まず、次の順番にマシンを立ち上げ、マスターブラウザを固定化する。(実際にどれがマスターなったかは気にしない。調べる方法はありますが、通常は分からない)
1.WinXP
(完全に立ち上がってから)
2.Win95
(完全に立ち上がってから)
3.WinMe(ブラウズ不調なのでこれを再設定する)
※約30分間放置してください。
(3台の全てにそれぞれが表示されていれば、軽症)
多分、WinMeだけ表示されていないかも知れませんね。

そこで、WinMeを次のように設定してください。
(※WinXP,Win95の2台は切らずにそのまま放置しておいてください)
1.「マイネットワーク」アイコンを右クリックします。
2.「優先的に接続するネットワーク(L):」
  を「Windows ログオン」にします。
3.「現在のネットワークコンポーネント(N):」
  から「Windowsネットワーククライアント」
  を選択し、[削除]→[OK]し、再起動してください。
4.再起動後、上の3.で削除した「Windowsネットワーククライアント」を追加してください。
※再起動後、WinMeの「マイネットワーク」に他の2台が見えるはずです。