2012年8月21日火曜日

[windows] システム構成ユーティリティでできること(msconfig)

[windows] システム構成ユーティリティでできること(msconfig)


Windows付属のシステム構成ユーティリティを使えば、以下の設定が簡単にできます。

  • Windows起動オプションの設定
  • ブートローダの設定の確認&変更
  • サービスの起動制御
  • スタートアッププロセスの確認&変更

それぞれの画面は以下のようになっています。画面はWindows XPでのキャプチャですが、Windows Vista, Windows 7でも同等機能を利用可能です。

システム構成ユーティリティの起動方法


  1. スタートメニューから[ファイル名を指定して実行]を選択
  2. msconfig.exeを入力して[OK]

Windows起動オプションの設定

Windows起動時の挙動を切り替えられます。

ブートローダの設定の確認&変更

複数のOSをインストールしているときのブートローダの挙動を切り替えられます。
CドライブにXPをインストールしている状態で、DドライブにWindows7をインストールした場合、後にインストールしたWindows7がデフォルト起動となります。何かの問題があってデフォルトをXPに戻したい、といったケースではこの画面のdefaultの設定を変更すればOKです。


サービスの起動制御

「コンピューターの管理」ツールでも似たことができますが、この画面では「Microsoftのサービスを全て隠す」のチェックボックスがある点が異なります。サードベンダーのアプリ・ツールをインストールしたところWindowsの挙動がおかしくなった!といったケースには、そのベンダーのサービスを実行させないでOSを起動させる、といったことが容易にできます。


スタートアッププロセスの確認&変更

ウィルスチェックソフトの様に、スタートメニューの中から辿ることができる「スタートアップ」の中に表示されないスタートアッププロセスを含めて全てのプロセスを一覧できます。「場所」を見れば「共通スタートアップ」なのか「個人のスタートアップ」なのか、もしくは、「レジストリ」なのか、どこの設定で起動されるようになっているのかが分かります。チェックボックスを外せばスタートアップをスキップできます。

その他

これら以外にもいくつか機能があります。詳細はmicrosoftのサイトでチェックを。

2012年7月23日月曜日

[blogger] ブログを引越ました(その2)

いままでライブドアブログを利用していましたが、Bloggerに引っ越すことにしました。

ゴテゴテと広告が表示されないのが良いです。

これまで引っ越したいなぁと思いつつ、実行に移せていなかったのは、無料版ライブドアブログにはエクスポート機能が無いようで、エントリの移行手段がよく分からなかったから。

今日何気なしに「ライブドア blogger 移行」でググったところ、まさに探していた情報が見つかりました。
http://pbrocky.blogspot.jp/2011/08/livedoorblogmtexport.html
ライブドアブログのトップページ表示カスタマイズ機能をJSでカスタマイズして、MovableTypeフォーマットで表示する、という荒技(?)が紹介されています。
念のためにデフォルトのJSを保存して、恐る恐る「MovableType形式出力用のブログテンプレート」を設定し、トップページを表示させたところ、ばっちり変換データが表示されました!
ただchromeだとBODY:の内容だけがコピペできず一瞬アセりましたが、IEだと問題なくコピペできて、指示通りここでBloggerのatom形式に変換。無事に移行できました。


今後はこちらを更新していきますのでよろしくお願いします。
http://kurokawh.blogspot.jp/

[ssh][linux][cygwin] ssh-agentの重複起動を防ぐには

ssh, sftp, scp でパスワードの入力を省略するにはssh-agentを使います。

このssh-agentは便利なのですが、何も考えずに利用しているとターミナル毎に個別にssh-agentを起動する羽目になり、気がつくとssh-agentが複数動いている、という状況に陥ってしまいます。

これはssh,sftp,scpなどのクライアントツールが、ssh-agentを利用するために2つの環境変数(SSH_AUTH_SOCKとSSH_AGENT_PID)を参照しているためです。逆に言うと、これらの環境変数をターミナル間で共有することができれば、ssh-agentをその都度起動しなくてもよくなり、共有することができます。


このブログで見つけたシェルスクリプトを.bashrc(もしくは.tcshrc)に追加することで、ターミナル起動時(=シェル起動時)に以下のお世話をしてくれます。

  • ssh-agentが起動済みかどうかをチェック
  • 未起動であれば起動
    • 2つの環境変数を$HOME/.ssh/environmentに記録
    • その後、ssh-addコマンドも実行してパスフレーズ入力を促す
  • 起動済であれば、2つの環境変数の設定を引き継ぐ
.bashrcへの追加スクリプト(前述ブログのまま)

SSH_ENV=”${HOME}/.ssh/environment”
SSHAGENT=/usr/bin/ssh-agent
SSHAGENTARGS=”-s”

function start_agent {
    echo -n “Initialising new SSH agent…”
    ${SSHAGENT} | sed ‘s/^echo/#echo/’ > “${SSH_ENV}”
    echo succeeded
    chmod 600 “${SSH_ENV}”
    . “${SSH_ENV}” > /dev/null
    ssh-add
}

# Source SSH settings, if applicable

if [ -f “${SSH_ENV}” ]; then
    . “${SSH_ENV}” > /dev/null
    #ps ${SSH_AGENT_PID} doesn’t work under cywgin
    ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
        start_agent;
    }
    if [[ -z `ssh-add -l | grep “${HOME}/.ssh/id_”` ]]; then
        ssh-add
    fi
else
    start_agent;
fi


.tcshrcへの追加スクリプト(前述ブログのbashスクリプトをtcshスクリプトにポート)

setenv SSH_ENV "$HOME/.ssh/environment"
setenv SSHAGENT `which ssh-agent`
setenv SSHAGENTARGS "-c"

if ( -f "${SSH_ENV}" ) then
    source "${SSH_ENV}"
    ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent > /dev/null
    if ( $status == 1 ) then
        #echo "no agent found."
        goto call_start_agent
    endif
    ssh-add -l | grep "${HOME}/.ssh/id_" > /dev/null
    if ( $status == 1 ) then
        #echo "no key added."
        goto call_ssh_add
    endif
else
    goto call_start_agent
endif
goto exit_ssh

# Source SSH settings, if applicable
call_start_agent:
    echo -n "Initialising new SSH agent... "
    ${SSHAGENT} | sed 's/^echo/#echo/' > "${SSH_ENV}"
    echo succeeded
    chmod 700 "${SSH_ENV}"
    source "${SSH_ENV}"

call_ssh_add:
    ssh-add

exit_ssh:

2012年6月25日月曜日

[memo] MBRが壊れた状態からの復旧方法


唐突ですが、MBRが壊れた状態からの復旧方法をまとめておきます。
# 正確には壊れたのではなく、お馬鹿な勘違いで自らMBRを消してしまったのですが・・・。

簡単にコトの経緯を。
  1. Windows XPとLinuxのデュアルブートにしていた家のPC
  2. 最近はLinuxを使うことがなくなったので、Linuxパーティションを削除しよう
  3. Windowsだけになったことだしブートローダも消しちゃえ(ここが勘違いの発端)
  4. 適当にネット検索してろくに内容を確認しないで実行した結果、MBRを0クリア(お馬鹿・・・)
  5. OS選択画面なしでWindowsが起動されることを期待してPC再起動したが、起動にしっぱい(あたりまえ・・・)
  6. 焦ってネットで情報を集めてなんとか復旧<=いまここ
ddコマンドでMBRを0クリアしてしまったために、fdiskコマンドでパーティション一覧が出なくなりました。
このときは冷や汗が出ましたが、データ自体は残っているはず、と信じて復旧方法を検索。
早まってWindows再インストールなどしなくてよかった・・・。

ということで、復旧の手順・参考にしたサイトをまとめておきます。

復旧に使ったツールはTestDisk です。

このツールはMBRやPBR等の知識を持っていなくても、メニューに沿って操作するだけでほぼ自動でMBRを復旧してくれるありがた~いものでした。
TestDiskの詳細は以下のサイトが非常に参考になりました。


ブートしなくなったPCでTestDiskを動作させる環境として、PartedMagicというフリーのツールがあることを発見し、それを利用しました。
CDにisoイメージを焼いてブートさせるとXが起動し、qpartedやその他諸々のツール群を利用できます。
以前は製品として売られていたPartition Magic相当の機能がフリーソフトとして提供されているそうで、開発者・コントリビューターの方々には本当に感謝したいです。
もちろん、参照させていただいた情報を提供者・ブロガーの皆様に も感謝ですね。

ということで、この情報が自分と似た状況にハマってしまった方のお役に立てれば幸いです。



2012年1月18日水曜日

[windows] 同名のプロセスを一括強制終了する方法

[windows] 同名のプロセスを一括強制終了する方法

メモ。
以下の記事がまさに該当。

http://www.itmedia.co.jp/enterprise/articles/0809/09/news021.html

taskkill というコマンドで実行できるらしい。

たとえば開発において。
Visual Studio のプロセスが何個も残ってしまっている場合、
ひとつずつ強制終了させていくのは非常に面倒です。

そんなときには以下のコマンド一発できれいにな状態に。
> taskkill /f /im devenv.exe

(2012/02.21追記) "/f" と "/im" が逆になっているとエラーになりました。