openSUSE シェルを Windows10 Subsystem for Linux (WSL) で使う


そこそこ使っているのでHyper-Vはイネーブルにしています。別に必要ではないようです。

まずは、コントロールパネル > プログラムと機能 > "Windows の機能の有効化または無効化"

"Windows Subsystem for Linux" (WSL) を有効にしました。


a0056607_01025741.jpg

再起動が要求されるので、再起動します。

ストアアプリを開き ”SUSE" を検索、openSUSE と SLES12 が検索されるので、ここでは openSUSE Leap を選んでインストールします。サイズは 223Mb と割と小さい。どこぞのOSメーカーも見習ってほしいものだ。


a0056607_01032422.jpg


ダウンロードして、実行すると

a0056607_01034227.jpg


root でログインして、パスワードをリセットしました。

/etc/SuSE-release を見ると 42.3 でした。



- やっぱり SUSE Linux を起動したら YaST でしょ -

とりあえず CUI 版の YaST を起動します。

# yast


a0056607_01040425.jpg

Software Management があるので yast で色々なパッケージをインストールできます。YaST コンポーネントを追加してインストールしてみました。


a0056607_01042234.jpg

openSUSE のリポジトリから、色々とパッケージだのフォントだのをダウンロードしてインストールしてみます。

a0056607_01044729.jpg

GUIのX環境は使えるのでしょうか。



- ホスト名とIP -

ホスト名は Windows 本体と同じ、IPも同じものを使っています。YaST のネットワーク管理は何も弄れません。親と共通ということですね。



- ボリューム -

Windows の C: と D: は /mnt にマウントされています。


a0056607_01051326.jpg




- X アプリケーションを起動してみる -

VcXsrv を起動した状態から


a0056607_01055646.jpg


# export DISPLAY=:0

を実行してディスプレィの設定をした後 GUI アプリケーションを起動

# gedit &
# yast2 &
# nautilus &
# firefox &
# soffice &
# gimp &

おお!

a0056607_01054083.jpg



- さて何に使うか -

確かに "Windows 上で SUSE Linux が動く" というのは「おぉ!」となるわけですが、動かしてみて分かった問題は 「何に使うの....? だから何 ?」 というところです。今の所、サーバーとなるわけにもいかず、daemon もサポートされていないようなので、単なるシェルプロンプトで、一応、Xアプリケーションも動くというだけでした。openSUSE なら、ま、解るのですが、なぜ SLES12 もあるの? というところが謎です。デーモンも動かないのに、サーバー専用OSのシェルだけで何様なのよ、というのが疑問です。SSHのクライアントとしては使えても、Xサーバーの機能はなし。まぁ無料で12か月間の開発者用のライセンスがもらえるよ、と説明に書かれていましたから、開発者にとっては「おぉ!!」とビックリマークが二つくらい付くのでしょう。でもやっぱり、 Hyper-V でリアルにフル機能のOS動かした方がよさそうな気もします。GUIも動くけど、妙に遅い。これなら MovaXterm で実のあるサーバーに繋いで、フニフニした方が軽い気がしました。ただ、ワンクリックで "Linux のシェルが軽々と起動する" というところは確かに魅力です。

今現在、コンテナ技術で解りやすく一番力を入れているのは Microsoft である、という事はこの WSL を見て感じる事です。WSL が進化して、daemon も動くようになれば、簡易的な HTTP サーバーになるとか、Hyper-V要らずのコンテナベースのサンドボックスが作れます。

しかし、残念なのは、この WSL が「ストアアプリ」で、システムイメージのバックアップが取れない所ですね。システムの復旧とか、C:ドライブを上書きして初期化してしまえば飼い慣らしたシェルもデータもゲームオーバーとなります。もちろんサインアウトしてしまえば、セッションも終了してしまうと「ストアアプリ」はあぼーんです。

本命は WSL の技術を、Windows のサーバー版に移植して、サーバーのサービスとして起動してしまう事でしょう。そうなれば、Windows Server からは誰も見向きしない IIS とかは排除できてしまいます。だからと言っていきなりサーバー版では WSL を実装してサポートできない。だから、Windows10 Pro で反応と不具合を見て、サーバー版でコンテナ化の目当てを作る。今はまだそんな目的なのかな、と穿ってしまいました。出来は90%「おぉ!!」なんですが、実体としてはがっかり度90%、残り0%位のインパクなんですね。さすが技術は三流、マーケティングは一流のマイクロソフトの巧妙な戦略です。人を驚かせておいて、何の役にも立たないものを作る事には長けています。

また、例えば SUSE SLES12 の様に、高価なサーバーサブスクリプションを Microsoft ストアで販売して手数料が稼げる、というテもあります。いずれにせよ MacOS が無償化された今、オペレーティングシステムは金のなる木ではない。OSで金を稼ぐというビジネスモデルが崩壊しつつあります。ストアアプリの手数料、サブスクリプションで運用期間中稼げるという、Linux という”フリー”なのに”タダではない”ソフトウェアの代理販売に頼るという、Microsoft の次の戦略が見えてくるのかもしれません。



- kEYWORD -
Windows10 Subsystem for Linux (WSL) , SUSE, openSUSE, SLES12, Howto, 動かし方, インストール, 目的,

# by islandcenter | 2017-10-27 01:08 | Windows | Trackback | Comments(2)

まだ真新しい、Windows Creators Update のPCを Fall Creators にISOファイルから直接バージョンアップしました。回線がそれほど太くないので、ISOをダウンロードして確実にオフラインでもアップデートできれば、回線に関わるコスト(時間)が短縮できるし、台数が多い場合もそれだけ手早くできるので、ISOからのアップデートはお勧めです。

前回のはこちら

ISO を使った Windows 10 のオフラインアップデート

- 準備するもの -

- ヒマでブラウザでSNSなんかしないまた―りとした夜 -> 寝ている間の ISO のダウンロードに必要
- 何もすることがない雨の週末の金曜の午後 -> 作業時間は2~3時間、徹夜も覚悟のその間PCは使えない。
- Blue Noteの CD 2~3枚 -> アップデートする時のBGMが必要
- チャンドラーの短編集2~3冊 -> これくらいは読み終えるくらい時間がかかる
- 缶ビール2~3本 -> ま、失敗したら徹夜覚悟ですな。
- バーボンのボトルがあれば直良し
- アイスクリーム -> あまり腹を冷やすと逆効果
- チョコチップス -> バーボンに合う、腹減るからね。


- ISO の入手先-

Windows 2017 Fall Creators Update ISO ファイル

ダウンロード先

"ツールを今すぐダウンロード"

a0056607_15402131.jpg


ダウンロードした MediaCreationTool を起動

なにやらやっている


a0056607_14480340.jpg


よーく読んで”同意”するしかない。


a0056607_14482053.jpg


"別なPCのインストールメディア ....."を選んで ISO ファイルを手に入れる。


a0056607_14483912.jpg


"このPCのお勧めのオプション"のチェックを外す

アーキテクチャ”64”または"32"必要であれば、両方


a0056607_14490056.jpg

”プロダクトキーが要るよ”のダイアログを確認

使用するメディアは "ISOファイル"を選択

a0056607_14492370.jpg

保存先が指定できるので、C:ドライブの空きを考えて、別ドライブか、ネットワークに保存するのが良いでしょう。

デフォルトファイル名が Windows10.ISO なので HOME 版なのか Pro 版なのか、32ビット版なのか、64ビット版なのかわかるように、ファイル名に名前を付けて保存

一晩寝る。ZZZZzzzzzz.......

この間 Youtube なんかは見ない事。

- いよいよアップデート -

余分なソフトウェア、機能は停止させておくこと。
このPCには Hyper-V が動作していたので、削除しておきました。以前 Anniversary アップグレードした時はこいつが原因で、失敗したことがあります。また、Windows と Linux のデュアルブートしているPCもおかしなことになる可能性があります。Linux の Grub が書き換えられてブートできなくなる場合があります。アンチウィルスは削除しませんでしたが、時折悪さする事が、悪さどころかシステムをクラッシュさせる場合もあるので、削除した方が無難でしょう。他に常駐系のアプリケーションは、削除するなり、サービスを無効にしておくことが、安全にアップデートする秘訣でしょう。どうせ Microsoft 製品ですから、素の状態でしかテストしていない、そんなものです。


a0056607_14501429.jpg

ISO ファイルをマウントして

a0056607_16534976.jpg

> setup.exe を実行します。

a0056607_16551569.jpg


a0056607_14503951.jpg

回線の都合を考えて、この時点では更新のダウンロードはしないで、別な機会にしましょう。

「インストールの品質向上に協力」する必要なんてないので、チェックは外します。何を送信するか、判りませんからね。


a0056607_14510747.jpg



嫌々ながら「同意する」


a0056607_14522165.jpg

何かと、リフレッシュインストールしたがるけれど、個人用ファイルとアプリは引き継ぎます。


a0056607_14524531.jpg


インストールしています....... 30 分

勝手にリブートします。ノートブックなので Bios のパスワードを入れないと起動できない。

構成中 ..... 30分

もう一度再起動、また Bios のパスワード

構成中 .... 30 分

またまた再起動、またか。

構成中.... 30 分 起動できた。

プロファイルの再構築 約5分

終わり、> winver でバージョンを確認 Version 1709 Build 16299.15 でした。

a0056607_14540713.jpg



その後 Windows Update をします。

- インプレッション -

今回は何のドラマもなくアップデートが終わりました。Windows10 というものの変化を見ていると、Windows10 が如何に未完成で、未熟なものであるのかというのを身に染みて感じます。これから、どんな便利な機能が亡くなってしまったか、どれほど不便になったか、どれだけ先取りして、使えない邪魔な機能が増えたのかをチェックしてみます。

また、せっかく見つけて Disable にした機能が復活している場合があるので、これも要チェックですね。

Windows7 からWindows10 にアップデートしたらまずするべき事。

「Windows10 をエンタープライズ利用する」場合、単に"Windows10" という言い方をしてはいけない状態になります。当然多くのPCの償却期間、4~5年の期間を見越して、どのバージョンを選ぶかが重要になります。 "Windows10 xx update" "Windows10 yy update" 別物の製品です。今 Internet Explorer 11 が付いてきているようですが、このサポートも、これからの長い "Windows10" 時代に終了するはずです。何しろ "Windows10"最後の Windows です。 今後何年続くかわからない代物なのです。

ユーザが自分自身でアップデートする可能性は少ないでしょうから、人力でどこかのタイミングで、償却と共に、バージョンアップを検討しなければならないでしょう。そのタイミングを間違えると、エラク不便な事になります。

また、 Windows10 自体のアップデート作業は1台当たり2~3時間はかかる作業です。その間にどれだけユーザの生産性を削ぐかを検討しなければなりません。人海戦術で行っても、一人当たり一日5~6台が限度です。ライセンス費用だけではなく、作業コストと、作業中に生産性を削ぐ時間のコストを考えると、1台当たり、2~3万円程度の費用、あるいは利益機会の損失があります。

パッチを充てる程度の手間と思うと痛い思いをするでしょう。

次の読み物

openSUSE シェルを Windows10 Subsystem for Linux (WSL) で使う

OES Linux でフォルダの容量制限付きアーカイブ専用ファイルサーバー:サーバーをゴミ箱にしない工夫

ファイルサーバーのフォルダ容量制限(ディレクトリクォータ)


- Keyword -

Windows10 Fall Creators Update, Version 1709, 1803, ISO マウント, ISO アップデート, インストール手順, アップデート手順, 作業時間

# by islandcenter | 2017-10-26 15:30 | Windows | Trackback | Comments(0)

Windows10 システム保護の有効化

- Windows10 ではシステムの保護がデフォルトで無効 ....! -

実は私もしりませんでしたが、 Windows10 では、従来からあった「システムの保護」がデフォルトで無効になっていて、復元ポイントが作られていないのですね。

質問
Windows 10 ではデフォルトでシステムの復元が無効?

回答
おそらく、最近ではタブレットなどハードディスク容量の少ない端末も多くあることから無効になっているかもしれませんが、はっきりとした情報はみつけられませんでした。。
※ 手元の仮想環境 (ハードディスク 容量 30GB に設定) にインストールしている Windows 10 Pro 64ビット版 も、システムの復元が無効になっていました
万が一に備えて、利用し始めは事前に確認しておくといいかもしれませんね。
返信、お待ちしています。

Microsoft のサポートも知らなかった「システムの復元」がデフォルト無効。たしかに Windows XP 時代は緊急時によく使った Windows の復元ポイントからの復旧ですが、 Windows7 以降は使う機会がなかったので、今まで気が付きませんでした。

しかし、Windows10 では、復旧ドライブを作れだとか、回復ディスクを作っておけ、クリーンインストールしろ、とか様々な「問題解決方法」が提示されている中、「復元ポイントがない」というのにはちょっとビックリしました。まぁ確かに最近のPCは、記憶容量の少ないSSDが中心となっているので、理解はできるのですが、ライセンスの縛りが厳しい Windows なので、HDD運用なら、できれば復元ポイントで復旧できるのならそうしたい。

- という事で復元ポイントの有効化 -

エクスプローラから、コンピュータ名を右クリックして「プロパティ」を開くと「システム」に関する詳細が出てきます。左のメニューの ”システムの保護” を開くと、確かにシステムドライブのシステムの保護が無効になっています。そこで(システム)ドライブをクリックして「構成」から "システムの保護を" 有効にチェックします。"最大使用量"は、ディスク全部という訳には行かないので、現在の空き容量の半分くらい与えてもいいでしょう。

問題は、C: ドライブをどれくらい確保しているかによります。私がPCを購入して真っ先にやるのが、パーティションをC:とD:に分割することなので、大体 100G 程度は C: ドライブに割り当てます。ストアアプリは全部C:ドライブにインストールされてしまうので、仕事用アプリケーションをインストールした後の、おおよそ最初の占有量は40G程度です。で、その後、どんどん \Windows\tmp なんかが膨れ上がる。通常60Gb程度あればオッケーなので、100Gをシステムにした場合、スライダーで30G程度はシステムの復元ポイントに割り当ててもいいかなと思います。結局C:ドライブが膨れ上がって消す羽目になるのでしょうが、ま、仕方ない。

a0056607_10005046.jpg

システムの復元ポイントを「構成」したら、次に「作成」ボタンを押して、初期の復元ポイントを手動で作成します。

復元ポイントが作成されたら、あとは、自動的に復元ポイントがインクリメントして作られる、という事になります。


万が一、バカな Microsoft のパッチだとか、出来の悪いドライバをインストールしてしまってトラブった場合、「システムの復元」ボタンからシステムの復元ポイントを選ぶ事ができるようになりました。もっとも起動できなければ、役立たない機能なんですけどね。


a0056607_10013519.jpg
- 併せて読みたい -

Windows7 からWindows10 にアップデートしたらまずするべき事。


--

何かとバックグラウンドジョブが多すぎて問題の多い Windows10 ですが、こういうところに手を抜いているあたりは、「何かなぁ」と思わせる仕様ですね。いずれ無くなる機能かも知れません。




# by islandcenter | 2017-10-25 10:12 | Windows | Trackback | Comments(0)

Windows10 の停止しておきたいサービスとタスク


Windows10 は余計な部分で無駄にCPUのリソースを食いつぶす、実に迷惑なサービスがいくつか付いています。SSDモデルの場合はそれほど気にならないかも知れませんが、HDDモデルのノートブックPCやデスクトップPCの場合、致命的に「重い」事がよくあります。何しろ Windows10 は "最後の Windows" ですから、恐らく MacOS の様に OSx 10.x.x.x の様な感じで、基本は "Windows10" という名前のOSであるのに、どんどん枝番が増えて、何が何だか分からなくなる悪寒がします。

特に大容量の HDD モデルの場合、無駄にディスクアクセスが多く、HDDの利用率が 100% に張り付いて、ノートブックの電源を無駄に浪費させるという厄介なサービスがいくつか存在します。PCハードウェアに余計な負荷を与えてPCの寿命を短くして、パソコン丸ごと Windows を買い替えさせようという、巧妙なワナかも知れません。

そこで HDD モデルの場合、特に止めてみた方がいいと思われるサービスを停止させてみました。

※ この記事は書き換えたり更新する可能性があります。

- 止めておきたいサービス -

Windows の "SuperFetch" サービスと "Windows Search" のサービスは停止させます。

SuperFetch はよく使うンだろと勝手に Windows が予測」して、ディスクからシコシコとメモリに読み込む動作です。当然、メモリを食いますし、使っていない間もセッセとディスクアクセスするため、HDDの負荷も高く、CPUも使うため、重要なモバイルPCの電源をワッセと使いまくる、お邪魔なサービスです。大抵 SuperFetch を止めるべし、という意見が Google さんの選挙の投票結果に出てくるので、そうすべきでしょう。

Windows Search は、CPUの空き時間を使って、ワッセワッセとファイルの検索をして、Cortana なんかに「話しかける」とそのものズバリの回答が出てくるはず」のものですが、基本的に、ディスクの中のデータやドキュメントの文書の内容を検索しているクセにちゃんとヒットしないし、滅茶苦茶時間がかかる。Microsoft Office で作ったドキュメントですら、正確なインデックスが作られないし、サードパーティ製品やオープンな製品を使う人には全く役立たず。

そのくせ正確にタイプするか、マイクで問い合わせないと使えないと陰で言われる謎の機能です。初期設定では有効でも構いませんが、まだ未熟であまりアテにできない機能なので、 Windows Search を使う位なら Google 先生に聞くのが良いでしょう。それにたかが自分のPC。どこに何があるのかは自分の家の真っ暗なトイレ程知り尽くしているなら、他所から留守時にやって来てバックグラウンドで必死に余計なお手伝いをしてくれる、この機能はシャットアウトしてしまうのが良いですね。

大体 Explorer で Search 機能でファイルを検索するのは遅いですし、それくらいなら、フリーウェアなんかでいいのがあれば、そっちを使う方が便利でしょう。 「検索」というのは、コンピューターにとっても一番重要なシステムなのですが、 Windows では恐ろしく機能がスマートじゃない、熟成されていない致命的な機能なのです。まぁ初めて滋賀県から東京に来た田舎者が、銀座で中国人旅行者に道案内を聞いて答えが出る程度の性能なので、あまり使わない人には無用なサービスです。

しかもCPUリソースは食うし、アイドリング状態なのに中国の人海作戦の様にワッセワッセと検索し続けて HDD に余計なハードワークを要求します。当然電池も消耗します。まぁ、少しはあてにしたいなら、起動は「自動」から「停止」にしておけば良いでしょう。

- という事でサービスを止めてみる -

Explorer から、コンピュータ名を右クリックして「管理」

a0056607_02363442.jpg




「サービスとアプリケーション」を展開して「サービス」 > "名前の列" から "Superfetch", "Windows Search" のそれぞれの行を右クリック > "プロパティ" から ”停止” させて "スタートアップの種類" を "無効" にセットします。"Windows Search" を少しは期待したいなら "手動" でも結構でしょう。

a0056607_02380244.jpg

- タスクマネージャのメンテナンスタスクを"無効"に -

"コンピュータの管理" > "システムツール" > "タスクスケジューラライブラリ" > "Microsoft" > "Windows" > "Maintenance" にある "WinSAT" を無効にします。
このタスクは、システムがアイドリング状態で「お休み中」になると、いきなり Windows エクスペリエンスインデックスをシコシコ作るために CPU やHDDに高負荷をかけて 「おーいイネムリせんと、げんきにやっとるかぁ!」「ローマのガレー船のドレイの様に休ませない」過酷なタスクです。当然HDDに高負荷がかかり、CPUも 100% 状態になります。悪い事に、こいつはアイドリング状態から「そろそろ仕事すっぺか」と思った時に止まってくれないため、「妙に重いなぁ」という状態から復旧するまでかなりのタイムラグがあることです。別に Windows の性能の評価なんて、滅多に気にすることはありませんから、このサービスは無効にしてもいいでしょう。


a0056607_02392998.jpg



メンテナンスタスクは自動化されており、寝静まった夜中の3時に豪勢なファンとHDDのバリバリ言う音を立てながら、HDDのI/Oを100%にして実行するようです。コントロールパネルから「セキュリティとメンテナンス」の中の「メンテナンス」に "自動メンテナンス" というのがあるので、停止させておくのが良いでしょう。メンテナンスタスクを実行するのは、昼飯を食いに行く時とかに手動でやるのがいいでしょう。この時間の設定は ”詳細設定” から変更できますが、やる、やらないは変えられません。レジストリをいじると完全に無効にできるのですが、その場合、メンテナンスタスクは完全にシャットアウトされるようなので、その点はお好みで... という事です。

a0056607_03281269.jpg

- ストアアプリケーションの自動アップデートを無効に -

Windows10 が起動する時に wsappx サービスが、コソコソと悪さをして、無用な負荷をコンピュータに要求します。どうせ、Windows アプリストアにあるのは、ゲームか天気予報くらいしかないので、ほとんどの人には Windows アプリは使わないでしょう。いざPCを使いたいという時に、こんな無駄な処理をされると堪りません。無駄なアップデートチェックは停止させます。

Windows AppStore を開いて、右上の「・・・」マークにある「設定」を開きます。

a0056607_15204234.jpg

「アプリを自動的に更新」をオフにします。ついでに「ビデオの自動再生」もオフにします。

a0056607_15210259.jpg





他にも、停止しても構わないヘビーなタスク、サービスはあるかも知れません。コメント頂けると幸いです。

関連記事

Windows7 からWindows10 にアップデートしたらまずするべき事。

Windows10激重、HDD アクセスが 100% になりっぱなしを何とかして!

OES Linux でフォルダの容量制限付きアーカイブ専用ファイルサーバー:サーバーをゴミ箱にしない工夫

ファイルサーバーのフォルダ容量制限(ディレクトリクォータ)





# by islandcenter | 2017-10-24 03:03 | Windows | Trackback | Comments(2)

YaST2 はシングルクリック

始めて SUSE Linux に触れて、多くのアイコンがダブルクリックで開くのに YaST2 のアイコンだけはダブルクリックにはなりません。シングルクリックで開きます。
これは、多くの UNIX 系のアプリケーションがデフォルトで Single Click なので、その名残りじゃないか、という事です。

という事で gnome でダブルクリックに設定しても、yast2 のアプリケーション内部ではシングルクリックです。

gnome をはじめ多くの UI はダブルクリックがデフォルトなので、ちょっと戸惑いますね。

Thread: how to enable double click in yast

誤ってダブルクリックすると、同じ YaST コントローラが二つ起動してしまいます。中には Software Management や Partitioner のように、一つのシステムで二つ起動できない設定もあるので、エラーとなってしまいます。

- 右クリックで内容を確認すべし -

そこで YaST2 の GUI 版を利用する際は、常に「右ボタンでクリック」 > ”Open” の操作を行うようにしています。

a0056607_17030594.jpg

特に yast/yast2 は、root での作業ですから、ミスオペレーションでもシステムに重大なダメージを与えることがあるので、「右クリック > オープン」を励行しています。これは、「右ボタンを押すと必要な操作がリスト」となるので、 Windows でも必ずファイルを開く時は「右クリオープン」するように癖付けしています。いきなりダブルクリックして、ウイルスだったりした経験があるので、右クリで、ファイルの内容をおおよそ確認してから操作するようにしています。

ある時、お客さんなんですけど、 Administrator で入って、ファイルをダブルクリックしまくる風景を見たことがありましたが、わたしは「目がテン」でした。なんだか隣でマインスィーパーを見ている気分ですね。ゲームじゃないからなお怖い....

という事で、YaST2 に限らず、root や管理権限があるユーザでログインした時の UI の操作は十分注意して行う事が重要です。






# by islandcenter | 2017-10-21 17:04 | SUSE | Trackback | Comments(0)



Windows10 GPOでドライブを非表示にする。

10年前にこんな記事を書いたのですが、未だにご覧になられる方がいらっしゃるようで気になっていました。

グループポリシーでドライブを非表示にする。

という事で、 Windows10 でも、エクスプローラからドライブが非表示にできるかどうかを試してみました。


Windows のドライブは勿論、アルファベットのA~Zまであるのですが、意図的に見せたくないドライブもあります。例えばC:ドライブに勝手にディレクトリを掘って、そこに重要なデータを保管されたりすると、いざ、PCがご臨終になった場合に、データが無くなったとウルサいエンドユーザさんもいるわけですね。できれば、C:とD: は別なパーティションにわけて、D:ドライブは自由に使ってもいいけどC:ドライブは、システムを復旧した時に保証されないよ、という事もあるわけです。ついでに、ドキュメントフォルダなんかはD:ドライブに割り当ててあげて、タスクスケジューラなんかでD:ドライブだけをNASなどの隠しドライブに Robocopy してあげれば、最低限ユーザのデータのバックアップは為せば成る。

また、USB記憶装置なんかをつないだ時に、ドライブレターが、エクスプローラに表示されなければ、簡単にコピーすることもできません。「なぜコピーできないんだ」と言われれば、それは「セキュリティポリシーだから」で済むわけです。そこで、例えばネットワークに割り当てたP:とかS: とか以外は見せたくないという事も考えられるわけです。

という事で、エクスプローラから、見せたくないドライブを隠してしまおう Windows10 版です。もっとも、エクスプローラからは見えないだけで、コマンドプロンプトや、保存したり、エクスプローラから、開く時のアドレスバーに直接ドライブ名を入れてしまえば、見えてしまうのですが、おおよそ9割のエンドユーザさんはそんなことお構いなしに「見えないものは無いもの」と考えてくれるわけですから、それなりに便利だともいえます。



- 基本編 -

さて、グループポリシーエディタ gpedit のドライブを隠す設定は

  1. [ユーザーの構成]、[管理用テンプレート]、[Windows コンポーネント]、[エクスプローラー]
  2. [指定したドライブを [マイ コンピューター] 内で非表示にする] を開く
  3. [指定したドライブを [マイ コンピューター] 内で非表示にする] ダイアログ ボックスで [有効]
  4. ドロップダウン ボックスで該当するオプションをトグルして設定

という手順になるのですが、


a0056607_10500340.jpg


ただ、この gpedit のテンプレートでは、決め打ちのドライブを隠す設定だけなので D: とネットワークに割り当てた P: と S: だけは見せたいとかのカスタマイズができません。という事で、この「隠しドライブ」のテンプレートをカスタマイズしてみましょう、というのがテーマです。



- 不可視ドライブをカスタマイズする -

C:\Windows\PolicyDefinitions の下に WindowsExplorer.adml というファイルがあります。C:\Windows\PolicyDefinitions が本体で、さらに ..\ja-JP\ に翻訳した内容が記述されています。

C:\Windows\PolicyDefinitions\ja-JP>dir WindowsExplorer.adml
ドライブ C のボリューム ラベルは WindowsC です
ボリューム シリアル番号は 1856-98D7 です
C:\Windows\PolicyDefinitions\ja-JP のディレクトリ
2016/07/17 07:15 80,922 WindowsExplorer.adml
1 個のファイル 80,922 バイト
0 個のディレクトリ 25,201,598,464 バイトの空き領域
C:\Windows\PolicyDefinitions\ja-JP>

翻訳はメモ帳で開くとこんな設定が書かれています。gpedit に出てくる内容そのまんまですね。

: 略

<policyDefinitionResources xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; revision="1.0" schemaVersion="1.0" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">;
<displayName>表示名をここに入力する</displayName>
<description>説明をここに入力する</description>
<resources>
<stringTable>
<string id="ABCDOnly">A、B、C および D ドライブのみを制限する</string>
<string id="ABConly">A、B および C ドライブのみを制限する</string>
<string id="ABOnly">A および B ドライブのみを制限する</string>
<string id="ALLDrives">すべてのドライブを制限する</string>
<string id="ClassicShell">クラシック表示のシェルをオンにする</string>
<string id="ClassicShell_Help">この設定を使用すると、管理者は特定の Windows シェルの動作をクラシック表示のシェルの動作に戻すことができます。

: 略

実体を開くと

C:\Windows\PolicyDefinitions>dir WindowsExplorer.admx
ドライブ C のボリューム ラベルは WindowsC です
ボリューム シリアル番号は 1856-98D7 です
C:\Windows\PolicyDefinitions のディレクトリ
2016/07/17 07:20 41,886 WindowsExplorer.admx
1 個のファイル 41,886 バイト
0 個のディレクトリ 25,188,646,912 バイトの空き領域
C:\Windows\PolicyDefinitions>

例えば翻訳では 「AB のみを制限する」内容がこのように記述されています。翻訳版の ja-JP の "string id=" の部分を "item displayName=" で定義しています。

: 略

<item displayName="$(string.ABOnly)">
<value>
<decimal value="3" />
</value>
</item>

: 略

ここで問題となるのが "decimal valu=" の部分です。





- 不可視ドライブの値を決定する -

ここで Decimal Value は Z~A をビットに見立てて、0 は見せるドライブ、1 は見せないドライブです。
Dex:3 は 0011b: 0x03 ですから "D:C:B:A: ドライブの B: と A: はビットが立って、制限して見せない"という事になります。

右からZ:Y:X: .... C:B:A: とビットで制限して、内容を10進数で表記しているわけです。実に面倒くさい。

例えば D:E:F:P:S: ドライブだけ見せて、他のドライブをエクスプローラーに表示させたくない場合、次の様なバイナリデータが、7桁の十六進数 0x3FB7FC7 となり、 Decimal 十進数では 66812895 となります。

Novell の ZENworks の Knowledge Database に記事があります。

How to restrict drives on workstations

つまり、D:E:F:P:S だけ見せたいという計算はこういう事です。

**ZW|XWVU|TSRQ|PONM|LKJI|HGFE|DCBA <<-- Drive Letter
0011|1111|1011|0111|1111|1100|0111 <<-- Binary 1:Hide, 0:Show
0x03|0x0F|0x0B|0x07|0x0F|0x0C|0x07 <<-- Hex
66812895 <<-- Decimal

という事で、ドライブの見せ方を決定するには面倒で使えない Windows10 の「電卓アプリ」を使って、二進、十進の計算するわけです。

しかし電卓アプリよりこの面倒な数値を求めるサイトが、まだあるのでご紹介しておきます。とても便利です。


Drives to show/hide

不要なデフォルトの Show Only を Delete して、表示したいドライブレターをチェックします。"New" ボタンを押すと、必要最低限の情報だけを作ってくれます。

a0056607_10505797.jpg





Export すると、この様な hidedrive.adm が作成されてダウンロードできるので、参考にすると良いでしょう。 D:E:F:P:S: を表示する値は 66813895 になりました。0 は全部ビットが落ちて "ShowAll" で 67108863 は全部にビットが立って "HideAll" になります。

  : 略

CATEGORY !!WindowsComponents
CATEGORY !!WindowsExplorer
KEYNAME "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer"
POLICY !!NoDrives
EXPLAIN !!NoDrives_Help
PART !!NoDrivesDropdown DROPDOWNLIST NOSORT REQUIRED
VALUENAME "NoDrives"
ITEMLIST
NAME !!ShowAll VALUE NUMERIC 0
NAME !!HideAll VALUE NUMERIC 67108863 DEFAULT
NAME !!DEFPS VALUE NUMERIC 66813895
END ITEMLIST
END PART
END POLICY
POLICY !!NoViewOnDrive
EXPLAIN !!NoViewOnDrive_Help
PART !!NoViewOnDriveDropdown DROPDOWNLIST NOSORT REQUIRED
VALUENAME "NoViewOnDrive"
ITEMLIST
NAME !!ShowAll VALUE NUMERIC 0
NAME !!HideAll VALUE NUMERIC 67108863 DEFAULT
NAME !!DEFPS VALUE NUMERIC 66813895
END ITEMLIST
END PART
END POLICY
END CATEGORY ; WindowsExplorer
END CATEGORY ;; WindowsComponents

: 略




- 実装してみる -

メモ帳などのテキストエディタで、 C:\Windows\PolycyDefinitions の中身を書き換えて追加する隠しドライブのポリシーを追加します。上書きできないのでいったん保存して、ファイルのバックアップを取ってから、ファイルを PolicyDefinicions にコピーして実装します。

C:\Windows\PolicyDefinitions>type WindowsExplorer.admx

: 略

<item displayName="$(string.DEFPSonly)">
<value>
<decimal value="66813895" />
</value>
</item>

: 略

C:\Windows\PolicyDefinitions\WindowsExplorer.admx は所有者が Administrator でなければ上書きできません。ファイルのセキュリティの詳細から所有者を Administrator グループなどに変更する必要があります。一応バックアップをとってから書き換えることができました。

C:\Windows\PolicyDefinitions\ja-JP>type WindowsExplorer.adml

: 略

<stringTable>
<string id="ABCDOnly">A、B、C および D ドライブのみを制限する</string>
<string id="ABConly">A、B および C ドライブのみを制限する</string>
<string id="ABOnly">A および B ドライブのみを制限する</string>
<string id="ALLDrives">すべてのドライブを制限する</string>
<string id="DEFPSonly">DEFPSのみ見せる</string>
<string id="ClassicShell">クラシック表示のシェルをオンにする</string>
<string id="ClassicShell_Help">この設定を使用すると、管理者は特定の Windows シェルの動作をクラシック表示のシェルの動作に戻すことができます。

: 略

この様な感じで、追加したポリシーを書き換えて保存します。

このC:\Windows\PolicyDefinitions\ja-JP\WindowsExplorer.adml ファイルはいったん別なディレクトリに保管して管理者として上書きします。

実装前

G: I: が見えています。

a0056607_10542889.jpg



"DEFPS のみ見せる"が出てきました。「有効」にポリシーを設定して「適用」します。


a0056607_10562741.jpg


グループポリシーを即座に適用します。

C:\WINDOWS\system32>gpupdate.exe
ポリシーを最新の情報に更新しています...
コンピューター ポリシーの更新が正常に完了しました。
ユーザー ポリシーの更新が正常に完了しました。
C:\WINDOWS\system32>

エクスプローラからC: H: I: ドライブが消えました。

a0056607_10552891.jpg




S:にネットワークの共有記憶領域を割り当てます。S:は見えるようです。




--


今回は、単体PCで実施しましたが、 ZENworks Configuration Management では、変更したPCで iManager から設定し、サーバーにアップすれば良いかと思います。 Windows ドメインを使う場合は、たぶんどこぞの隠し共有フォルダにこのファイルがあるので、書き換えて管理できるでしょう。

このグループポリシーのテンプレート自体をカスタマイズする方法は、若干面倒ですが、他で紹介されているように直接レジストリを書き換える方法より安全でしょうし、また、他にいくつかの Hide Drive Policy のテンプレートを追加して作っておけば応用が利きます。

ドメインコントローラや ZENworks ユーザによって、管理者、ヘルプデスク、一般パワーユーザ、一般ユーザ、先生、生徒の様に様々なパターンが二つのファイルのカスタマイズだけでできるのでとても便利です。





-Keyword-

Windows, Windows10 特定のドライブ, ドライブが見えない, ドライブを不可視, ドライブを隠す, 特定のドライブを非表示, グループポリシー, How to Hide Drive letter from Explorer,特定のドライブを「コンピューター」や「エクスプローラー」で非表示, 指定したドライブを [マイ コンピューター] 内で非表示にする, カスタマイズ, マイコンピュータから特定ドライブを見せない, マイコンピューターからドライブを消す方法,

# by islandcenter | 2017-10-19 11:14 | ZENworks | Trackback | Comments(0)

モバイルファースト(働き方改革時代)のIDS/IPS(不正侵入検出、排除)とIT資産管理

ipv6 は殺してしてしまえ。検疫システムの限界 - 今後のIT資産管理

というブログを数年前に書いて、不正端末検出システム(IDS/IPS)の限界を探ってみました。

ま、大した反響もなかったンですが、最近、普段持ち運び用のPCがご臨終になったので、色々物色していました。何しろPCというのはスマートフォンやタブレット端末に向く「デジタルコンシューマー」のツールではなく、その中身を作る「デジタルクリエーター」のツールなのですね。少なくともオフィスにおいてはです。という事で何とか 13.3 Inch の「ちょっと重いけど」フルスペックの安物ノートを手に入れました。ところで、この種の「カバンPC」を探すうえで色々物色して問題となるのが、薄さと軽量化を求めるとオンボードで RJ45 のポートが標準装備というPCが中々手ごろなのがない、という事です。

- 脱着可能な Ethernet アダプタ -

でも「やっぱりNASの中に大量にある、馬鹿みたいにデカい映像や画像、資料からデジタルコンテンツとして、資料見ながら、文書から簡単な映像、プレゼンテーション資料、プログラミングまで、一つのコンテンツを作るなら有線接続だよね」という事になると、多くの 11.1 ~ 13.3 Inch モバイル系PCの多くは、有線LANポートを持っていません。無線アダプタはIDSなどの不正端末検出システムに正規の物として登録しても、速度面ではやっぱり 802.11ac 規格より、有利な有線で 1Gb ネットワークを使いたい、という事で USB TypeC 用の RJ45 変換プラグとかをホワイトリストに登録して使うわけですね。これ、簡単に脱着できるし、簡単に無くすし、別なPCに繋いでも、同じ MAC アドレス使っているのでDHCP環境では同じIP振られる可能性が高く、単に「未登録のPC」に不正使用していただく事もできるわけです。IPS の Arp Poisoning による不正端末検出、切断なんて全然使えません。

「あれ、オレのこのノート、ゲストは繋がんないねぇな」
じゃぁこのアダプタで繋いでみたら?」
「あ、繋がるねぇ」

という事になります。何しろMACアドレスによる arp poisoning は PC 本体の情報ではなく、PCに半永久に実装されている Ethernet Port の MAC アドレスを登録することで、未登録のデバイスにアタックを与えて接続拒否をするからです。「脱着可能な Ethernet Adapter」なんて、「アウトオブ眼中」なのですね。

- テザリング端末 -

まぁ最近のスマートフォンってのは、普通にテザリング機能があるわけですね。当然 IDS にはスマートフォンが社内ネットワークにつながる時は Wireless デバイスの接続の許可/非許可を、システム担当者は IDS 内部に設定できるのですが、テザリングを有効にした後の、その先のタブレットだとか無許可ノートPCなんてのはチェックできない。

勿論、普段使いの BYOD スマートフォンは許可とって、従来型のエージェントレスの IDS/IPS に登録していたとしても、テザリングで「オレんちで使っていたオレのノートPC」も同じ手段で社内に接続ができてしまうのです。現在の普通のIDSシステムではこれを拒否る機能はまずなさそうです。そこで「My持ち込み無許可PC」を「許可付きスマートフォン」のテザリング機能で繋いでしまえば、いくらでもデータコピーができて風呂敷残業ができてしまいます。

- VPN接続 -

何やら「働き方改革」というのがキーワードになる近年、経営側だけのメリットを考えると無駄な残業代をカットしたり、オフィススペースの賃料を節約するために、狭いフリーアクセスフロアにして、経営側は成果、結果ではなく、時間でしか成果を評価できないクセに「ウチで仕事してもいいよ」という事が、どうもぶっ飛んだ企業では流行りになりそうです。当然、これも、IDS/IPS では検出できない。当然VPNで繋ぐにはそれなりの設定というのが必要なんだろうけど、普通は、VPN ゲートウェイのユーザIDとパスワードなんで、自宅で悪い事しているPCでもIDとパスワードを登録すれば、接続できてしまいます。

何しろ「働き方改革」は、与党の民衆への人気取り政策であり、「働くオフィスドレイの為の政策」ではないのです。何しろ多くのIDSで検知できるのはVPNサーバーの MAC アドレスだけ。当然、VPNの向こうの平和だったり、平和でもない家庭のネットワークなんぞ、知らんぞな、もし。という事なのですね。もし、そんなユーザにとっては当たり前の環境を検出できずに、繋がっちゃった場合、責任を取るのは結局「現場のネットワーク管理者の減点5」になるわけです。

-これからのIDS(不正侵入者検出、ブロック)の機能は-

やっぱり、接続可能なデバイスの「システム内部」の全てに何等かのエージェントをインストールして「マーキング」をして、マーキングがないデバイスは接続は許さんぞ、というシステムが必要なような気がします。これらは Windows, MacOS, iOS, Android, Linux など全てのシステムソフトウェアに対応している必要があり、システム管理者に対して「お前働くドレイなんだから、それインストールするのに八王子の山奥に住んでいるオレんちまで来て仕事しろ」というユーザがいるかも知れませんが、黙って高尾山の蕎麦屋のレシート確保してでもやるべき仕事かもしれません。

- やっぱりはびこるセキュリティ根性論 -

私はパスワード管理もウィルス対策も、基本は「根性論」であると考えています。システムとしていくつかの障壁を作ってみても、今あるIDSによる不正接続検出に限界がある以上、「やっていい事」「悪い事」はそれぞれユーザに教科する根性論が重要になります。「悪い事」を教えるのはシステムの穴を教えるようなモノなのですが、「やってもいい事」だけのリストではそれ以外は、グレーリストになるため、ブラックルールも明示し、それなりのペナルティを用意しておくことも必要だろうな、という根性論なのです。またグレーゾーンをどう探し出して、運用基準を定期的にアップデートするかのシステム運用側の「根性論」も重要でしょう。

--
という事で、「今考えられる働き方改革の障害となる不正アクセス検出方法」のホワイトリストに俄然と存在するブラックホールを幾つか考えてみました。単純な IP Poisoning によるIDS/IPS にはもう限界があり、それなりのシステム側の対策には様々な方法が見当たるのでしょうが、その都度、新たな投資を考えなければならないのです。









# by islandcenter | 2017-10-13 10:41 | プライベートクラウド | Trackback | Comments(0)

滅多にないのですが、SLES でサーバ運用しているシステム上で 「Office 系のアプリケーションを使いたい」というケースがあります。よくある例としては、例えば、マニュアルのネタを作成したいとか、スプレッドシートから、csv テキストでのエクスポートをしたいとかのケースでしょうか。そんな時に役立つのが ”SUSE Linux Enterprise Workstation Extension” です。


詳細はこちら

SUSE Linux Enterprise Workstation Extension

ダウンロードはこちら

SLE-12-SP3-WE-DVD-x86_64-GM-DVD1.iso

※ 二枚ありますが、二枚目はソースコードです。

ISOファイルをメディアに焼くなり直接 ISO をリポジトリに登録します。

a0056607_20023868.jpg


YaST > Software > Software Management から、"Lible..." とか "gimp" などのキーワード検索をします。インストールしたいアプリケーションをチェックして Accept すると、インストールが自動的に始まります。

a0056607_20030479.jpg

gnome Desktop を開くと、"Applications" にアイコンが追加されます。 "Add Desktop" していれば、 "nautilus Desktop" からもアクセスできます。

a0056607_20033068.jpg

# nautilus &

a0056607_20035404.jpg

# soffice &

で LibleOffice を起動してみました。

a0056607_20041680.jpg



メニューを日本語に切り替えます。

Tools > Options > Language Settings > より "Japanese" を User interface にセットして、アプリケーションを再起動

a0056607_20044287.jpg

メニューが日本語化されました。ただし、システム言語が English なので IME は使えないようです。SUSE Enterprise Desktop (SLED) ならどうなるか、これはまたの機会に試してみたいところです。

a0056607_20050593.jpg

ついでに gimp も使ってみましょう。

# gimp &

a0056607_20054258.jpg

※ gimp は Edit > Preferences > Language から日本語に変更できそうなのですが日本語化パッケージが含まれていないので、日本語メニューが使えません。2.8.18 Portable 版ならできるようです。

サブスクリプション購入はこちら

--

サーバーの実運用ではあまり利用方法がないでしょうが、スプレッドシートから、何がしかのデータを csv エクスポートしたり、画像のハードコピーを取って evernote にアップデートするとか、チョコチョコした目的で、「やっぱりオフィスアプリケーションが欲しい」という場合には便利でしょう。

ある意味では、単一のバイナリファイルで、複数ユーザが複数セッションで利用できる、Linux/Unix 系OSの特徴でもあり、マルチタスクシングルユーザの Windows OS とは違い、シンクライアント、マルチユーザアプリケーションとして、アプリケーションコンテナの様に少ないリソースで利用できるのはちょっと面白いな、と感じました。

今回の環境は英語システムなので、日本語入力ができない事、また gimp の日本語拡張パッケージがない事など、不満な点はありますが、値段が高く、ライセンスが厳しい Microsoft 製 Office Suite より気にせず使えて、しかもマルチセッションで使える点など、うまく利用方法を考えると、サーバー内部で完結しており、情報漏えいなどのリスクも少ない所は、面白い点がありました。



- Keyword -
SUSE Linux Enterprise Server, SUSE, SLES, Office Application, LibreOffice, gimp2, インストール




# by islandcenter | 2017-10-11 20:08 | SUSE | Trackback | Comments(0)

Windows10 デスクトップにコントロールパネルを表示させるには

Windows10 初期版では「田(デン)」アイコンを右クリックすると「コントロールパネル」のメニューが出てきたのですが Creators Update 以降、「アレ? 無いぞ」と慌ててしまいます。メニューから無くなってしまいました。コントロールパネルは、だんだん「設定」メニューに取り込まれるようですが、やはりまだ使いたい。

Creators Update で「コントロールパネル」を出すには、「田(デン)」ボタンの横の「〇(マル)」のCortana ボタンから「コントロールパネル」をキーボードを叩いて検索して、アイコンを出すのが一番、初歩的な方法です。でも私の様に、キーボード叩くのが面倒なモノグザ人間が頻繁に「コントロールパネル」を使いたい場合は面倒です。

一度「コントロールパネル」が立ち上がってしまえば、タスクバーにピン止めしてしまうのがいいでしょう。

a0056607_15082200.jpg


まぁ、Microsoft としては、できるだけ Cortana を使わせたいのでしょうが、所詮 iOS や Android と違って PC 用OSですから、マイクロフォン内蔵のPCなんて珍しいでしょうし、「マイクロフォン内蔵のデスクトップPC」なんかがあって、机の下の足元にPCを設置しているような場合、オフィスのみんなが机の下に潜り込んで「モゴモゴ」言っている光景なんて珍妙な事この上ない。それにウルサイ。PCにスピーカーが付いていてもほとんど利用できないようにしているのが普通ですから、やっぱりPC用システムに Cortana は使い物にはならない無用の長物でしょうね。やっぱり 「Cortana 小僧」を呼び出して、町のご隠居こと「 Google 大先生を呼んでもらう」程度の使いっパシリにはそれなりに便利でしょう。

他に簡単にコントロールパネルにアクセスするには、デスクトップにアイコン表示をさせる事です。これは Windows10 Creators Update の物ですので、そのうちに「お亡くなり」になる可能性がありますので 2017/10 現在の情報です。

C:\>ver
Microsoft Windows [Version 10.0.15063]
C:\>winver

a0056607_15032658.jpg

デスクトップの壁紙を「右ボタン」> 「個人用設定」を開きます。

a0056607_15084354.jpg

「テーマ」の一番下に「関連設定、デスクトップアイコン」というメニューがあります。このメニューの中はデスクトップに「ごみ箱」しかチェックが入っていないのですが、「コントロールパネル」にチェックを入れると「コントロールパネル」アイコンがデスクトップに表示されます。

a0056607_15085700.jpg

「コントロールパネル」が大好きな人には、簡単にアクセスする方法としては一番簡単かもしれません。






-Keyword-

Windows10, Creators Update, コントロールパネル, コントロールパネルが表示されない, コントロールパネルの表示, ごみ箱, ごみ箱が表示されない。

# by islandcenter | 2017-10-11 15:14 | Windows | Trackback | Comments(0)

How to Prevent or Disable to "REBOOT" with "Ctrl+Alt+Del" by accidentally miss hit key on SLES12, openSUSE.
SUSE Linux Enterprise Server 12, openSUSE で Ctrl+Alt+Del キーで誤ってリブートさせないようにするには

誤って、"Ctrl+Alt+Del” という萬金丹の様な万能の薬が PC 用 OS には付いてきます。大抵の Linux のディストリビューションでは、この操作は Reboot に割り当てられます。でも、サーバーで運用して、"間違ってやっちゃった" ら大変な事になるでしょう。構内電話は鳴るわ、ナイフとフォークは飛び交うわ、愚痴の連続と誰かの首が飛ぶわ、ではたまったものではありません。そこで、通常はサーバー運用では、無効にするケースが多いと思います。

SLES12 より initd から systemd にサービス管理が変わった事で、 /etc/inittab が無くなりました。
SLES11 までは inittab の ctrlaltdel の行を comment out して再起動すればよかったのですが

SLES11:/etc # cat inittab | grep ctrl
# ca::ctrlaltdel:/sbin/shutdown -r -t 4 now
SLES11:/etc #

SLES12 では、inittab 自体がありません。その代わり、 reboot.target ファイルにエイリアス ctrl-alt-del.target が記述されています。


SLES12SP3:~ # cat /usr/lib/systemd/system/reboot.target
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Reboot
Documentation=man:systemd.special(7)
DefaultDependencies=no
Requires=systemd-reboot.service
After=systemd-reboot.service
AllowIsolate=yes
JobTimeoutSec=30min
JobTimeoutAction=reboot-force
[Install]
Alias=ctrl-alt-del.target
SLES12SP3:~ #

- 対策 -

Ctrl+Alt+Del を無効にする方法について opensuse のフォーラムにそのものズバリの回答がありました。

Thread: Alt + Ctrl + Del again

- Default -

初期値では ctrl-alt-del.target ファイルはありません。

SLES12SP3:~ # ls /etc/systemd/system/ctrl-alt-del.target -al
ls: cannot access '/etc/systemd/system/ctrl-alt-del.target': No such file or directory
SLES12SP3:~ #

そこで yast から Ctrl+Alt+Del を無視するように変更します。

SUSE Linux 15 YaSTの基本

# yast2 &
> Security and Users > Security Center and Hardening > "Boot Settings" > "Interpretation of CtrL+Alt+Del " : "Reboot" --toggle--> "Ignore"

a0056607_18251220.jpg
sles12 の場合

a0056607_22525206.jpg
sles15の場合




set to "Ignore" > "OK"

a0056607_18254112.jpg

# yast (from text console)
> Security and Users > Security Center and Hardening > "Boot Settings" set to "Ignore" > "OK"

a0056607_18261915.jpg


デバイス /dev/null へのリンクが作成されます。

SLES12SP3:~ # ls /etc/systemd/system/ctrl-alt-del.target -al
lrwxrwxrwx 1 root root 9 Oct 9 16:57 /etc/systemd/system/ctrl-alt-del.target -> /dev/null
SLES12SP3:~ #



再起動は必要ありません。結果は即座に反映されます。Reboot is NOT needed. The results are immediately reflected.

単に、このリンクがあるかないかで判断するようです。試しにこの ctrl-alt-del.target ファイルを削除してみると、YaST でもデフォルトの ”Reboot" に戻っていました。

サブスクリプション購入はこちら



-Keyword-
SUSE Linux, SLES12, opensuse, Ctrl+Alt+Del, disable to reboot, prevent to reboot, 誤って再起動させてしまう, How to, YaST,ctrl-alt-del.target ,Ctrl+Alt+Del を無効, 無視,

# by islandcenter | 2017-10-09 18:30 | SUSE | Trackback | Comments(0)

ここでは Linux, Windows のシャットダウン、リブートの方法について説明します。

1) .Linux のシステムを停止、電源遮断する

Linux システムのシャットダウン、再起動コマンドは shutdown コマンドを
実行します。

- 参考ページ -

シャットダウンして、電源遮断(Halt)をするには

# shutdown -h 0 または
# shutdown -h now

シャットダウンして、再起動(Reboot)をするには

# shutdown -r 0 または
# shutdown -r now

-h は halt, -r はリブートの意味です。0 は「0分後」つまり今すぐの意味です。

SLES11の場合

SLES11sp4:~ # shutdown --help
shutdown: invalid option -- '-'
Usage: shutdown [-akrhHPfnc] [-t secs] time [warning message]
-a: use /etc/shutdown.allow
-k: don't really shutdown, only warn.
-r: reboot after shutdown.
-h: halt after shutdown.
-P: halt action is to turn off power.
-H: halt action is to just halt.
-f: do a 'fast' reboot (skip fsck).
-F: Force fsck on reboot.
-n: do not go through "init" but go down real fast.
-c: cancel a running shutdown.
-t secs: delay between warning and kill signal.
** the "time" argument is mandatory! (try "now") **

SLES12 の場合

sles12sp3:~ # shutdown --help
shutdown [OPTIONS...] [TIME] [WALL...]

Shut down the system.

--help Show this help
-H --halt Halt the machine
-P --poweroff Power-off the machine
-r --reboot Reboot the machine
-h Equivalent to --poweroff, overridden by --halt
-k Don't halt/power-off/reboot, just send warnings
--no-wall Don't send wall message before halt/power-off/reboot
-c Cancel a pending shutdown
sles12sp3:~ #



2). Windows のシステムを停止、電源遮断する(特にリモートデスクトップ)

通常にスタートボタン(田ボタン)からシャットダウン、リブートします。

Windows Server 系ならリモートデスクトップでも「田ボタン」から、シャットダウン、再起動のメニューが使えますが、Windowsクライアント系(VDIデスクトップ)の場合、リモートデスクトップから、再起動のメニューが出ません

もしWindows のリモートデスクトップを使ってシャットダウンする場合はDOS プロンプトを開いて

> shutdown /s /t 0 (シャットダウン)
> shutdown /r /t 0 (再起動)

か、

必ずフルスクリーンモード alt+f4 キーでシャットダウンのダイアログが出ます。


a0056607_13562995.jpg

こちらをご参考ください。



Windows2008 系を KVM/XEN で仮想化している場合、「シャットダウンしています...」が60秒以上かかる場合、あるいは、シャットダウンし切れない場合があります。

動きがない場合 virt-manager & から Force Off しても構いません。

あるいはコマンドラインで

# virsh(あるいは xm or xl ) destroy my-vmachine-Name_or_vmID_num

で強制終了させます。


3).仮想化ハイパーバイザホストで fsck する場合がある

なお、長期連続運用後、再起動させた場合、fsck プロセスが走る場合があります。

これは長期間 fsck をしていない場合に必ず行う checkdisk の様な物なので、進捗具合を見ながら放置してください。

数分から数十分かかる場合がありますので、慌てて電源を切らない事です

OS起動時のfsckのチェック間隔 (※SLES11の場合)

Superblock があるパーティションで

sles11sp4:~ # tune2fs -l /dev/sda9 | grep interval
Check interval: 15552000 (6 months)
sles11sp4:~ #
sles11sp4:~ # tune2fs -l /dev/sda8 | grep -i mount
Last mounted on: <not available>
Default mount options: (none)
Last mount time: Fri Sep 29 13:39:19 2017
Mount count: 44
Maximum mount count: -1

デフォルトでは6か月以上 fsck をしない ext3 パーティションは強制的に fsck されるようです。マウント回数は -1 なので無限大の様です。強制的に fsck させない場合は shutdown コマンドで

-f: do a 'fast' reboot (skip fsck).

オプションを使います。

※ このケースは SLES11 の ext3 フォーマットでのデフォルトです。SLES12 では BtrFS と XFS をデフォルト使用しませんのでこの限りにあらずです。





計画停電時の対策 SUSE (SLES11, SLES12,15) XEN/KVM 遮断マニュアル

SUSE SLES11, ハイパーバイザーのメンテナンス、Linux, Windows, シャットダウン、再起動



# by islandcenter | 2017-10-03 14:00 | SUSE | Trackback | Comments(0)

SLES12 より Squid プロクシが YaST からインストールできるようになったので、SLES12 SP3 で YaST インストーラからインストール、設定、起動までをやってみました。

- 参考 -

SUSE 11 で Squid3 を導入、設定

YaST > Software Management で調べると SLES12 sp3 で標準装備されているのは Squid 3.5 の様です。

a0056607_12252656.jpg

- Squid Proxy のインストール -

yast(yast2) より NetWork Service > Squid を Open します。YaST インストーラが起動し、自動的にインストールが開始されます。

a0056607_12261181.jpg



Start-Up : When Booting に変更

a0056607_12264319.jpg


HTTP Port は 3127 がデフォルトです。 ここでは 8080 に変更します。

a0056607_12270217.jpg


デフォルトでは最大キャッシュサイズ ( Max Object Size ) が小さいので大きな値を設定します。例えば Memory Cache 128 MB, Max Object Size 256Mb などです。Squid 専用サーバーであれば、これくらい与えても良いでしょう。


a0056607_12272542.jpg



Cache Memory と Max Object サイズを設定します。

キャッシュディレクトリのサイズは実装されたメモリ、ディスクのサイズに合わせて適度な数字を設定してみてください。また、キャッシュディレクトリは "/" ルートと違うパーティションに作成するのが理想です。特に物理的なハードディスクが違うパーティションを与えると、効果が上がります。SSD を使って割り当てると "爆速キャッシュ" になります。

a0056607_12281144.jpg
一旦、Squid キャッシュを再起動します。

確認くん

で確認してみました。

a0056607_12291638.jpg

Squid のバージョンが漏れています。

- 匿名性の確保 -

/etc/squid.conf を書き換え、次の行を追加しました。

visible_hostname unknown
forwarded_for off
request_header_access X-FORWARDED-FOR deny all
request_header_access Via deny all
request_header_access Cache-Control deny all

Squid を再起動して、もう一度確認くん


a0056607_12295289.jpg

Squid のバージョンを隠す事が出来ました。

- Squid cachemanager の設定 -

Squid cachemgr.cgi スクリプトが、Squid のインストールと同時に /usr/lib64 の下にコピーされます。これを /srv/www/cgi-bin の下にコピーします。

また apache2 がインストールされていなければ Apache2 をインストールしてください。

SUSE Linux (SLES12) で apache2 HTTPサーバー と PHP スクリプトのインストール

sles12sp3:~ # find / -name cachemgr.*
/usr/share/doc/packages/squid/scripts/cachemgr.readme
/usr/share/man/man8/cachemgr.cgi.8.gz
/usr/lib64/squid/cachemgr.cgi
/etc/squid/cachemgr.conf
/etc/squid/cachemgr.conf.default
sles12sp3:~ #
sles12sp3:~ # cp /usr/lib64/squid/cachemgr.cgi /srv/www/cgi-bin
sles12sp3:~ #

/etc/squid/cachemgr.cfg の localhost 行にポート番号(:8080)を追加しデフォルト 3128 から変更します。

sles12sp3:~ # vi /etc/squid/cachemgr.conf

: 編集中

sles12sp3:~ # cat /etc/squid/cachemgr.conf | grep localhost
localhost:8080
sles12sp3:~ #

ブラウザから cgi を開き "Cache Server" を トグルボタンで localhost:8080 に設定して "Continue" します。



a0056607_12324146.jpg


"Continue..."

a0056607_12332764.jpg


"Cache Clients:” のリンクを開くと、キャッシュのヒット率、ヒット数が表示されます。

a0056607_12340971.jpg

キャッシュのヒット率、ヒット数は、"ヒットしたキャッシュの量" を表すものではない事に注意してください。効率が良いキャッシュサーバーは、どれだけ、"トラフィック量" を捌いたかが重要です。実際、キャッシュ量は Squid キャッシュディレクトリの量を du コマンドなどで定期的に測って見るべきでしょう。

sles12sp3:~ # cd /var/cache/squid/
sles12sp3:/var/cache/squid # du -h
2.8M ./00/00
4.1M ./00/01
0 ./00/02

 : 中略

0 ./0F/FF
0 ./0F
6.9M .
sles12sp3:/var/cache/squid #

キャッシュは様々な理由で壊れたり、 Squid 自身がクラッシュする可能性もあるので、cron でキャッシュ最大サイズになる前に定期的に squid を停止させて、キャッシュディレクトリ全体を削除して再起動するのが良いでしょう。

実際の Squid の効率を調べる方法はこちらをご参考にしてください。

squid の効率をチェックして、キャッシュをクリアする

--
Squid の Local Cache は "効果がない" という意見もありますが、Cache サーバーを導入することで、インターネットの出入り口が交通整理されるため、混雑した環境では、ブラウザの動作が安定する場合があります。また、「遅い」と思う人ほど、最初のキャッシュミスヒットなので、遅いのは当たり前なんですね。

最近は動的コンテンツが多いため、あまり効果が分かりにくいのも事実です。

まぁ高速道路で "渋滞の中、加速したり止まったりで平均 40Km/h"で走るのと、"混んでいても 40Km/h で定速で安定して走っている"との違いのようなものなのですが、自動車の運転と違って、通信は目に見えないので、判りにくいのもよくわかります。

一人でも多くのユーザが利用できるようにすれば、静的コンテンツのキャッシュ効果が表れてきます。

「インターネットがブラウジングが遅い」というのは、相手サーバーとの距離でもありますし、多くはブラウザ内部のキャッシュを処理する使っているPCの性能の問題の様な気がします。相手サーバーとの間の MTU は経路のルータで 1,500 バイトに分割される事を忘れてはいけません。大抵は 1.5Kb 以上の画像などのコンテンツがあれば、やり取りを地球七周半/sec で経路中の装置のオーバーヘッドの影響を受けながら「行ったり来たり」しているのです。

また、Squid の負荷状態を様々なツールで分析できれば、ネットワークの実効容量が測れるので、その固定回線への固定投資は効果があるのかどうかの判断材料にもなります。

サブスクリプション購入はこちら



- Key Word -

SUSE Linux, SLES, SLES12, SLES12 SP3, Squid3.5, YaST, インストール, 導入, 設定


# by islandcenter | 2017-09-30 12:42 | SUSE | Trackback | Comments(0)


SUSE Linux Enterprise Server 12 Support Pack 3 (SLES12sp3) が 2017/8 にリリースされたので、インストールしてみました。ここではインストールの流れを見てゆきます。

SUSE Linux Enterprise 15 はこちら
https://islandcnt.exblog.jp/238668681/

- インストールのはじまりはじまり -

まず DVD からブートアップ > "Installation" を選びます。

a0056607_07110101.jpg


ライセンス同意画面と、キーボード、言語の選択です。

Language: English
Keybord : Japanese

を選び、日本語 106 キーで特殊キーや NUM Lock キーが押されていないかを "Keyboard Test" エリアで確認します。

※ いつものことですが、 Language : Japanese も選べますが、とても意味不明でステキなニッポン語のメニューになるため、SLES は常に第一言語 English 第二言語 Japanese を選んでいます。また、サーバーのコンソールはほとんどが英語ですし、YaST を使う場合の ALT+ショートカットキーが使いづらくなるので、日本語は優先言語としません。

License Agree をチェックして次へ


a0056607_07121664.jpg


アクティベーションの設定です。ここをチェックすると、インターネットに接続に行き、アクティベートされてしまうので、いつも Skip しています。リポジトリも登録されるため、細い回線環境だと、インストレーション作業に時間がかかるため、スキップして、ある程度チューニングした後にアクティベートして、アップデートを行っています。

a0056607_07133246.jpg


追加プロダクトです。通常は何もないので Add On Product は何もセットせず次へ

a0056607_07141729.jpg


デフォルトで入れるか XEN または KVM のハイパーバイザー起動とするかの選択です。ハイパーバイザーとして導入すると、アクティベートや 1 Click Install に必要なブラウザや yast2 や virt-manager などのGUIツールが入らないので、ここでは Default 導入して、後に ハイパーバイザーだけを導入しています。



a0056607_07150204.jpg


ボリューム定義です。マニュアルによると jeOS で 1.0Gb、最小のX環境で1.4Gb, フルインストールで 8.0Gb 程度のディスク容量が必要です。ただし SLES12 より "/" ルートパーティションは Default : BtrFS でスナップショットを取れるため、スナップショットからロールバックを使う場合は 使用量の倍の容量を確保することが推奨されます。そのまま鵜呑みすると 16G は欲しいネ、という事ですが、 ロールバックする対象はそれほど多くないですし、システムをロールバックするという事も滅多にありませんから 10Gb もあれば余裕でしょう。

SUSE Linux Enterprise Server 12 SP3 導入ガイド

なお、パーティションを分けた場合、 "/" ルート以外のパーティションは XFS がデフォルトになります。database などのロールバックが予測されるシステムでは BtrFS を使う事になります。

パーティションの構成を替えたい場合はここで "Expert Partitioner" を開きます。ここではデフォルトでそのまま進めます。



a0056607_07154653.jpg


タイムゾーンの設定です。世界地図から日本らしきところをクリックすると Asia/Japan が選択されます。

”Hardware Set to UTC” のチェックは外す事にしています。これはOSと CMOS クロックを UTC で同期させる機能なのですが、UTC で起動されると困る仮想サーバー(Windowsなど)のためのハイパーバイザー運用では、見事に9時間早くなってしまうので、このチェックを外して JST 運用することにしています。"UTC にしないのはどんなものなんでしょうね" という感じの警告を確認して次へ

a0056607_07164652.jpg



オペレータのフルネームとユーザ名、パスワードをセットします。

a0056607_07191429.jpg

root のパスワード設定です。必ず ”Test Keyboard” で特殊キーや NUM Lock のチェックをします。なお、パスワードとテストフィールドでテストした単語はシンクロしません。あくまでもテストのためのフィールドです。

a0056607_07211547.jpg



サマリ画面からデフォルト状態をいくつか修正します。

Firewall : Disable(Default Enable)
SSH : Open(Default Close)
Kdump : Disable (Default Enableカーネルダンプが必要なクリティカルなシステムでは Enable にしておくのが良いでしょう)
どうせコンソールは使わないので Systemd target : Text (Default Graphical )
その代わり gnome や yast2 などのパッケージはインストールされます。

a0056607_07222194.jpg


インストールが開始されます。

a0056607_07225418.jpg
ハードウェアの性能によりますが10~20分程度で自動で再起動します。


- 再起動 -

a0056607_07235405.jpg

再起動でログインプロンプトが出てくればOK


a0056607_07243573.jpg
あとは、IP アドレスの固定と NTP の設定をすれば、サーバーの基本的なインストール作業は終わります。この手順は SLES12 SP2 と同じです。

SUSE Linux (SLES12)  YaST で固定 IP アドレスの設定をする

SUSE Linux (SLES12) を YaST で NTP の設定

SUSE Enterprise Server 12, Ctrl+Alt+Del で誤って reboot させないようにするには

ファイルサーバーのフォルダ容量制限(ディレクトリクォータ)

後は、サブスクリプションを購入してアクティベートします。サブスクリプション購入はこちら





- インプレッション -

SLES11 より、インストール全体は簡素化されていますが、省略された分、後で設定すべきことが沢山出てきます。やはり initd より systemd による、起動/終了の高速化は素晴らしいと思いました。どれほど変わったか、細かな設定などはもう少し照査すべきですが、従来の SLES12.x とあまり変わらないな、という印象です。ここから本格的に評価したいのですが、使えるPCがないので、ハイパーバイザー運用より当面は仮想サーバーとしての評価になります。ちなみに、SLES11 の XEN 環境からもインストールできたのですが、 Full Virtual でないと動かないという問題がありました。恐らくブートアッププロセスにチューニングが必要なようです。当面は USB ブート用の環境でのテストもやってみたいところです。






- Keyword -

SUSE Linux, SLES12, SLES12sp3, インストール, 導入, 手順, DVD ブート, USB ブート, Howto


# by islandcenter | 2017-09-29 07:51 | SUSE | Trackback | Comments(0)

今回は SUSE Linux (SLES12) で GUI 版 yast2 で Samba ファイルサーバーを導入してみます。YaST のメニューは英語表記ですが、第一言語を日本語にすると、何となくカッチョ悪いけど日本語表記にすることもできます。

gnome デスクトップの computer > yast で起動するか X 端末から

# yast2 &

で起動します。

Network Service > Samba Server を開きます。

まだ、samba サーバーが設定されていない場合、インストールウィザードが起動して、インストールが開始されます。

a0056607_14142853.jpg


まずは WorkGroup の設定

a0056607_14150216.jpg



次にドメインタイプを選びます。ここではドメインを使用していないので "Not a Domain Controller" を選びます。

a0056607_14152828.jpg


"Start Up" タブから、起動方法 "During Boot" で自動起動を選びます。


a0056607_14161898.jpg

”Shares” タブを開き、デフォルトで "Share" される機能を確認します。デフォルトでは /home/が共有されます。追加したいときは "Add" ボタンで追加します。

a0056607_14164852.jpg


追加するディレクトリはあらかじめ作成しておきます。

sles12:/home # mkdir Share
sles12:/home #

"Share Path" をブラウズして、共有ディレクトリを指定し、 "Share Name" (必須)を設定します。 "Share Description" はオプションです。

a0056607_14174327.jpg


OKボタンを押すと、"Shares" に追加されます。

a0056607_14180728.jpg


こちらは CUI 版 yast です。"Add" ボタンから、共有ディレクトリの共有ディレクトリを指定します。


a0056607_14182530.jpg

既にシステムに登録済のユーザを samba ユーザに追加します。

sles12:/home # smbpasswd -a knakaj
New SMB password:
Retype new SMB password:
Mismatch - password unchanged. <--- おーっとまちがったぜ。
Unable to get new password. <--- 見逃すとはまります。
sles12:/home #
sles12:/home # smbpasswd -a knakaj
New SMB password:
Retype new SMB password:
Added user knakaj. <---- これを確認しないとね。
sles12:/home #
sles12:/home # chmod 777 Share
sles12:/home #
sles12:/home # chown nobody:nobody Share
sles12:/home # ls -l
total 0
drwxrwxrwx 1 nobody nobody 0 Sep 27 13:27 Share
drwxr-xr-x 1 knakaj users 234 Sep 23 16:32 knakaj
sles12:/home #
sles12:/home #
sles12:/home # rcsmb restart
sles12:/home #

でログイン

a0056607_14190339.jpg


- 出たな、妖怪! -

ネットワークに名前がでても、接続できない場合があります。いつものマスタブラウザが悪さしています。


a0056607_14192641.jpg

その時は \\ip_address でアクセスします。

無事アクセスできました。共有フォルダにファイルが作成できることを確認します。


a0056607_14194709.jpg

オーナーが root のままのディレクトリを作ってみます。

sles12:/home/Share # mkdir read-only
sles12:/home/Share # ls -al
total 0
drwxrwxrwx 1 nobody nobody 18 Sep 27 13:56 .
drwxr-xr-x 1 root root 22 Sep 27 13:27 ..
drwxr-xr-x 1 root root 0 Sep 27 13:56 read-only
sles12:/home/Share #


a0056607_14201964.jpg


root でテキストファイルを作ると Read はできますが、上書き保存 Overwrite はできません。


a0056607_14203895.jpg


ディレクトリから読み取りの権限を削除します。

sles12:/home/Share # ls -al
total 0
drwxrwxrwx 1 nobody nobody 106 Sep 27 13:58 .
drwxr-xr-x 1 root root 22 Sep 27 13:27 ..
drwxr-xr-x 1 root root 28 Sep 27 14:02 read-only
-rwxr--r-- 1 knakaj users 0 Sep 27 13:58 新しいテキスト ドキュメント.txt
sles12:/home/Share # chmod 700 read-only/
sles12:/home/Share # ls -al
total 0
drwxrwxrwx 1 nobody nobody 106 Sep 27 13:58 .
drwxr-xr-x 1 root root 22 Sep 27 13:27 ..
drwx------ 1 root root 28 Sep 27 14:02 read-only
-rwxr--r-- 1 knakaj users 0 Sep 27 13:58 新しいテキスト ドキュメント.txt
sles12:/home/Share #

フォルダは見えてもアクセスできません。

a0056607_14211593.jpg


- 読込権限のないディレクトリを非表示にする -

アクセス権のないフォルダ(ファイル)を非表示にしたい

/etc/samba/smb.conf の [Global ] セクションに

hide unreadable = yes

の行を追加します。

sles12:/etc/samba # vi smb.conf

: 編集中

sles12:/etc/samba # cd
sles12:~ # cat /etc/samba/smb.conf | grep hide
hide unreadable = yes
sles12:~ # rcsmb

YaST を使う場合、Identify タブの Expert Global Settings から、"hide unreadable" : "yes" を追加します。


a0056607_14214467.jpg

samba を再起動したら見えなくなりました。


a0056607_14220975.jpg

SUSE Linux で YaST からインストールして、ファイル共有までもおおざっぱな流れを見てみました。ただ、素の samba インストールなので、ユーザはいちいち ssh でログインして smbpasswd を使ってパスワードを変更しなくてはならないし(ユーザはまずやらないだろう)、PAM 認証や LDAP連携など(これは管理者がまずやらないだろう)がなく、そのような仕掛けを作るには、まだまだ複雑な作業が必要です。小規模ネットワークでは samba は手軽でコストパフォーマンスは良いですね。

また "Share" 自体に "秘密の人事" なんて名前の"共有"を作ると見えてしまうというのは、ちとまずいですね。実際には

\\server\ShareName\Secret(hidden)

に作成すべきでしょう。

その他、細かな操作はテキストベースの操作が必要ですし、「シェルを作って一発」という手段が使えるのは Linux/Unix 系OSの良い所なんですが、あまりそこまでやりたくないし、と言った事情があります。また、ボリューム(パーティション)単位のクオータは定義できても、ディレクトリ単位のクオータ定義ができないので、結局はファイルサーバーは、死んだファイルのごみ箱になりかねません。その中に黄金のファイルが含まれているかも知れないため、ストレージバックアップシステムにもお金をかけなければならないのです。

まぁ手をかけて samba を鍛えて属人システムにして Windows の CAL 代を節約するか、手をかけて稟議書を書いて Windows サーバーを購入するのがいいのか、それとも、そんな問題を全部解決する Novell Openenterprise Server のライセンスを購入するか、それは大人の事情ですから、ここでは何も言えませんね。





SUSE Linux, SLES, SLES12, Samba, インストール, 設定, YaST, フォルダを見えなくする。フォルダにアクセスさせたくない。




# by islandcenter | 2017-09-28 14:24 | SUSE | Trackback | Comments(0)

今回は SUSE Linux Enterprise Server 12 (SLES sp2) で PHP スクリプトを HTTP サービス を動かす方法を説明します。 SLES11 までは Web LAMP をインストールするだけで HTTP サーバーで PHP スクリプトを動かす事ができたのですが、 SLES 12 以降はちょっと面倒になりました。マニュアルにも記載がなかったり、誤記があるようなので、細かい所のご指摘があればコメント下さい。なお、この記事は参考程度に見てもらえればありがたいです。

公式には評価版ではなく、E-Media でインストールしたうえでアクティベーションしてサポートを受けることをお勧めします。

SLES15はこちらをご参考ください。
SUSE linux 15 (SLES15) で HTTPサーバー と php7を動かす

今回は第一言語 English の CUI 版 yast を使って作業をしてみました。 X が使える環境であれば yast2 を利用しても、日本語第一言語でもほぼ同じ操作です。

SUSE Linux Enterprise Server 12 SP3 管理ガイド

31.4 モジュールのインストール、有効化、および設定


SLES11 はこちらを参考にしてください。

Apache のインストールと設定まで30秒、SUSE Linux はこんなに簡単

SUSE Linux 15 YaSTの基本

- はじまりはじまり -

まずは YaST から

# yast
> Software > Software Management

を開きます。


a0056607_12351213.jpg


ここで Web and LAMP をチェックして、まとめてインストールします。

Filter > をトグルして "Patterns"


a0056607_12355694.jpg

"Web and LAMP server" をスペースキーでチェック > Acceptします。


a0056607_12361986.jpg

依存性のあるパッケージを確認して”OK”


a0056607_12363810.jpg


インストールが始まります。> Finish

a0056607_12365531.jpg

HTTPサーバーの細かな設定をします。

# yast
> Network Servece > HTTP server


a0056607_12390355.jpg

Wizard に従い”Next”

PHP5 Scripting を Enable にするため、選んで、スペースキーでチェック(敗因)


a0056607_12401312.jpg

※ 敗因 SLES11 までは、このチェックだけで apache2_mod_php5 がインストールできたのですが、SLES12 より PHP5 は Evaluation DVDから削除されたようです。マニュアルも、この指示通りでしたが動きません。評価版ではなく、アクティベーションした場合はまた違う動きがあるかも知れませんね。かと言って、開発途中でアクティベーションするのも何だか勿体ない。

詳しい理由は判らないのですが、PHP の様々な不具合により、サポート対象となっていないようです。php5 は openSUSE のリポジトリからインストールできるので、これは後述します。

オプションの確認、ここでは特に何も変更はありません。


a0056607_12403854.jpg

Virtual Host の設定、特にやることもないので、空欄のまま Next


a0056607_12411300.jpg

Start Apache2 server When Booting をスペースキーでチェック


a0056607_12413566.jpg

Apache2_mod_PHP5 が追加でインストール(敗因 - 実態は何も起こりません)


a0056607_12415786.jpg

一応インストールされた様に見えますが、実は YaST > Software Management で "Search" しても、php5 はリストされません。

ブラウザから、デフォルト index.html を開きます。

sles12:~ #
sles12:~ # w3m 192.168.1.199
sles12:~ #

a0056607_12422273.jpg

apache は動いているようです。

ちなみに、GUI 版 yast2 を使ってapache HTTP サーバーをインストールする場合、こちらのビデオをご参考ください。数クリックで約一分で作業が終了します。




- PHP5 のインストール -

apache2_mod-php5 は openSUSE のソフトウェアページからダウンロード、インストールします。

FireFox ブラウザから


より PHP5 を "package Search"


を開き SLE12 > "PHP5.5.3.xx を "1 Click Install します。


a0056607_12430720.jpg

SUSE SL"12 を開き home:onzi をYaST 1-Click Install > OK

リポジトリの追加


a0056607_12434363.jpg

2017/9 現在 SUSE:SLES-12:GA/standard のレポジトリは実体がなく、エラーになるのでスキップして構いません。

インストールされるソフトウェアパッケージを確認して


a0056607_12450236.jpg

一応警告を確認して OK  (2017/9 現在、他にも途中エラーが出ますが無視しました)

a0056607_12452714.jpg


GNUpg_Key を "Trust" します。

a0056607_12455304.jpg

リポジトリが登録されたので YaST Software Management > Search > "apache" を検索し apache2_mod_php5 をスペースキーでチェック、インストールします。


a0056607_12462718.jpg

依存性のあるパッケージを確認して OK


a0056607_12464583.jpg
Finish

- apatche のサーバーモジュールの有効化 -

# yast
> Network Service > HTTP Server から "Server Modules" タブを開いて "php5" を選び "Toggle Status"Enabled に変更します。

a0056607_12470707.jpg


※ ここまでは E Media でも同じなのですが、E Media では Enable にはなりませんでした。結局 openSUSE のリポジトリからインストールして apach2_mod_php5 が結果OKという事になります。


簡単な /srv/www/htdocs/index.php を作成してみます。


a0056607_12472567.jpg

- ディレクトリインデックスの修正 -

/etc/apache2/httpd.conf にデフォルトファイルとして index.phpindex.htm を追加します。

sles12:~ # vi /etc/apache2/httpd.conf

: 編集中

sles12:~ # cat /etc/apache2/httpd.conf | grep DirectoryIndex
DirectoryIndex index.php index.htm index.html index.html.var
sles12:~ #

これで、ブラウザから URL でディレクトリを指定すると、index.php > index.htm > index.html > index.html.var の順で、ディレクトリのデフォルトページを表示します。HTTP サーバー全体を PHP で記述する場合、これで、ディレクトリ指定だけで index.php が最初に開かれる事になります。また html ではなく index.htm を記述したので、よくある Windows 用のオーガナイザーで作られる、htm 3文字拡張子にも対応できます。
apache2 を再起動して、デフォルト index.php が優先して、開けるか確認してみます。

sles12:~ # rcapache2 restart
sles12:~ # w3m 192.168.1.199
sles12:~ #

a0056607_12474880.jpg


PHP スクリプトが実行されました。

- あとがき -

SLES11 の場合は、このあたりは何の悩みもなくできましたが、SLES12 以降はかなり制限が厳しくなっています。理由は何となく想像するしかないのですが、マニュアル、ドキュメントの不備はちょっと不満があります。なお、MySQL はインストールされず mariadb がインストールされます。

a0056607_12480785.jpg

ちょっと SLES11 とは手順が違い、結局 openSUSE のリポジトリからインストールする結果になってしまいました。実際には、評価版である程度 Web サイトのデザインを作って、顧客から発注を受けたところでアクティベーションする事が多いと思います。

実際に MySQL も mariaDB に置き換わっていますし、このあたりは、SLES12 の新しい方針を示すものでしょう。従来の PHP+MySQL の環境で作業をする場合は SLES11 の方が良いかも知れません。新しい技術を身に着けたい場合はやはり SLES12 を選ぶことになります。

サブスクリプション購入はこちら


-Keyword-

SUSE Linux、SLES12, Apache HTTP サーバー PHP, PHP5, スクリプト、インストール, 有効化, 無効化, enable, disable, SLES11との違い











# by islandcenter | 2017-09-25 13:23 | SUSE | Trackback | Comments(0)