「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
GUIのクライアントOS †
Windows OSのオペレーションはGUI中心であり、
- 初心者に対してフレンドリであり、
- 且つアドホックな操作に強い
と言う特性があります。
クライアントOS -> GUI †
これは、Windows OSが元々クライアントOSとして設計されたためと考えます。
サーバーOS -> CUI †
逆にインタラクティブ・シェル、シェル・スクリプト的な役割を担うCMD、BATの機能は弱く、
後年、WSH(VBScript、JScript)やPowerShell、WSL、Windows Terminalが実装されました。
PCサーバの普及 †
しかし、時代は流れ、Windows、Linux等の
PCサーバが企業の基幹システムに食い込むようになってきました。
- Linuxは、元々企業の基幹システムで利用されていたUNIX系OS
(UNIXの仕様に似ている、UNIX参考にして作られた)であるため、
PCサーバだからと言ってインフラSEに対する大きな影響はありませんでしたが、
- Windowsは、元々クライアントOSとして設計されており、使い勝手が異なるようで、
Linuxをメインに扱うインフラSEやプログラマからは評判が悪いように思います。
各種 違い †
機能の違い †
Windows †
エンドユーザ向け。
- オールインワンで高機能
- クライアントOS自出でサーバOSまでサポート。
Linux †
プロ仕様。
- POSIXは、カーネルに対するC言語用のインターフェイスという感じで低レイヤ
- Linux上での開発は、必要な開発用のライブラリを自分で探してもってくる文化。
認証系の違い †
Active Directoryと密に連携している点が大きく異なると思います。
上記に関連して、アカウント系が違います。
設定方法の違い †
GUI経由の設定により、設定値が何処に反映されるかもわからないため、
システム設定の自動化、差分確認、システムの複製、バックアップ・リストア
などがUNIX/Linux系のOSと比べ、対応し難いと言う点が上げられます。
- UNIX/Linux系OSでのOS、サービス、アプリケーションの設定は
/etc、/home/user/以下のファイルに保存され、
設定の仕様も、manページに記載されている。
- これに対し、Windows OSでのOS、サービス、アプリケーションの設定は
基本的にレジストリに保存されるが、設定はレジストリだけとは限らないこと、
設定仕様のマニュアル化、レジストリ直接編集がサポートされていないケースがある。
このため、Microsoftも、
の等のCUIを用意(整備)し続けていますが、
- 用意されていないものがあったり、
- CUIを探すのに苦労するものがあったり、
...などが、一部あるようです。
なお、Windows OSは、OSバージョンアップに伴い、
設定仕様(保存先)も変更されることが多いですが、
CUIのインターフェイス変更は比較的少なく安定しているようです。
設定方法の違いによって、
- システム設定の自動化
- システム設定の差分確認
- システムの複製
- システムのバックアップ・リストア
に違いが生まれます。
システム設定 †
共に、CUIを使用して設定値を設定・取得する必要があります。
自動化 †
レジストリ直接編集がサポートされていないケースがある。
差分確認 †
過去にレジストリ・ダンプによる設定の差分確認も試みてみましたが、
半年運用したら、レジストリDUMPのDFFは8割程度が異なる結果となりました。
レジストリには、自動パラメタなどの情報も格納されるため、
レジストリキーで範囲を絞らないDUMP&DIFFによる差分確認は困難です。
システムの複製 †
- WindowsではSysprepが必要です。
- Linuxではマニュアル操作になります。
参考 †
システムのバックアップ・リストア †
レジストリ、その他のストレージに保存される設定がマニュアルに記載されていないため、
/etc、/home/user/以下のバックアップ・リストアで済むUNIX/Linux系OSと大きく異なります。
ただし、アプリケーションによっては、/etc、/home/user/以下以外の
バックアップ・リストアが必要になるケースもあると考えられるので、
その辺りは、バックアップ対象アプリケーションの仕組みを理解した上で
バックアップ・リストア設計を行う必要があるということに大きな違いは無いと考えます。
- IISで言えば、メタベース
- MetaBase?.xml
- IIS7からapplicationHost.configに変更
- SQL Serverで言えば、システム・データベース
- master データベース
- msdb データベース
- model データベース
- Resource データベース
- tempdb データベース
参考 †
- Windows から Linux へのロードマップ 第 8 回 バックアップと復元
http://www.ibm.com/developerworks/jp/linux/library/l-roadmap8/
Linux はファイルベースのシステムなので、バックアップしたり復元したりするのに非常に有利です。Windows システムではレジストリが非常にシステム依存になっているので、設定やソフトウェアのインストールは単純にシステム上にファイルを落とせば良いというものではありません。ですからシステムを復元するには、こうした面倒な特性に対応できるソフトウェアが必要になります。ところが Linux では全く話が違います。設定ファイルはテキスト・ベースであり、ハードウェアと直接やり取りする時以外はシステムと独立しています。ハードウェア・ドライバに対する最近の手法ではドライバがモジュールになっており、動的にロードされます。これによりカーネルとシステムがより分離・独立したものとなるのです。Linux でのバックアップは、オペレーティング・システムがシステム上、ハードウェア上にどのようにインストールされているかという微妙な要素を操作するのではなく、ファイルを圧縮・解凍するだけなのです。
サポートの考え方 †
- Windows OSは、Level 200の利用者をターゲットにOSをコモディティ化しているため、
日式メーカ企業の様な、ミッション・クリティカルなシステムに対象を絞った
ニッチなサポートがあれば利用可能と思われる範囲内の利用方法であっても、
(サポートポリシーに反するため)Microsoftからはサポートを得られないケースがあります。
- 平たく言って、
Microsoftのサポートポリシーに反する使い方はサポートされない。
と言うことになります。
- NAT 経由での Active Directory の使用。
参考 †
- Sysprep
- サポート
特定のサーバーの役割が構成された Windows Server 2008 R2 インストールに対し、
/generalize オプションを使用して sysprep コマンドを実行すると、
イメージングおよび展開の後にそれらのサーバの役割が機能しなくなる可能性が
あります(/generalizeオプションにより、SDI重複解消とドライバ削除が可能)。
参考 †
@IT †
- Linuxの真実、Windowsの真実
http://www.atmarkit.co.jp/ad/ms/linuxvswin/top_index.html
- イントロダクション:LinuxとWindows。その本当のコストとリスクを評価するために
- 第1回:ファイル/プリント・サーバの基本機能比較
- 第2回:ネットワーク管理に不可欠なディレクトリ・サービス
- 第3回:Linuxファイル・サーバの本当のTCO
- 第4回:LinuxはWindowsより安全か?
- 第5回:Office互換ソフトの実力とリスク
- 第6回:Webサーバ・プラットフォームとしてのLinuxとWindows
- 第7回: WebホスティングはUNIX/Linuxの独壇場か?
- 第8回 Linux+フリーJavaは安いのか?
- 第9回 可用性、スケーラビリティを備えたシステム開発
- 第10回 座談会:SIerから見たLinuxとWindows(前編)
- 第11回 座談会:SIerから見たLinuxとWindows(後編)
Wikipedia †
開発基盤部会 Wiki †
Tags: :Windows, :Linux