GRUBが消えねぇ

iMACが壊れたので、放置されてたLinuxマシンをWindowsに入れ替え。

Linuxを入れてたPCをフォーマットしてWindowsを入れると必ずハマる。
フォーマットされてもMBRは消えなくてGRUBが残る。

回復コンソールでGRUBを消す方法

WindowsXPのインストールCDで起動して
Rを入力して回復コンソールを起動。
SATAのハードディスクの場合mapコマンドで情報を取得しておく必要がある。

map

\Device\Harddisk0\Partition1
\Device\Harddisk1\Partition1

んで、mapの情報を指定してfixmbrを実行

fixmbr \Device\Harddisk0

おいらはネットの情報を信じて、Partition1まで指定してたが
、全然GRUBが消えなかったので注意

iMAC逝ってよし

MACの画面がめちゃくちゃちらついてほぼ操作不能。。。
再インストールしても治らず。。。
Windowsは大丈夫なんだが、3Dゲームだけ同様にちらつく。。。
事実上故障している。
GPUがおかしくなったっぽい。

サポートに連絡したら、修理に50000円かかるって。うげ。。。

SMCリセットとかいうのを試してみたら、いつになくうるさい起動音。
どうやら、FANが回ってなかったらしい。
画面は変わらず。。。

SMCリセットとかPRAMクリアとかそんなん知るかって感じ。
不具合リセットでごまかしてんじゃねぇの。。。
FANが回らなくなるとかマジかんべんしてください。。。

BootCamp逝ってよし

以前、BootCamp上のWindowsXPが起動できなくなって再インストールしたけど
またもや起動できなくなった。゜゜(´□`。)°゜。
http://d.hatena.ne.jp/ru-chan/20090916/1253099089

なんとか復旧できたのでメモ

以前発生したのは1ヶ月前か。

インストールまもなくてたいしてソフト入れてないのに
電源入れてWindows起動待ち中にフリーズ。。。

フリーズするからしょうがなく強制的に電源を切るんだけど
結構な確率でセーフモードさえも起動しなくなる。
原因はディスクエラー。


まず、回復コンソールを起動しようと試みたけど、
なぜか、マウスクリックして起動してもCDが抜けず。。。

MACを起動しようとしても灰色のリンゴの画面からいっこうに変化しない。。。
もー、意味わからん(o ̄ー ̄)=O☆

SHIFTキー押しながら、MACを起動するとMACをセーフモードで起動できるらしく
やってみたらなんとか起動したわ。で、CDは抜けた。
NTFS-3Gとかいうやつがエラーになってたからそれが原因?

次に前回の教訓で回復コンソールを起動して、ディスク修復

chkdsk /P
chkdsk /R

その後、F8キーを連打して、セーフモードでWindowsを起動
ハードディスクのプロパティからチェックディスクの予約をして再起動

その後、Windowsを通常起動しようとしてもなぜか起動せず

もう一度回復コンソールでchkdskしたら、エラーが修復された。。。

で、Windowsを通常起動したら、チェックディスクの画面が起動して
なんとか修復されたわ。

Key mappingの罠

';'と':'の位置を入れ替えようと以下の記述を.vimrcに追加した。

" ';'と':'の位置を入れ替え
noremap ;  :
noremap :  ;

そうしたら、sokoban.vimでユニットの移動操作ができなくなったわ。
sokoban.vim
http://www.vim.org/scripts/script.php?script_id=211

586-598行目までが:mapコマンドで定義されているのが原因のよう。
':'が';'にremapされちゃってるっぽい。
ためしに':call'の箇所を';call'に変更したところ、ユニットの移動操作ができた。
ただ、nnoremapに変更するのが正しい修正と思われる(。・_・)ノ
http://whileimautomaton.net/2008/07/diary#d20-150335

function! <SID>SetupMaps()
   nnoremap <buffer> h :call <SID>MoveLeft()<CR>
   nnoremap <buffer> <Left> :call <SID>MoveLeft()<CR>
   nnoremap <buffer> j :call <SID>MoveDown()<CR>
   nnoremap <buffer> <Down> :call <SID>MoveDown()<CR>
   nnoremap <buffer> k :call <SID>MoveUp()<CR>
   nnoremap <buffer> <Up> :call <SID>MoveUp()<CR>
   nnoremap <buffer> l :call <SID>MoveRight()<CR>
   nnoremap <buffer> <Right> :call <SID>MoveRight()<CR>
   nnoremap <buffer> u :call <SID>UndoMove()<CR>
   nnoremap <buffer> r :call Sokoban("", b:level)<CR>
   nnoremap <buffer> n :call Sokoban("", b:level + 1)<CR>
   nnoremap <buffer> p :call Sokoban("", b:level - 1)<CR>
endfunction

あと:setでmodifiableとか操作しているせいで、別のbufferを開くと変更不可にされてしまうので
スクリプト中の全:setコマンドをすべてsetlに変更したほうがいい。

setl modifiable
setl nomodifiable

ついでに、Sokoban起動時の処理に以下も追加

setl tabstop=8
setl nolist

ソース置いときたかったけど、はてなってファイルアップロードできんの?Σ(゜ロ゜;)!!

続きを読む

全角スペースのhighlight表示が消える件について思考錯誤 その2

以前試行錯誤した内容から進んだのでメモ
http://d.hatena.ne.jp/ru-chan/20090830/1251633059

上の記事でVim-users.jpのHackのとおりやってうまく全角スペースが
highlightしないのはWindows環境のみということがわかったわ。

Windows環境であっても以下の記述を.vimrcに記述することで全角spaceの
強調表示が可能だった。
これでわざわざ別ファイルをsourceしなくてもイイゾ。
以前、間違えて全角スペース置換しちゃったことあったし、
こっちの記述のほうが個人的にうれしい。

" 全角spaceをhighlight表示させる
augroup ZenkakuSpace
  autocmd!
  autocmd ColorScheme * highlight ZenkakuSpace term=underline ctermbg=Red guibg=Red
  " %u3000は全角spaceの文字code
  autocmd VimEnter,WinEnter * match ZenkakuSpace /\%u3000/
augroup END

Ubuntu環境でも無事強調表示されたよ。

続きを読む

BootCampのWindowsXPが起動しなくなった

BootCampのWindowsXPで以前からたまにシャットダウン時に終了しない現象が発生してて
しょうがなく強制終了してたんだけど、ついに起動しなくなった。・゚(゚⊃ω⊂゚)゚・。
セーフモードでも起動しないので、回復コンソールで修復させた。
さらに、再インストールを試みたところ、再インストールができなくなる現象にハマッたのでメモ

ディスクエラーの修復

XPインストールディスクを挿入してCD起動して回復コンソールを起動
以下のコマンドでディスクエラーがあるか確認

chkdsk /P

エラーがあった場合、修復を実行

chkdsk /R

再インストール時のトラブル

再インストールの際、MacOS上のBootCampアシスタントでWindowsパーティションの削除を行わず
WindowsXPのインストールディスクの機能でWindowsパーティションを削除してインストールし直した。

その結果、インストール途中の一度Rebootしたタイミングで以下のようなエラーが発生した。

次のファイルが存在しないか壊れているため、windowsを起動できませんでした。
<Windows root>\system32\hal.dll

googleで調べるとこのエラー結構いろんな人がハマってるみたい。
どうやら、BootCamp環境のWindowsXPを導入する場合、
WindowsXPのインストールディスクの機能でWindowsパーティションの削除/作成をしてはいけない模様。
※ フォーマットは大丈夫

参考
http://akisute.com/2009/05/windowshaldll.html
http://taddy.blog.so-net.ne.jp/2006-04-07
http://futuredaydream.blog74.fc2.com/blog-entry-187.html

回復コンソールでbootcfgを実行させて回復もできるみたいだけど、
一度、BootCampアシスタントでパーティション削除してから、アシスタントでWindowsパーティションを作成して
その作成されたWindowsパーティションWindowsをインストールすることで無事インストールが完了した。

Windows再インストール無限ループ

上記エラーのため、Windows再インストールを延々と繰り返す現象が発生した。
インストールCDが取り出せなくて困ったけど、
MACでは起動時にマウスをずっとクリックしていると挿入メディアが取り出せるらしい。

起動するOSの選択方法

rEFIT導入したので、忘れそうになっていた。
起動時にOptionキー(Win:Altキー)を押しっぱなしにしておくとOS選択できる。

PRAMクリアの方法

MACの起動時間がやたら長くなったり、起動の挙動がおかしくなったりするんだけど、
PRAMクリアというのを行うと解消されるらしい。
Command + Option + P + Rキーを同時押し。
(Win: Ctrl? + Alt + P + R )
MAC起動時のジャーンって音がなってちょっとしたら再起動がかかって
2回聞ければOKらしいからたぶんできてるはず。。。

続きを読む

Vimトラブルシューティング

.vimrc触ったりした上でハマった事柄について
その都度ここにまとめていく

現象:メニューが文字化け

原因: filetype記述位置
環境: Windows Vim7.1

Windowsの.vimrcで以下の順番で記述していた。

filetype plugin indent on
encoding=utf-8

filetype plugin indent onの時点では
encoding=cp932でSHIFT-JISの日本語menuが読み込まれる。
その後encodingが変更されることでmenuをUTF-8表示しようとするため
文字化けする。

対策:

encoding=utf-8以降にfiletype plugin indent onを記述する

現象:コメントの自動挿入が解除できない

原因: filetype記述位置
環境: Vim7.1

.vimrcで以下の順番で記述していた。

" commentの自動挿入を無効にする
" filetype plugin onの後に入れないと反映されない
autocmd MyAutoCmd FileType * set formatoptions-=ro

filetype plugin indent on

filetype plugin indent onを後に書くと
autocmdの内容が反映されなくなる。

対策:

記述順序を入れ替える。

現象:日本語が文字化け 全てソ?ソ?ソ?ソ?ソ?ソ?ソ?ソ?ソ?ソ?"になってしまう

原因. localeが設定されていない
環境: andLinuxのubuntu9.04 ターミナルがtera term, Poderosa

andLinux環境でlocaleをUTF-8にする下記リンク先の手順を行ったが、
リモートログイン時にlocaleの設定が行われていなかった。
($LANGが空文字、localeコマンドの出力がUTFじゃない)
http://www.ubuntulinux.jp/products/JA-Localized#repository
http://www.aise.ics.saitama-u.ac.jp/~gotoh/InstallOfandLinux.html

ただし、XFCE Terminalを起動した場合は、LANGにUTF-8が設定されて
文字化けしなかった。


/etc/default/locale以下の記述があったのに、LANGが設定されない。
/etc/environmentに以下の記述を追加しても、LANGが設定されない。

LANG="ja_JP.UTF-8"

/etcのscriptの内容見る限り、
andLinuxの統合デスクトップ環境をXFCEにしたため、
gdmが入っていなくて
/etc/default/localeと/etc/environmentが読み込まれていない
のかもしれない。
/etc/default/localeも/etc/environmentもgdmからsource
されてる。
なんらかのデスクトップマネージャから読み込まれるものなのか。

XFCEでは何処にLANGを設定すればいいんだろ。。。

対策:

とりあえず/etc/profileに以下の記述を追加

export LANG="ja_JP.UTF-8"

現象:AutoComplPopとかNeoComplCacheの補完リストがすぐ消える

原因: statuslineにWhatFunction()の値を表示していたため
環境: Vim7.1

statuslineにWhatFunction()の内容を表示するようにすると、
補完リストの表示が調子悪くなる。
3文字ぐらい入力すると、補完候補がすぐに消える。

WhatFunction()について
http://blog.endflow.net/?p=45

対策:

直接的な原因は調査してない。
とりあえず、WhatFunction()を入れない。

続きを読む