マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

  • Windows OSの設計思想
  • Linuxと対比してみると面白いかも。

GUIのクライアントOS

Windows OSのオペレーションはGUI中心であり、

  • 初心者に対してフレンドリであり、
  • 且つアドホックな操作に強い

と言う特性があります。

クライアントOS -> GUI

これは、Windows OSが元々クライアントOSとして設計されたためと考えます。

サーバーOS -> CUI

逆にインタラクティブ・シェル、シェル・スクリプト的な役割を担うCMDBATの機能は弱く、

後年、WSH(VBScript、JScript)やPowerShellWSLWindows 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

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ではマニュアル操作になります。

参考

  • Sysprep - Wikipedia
    http://ja.wikipedia.org/wiki/Sysprep
    • コンピュータ名の再生成
    • 一意なSIDの再生成
    • カスタムドライバキャッシュデータベースの生成
    • mini-setup または OOBE (Out of Box Experience)の再実行
  • 蒼の王座 » AzureのVirtual MachineでLinuxの調査と検証メモ
    http://sqlazure.jp/b/windows-azure/1225/

    Linuxのイメージを作成するには、WindowsのSysprep的な処理を実行する必要があります。
    Linuxでは、Windows Azure Linux Agentが、その機能を提供しています。

システムのバックアップ・リストア

レジストリ、その他のストレージに保存される設定がマニュアルに記載されていないため、
/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のサポートポリシーに反する使い方はサポートされない。

と言うことになります。

  • .etc

参考

  • Microsoft Tech·Ed Japan 2010 - 見どころとセッション レベル
    http://www.microsoft.com/japan/teched/2010/home/level.aspx
    • Level 200
      受講いただいた方がテーマの製品やテクノロジの全貌、
      備わった機能を把握し、提案ができるようになることを目指したレベル
    • Level 400
      受講いただいた方がプロジェクト リーダーやテクニカル リードとしてテーマの製品やテクノロジの
      活用の勘所をプロジェクト メンバーや部下、外部発注先に指導できることを目指したレベル
  • 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

Linux OSの設計思想

WindowsユーザがLinuxに乗り換える際に、知っておくとイイ情報集。


Tags: :Windows, :Linux


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-02-24 (木) 11:06:19 (785d)