CentOS6でowncloudを9.xから10.xにアップグレードする場合

10.0.0に一度アップグレードして、その後10.0.xにっていう流れになるんですが、
10系になったところでoccスクリプトを動かすのに、php-intlが必要になりますのでインストールしてください。

また、10.0.0はできても10.0.x以降のアップグレードに

Repair warning: No marketplace connection: cURL error 35: SSL connect error

と言われる場合、libcurlの更新が必要です。

参考:https://qiita.com/shunsuke_takahashi/items/a1c3655584530c76fbe0
※今は記事よりrpmファイルが新しくなってて、デフォルトはenable=0です。

さらにアプリの代わりに入ったマーケットを利用するためには、PHP curlの(おそらく)HTTP/2リクエストに応答する必要があり、
remiリポジトリのphp5.6では対応していないため、php7.0または7.1にアップグレードする必要もあります。

なお10.x系から、ソースを修正しなくてもフォルダをダウンロードしたとき、中身が文字化けしなくなりました。

ただオプションの「共有ダイアログでのユーザー名の自動補完を有効にする。このチェックを無効にした場合は、完全なユーザー名を入力する必要があります。」が死んでいる模様。

広告

CentOS7でPassenger5.2.0が動かない

Redmine(3.4)をインストール中にはまりました。
Ruby2.4.3をいれてgem installでPassengerを入れて……で、最後まで来て動かない。
passenger-statusコマンドで確認すると、Passengerが動いていないことが分かる。

どうも5.2.x系から変化があったようでWebで検索すると色々出てくるんだけど、
PrivateTmp をtrueにしても何をしても解決しなかったので

gem install passenger –no-rdoc –no-ri -v “5.1.5”

で古いバージョンを入れて動かすことにしました。これが結局一番早かった。

Fall Creators Update後のWindows 10をsysprepしようとするとエラーが出る場合

C:\Window\System32\Sysprep\Pahter\setupact.log
にログがあるので見ろといわれて、以下のような場合。

Error SYSPRP Package Windows.MiracastView_6.3.0.0_neutral_neutral_cw5n1h2txyewy was installed for a user, but not provisioned for all users. This package will not function properly in the sysprep image.
Error SYSPRP Failed to remove apps for the current user: 0x80073cf2.
Error SYSPRP Exit code of RemoveAllApps thread was 0x3cf2.

sysprepのgeneralize時にMiracastViewが邪魔しているのでできません、っと。
どうもFall Creators Updateで、MiracastViewがなくなっている?時に言われる様子です。

C:\Windows\MiracastView

がない場合は、

C:\Windows.old

の中にはあるはずですので、それを C:\Windows\MiracastView に配置。
念のため再起動後、sysprepをすれば成功します。

もうWindows.oldを消してしまったよって場合だけかな? 別PCが持っていればそれのコピーでいいです。

firewalldの新しいバージョンで、サービスのポート変更ができるようになって便利に

CentOS7で使われているfirewalld、これまでSSH等のポートを変更するには、xmlファイルをコピーして編集する必要がありました。
が、アップデートによりほとんど全部コマンドで済むようになりました。
確認したのはバージョン0.4.3.2です。

firewall-cmd –permanent –service=ssh –add-port=変更・追加したいポート/tcp
firewall-cmd –permanent –service=ssh –remove-port=22/tcp

これだけ。とても簡単になってよいです。–service=オプションができるようになったのが大きいですね。

ゾーンも以下のように作れるようになりましたし、IP制限も楽になったし。

firewall-cmd –permanent –new-zone=新ゾーン名
firewall-cmd –permanent –set-target=ACCEPT –zone=新ゾーン名 (ゾーンに追加するソースについて許可する)
firewall-cmd –permanent –add-source=IPアドレス –zone=新ゾーン名
firewall-cmd –permanent –add-service=許可するサービス –zone=新ゾーン名

簡単に管理できるようになったかな、という感じです。

Windows 10 のカスタムUSBインストーラーを作る

Windows 7と比べていろいろ変わったので。調べたことのまとめが大半です。いや実際作りましたけど。

特に用意するものは
・Windows 10 のインストールディスク
・Windows ADK(Windows 10版)
・Windows 10 版のWind PEのディスク
・USBメモリ、PC(2台以上)

ええ、ディスクが必要です。Win10のインストーラーはネットから落とせますが、そのisoには必要なinstall.wimがないのです。僕が見たときはありませんでした。ないと思います。

1. Windows ADKのインストール
https://developer.microsoft.com/ja-jp/windows/hardware/windows-assessment-deployment-kit
ここからいきなりめんどくさいですが、作成するWindows 10のバージョンと合わせる必要があります。
Creators Updateが1703、その前が1607です。過去バージョンを上書きできないので、アンインストールしてインストールする必要もあります(不親切)。

2. WinPEのディスク作成
ADKの中の「展開およびイメージング ツール環境」を右クリックして「管理者として実行」。
下記コマンドを実行します(C:\じゃなくてたぶん別のところでもいい)
「copype amd64 C:\WinPE_amd64」
「MakeWinPEMedia /ISO C:\WinPE_amd64 C:\WinPE_amd64\WinPE_amd64.iso」
出来上がったisoをCDまたはDVDに焼いてください。

3. Administratorインストール用のunattend.xmlファイル作成
なんでもWindows 10ではsysprepがAdministratorじゃないとうまく動かないとの噂です(たぶんそんなことはない)。
途中からでも有効にできますが、ここではWin10を一度Administratorでインストールします。そのための応答ファイル作成です。
ADKの中の「Windows システム イメージ マネージャー」(SIM)を起動します。
「Windows イメージまたはカタログファイルを指定してください」を右クリックして、「Windows イメージの選択」で、Windows10インストーラー内の「sources\install.wim」を選択(複数エディションあれば必要なエディションを選ぶ)。
「応答ファイルを作成または開きます」を右クリックし、「新しい応答ファイル」。
「Windows イメージ」ペイン内の「Components」から下記を追加&編集

・amd64_Microsoft-Windows-International-Core_WinPE_neutral → 1.windowsPE
SetupUILanguage>UILanguage を 「ja-JP」
・amd64_Microsoft-Windows-Setup_neutral → 1.windowsPE
UserData>AcceptEula を 「true」
UserData>ProductKey>Key にエディションごとに必要なKMSクライアントセットアップキー
https://msdn.microsoft.com/ja-jp/library/jj612867(v=ws.11).aspx
・amd64_Microsoft-Windows-Security-SPP_neutral → 3.generalize
SkipRearm を 「1」
・amd64_Microsoft-Windows-International-Core_neutral → 7.oobeSystem
InputLocale を 「0411:E0010411」
SystemLocale、UILanguage、UserLocale を 「ja-JP」
・amd64_Microsoft-Windows-Shell-Setup_neutral → 7.oobeSystem
TimeZone を 「Tokyo Standard Time」
AutoLogon>Enabled を 「true」
AutoLogon>Username を 「Administrator」
AutoLogon>Password>Value にパスワード
OOBE>HideEULAPage を 「true」
UserAccounts>AdministratorPassword>Value に、上記と同じパスワード

以上設定したら「unattend.xml」のファイル名で保存して、USBメモリに格納します。

4. Windows 10をAdministratorでインストール
変則的ですがWindows 10インストール済みのPCに、Windows 10のディスクを入れてディスクブート。
「コンピューターを修復する」の「詳細オプション」かな?からコマンドプロンプトを起動。USBメモリさしておきます。
そして下記コマンドを実行。
「e:\sources\setup.exe /unattend:F:unattend.xml」※CD/DVDドライブがE、USBドライブがFの場合

USBメモリが「フラッシュメモリ」としてWin10に認識されるようであれば、インストール時に自動で読まれるようですが、たいていのUSBメモリはHDDと同じ扱いの認識なのでうまくいかない。
また、e:\setup.exeでもセットアップは走るのだが、ここから起動した場合は応答ファイルを読んでくれない。のでこうなります。Windows8.1からみたいです。

5. インストール後のWindows10をカスタムする。
Officeをインストールするとか、Cortanaを黙らせるとか、OneDriveを消すとか。ユーザーを作るとか。WinUpdateの設定するとか。

6. Sysprep用のsysprep.xmlを作る。
ADKのSIMでまた応答ファイルを作ります。コンポーネント追加までは同じ。コンポーネントは下記を追加&編集。

・amd64_Microsoft-Windows-International-Core_WinPE_neutral → 1.windowsPE
SetupUILanguage>UILanguage を 「ja-JP」
・amd64_Microsoft-Windows-Setup_neutral → 1.windowsPE
UserData>AcceptEula を 「true」
・amd64_Microsoft-Windows-Security-SPP_neutral → 3.generalize
SkipRearm を 「1」
・amd64_Microsoft-Windows-Shell-Setup_neutral → 4.specialize
CopyProfile を 「ture」
・amd64_Microsoft-Windows-International-Core_neutral → 7.oobeSystem
InputLocale を 「0411:E0010411」
SystemLocale、UILanguage、UserLocale を 「ja-JP」
・amd64_Microsoft-Windows-Shell-Setup_neutral → 7.oobeSystem
TimeZone を 「Tokyo Standard Time」
OOBE>HideEULAPage を 「true」

終わったらWindows10の「C:\Windows\System32\sysprep」に保存。

7.Windows10でsysprep
コマンドプロンプトを管理者権限で実行して、下記コマンド
「cd \Windows\System32\sysprep」
「Sysprep /generalize /oobe /shutdown /unattend:sysprep.xml」
シャットダウンされます。

8.WinPEで起動してイメージコピー
WinPEでディスクブートし、下記コマンド
「DISM /Capture-Image /ImageFile:保存先ドライブレター:\install.wim /CaptureDir:Cドライブのドライブレター:\ /Name:”イメージの説明”」
windows 7まではimagexでしたが、DISMでやることになりました。
あとCドライブはCじゃないかもしれないので、「diskpart」をつかって特定してください。僕はCでした。

9.起動可能なUSBインストーラーを作る
ここから先はWindows 7と同じです。
http://www.atmarkit.co.jp/ait/articles/1305/20/news087.html
要するに10のディスクの中身を全部USBメモリにコピーして、install.wimを置き換え。
コマンドプロンプトで
「cd /d E:\boot」※USBメモリがEなら
「bootsect /nt60 E:」
なんかエラー出るかもしれないけどとりあえず動きます。

まとめ
Administratorは作ったUSBインストーラーでは作成されません。のでsysprepする前に必要なアカウント作って、それでAutoLogon設定しておくといいかもですね。
最初の何の役にも立たないスタートメニューもいじった状態をデフォルトにできるのでたくさんWin10をインストールしたい(けどAD環境じゃない)人向けです。
Windowsライセンスについては、OMEですでにWin10が認証済みのPCに再インストールするのであれば、入力の必要なし。DSP版ならインストール後に入力必要かな?

Windows 7で、NASに正しいユーザー名、パスワードを入れてもアクセスできなくなった時

NASに入れないとあせりますね。いくらユーザパスワードを正しいものを入力しても弾かれるときとか。

それ、Windowsが間違えたパスワードを記憶しているかもしれません。
どうもユーザ名が一致する場合、記憶したパスワードでアクセスしようとするみたいなので。

1. 誤った資格情報が記憶されているパターン
 コントロール パネル\ユーザー アカウントと家族のための安全設定\資格情報マネージャー
 ここに対象のNASのアドレスの資格情報があったら、消してみましょう。

2. 誤ったマッピング情報が記憶されているパターン
 コマンドプロンプトで「net use」と入力すると、対象のNASのアドレスが出てくる場合。
 「net use /delete アドレス」で消してみましょう。

3. 1.2.をやった上でダメだった場合。
 1.2.をやってから再起動。

全然更新してなかったので軽めの記事で。

httpoxyの対応でhttpdをアップデートしたらhtaccessが効かなくなったとき

世間を騒がせているhttpoxyですが、その対応のためCentOS7でもパッチが降っていました。

https://lists.centos.org/pipermail/centos-announce/2016-July/021979.html
httpd-2.4.6-40.el7.centos.4.x86_64.rpm

さっそく適用したところ、サイトにアクセスできなくなりました。

エラーログを見ると

「/………/.htaccess: No comments are allowed here」

だそうです。

いやいや他のディレクトリはアクセスできるのになあ、と思って調べた結果、IPでアクセス制限をしているサイトだけがダメな模様。

で、原因ですが、

allow from 192.168.0.1 #ローカル

ここでした。

「#ローカル」ってコメントアウトしてメモしてる、ここ。

allow from 192.168.0.1

これだとエラー出ないですからね。

まあ変な書き方してた自分がいけないんですけど、なんでいまさらこんなところに変更が入ったのかなあ、コメントアウトを無視しないのはバグじゃないかな……と思いました。