「PC/プログラム/開発」カテゴリーアーカイブ

Dimension2400Cメモリ増設

 いつの頃からか、自宅PCがとにかくモッサリした動きになった。
 ログオンにやたら時間が掛かるし、ログオンしてからもHDDがガリガリ動き続ける。
 アプリケーションの立ち上げもやたらのろい。
 調べてみたら、ログオン直後でメモリ使用量が368MB。
 メモリ256MBしか積んでないのにこれは致命的。
 どうりでHDDがうるさい訳だ。
 ディスクスワップしまくりですよ。
 ・・・という訳で、この状況をどうにかするべくメモリ増設に踏み切りました。
 いっそのこと買い換えたかったんだけど懐具合が・・・(泣
 自宅マシンDimension2400Cの最大メモリは1GB。
 ネット通販でメモリ相場価格を見てみたら、大分下がってますねー。
 これならMAX積んでも予算内だ。
 パソコン工房オンラインでノーブランドメモリを注文。
 DDR PC2700 512MBx2で5,920円也。
 さあ、動作の方はどうか・・・
 おおお、軽い軽い。
 起動は10秒程早くなったし、ログオン後の動作も軽快。
 新しい窓ガンガン開いてもスパッと反応してくれるし、なによりHDDが静かになった。
 ノーブランドの安いメモリという事でちょっと不安もあったけど今の所問題なし。
 6千円でコレなら十分元は取れた感じ。
 あとはクソやかましいCPUファンをどうにかしなければ。
 問い合わせ出して2日目だけどまだ返答無し・・・おーいDELLさーん?

Windows2000Serverインストールでトラブル

 NECのExpress5800/GcにWindows2000Serverをインストールしようとしたらトラブル発生。
 何故今2000Serverなのかはおいといてください・・・色々あるのよ
 Windows2000ServerのCDから起動
 ↓
 setup is inspecting your computer s hardware configuration…
 で固まる。
 社外品のRAIDボードが挿さってるんでおそらくそれが原因ですね。
 で、上記メッセージが表示されるタイミングでF5キーを押すとHAL選択画面が・・・
 表示されない。
 どうやらF5キーを押すタイミングがシビアな模様。
 しょうがないのでCDの\bootdisk\makebootで起動ディスクを作成。
 つけててよかったFDドライブ。
 USBメモリが主流になってすっかり忘れ去られたFDだけどこういう時は必要を感じますね。
 作ったFDで起動・・・しない。
 あれぇ?BIOSではFDドライブ認識してるしBootOrderもFDが先頭なんだけど。
 試しにFDドライブを外して別マシンに装着してみると正常認識。
 どうやらFDドライブが壊れているという訳でもないらしい。
 しょうがねーNECに問合せだー
 ・・・サポートサイトが見つからない・・・
 色々検索してやっとNEC ファーストコンタクトセンターを発見。
 (ちなみに、ユーザー登録しないと使えない)
 問合せを入力して送信、っと。
 NECサポートは初めて使うんですけど対応はどんなもんかな?
 なんだか最近トラブルシューティングばっかりだ・・・
 ※後日記
 返答は翌日来ました。
 CD-ROMからブートしてくださいと。
 いやソレでうまくいかないからFDで起動しようとしてんだけどね・・・
 ちなみに「setup is inspecting your computer s hardware configuration…」の時に押すキーはF6だそうです。
 内容はともかく、とりあえずすぐに返答が来たのは好印象。

唸りを上げるCPUファン(DELL Dimension2400Cの場合)

 自宅で使ってるPCのお話。
 機種はDELLのDimension2400C。
 CPUはCeleron(旧)という今となってはショボいマシンなんですが。
 Web見たりメールしたりといった程度のスローな使い方ならまだまだ現役で使えてました。
 ところが先週末辺りから、電源入れた直後から轟音と共にCPUファンが全力で回り出すようになった。
 「あー、もう夏だしねー」
 って違うわボケぇ!!少
 なくとも去年の夏はこんなんじゃなかった。
 エアコン無しの自宅PC部屋においても、十分に静音動作してくれていたんだけど。
 ヒートシンクまわりにホコリが溜まってエアが流れなくなっているのだろうか?
 と考え、とりあえず筐体を開けて掃除。
 Dimension2400C内部
 そんなにホコリはたまってなかった。
 電源再投入・・・変化無し。
 相変わらず電源ONと同時にCPUファンが唸りを上げる。
 次に疑うはマザーボードの温度センサか。
 Vectorから適当なモニタリングソフトを落としてきて使ってみる・・・CPU温度が表示されない。
 アレ?
 素直にBIOS覗くか・・・BIOSに温度監視項目が無い。
 アレアレ?


 困った。
 助けてーGoogle先生~
 ・・・どうやらDELLのPCは独自仕様で、マザーボードに温度センサーは載ってないらしい。
 CPUファンの型番を調べてみる。
 DB9733-12HBTL
 型番はDB9733-12HBTL。
 よく見ると、CPUファン内部に温度センサらしき物が見える。
 CPUファン自体に温度センサが付いてて、回転数制御もファン自身が行っているようだ。
 温度センサ?
 たぶんコレがイカれたんでしょう。
 型番でググってみると・・・
 出ました、やはり独自仕様で一般には流通していないモデルである事が判明。
 とりあえずDELLのサポートに問い合わせ。
 保障期間切れてるから結果は期待しないでおこう。
 同時にネットのパーツ屋やヤフオクに出ていないか調べてみる。
 ヤフオクの平均落札相場は4千円前後・・・高くね?
 とはいえPC買いなおすのもアレだしね・・・あと2年は使うつもりでいたので。
 さて、どうしたものか?
 ※後日追記 解決編

Administratorのパスワード不明なPC

 職場に1台、長らく誰も触っていないPCが。
 案の定ログインパスワードを知ってる人が誰もいない。
 使って無いって事は廃棄してもいいって事なんだけどなんだかもったいない。
 って事で空いてる時間にophcrack使ってみた。
 ネットで落としてきたISOイメージをCDに焼くだけでパスワード解析用ブータブルCDの出来上がり。
 早速件のPCに試してみる・・・
 10分程でAdministratorのパスワード判明。
 うわー便利だけど怖いなぁコレ・・・

ドメインコントローラーのリプレース(2000→2003)

 会社の新サーバーセットアップメモ。
 目的:
 Windows2000Serverドメインコントローラー(兼ファイルサーバー・プリントサーバー)をWindowsServer2003にリプレースする。
 ドメインコントローラーのコンピュータ名、その他ネットワーク共有資源名は全て旧と同一にする。
 ドメインコントローラー移行についてのドキュメントはMSのKBに色々あるんだけど、どれもが難解すぎてなかなか理解できない・・・
 そんな中
 ■EZ-NET:ドメインコントローラを Windows Server 2003 に置き換える
 を発見。
 これはわかりやすい。
 文書を読み進めながら順を追って作業。
 引っかかった点が1点。
 新サーバー(Windows2003Server)を既存ドメインのドメインコントローラーとして追加する際に以下のエラーが。

>次のエラーにより、操作に失敗しました:
>
>Windows Server 2003 Server のインストール用にフォレストが準備されていないために Active Directory インストール ウィザードを続行できません。
>adprep コマンドライン ツールを使ってフォレストおよびドメインの両方を準備してください。
>Adprep の使用法についての詳細は、Active Directory ヘルプを参照してください。
>
>”ソース フォレストの Active Directory スキーマのバージョンはこのコンピュータの Active Directory のバージョンと互換性がありません。”

 おかしいな、adprepは実行済みなんだけど・・・
 と、MSのKB917385をよく読んでみると

>この問題を解決するには、スキーマ マスタで Windows Server 2003 R2 のインストール ディスク 2 から adprep.exe /forestprep コマンドを実行します。
>コマンドを実行するには、Windows Server 2003 R2 のインストール ディスク 2 を挿入して、次のコマンドを入力します。
>Drive:\CMPNENTS\R2\ADPREP\adprep.exe /forestprep

 コレだあああ
 さっきはDisk1のi386以下にあるadprep使ってた・・・
 ちゃんとDisk2を使わないとダメなんですね。
 2000ServerでDisk2のadprepを実行、2003Serverをドメインコントローラーに追加・・・成功!
 dcpromoコマンドで2000Serverをメンバサーバーに降格して、ドメインコントローラーの移行完了。

​ 2000Server(旧)をネットワークから切り離し、2003Server(新)のコンピュータ名とIPアドレスを旧サーバーの物に変更・・・
 またエラーが。

>コンピュータ名を “HOGE” に変更中に次のエラーが発生しました:
>アカウントは既に存在します。

 あれ?
 ActiveDirectoryユーザーとコンピュータ-ComputersからはHOGE(旧)サーバーは削除済みなんだけど・・・
 よくよく調べてみたら
 Active Directory サイトとサービス
 -Sites-Default
  -First-Site-Name
   -Servers
 にHOGEサーバーの名前が残っていました。
 ポチっと削除。
 無事コンピュータ名の変更に成功。
 仕上げに旧サーバから共有フォルダのデータをコピーし、プリンタをセットアップ。
 共有資源のアクセス権限を設定して、クライアントパソコンから共有資源が使える事を確認。
 無事にサーバー移行完了!!
 はー疲れたぜ。

引越し

 本日、職場の事務所が移転。
 引越しとはいってもほとんど業者任せなので楽チンでしたがね。
 移転のついでに社内の機器もグレードアップしたんですよ。
 ネットワークは全てギガビット対応に。
 サーバーは新品が3台も入った。
 電話・LANは複合配線、全て19インチラックに収まってすっきり。
 配線のメンテもパッチパネルで一括管理。
 スマートだ・・・
 パッチパネル
 齢30にして、初めて本格的ラックを使いました。
 ちょっと嬉しい。
 ラックの中のウネウネした配線を見るとなんだかワクワクしてしまうのは職業病でしょうかね。

SQLServer-全テーブルのデータ件数を取得する

 全てのテーブルのデータ件数を取得するT-SQLスクリプト書いたのでメモ。
 DB移行なんかの時の検証用にでも。
 SQLServer7.0で動きました。
 単にテーブル名取ってきてCountした結果を一時テーブルに突っ込んでるだけです。

–すべてのユーザーテーブルのデータ行数を一覧表示する

–テーブル名(サイズは適当です。必要に応じて増やしてね。)
DECLARE @TABLE_NAME NVARCHAR(100)

–集計用SQL(SQL文字列用です。必要に応じてry)
DECLARE @SQL NVARCHAR(100)

–件数取得用
DECLARE @ROW_COUNT int

–集計結果保存用一時テーブル
CREATE TABLE #T_RESULT(
TABLE_NAME NVARCHAR(100),
ROW_COUNT int
)

–sysobjectsに保存されているユーザーテーブルをすべて取り出すカーソル
DECLARE C_TABLES CURSOR FOR
  SELECT name
  FROM sysobjects
  WHERE (type = ‘U’)

OPEN C_TABLES

FETCH NEXT FROM C_TABLES INTO @TABLE_NAME

WHILE @@FETCH_STATUS = 0
BEGIN
  –データ件数集計用SQL文字列の生成
  SET @SQL = N’SELECT @ROW_COUNT = COUNT(*) FROM ‘ + @TABLE_NAME

  –行数をOUTPUTするSQL実行
  EXEC SP_EXECUTESQL @SQL, N’@ROW_COUNT int OUTPUT’, @ROW_COUNT OUTPUT

  –結果を一時テーブルにINSERT
  INSERT INTO #T_RESULT VALUES (@TABLE_NAME, @ROW_COUNT)

  FETCH NEXT FROM C_TABLES INTO @TABLE_NAME
END

CLOSE C_TABLES
DEALLOCATE C_TABLES

SELECT * FROM #T_RESULT ORDER BY TABLE_NAME


 ※後日追記
 人力検索にサンプルソースが。

 ※追記
 SQLServer2005以降はこちらにサンプルが!

SQLServer2005関連トラブル-08S01[DBNMPNTW]接続が切断されました。

今日は休日出勤して客先のサーバー移行に立ち会ってきました。
OSはWindowsNT4.0から2003Serverに。
DBはSQLServer7.0から2005に。
最新の環境になってめでたしめでたし・・・と思ったらやっぱりトラブルが。
VB6で作られたクライアントのプログラムからSQLServerに接続できない。
エラーメッセージは

08S01[DBNMPNTW]接続が切断されました。

あうあうあ。

​状況を分析してみると・・・
WindowsXPのクライアントからは接続OK。
Windows2000のクライアントからは上記エラーで接続不可。
実行ファイルは両方同じ。
となると実行ファイル以外の部分に原因があるのだな!
ということでいろいろ調べたてみた結果
Windows2000のクライアントにMDAC2.8をインストールすることで無事解決しました。
エラーメッセージでググってもなかなか同様の事例が無かったので焦ったよ。
しかし無事に動いて良かった。
日曜にがんばった甲斐があるってもんです。
・・・エイプリルフールに気の利いた小ネタでも披露したいのにそんな余裕がまったく無かった日曜日。