社内SEの徒然なる日記

Windows2012Serverに自動ログインする方法

■ 自動ログイン

ちと事情があって、サーバー起動時にWindows2012Serverに自動ログインする必要が出てきました。一昔前は、確かレジストリを操作する必要があったと思ったのですが、今ってどうなんでしょうね?

と、思いながら調べてると、随分と簡単に設定できるようになっていました。

Windowsロゴを右クリックして、メニューから「ファイル名を指定して実行」をクリック。
自動サインイン - 1

netplwiz と入力して「OK」をクリック。
自動サインイン - 2

上の方のチェックをOFFにして、「OK」をクリック。
自動サインイン - 3

自動ログインするユーザー名とパスワードを入力して、「OK」をクリック。
自動サインイン - 4

■ 後書き

設定画面を見ていると、タイトルバーの表示が「自動サインイン」となっています。昔はログイン/ログアウトが一般的だと思ったのですが、最近はサインイン/サインアウトという言葉を良く聞くようになりました。

本質が変わらないのに、言葉だけ変えるのって私は嫌い。ま、それぞれ事情は理解できなくもないのですがね。

なお、最初に事情があってと書きましたが、サインインしていないと動かないクライアントソフトを自動起動させたかったのが、その事情です。

仮想化に対応しているソフトなのに、クライアントソフトの起動が動作前提で、サインインしていないとダメっていうのは、なんだか片手落ちって気がしてなりません。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

Windows10 Creators Updateが動いた結果、高速スタートアップが再開された

■ Windows10 Creators Update

先週の金曜日、帰宅しようとしてシャットダウンをしようとしたら終了メニューにWindowsUpdateの通知が届いています。

「更新してシャットダウン」にして、後は来週にしようとしたのですが手が滑って「更新して再起動」を選んでしまった結果、これが終わらない。

後日知ったのですが、Windows10 Creators Update とやらに更新されたらしいです。そういえば、ちょっと変わったWindowsUpdateの通知が来ていた様な気がしますが、少し前にWindows10に変えたばかりということもあって、そういうものかと思ってスルーしてました。

結構高スペックなマシンなのですが、30分以上待つ羽目になりました。

■ 何か変

週明け、パソコンの電源を入れてWindowsにログインしようとすると、テンキーから数値が入力出来ません。NumLockは自動的にONになるように設定していた筈(Windowsで起動時に自動的にNumlockをオンにする)なのですが、これは一体・・・

その時は色々と仕事が詰まっていたこともあって見なかったことにしたのですが、ふと気が付くとグループポリシーオブジェクトに登録したスタートアップスクリプト(Windowsで終了時に処理を実行したい)も実行されていないようです。

まさかと思って、電源オプションの設定を見ると、高速スタートアップが有効になっています。
Windows10 Creators Update - 1

・・・おい!

■ 後書き

いや、分からないわけじゃない。大規模なアップデートをするなら環境設定を初期化した方が安全だってのは分かる。

でも、OSが標準で提供する機能を使っているのに、それを無視するってどういう了見だよ?

愚痴ってもしょうがないので高速スタートアップを無効にしましたが、何だか釈然としません(いや、いつものことなんだけどさ)。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

FTPのコマンド実行でファイルをアップロード出来ない(Windows2012)

■ FTP

PowerShellからFTPでサーバーに接続して、ファイルをアップロードしようとするとエラーになりました。
FTPが動かない - 1

FTPで接続自体は出来るけど、データ転送でエラーになる。そしてエラーコードが425ってことは、どっかで通信が止まっているかな?

■ Windowsファイアウォール

Windowsサーバで通信が通らないときに最初に疑うのはWindowsファイアウォールです。っていうか、間違いなくこいつが原因。

最初は、FTPで使うポート(20、21)辺りを開放すれば良いのかと思ったのですが、その設定を追加しても結果が変わらないので、FTPのプログラム自体を許可することにしました。

「コントロール パネル」 - 「システムとセキュリティ」 - 「Windows ファイアウォール」を表示します。

Windows ファイアウォールを介したアプリまたは機能を許可」をクリック。
FTPが動かない - 2

「別のアプリの許可」をクリック。
FTPが動かない - 3

「参照」をクリック。
FTPが動かない - 4

「C:¥Windows¥System32¥ftp.exe」を選択して「開く」をクリック。
FTPが動かない - 5

「追加」をクリック。
FTPが動かない - 6

「OK」をクリック。
FTPが動かない - 7

この設定後、FTPを実行するとアップロードが出来るようになりました。
FTPが動かない - 8

■ 後書き

万全を期すなら、32bitアプリで使用するFTP.exeの方も許可した方が良いかと思います。場所は「C:¥Windows¥SysWOW64¥ftp.exe」です。

なお、全力でスルーしたのですが見ての通り文字化けが酷いです。文字コードが違うのかとも思ったのですが、どちらもshift-jisのようだし、対応方法が分かりませんでした。

本当は、折角のPowerShellなんだし「Invoke-WebRequest」辺りに書き換えた方がスッキリする気もするんですけどね。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

PowerShellでファイルのタイムスタンプを一括変更

■ jsp

とあるシステム開発で、基準日以降に更新されたファイルの一覧を抽出する処理があるのですが、サーバー移行とか色々とあってファイルの更新日時が書き換わってしまいました。

さて、どうやって復元しましょうかね。

■ 取得

更新日付の取得は、「Get-ItemProperty」コマンドレットで出来るようです。

「aaaa.ps1」というファイルの更新日付を取得してみます。
PowdrShellで更新日付を変更 - 1


PS D:¥> Get-ItemProperty aaaa.ps1


ディレクトリ: D:¥


Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2017/03/14 14:28 569410 aaaa.ps1


PS D:¥> (Get-ItemProperty aaaa.ps1).LastWriteTime

2017年3月14日 14:28:39


PS D:¥> (Get-ItemProperty aaaa.ps1).LastWriteTime.ToString('yyyy/MM/dd HH:mm:ss')
2017/03/14 14:28:39
PS D:¥>


単純に実行、LastWriteTimeを追加、ToStringで整形と試してみましたが、良い感じで取得できそうです。

■ 変更

更新日付を変更するには、「Set-ItemProperty」コマンドレットを使います。実行して、再取得してみたのですが上手いこと更新日付が変わってくれました。
PowdrShellで更新日付を変更 - 2

PS D:¥> Set-ItemProperty aaaa.ps1 -Name LastWriteTime -Value '1999/07/19 21:35:10'
PS D:¥> (Get-ItemProperty aaaa.ps1).LastWriteTime.ToString('yyyy/MM/dd HH:mm:ss')
1999/07/19 21:35:10
PS D:¥>


■ 後書き

ちなみに、作成日付は「LastWriteTime」の部分を「CreationTime」に変えるだけで同じことが出来ました。

最初の話に戻りますが、更新日付を書き換えたいファイルって数百件あります。最初はループ処理でも作ろうかと思ったのですが、面倒になってファイルの数だけ「Set-ItemProperty」を書き込んだスクリプトを作って実行することにしました。そのスクリプトが「aaaa.ps1」だったりします。

要件が「基準日以降に更新されたファイル」で、基準日がコロコロ変わるものでもなかったので、一括変更で十分だったのです。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

Windowsのスタートアップ/シャットダウンスクリプトが実行されない

■ スクリプト実行問題

前回、Windows10のgpedit.mscを使用してパソコンの電源ON/OFFの時に自動的にスクリプトを実行される記事を書きました(Windowsで終了時に処理を実行したい)。

なのですが、どうも動いている形跡がありません。テストのときには問題なく動いていたのですが、これは一体・・・

何かヒントがないかと思って、電源を入れた辺りのログ見ていたら、何やらスリープ状態から再開とか出ています。
起動スクリプト動作問題 - 1

操作としては、こうやってシャットダウンしていました。改めて、この方法でシャットダウンしたのですが結果は変わらず。
起動スクリプト動作問題 - 2

Windows10(8からだったか?)の頃から、電源OFFの時の動作がスリープになるようなことは聞いた覚えがありますが、まさかこれが原因なのか?

上記のシャットダウンをShiftキーを押しながら実行すると、完全にシャットダウンされるらしいので試してみたのですが、そうすると処理が動いてくれました。

毎回Shiftキーは辛いので、高速スタートアップを無効にしました(手順は、過去の記事を参照:Windowsで起動時に自動的にNumlockをオンにする)。起動/終了処理が若干遅くなりましたが、私のパソコンはSSDなので大差ありません。これで良しとしましょ。

■ 後書き

それにしても、これってバグの一種じゃないかと思います。よく言っても考慮不足。

いつかのNumLockの時も同じような現象が出ましたが、明示的にシャットダウンの操作として設定した内容が、シャットダウンという操作をしても反映されないというのは変だと思います。

将来的にパッチで直るなら良いのですが、多分、このままなのでしょうね。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop