スポンサーサイト

  • 2016.09.11 Sunday

一定期間更新がないため広告を表示しています

  • 0
    • -
    • -
    • -

    バックアップしたデータからデータを復旧するスクリプト

    • 2016.07.29 Friday
    • 10:59

    JUGEMテーマ:パソコン

     

    外付けのHDDなどに、マイドキュメントやピクチャんどのデータを定期的に保存しておかないと大変なことになります。

    当社でもデータの復旧サービスを行っておりますが、かなりの破格値といわれる弊社でも20万以上はかかるので準備が大事ですね♪

     

    保存しておいたデータから自動的に復旧するスクリプトになります。

     

    最初にユーザー名と外付けHDDのドライブレターを入力できるので、正確に入力するようにしてください!

    他のユーザーのデータも移動したい場合には、管理者権限でログオンする必要があることと、事前にそのユーザーでログオンしておく必要があります。

     

    PowerShell で作成しているので、使いにくいようであれば BAT ファイルなどから PowerShell のファイルを呼び出すようにすると便利になります。

     

    # ユーザー名と外付けHDDのドライブレターを確認

    [void][System.Reflection.Assembly]::Load("Microsoft.VisualBasic, Version=8.0.0.0, Culture=Neutral, PublicKeyToken=b03f5f7f11d50a3a")
    $Drive = [Microsoft.VisualBasic.Interaction]::InputBox("外付けHDDのドライブレターを入力", "ドライブレター確認")
    $username = [Microsoft.VisualBasic.Interaction]::InputBox("対象のUIDを入力", "ユーザー確認")

    # ドキュメントフォルダが存在する場合にコピー

    $exist = (Test-Path $Drive":¥users¥$username¥documents")
    if ($exist){Copy-Item $Drive":¥users¥"$username"¥documents" "c:¥users¥$username" -Recurse -force}

    # ピクチャフォルダがある場合にコピー

    $exist = (Test-Path $Drive":¥users¥$username¥pictures")
    if ($exist){Copy-Item $Drive":¥users¥$username¥pictures" "c:¥users¥$username" -Recurse -force}

    # ビデオフォルダがある場合Cにコピー

    $exist = (Test-Path $Drive":¥users¥$username¥videos")
    if ($exist){Copy-Item $Drive":¥users¥$username¥videos" "c:¥users¥$username" -Recurse -force}

    # ミュージックフォルダがある場合にコピー

    $exist = (Test-Path $Drive":¥users¥$username¥music")
    if ($exist){Copy-Item $Drive":¥users¥$username¥music" "c:¥users¥$username" -Recurse -force}

    # デスクトップフォルダがある場合にコピー

    $exist = (Test-Path $Drive":¥users¥$username¥desktop")
    if ($exist){Copy-Item $Drive":¥users¥$username¥desktop" "c:¥users¥$username" -Recurse -force}

    # お気に入りがある場合にコピー

    $exist = (Test-Path $Drive":¥users¥$username¥favorites")
    if ($exist){Copy-Item $Drive":¥users¥$username¥favorites" "c:¥users¥$username" -Recurse -force}

    # Outlookアーカイブがある場合にコピー

    $exist = (Test-Path $Drive":¥users¥"$username"¥AppData¥Local¥Microsoft¥Outlook¥*.pst")
    if ($exist){
               New-Item "C:¥Users¥$username¥AppData¥Local¥Microsoft¥Outlook" -Itemtype Directory -Force
               Copy-Item $Drive":¥users¥$username¥AppData¥Local¥Microsoft¥Outlook¥*.pst" "c:¥users¥$username¥AppDAta¥Local¥Microsoft¥Outlook" -Recurse -force}

    # 署名が存在する場合にコピー

    $exist = (Test-Path $Drive":¥users¥$username¥AppData¥Roaming¥Microsoft¥Signatures")
    if ($exist){Copy-Item $Drive":¥users¥$username¥AppData¥Roaming¥Microsoft¥Signatures" "c:¥users¥$username¥AppDAta¥Local¥Microsoft" -Recurse -force}

     

    自動的にデータを保存するスクリプトも作成可能です!

    後からやっておけばよかったとなる前に、ぜひお声掛けください♪

    Outlookでアドインを無効化できない場合の対処方法

    • 2016.07.22 Friday
    • 15:17

    JUGEMテーマ:パソコン

     

     

    無効化できないとありますが、無効化したくない場合にも利用できる設定になります。 

     

    サポートエンジニアであれば、Outlook2010で何らかの問題が発生した場合、アドオンを一つずつ解除してみて原因を探ることはよくあることだと思います。 

    また、開発・構築であればユーザーがアドオンを無効化できないようにする設定をすることはよくあることだと思います。 

     

    そんなときは、以下のレジストリキーを設定してみてください。 

     

    HKEY_LOCAL_MACHINE¥SOFTWARE¥Wow6432Node¥Microsoft¥Office¥Outlook¥Addins 

     

    この配下にアドオンの名前のキーがあると思います 

     

    その中に LoadBehavior があると思いますので、0であれば無効化可能、3にすると強制的に有効化となる設定が可能です。 

     

    最近は、誤送信防止の機能をアドオンで利用することが多くなってますので、無効化したいとき、無効化されたくないときに上記の設定を利用してみてください。 

     

    ちなみにGPOでの配布にはテンプレートでは用意がないと思うので、レジストリを配布する設定を利用するのが良いかと思います

    スリープ設定をすべてのパソコンで無しにしたいときのスクリプト

    • 2016.07.22 Friday
    • 11:21

    JUGEMテーマ:パソコン

     

    夜中にメンテナンスをするために、組織内のPCのスリープ設定をすべてはずしておきたいことってありますよね。

     

    これは簡単にコマンドで解決します。

     

    POWERCFG -Change -standby-timeout-ac 0

     

    上記をメモ帳に書いて、保存するときに拡張子を .bat にして保存してください。

     

    このような設定を配布するのが実は一番大変なのですが、一番簡単なのはログオンスクリプトでしょう。

    あとはADを使用していない場合であれば、RunOnce に上記で作成したbatファイルの絶対パスを記載しておくとかですかね。

     

    困っている方がいればぜひ利用してみてください!

    Bitlockerをいったん停止して、再起動後に自動で起動させる方法

    • 2016.07.21 Thursday
    • 12:21

    JUGEMテーマ:パソコン

     

    システムロケールの変更や、Biosのアップデートなどをスクリプトから実行すると再起動時にBitlockerが異常を検知して、回復キーの入力以外ではOSを起動することができなくなります。

     

    ちなみにBitlockerとは、TPMチップを搭載しているPCで使用できるHDDなどの記憶媒体全体を暗号化する機能で、企業などでは良く使われています。

     

    コマンドプロンプトからも一時停止や起動が可能ですが、少々面倒なのでPowershellから実行するのが簡単です。

     

    一時停止

     

    $drives = get-wmiobject -namespace root¥CIMv2¥Security¥MicrosoftVolumeEncryption -class win32_EncryptableVolume
    $drives.DisableKeyProtectors()

     

    起動

     

    $drives = get-wmiobject -namespace root¥CIMv2¥Security¥MicrosoftVolumeEncryption -class Win32_EncryptableVolume
    $drives.EnableKeyProtectors()

     

    上記をノートパッドなどにコピペして、拡張子を.ps1にして保存してください。

    また、次回の起動時に自動的に起動.ps1を実行させるためには、RunOnceというレジストリに実行するコマンドを書いておくと、

    1回だけそのコマンドが実行されます。

     

    管理者でログインしないと動きませんので、ご注意ください!

    こんなコマンドで、追加可能です。

     

    reg add "HKLM¥SOFTWARE¥Microsoft¥Windows¥CurrentVersion¥RunOnce" /v "Bitlocker_start" /t REG_SZ /d "実行ファイルの絶対パス" /f

     

    意外と調べると出てこない項目だったので、ぜひ困ったときに使用してみてください!

    PCサポートの請負も絶賛募集中です♪

     

    システムロケールを日本語にするスクリプト

    • 2016.07.19 Tuesday
    • 13:32

    JUGEMテーマ:パソコン

     

     

    なぜか分からないのですが、システムロケールを日本語に設定するサンプルが見つからなかったので自分で作成しました。

     

    以下の内容をテキスト等に貼り付けて、保存するときに拡張子を.batにしてあげれば完成です!

    ただし、この内容が絶対に合っているのかまだ確定できていないので、テストしてくださいね!

     

    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥Nls¥Language" /v "Default" /t REG_SZ /d "0411" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥Nls¥Locale" /v "(Default)" /t REG_SZ /d "0411" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥FileSystem" /v "NtfsAllowExtendedCharacterIn8dot3Name" /t REG_DWORD /d "1" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥FontAssoc¥Associated Charset" /v "ANSI(00)" /t REG_SZ /d "NO" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥FontAssoc¥Associated Charset" /v "OEM(FF)" /t REG_SZ /d "NO" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥FontAssoc¥Associated Charset" /v "SYMBOL(02)" /t REG_SZ /d "NO" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥FontAssoc¥Associated DefaultFonts" /v "AssocSystemFont" /t REG_SZ /d "MSGOTHIC.TTC" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥FontAssoc¥Associated DefaultFonts" /v "FontPackage" /t REG_SZ /d "MS Gothic" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥Nls¥CodePage" /v "ACP" /t REG_SZ /d "932" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥Nls¥CodePage" /v "OEMCP" /t REG_SZ /d "932" /f
    reg add "HKLM¥SYSTEM¥CurrentControlSet¥Control¥Nls¥CodePage" /v "MACCP" /t REG_SZ /d "10001" /f

     

     

    ーーーーーーーーーーーーーーーーーーーーーー

     

    追記

     

    少し確認を進めたところ、専用のコマンドがあることを確認できました。

    以下の内容を xml ファイルとして保存して  control.exe intl.cpl,, /f:"c:¥system_locale_ja-JP.xml" を管理者権限で実行すると、

    Windows7でもシステムロケールの設定を配布することが可能でした。

    保存場所とファイル名は自由に変更してください。

    ただしネットワークにおいてあるxmlファイルを読み込めるか確認していません。

     

    <gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">
    <!-- User List -->  
        <gs:UserList>   
            <gs:User UserID="Current" CopySettingsToSystemAcct="true" CopySettingsToDefaultUserAcct="true"/>  
        </gs:UserList> 

    <!-- System locale -->  
        <gs:SystemLocale Name="ja-jp"/>

    </gs:GlobalizationServices>

     

    今回は、言語設定などはすべてそのまま使用するつもりなので入れていませんが、表示言語やロケーションなどの設定も上記の応答ファイルに書き込むことで実現可能です。

     

    レジストリ配布方式はかなり数が多く、どうやらまだまだ変更されている場所があるようなので、Control.exe を使うのが正解だと思います。

     

    PR

    calendar

    S M T W T F S
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
    << March 2024 >>

    selected entries

    categories

    archives

    recent comment

    recommend

    links

    profile

    search this site.

    others

    mobile

    qrcode

    powered

    無料ブログ作成サービス JUGEM