2016/09/23

BIOS更新失敗は CMOSクリアでは修復出来ない

最近 BIOS のアップデートをしていて、アップデートに失敗した時のことが気になったので調べてみた。その時、CMOSクリアを勧めるページを多く見かけた。しかし、CMOSクリアでは BIOSアップデート失敗の修復は出来ない。その理由をまとめてみた。


BIOS とその設定の保存


BIOS は PC に電源が入るとすぐに起動し、接続されているハードウェアの情報を集める。そして OS をロードし、集めたハードウェアの情報を OS に渡す。BIOS はその性格上、初めのうちは書き換え (アップデート) を想定しておらず、ROM (読み出し専用不揮発性メモリー) に保存されていた。これがその後、Flash Memory (読み出し書き込み可能な不揮発性メモリー) に記憶されるようになった。また、80286 CPU 登場以降は BIOS の設定は不揮発性BIOSメモリー (CMOS-RAM) に保存されるようになった。(参照:1,2) 80386 CPU 登場以降は CMOS-RAM に RTC (real-time clock) が統合され、現在の時刻も保存されるようになった。(参照:7) 現在ではこの CMOS-RAM はマザーボード上の Southbridge (サウスブリッジ) に組み込まれており、ほとんど単体で見ることは無いだろう。(参照:2) 


なぜ CMOSクリアで BIOSアップデート失敗の修復が出来ないのか


CMOSクリアを実行すると CMOS-RAM に保存したデータは消去され、CMOS-RAM は工場出荷時の状態に戻る (初期化される)。これによって CMOS-RAM に保存されている BIOS の設定も消去される。つまり、CMOSクリアによって、BIOS の設定が消去されるのであって、BIOS が初期化される分けではない。そもそも BIOS は COMS-RAM とは別の不揮発性メモリーに保存されているので、CMOSクリアでこのメモリーは初期化出来ない。


ではなぜこの様な誤解が生じるのか。


”BIOS の設定の初期化” のことをしばしば ”BIOS の初期化” と表現している事があるが、これは上記のとおり正しくない。(参照:8) ”BIOS の初期化” という表現を見た人たちが

  BIOS の初期化 → BIOS を工場出荷時の状態に戻す → BIOS 書き換え失敗の修復
  
と誤解したのではないか。


参照

1. BIOS (jap.)
2. BIOS (en) 
3. ROM (Read only Memory)
4. Flash Memory
5. 不揮発性メモリー
6. 不揮発性BIOSメモリー 
7. CMOS-RAM
8. 設定初期化 (CMOSクリア) 

2016/09/17

HP nx7300  BIOSアップデート(Boot-Image使用)

FreeDOS を使ってアップデート

HP nx7300 の BIOS は FreeDOS を CD, USBスティックまたはフロッピーディスクから起動してのアップデートできる。CDを使ってアップデートする場合には FreeDOS に BIOS が内包されているので、起動後すぐにインストール出来る。この方法はインストールされている OS によらずにアップデートできる。(USBスティック,フロッピーディスク似ついては未確認だが同様と考えられる。)

準備

  1. ここからアップデートファイル sp40746.exe をダウンロードする(ROMPaq for HP Notebook System BIOS (68YGU) – FreeDOS Bootable Media F.0E をクリック)。
  2. sp40746.exe を展開する。
  3. 展開すると3つのフォルダ6つのファイル
    • FreeDOS
    • ISO
    • Rompaq
    • HPUSBFW.exe
    • floppy.exe
    • FirmwareUpdate.exe
    • KERNELS.ZIP
    • cd.html
    • WSSP40746.rtf
     が出てくるので、フォルダ ISO の中にあるファイル rom.iso をCDに焼く。

アップデート

  1. BIOSの設定で HD より先に CD をブートする(起動する)ようにしておく。
  2. rom.iso を焼いた CD をドライブに挿入して nx7300 を再起動する。
  3. 現れた画面から ↑,↓ を使って Update を選択して Enterキーを押す。
  4. 画面の指示にしたがう。
  5. アップデートが終わったら Exit を選択して Enterキーを押す。
  6. 画面の指示にしたがって Power off。

2016/09/13

AMILO L7300T  BIOS のアップデート (Boot-Image 使用)

AMILO L7300T のアップデートについて

AMILO L7300T のアップデートファイルは
  • DISC Image (フロッピーディスク用)
  • ISO CD-Image (CD-ROM用)
の2種類があり、その両方共に FreeDOS が含まれている。したがって
  • フロッピーディスク、または CD から FreeDOS を起動してアップデートする
ことになる。この方法は AMILO L7300T に Windows系以外の OS がインストールされている場合にも通用する。DISC Image を使ったアップデートのやり方はダウンロードページに記されている。ここでは ISO CD-Image を使ったアップデートのやり方について書いた。(補足2) アップデートの手順は以下のとおり。分かりにくいところは青の太字で書いてある。

準備

  1. ここからアップデートファイルのうち、
    • Title: BIOS Flash (ISO CD-Image) - AMILO L7300     Version: 1.0G
    を ダウンロードしてくる。 
  2. ダウンロードしたファイルをCD-ROMに焼く。(ISOイメージの書き込み方)
    • 注意 OS から CD の中身は確認できないCDを焼くことに成功していれば、CDを入れたまま再起動すればアップデートできる。 
  3. BIOS からCDドライブのブート順位ががハードディスクドライブより高いことを確認する。

 

アップデート

  1. 焼いたCDをCDドライブに入れて再起動する。
  2. 起動して画面に A:\> と出たら flash.bat と入力して Enterキーを押す
  3. アップデートが終了したら画面の指示にしたがって、任意のキーを押す。


補足

  1. フロッピーディスク用の Image を展開して CD に焼いてもアップデートは出来ない。この場合、FreeDOS は立ち上がるが、コマンドを入力しても ”bad command” とエラーがでてしまう。
  2. ISO CD-Image の説明がない。ISO CD-Image の説明を見てもフロッピーディスク用の Image を使う場合についての説明が書かれていた。これではコマンドや拡張子の知識が無いと戸惑うだろう。何をすればいいか分かったのはDC から FreeDOS を立ち上てからだった。dir コマンドで中身を確認すると、以下の8つのファイルがあることが確認できる。それらをまとめると、
    1. kernel.sys, comanndo.com, autoexec.bat
    2. phlash16.exe, flash.bat, flashabl.rom
    3. readme.bat, readme.txt 
    の3つのグループに分けられる。このうち 1. に属するファイルは FreeDOS に関係するもの、3. は説明。つまり、アップデートに関係するファイルは 2. に属する3つのファイルということになる。ここから CD からアップデートする場合も flash.bat を実行すればよいであろうと推測できる。

2016/09/12

AMILO M1425  BIOSのアップデート

AMILO M1425 のアップデートについて

アップデートは OS が Windows系かそれ以外かで多少違ってくる。OS が Windows系以外の場合は AMILO L7300T の BIOS のアップデートで紹介します。

準備

  1. ここからアップデートファイル、FTS_BIOSWindowsFlashEXEAMILOM1425M7425_108c_1002800.exe,を ダウンロードしてくる。 
  2. (OS が Windows系の場合) Windows を起動し、新しいフォルダを作る。そこにダウンロードしたファイルのみをコピーする。
  3. (OS が Windows系以外の場合) ダウンロードしたファイルをFAT32にフォーマットしたUSBスティックにコピーする。FreeDOS 1.0 を焼いた Live-CD を用意する。

 アップデート


OS が Windows系の場合
- AMILO M1425 を起動する。
- FTS_BIOSWindowsFlashEXEAMILOM1425M7425_108c_1002800.exe をクリック。

OS が Windows系以外の場合
- ダウンロードしたファイルコピーしたをUSBスティックを AMILO M1425 にさす。 
- AMILO M1425 を FreeDOS 1.0 を焼いた Live-CD から起動する。
- 起動したら c: (私の場合) と入力して Enterキーを押す。
- FTS_BIOSWindowsFlashEXEAMILOM1425M7425_108c_1002800.exe をクリック。

注意


BIOSアップデート用のファイルは
  1. FTS_BIOSDOSFlashDISCImageAMILOM1425M7425_108c_1002798.exe
  2. FTS_BIOSFlashISOCDImageAMILOM1425M7425_108c_1002799.iso
  3. FTS_BIOSWindowsFlashEXEAMILOM1425M7425_108c_1002800.exe
の3種類がある。
このうち 3. を使用する必要がある。 1. はフロッピーディスク用のイメージファイルで、2. は CD-ROM用のイメージファイルだ。1. を展開してUSBスティックにコピーしても ”Bad commando” とメッセージが出てインストール出来ない。 (たわしは誤って 1. をダウンロードしたためにどつぼにはまった。) 2. は FreeDOS を起動するのに CD-ROMドライブを使用しているので利用出来ない。

2016/09/07

Acer Aspire 3623  BIOSのアップデート (FreeDOS 使用)

freeDOS 1.0 を使ってAcer Aspire 3623 のBIOSをアップデートする。

用意

  1. CDに焼いた freeDOS 1.0 (Acer Aspire 3623 にはFDD(フロッピーディスクドライブ)がない。)
  2. ここからBIOSをダウンロードして展開しておく。(製品モデルは Acer Aspire 3620)
  3. Cドライブの直下に”BIOS”と言う名前のフォルダをつくり、展開したファイルをコピーしておく。(フォルダ名は任意でいい。まt、展開したファイルをUSBスティックにコピーしても freeDOS 1.0 からは認識されなかった。)

BIOSのアップデート

  1. Acer Aspire 3623 を起動する。CDに焼いた freeDOS 1.0を挿入し、再起動。(参照1)
  2. ここの "BIOS のアップデート" の1~4 を参考に freeDOS 1.0 を起動する。
  3. c: と入力してenterキーをおす。(Cドライブに移動)
  4. cd BIOS と入力してenterキーをおす。(BIOSフォルダ内に移動)
  5. AG1A106.bat と入力enterキーをおす。(アップデートが終了するのを待つ。)
  6. Acer Aspire 3623 を再起動する。

備考


既にお気づきの方のいるとは思うが、この Acer Aspire 3623 には Windows XP がインストールされたままだ。Windows XP は既にサポートを終了しているので、使用するべきではない。どうしても使用しなければならないときには Internet との接続は切断しておくべきだ。私の場合は Linux 上で作動しないデバイスをいじり倒すためにあえて Windows XP をそのままにしている。今回の目的はUSBスティックもFDも使えない環境でのBIOSのアップデートの方法を確かめることだった。しかし、Windows があるならセーフモードで管理者としてログインし、コマンドプロンプトから Batch File を実行してもいいのだろう。

参考


1. Ubuntu  BIOSのアップデート(K7S5A)
2. Acer ドライバとマニュアル

 


2016/07/04

モニタ-(BenQ FP91G+)の修理

PCの電源を入れたらモニターが映らない。モニターのスイッチを押し直しても反応なし。スイッチの所にあるLEDも点灯しない。


接続と通電の確認

  •  電源ケーブルがきちんと差し込まれていることを確認。 
    • 電源ケーブルがコンセントから抜けかかっていたり、モニタなどの機器に十分差し込まれていないために機能しないことはよくある。
  •  電源ケーブルを交換してみる
    • ケーブルが断線している事もある。”LANケーブルが断線してインターネットに接続出来ない。”なんて事もあった。
  •  別の電通しているコンセントに差し替える。  
    • コンセントに電気が来ていない事もある。”別のコンセントに差したら動いた。”なんて事もめずらしくない。
接続と通電には問題なかった。 LEDも消えているので、故障は電源部周辺と考えられる。 


モニターの分解

  1. 全てのケーブルを外す。                            
  2. 背面のカバーのを外す。
    1. モニターのスタンドを取り付けているネジ2本
    2. そのスタンドの下にあるモニターのネジ1本とその他のネジ4本(2本は隠しネジ。)
    3. モニター下部の凹みからマイナスドライバーを使ってカバーを外す。
  3. 基盤類を被っているアルミカバーを外す。
    1. 液晶ディスプレイと基盤を接続しているケーブルを抜く
    2. VGA端子とDVI端子の両脇にあるスペーサーを外す。
やはり電解コンデンサーのうち2つが膨張している。(基盤から取り除いた後撮影しました。)
これを交換する。


コンデンサーの交換

  1.  2つの基盤を接続しているケーブルを外し、電源基盤(左)を留めているネジを外す。
  2. 膨張している2つのコンデンサーを取り除く。
  3. 新しいコンデンサーをハンダづけする。

モニターの組み立てと通電

分解とは逆の順番でモニターを組み立て直すし、ケーブル類を接続して通電する。組み立てる前に通電する場合には高電圧に注意!(参照:1)

映りました。修理完了。 


修理について

今回は電解コンデンサーが膨張していたので、交換したら元通りに動いた。他にも
  • セラミックコンデンサーが焼ける
  • トランジスターが破損
  • ヒューズが飛ぶ
などの例があるようだ(参照:2、3)。目視で確認できない場合、テスターを使って各素子を検査する。また、ディスプレイやバックライトが破損したような場合、修理可能かどうかがポイント。部品交換の場合には費用がかかる。


参照 

1. Monitor oder Fernseher reparieren
2. パソコン液晶パネル修理
3. 液晶モニター dell S2209Wの分解修理
4. 不良電解コンデンサ問題
5. RDT232WX 修理3パターンの紹介 

2016/06/29

linuxBean 14.04  内臓HDDの自動マウント

LInuxBean 14.04 を使っていてちょっと困ったこと。それは内蔵HDDをマウントしてくれないことだった。12.04 まではマウスクリックでマウント(動的マウント)してくれていたけれど、14.04にアップグレード後はマウスクリックではマウント出来なくなった。

まあ内蔵HDDを使いたいときにコマンドを入力してマウントすればいいけど、出来ればマウスクリックまたは起動時にマウントしてくれるとありがたい。


起動時にマウントさせるには


PCが起動したときにデバイスをマウント(静的マウント)するには、/etc/fstab ファイルに記述すればいい。
/tec/fstab ファイルとはパーティション、内臓HDDやSSDなどのブロックデバイス、外付けHDDやUSBスティックなどの周辺機器をどうやってファイルシステムにマウントするかを記述するファイルだ。
今回のように内蔵HDDをマウントするには fstab ファイルに以下の1行を書き加えれいいだろう。

  UUID=3e6be9de-8139-11d1-9106-a43f08d823a6 /media/BackUp ext4  defaults  0  2


/tec/fstab ファイルの中身


まず、ファイルの中身をみてみよう。

  # /etc/fstab: static file system information.
  #
  # Use 'blkid' to print the universally unique identifier for a
  # device; this may be used with UUID= as a more robust way to name devices
  # that works even if disks are added and removed. See fstab(5).
  #
  # <file system> <mount point>   <type>  <options>       <dump>  <pass>
  proc            /proc           proc    nodev,noexec,nosuid 0       0
  UUID=f8aa0bd4-2fbd-41c4-8319-203f4167a51e / ext4 errors=remount-ro 0 1
  UUID=a575f293-cb40-44fa-8366-94287238b687 none swap sw      0       0
  /dev/fd0   /media/floppy0  auto    rw,user,noauto,exec,utf8 0       0
  UUID=3e6be9de-8139-11d1-9106-a43f08d823a6 /media/BackUp ext4 defaults 0 2


# で始まる行はコメント分である。
このファイルには各行にマウントされるパーティションやデバイスが一つずつ以下の6つのフィールド
      <file system>  <dir>  <type>  <options>  <dump>  <pass>
 によって記述されている。それぞれのフィールドはタブまたはスペースで区切られている。
  • <file system> マウントされるデバイスやパーティションの UUID*
  •                      また, /dev/cdrom や /dev/sda1 などそれらのデバイス名
      上の例では UUID=3e6be9de-8139-11d1-9106-a43f08d823a6
  • <dir> マウントポイント
    • 上の例では /media/BackUp
  • <type> マウントされるパーティションやデバイスのファイル形式
  •             指定できるファイル形式には ext2, ext3, ext4, btrfs, f2fs, xfs, hfsplus, tmbfs,             iso9660, vfat, ntfsなどがある。
      上の例では ext4
  • <options> 指定するマウントオプション。基本的なオプションは以下の通り。尚、2つ                以上のオプションを指定したい時にはコンマでつなぐ。
    • defaults   rw, suid, dev, exec, auto, nouser, async の7つのオプションを               指定することと同じ。
    • ro   読み込み専用でマウントする。
    • rw   読み書き可能でマウントする。
    • suid   SUID または SGID ビットの操作を許可する。
    • nosuid   SUID や SGID ビットの操作を許可しない。
    • dev   ファイルシステム上のデバイスを解釈する。
    • nodev   ファイルシステム上のデバイスを解釈する。
    • exec   バイナリデータの実効を許可する。
    • noexec   バイナリデータの実効を許可しない。
    • auto   起動時,または mount -a コマンドが実行されたときにマウントする。
    • noauto   自動でマウントしない。
    • nouser   root だけにマウントを許可する。
    • users   ユーザーグループにマウントを許可する。
    • user   全てのユーザーにマウントを許可する。
    • sync   ファイルシステムへの入出力を同期する。
    • async   ファイルシステムへの入出力を同期しない。
    • atime   inode アクセスを日時を常に更新する。
    • relatime   変更があった inode アクセスを日時をのみ更新する。
    • noatime   inode アクセスを日時を更新しない。
    • 上の例では defaults
  • <dump> 0 または 1 (dumpによってバックアップを作成する -> 1 作成しない -> 0)
    • 上の例では 0
  • <pass> 0~2 ファイルシステムをチェックする順番
  •                     (rootファイルシステム -> 1 その他 -> 2 チェックしない -> 0)
      上の例では 2 


UUIDUniversally Unique Identifier)とは、パーテーションやデバイスを一意に識別するための識別子である。これは 16Byteの16進数で、上の内蔵HDDの例では
  3e6be9de-8139-11d1-9106-a43f08d823a6 
のように表現されている。
UUID を調べるには端末(terminal)から

   sudo blkid  

と入力すればよい。尚, FAT や NTFS などの Windiowsファイルシステムでは UUID が使われていないので,UUID の代わりにシリアルナンバーが出力される。
出力例

  yyyyyyy@xxxxxxx-zzzzzzz-O-E-M:~$ sudo blkid
  [sudo] password for xxxxxxx: 
  /dev/sda1: UUID="58c5c831-15dc-4054-8237-14d095808ee2" TYPE="ext4" 
  /dev/sda5: UUID="f8aa0bd4-2fbd-41c4-8319-203f4167a51e" TYPE="ext4" 
  /dev/sda6: UUID="a575f293-cb40-44fa-8366-94287238b687" TYPE="swap" 
  /dev/sdb1: LABEL="TOSHIBA EXT" UUID="30DA0059DA001DAA" TYPE="ntfs" 
  /dev/sdc1: UUID="3e6be9de-8139-11d1-9106-a43f08d823a6" TYPE="ntfs" 
  yyyyyyy@xxxxxxx-zzzzzzz-O-E-M:~$


参照


1. fstab  (Archlinux Jap.)
2. fstab  (Ubuntu Eng.)
3. fstab  (Ubuntu De.)
4. fstab  (Linux man page)
5. UUID  (wikipedia Jap.)
6. UUID  (Ubuntu De.)