プロが教える店舗&オフィスのセキュリティ対策術

Linuxコマンドのついて質問です。
Knoppixを使って
>su -
>umount /dev/hda
>dd if=/dev/zero of=/dev/hda bs=512 count=1
と実行しようとしたのですが、/dev/hdaが読み込み専用モードとなっているためうまくいきません。書き込みも可能にするにはどのようなコマンドがあるのでしょうか?
ちなみにKnoppixを起動すると途中でモニタ出力されなくなるのでコンソールで作業しています。よってGUIは使えません。
よろしくお願いいたします。

A 回答 (8件)

今北産業状態なんだけど…必要な質問のほとんどは


通っているので、状況判断としては、MBMの起動ディスクで
とりあえずVistaの起動可否を試すべきじゃないかと思います。

MBRというのは512バイトの特別な領域です。
(IBM PC/AT系のHDD管理ルールの上で)

そのうち446バイトが起動のためのプログラム。
残りの66バイトがパーティションテーブルです。

ですから、MBRを吹っ飛ばせば、パーティション情報が削除され
testdiskなどを利用しなければ復旧不能となります。

が、簡単な話でddコマンドでMBRをふっとばす手順は
HDDの特定部分を指定する書式を用いるわけで
それを、446バイトに指定すれば、パーティションテーブルを残すことができます。

OSのインストールやgrub-installコマンドでも
この446バイトしか書き換えていないわけです。

なお、現段階のパーティションの状態は、シリンダー境界をまたぐという
旧来の管理ルールを逸脱しています。シリンダー3の重複ではなく
一つのシリンダーが途中で分割されていることを意味します。


が、こういった状況は実用的に問題が無いカタチで生じることもあります。
たとえば、単純なデータ専用パーティションでは普通に使えます。
(ただし管理ツールや診断ツールのトラブル要因にならないとは言いきれない)

なにより、Vistaでは公式に、シリンダー境界と
パーティション境界を一致しない運用が行われるようになっています。


そういうわけで、MBMがその状態のWindowsパーティションを相手に
正常に起動できるのかどうかは知りませんが
必ずしも、パーティション情報がおかしくなっているとは限りません。


正常なブートコードをバックアップしてあれば
それを書き戻すだけなのですが…
そういったものが欠如しているのが現状のWindows付属パソコンの現実です。

でも、たとえば、私が入手したジャンクVAIOのように
リカバリーパーティションの中から
446バイトのファイルを発見できる場合もあります\(^o^)/
(ファイル名は失念。たしかMBR.IMGとか)

普通に考えて、これWindowsのブートコードのイメージファイルだと思います。
場合によってはリカバリーパーティション内のISOファイル内にあるかもしれません。

*当然無保証*
ddでMBRを読み出すより、書き込むほうが断然怖いし
普通は現状を別のデバイスにイメージバックアップしておくべき
同デバイス内に保存しても、パーティションテーブル吹っ飛ばしたら(略)
    • good
    • 0

回答番号4の


> 2.KNOPPIX6.0.1の画面を正しく出すこと。
に補足されていません。
画面は正しく出たのでしょうか。
正しく出たのであれば、そのコマンドをこの質問に対して、読まれる他の人にも参考になるため記載することを望みます。

> /dev/sda1 * 1 3 16384 2 XENIX root
> Partition 1 does not end on cylinder boundary.
> /dev/sda2 3 13167 105746519+ 7 HPFS/NTFS
> /dev/sda3 13168 22731 76822798+ 7 HPFS/NTFS

sda1 16,384KB
sda2 105,746,519KB フォマットNTFS
sda3 76,822,798KB フォマットNTFS
ここで補足願いたいのは、105GBと76GBのどちらにVISTAを入れていましたか。
sda1での、
Partition 1 does not end on cylinder boundary
が出るのは、少し壊されている可能性があります。
sda1のEndのアドレス3と、sda2のStartアドレス3が同じ値を示しています。
これが一つまずい点です。このことは、次の操作(testdisk)で必ず必要になるためしっかりと覚えておいてください。
通常は、Endが3であれば、Startは4となるのが正しい値です。

sda1のサイズ16.384KBは、おそらくVISTAの回復ルーチンかと思います。
そこに起動フラグ(*)が点いていることも、不具合が発生する原因となっているようです。

そこで、下記の操作をしてこのパーティションを回復させる必要があると思われます。
1.testdiskによりパーティションの確立をする。
2.qtpartedにより、VISTAパーティションに起動フラッグをつける。
3.回答番号3の下記の方法でMBRのVISTA用に書き換える操作をする。
4.完全にVISTAが起動するのを確認後、VISTA用の、MBRをUSBメモリ等に保存させておく。
5.CentOSのインストールにトライする。

今回は、ここまでにしておきます。
必要な補足、今までに記載したことで気になることがあれば、補足を待って次に行きたいと思います。
    • good
    • 0

質問内容と、回答の補足を見る限り、やってはいけない様な操作をして、MBRやその他の重要な情報を消しているような気がします。


ここは、まず、KNOPPIX6.0.1の画面を出し、
fdisk -l
のパーティション情報の全てを貼り付けてもらって判断しないと、先へ進めません。

この回答への補足

返答が遅くなってしまい申し訳ありません。
fdisk -l 実行結果は次のようでした。

Disk /dev/sda: 300.0GB, 300069052416 bytes
255 heads, 63 sectors/track, 36481 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xab901b27

Device Boot Start End Blocks Id System
/dev/sda1 * 1 3 16384 2 XENIX root
Partition 1 does not end on cylinder boundary.
/dev/sda2 3 13167 105746519+ 7 HPFS/NTFS
/dev/sda3 13168 22731 76822798+ 7 HPFS/NTFS

よろしくお願いいたします。

補足日時:2011/03/05 11:51
    • good
    • 0

> しかし、このCDでbootすると、DHCPの設定(?)のところで滑って、


> 「PXE-E53: No boot filename received
いろんな操作をされて、Windows VISTAのパーティション情報を消してしまった可能性が大きいです。
もし、KNOPPIXでパーティション情報を見て確認しながら作業を進めたいと思います。

> >fdisk -l
> この結果、
> Disk /dev/sda: 300.0GB と出てきたのでHDDは/dev/sdaで表されてるんでしょうか?
> パーティションは3つあります。Systemが順にXENIX rootのもの1つとHPFS/NTFSのもの2つです。
> 「Partition 1 does not end on cylinder boundary.」ともあります。
ここに表示された情報を全て貼り付けないと、判断できません。
意訳された記載は、何十行で説明されても何の意味もありません。
そのままの生の情報を信じます。
    • good
    • 0

まず、重要度の高いところから、説明します。



1.MBRゼロクリアの件。
> >まず、MBRをゼロクリアすると、Windows VISTAのパーティションは消え去ります
> とありますが、Vistaのすべての情報が消えてしまうのですか?MBRだけ消すというのではなく。
MBRの中には、起動するためのプログラムと、パーティション情報が4個入っています。
この4個の中の1個に、VISTAのパーティション情報が入っています。それを全て、値ゼロを512バイトに埋め尽くすため、当然、VISTAのパーティション情報もゼロクリアしてしまい、全くパーティションかない状態にしてしまいます。
言い換えると、内蔵HDDは、何も情報はなく、「まっさらの状態」、全ての領域が、未割り当てということです。

2.KNOPPIX6.0.1の画面を正しく出すこと。
>  >そのためには、KNOPPIX6.0.1の画面は出ていますか
> コンソール画面でなら出せます。GUIは無理です。
KNOPPIXを起動したときに、
boot:
と出ます。このとき5秒ほど待ちます。その瞬間に1文字だけ入力すれば後はゆっくりと入力できます。
下記のコマンドを入力をしてみてください。
knoppix xmodule=vesa
"="は、日本語キーボードのときは、「^」を押すことです。
これでも出ないときは、
knoppix xmodule=vesa screen=1280x1024 noacpi
と入れてみてください。
当然、コマンドの後は、「Enter」キーを押します。
それでも出ないときは、補足願います。
 
3.うまく画面が出たときに、それを保存しておくことです。だめなときは、置き換えるだけですみます。
おそらく、/etc/X11/xorg.confを修正していると思います。
修正する前に、必ず、コピーしておくことを忘れないことです。
cp xorg.conf xorg.conf-bak
を一つ入れて、保存しておくことです。すぐに戻せると思います。
どう変更したか補足願えれば、分かる範囲で回答したいと思います。
> 解像度が気にいらなかったのでそれを変更し、rebootしたらモニタ出力されなくなりました

また、前回回答したパーティションの注意をよく理解してパーティションをどう設定したかも記載してください。
今回は、ここまでにします。
    • good
    • 0

質問や、補足を読んでいると、Windows VISTAを復活させたいのが第一番と考えてよいのでしょうか。



基本的なことをよく理解してください。
パソコンの起動のメカニズムは、BIOSの起動デバイスを調べ、その起動デバイスのチャネルに対し第一レコードを読みます。
起動デバイスが内蔵HDDであれば、MBRを読みます。
このMBRが、CentOSをインストールした際、CentOSによって書き換えられてしまっています。
よって、このMBRをVISTA用に書き換えなければなりません。
そのための手段としてメーカー品の場合は、かきのCD-ROMを作って書き換えるか、それ以外でもたくさんの方法がWEB検索するとあります。
当方がお勧めするのは下記の方法です。
Vistaと7に対応しています。
http://god777multimedia.blog3.fc2.com/blog-entry …

http://oshiete.goo.ne.jp/qa/6295324.html

これで復活したら、次のCentoSのインストールの解説に行きたいと思います。
そのときの補足として、パソコンのメーカー名、型番、CentOSのバージョン、インストール時の前回説明したパーティション設定をよく理解し、どんな状況なのかを詳細に記載して欲しいと思います。
そのときは、またこちらから、補足して欲しい項目を記載したいと思います。

この回答への補足

この方法も一応試してみました。
しかし、このCDでbootすると、DHCPの設定(?)のところで滑って、
「PXE-E53: No boot filename received

 PXE-M0F: Existing Broadcom PXE ROM.
Operating System not found    」
と表示され、それ以降進みませんでした…。

補足日時:2011/03/03 23:09
    • good
    • 0

もう少し、補足願います。


1.windows VISTAは起動できたのか。
2.CentOSは、起動できたのか。
3.今後どうしたいのか。

そのためには、当方に情報を補足してもらいたいと思います。
4.パソコンのメーカー、型番を教えてください。
5.この質問、回答の補足ができるということは、別のパソコンをお持ちですね。
6.Windows VISTAは、リカバリCD/DVD-ROMを作成していて、いつでもリカバリする覚悟ですね。

まず、MBRをゼロクリアすると、Windows VISTAのパーティションは消え去ります。
今までにどんな操作をされたかは分かりません。
基本をしっかり、理解して操作をされることが必要です。

そのためには、KNOPPIX6.0.1の画面は出ていますか。
それにより、現在のパーティションの状況を見て対処していかなければなりません。
次のコマンドを打ち込んで、それを補足願います。
下の最左端をクリック、アクセサリ、Root Terminalをクリック。
root Terminalが出たら、画面が小さくて、文字が見ずらいときは、
edit→prefereces→Terminal Fontを10から16くらいにする。
fdisk -l
fdisk半角ブランクハイフォンエル
Enterを入れパーティション情報を見る。

この回答への補足

>1.windows VISTAは起動できたのか。
起動可能です。ただ、現状態ではHDDから起動する場合、GRUBのプロンプトが出て(GRUB>のみ)その先操作出来なくなりました。CentOSの入ったパーティションを再削除した結果です。ただ、GRUBを入れたCDを作っていたので、そこから操作すれば起動可能です。

>2.CentOSは、起動できたのか。
前回入れなおした時にはGUIで起動できました。しかし、解像度が気にいらなかったのでそれを変更し、rebootしたらモニタ出力されなくなりました。HDDは動いていてコンソール画面には移れました。現在はパーティションごと削除したので使えません。

>3.今後どうしたいのか。
LinuxOSだとモニタに出力されないという問題がありますが、最後にVineLinuxぐらいを入れてうまくいくか試したいと思っています。うまくいくディストリビューションが見つかれば、それとVistaをデュアルブートで使用しようと思います。

>4.パソコンのメーカー、型番を教えてください。
FUJITSUのFMV-DESKPOWER CE50U7です。

>5.この質問、回答の補足ができるということは、別のパソコンをお持ちですね。
ネットブックを1台持ってます。CD/DVDドライブは付いていません。

>6.Windows VISTAは、リカバリCD/DVD-ROMを作成していて、いつでもリカバリする覚悟ですね。
リカバリディスクは購入時に付属のものがあります。また、いざという時にリカバリする覚悟はあります。

>そのためには、KNOPPIX6.0.1の画面は出ていますか
コンソール画面でなら出せます。GUIは無理です。

>fdisk -l
この結果、
Disk /dev/sda: 300.0GB と出てきたのでHDDは/dev/sdaで表されてるんでしょうか?
パーティションは3つあります。Systemが順にXENIX rootのもの1つとHPFS/NTFSのもの2つです。
「Partition 1 does not end on cylinder boundary.」ともあります。

また、MBRを初期化するということが理解できていないかもしれませんが、これを実行するということはMBRを完全に消すという意味でしょうか?もしそうだとしたら、MBRを入れなおす必要があるのでしょうか?
>まず、MBRをゼロクリアすると、Windows VISTAのパーティションは消え去ります
とありますが、Vistaのすべての情報が消えてしまうのですか?MBRだけ消すというのではなく。

よろしくお願いいたします。

補足日時:2011/03/03 22:53
    • good
    • 0

どのような目的で、MBRをゼロクリアしようとしていますか。


KNOPPIXのバージョンにより、パソコンの機種により、内蔵HDDのシンボルが変化します。
fdisk -l
コマンドで確認されていますか。
KNOPPIXは、CD/DVD-ROM起動していますか。
HDDにインストールしているLINUXからでは、MBRをゼロクリアする、このコマンドは、無視しますよ。
自分自身を殺すような、自殺行為は、受け付けません。

何をしたいのか、どんな環境でKNOPPIXを使用しているのかの補足がないと、正確な回答はできません。

この回答への補足

↓前回もお世話になりました。
http://oshiete.goo.ne.jp/qa/6560953.html
度々申し訳ありません。

あの後相変わらずMBRの初期化にこだわっていまして、CD起動のKnoppixを使う方法で試行錯誤しています。メーカー製のPCのためインストールCDは持ち合わせておらず、Windowsの回復オプションもインストールされていないようなので、この方法を採用しました。
この方法を用いると、HDDが読み込み専用モードでしか扱えず失敗します。
そこで
>mount -rw /dev/hda
と試してみると、
mount: block device /dev/hda is write-protected but explicit '-w' flag given
と表示されました。
どうしたらこれを解除できるでしょうか?
また、Knoppixのバージョンは今6.0.1を使用しています。これでも可能でしょうか?

ちなみにMBRに未だにこだわっている理由は、CentOSでもモニタ出力されなかったので別のディストリビューションを入れなおそうと思ったからです。これはこれで問題なのですが、ハードウェアが対応してないと考えたらあきらめるしかないのでしょうか?

補足日時:2011/03/03 18:56
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!