Gobble up pudding

プログラミングの記事がメインのブログです。

MENU

パソコン電源投入時にピーピーピーとビープ音が鳴り、起動しない

f:id:fa11enprince:20160328070422j:plain 私事ですが引越しました。 引っ越ししてしばらくたってからWindows PCを立ち上げようとすると、 ピーピーピーピーだかピーピーピーと音が鳴ってUEFIすら立ち上がりません。 3回かな?4回かな?よくわからない状態でした。冷静になって聞いたら3回かも…って感じでした。 軽くスマホでググるとどうも何らかのハードウェアの不良があって、 たいていの場合メモリ絡みの問題らしい。 メモリの接触不良が原因だそうな。

引越の時に、時間に余裕がなく多少乱暴に梱包したのがいけなかったかなーなんて思いました。 もしくは引越業者の人がPCだって忘れてて豪快に投げたのかもしれません(笑) 引越業者の名誉のために言っておきますが依頼した引っ越し業者はとても良い仕事をしていただきました。とても親切丁寧、迅速な引越業者さんでした。 起動中でないし、HDDでないしちょっと程度の衝撃じゃ大して影響ないなーとは思うんですが…

そんなこんなでひとまず、分解しました。 ドスパラのBTOパソコンなのでネジをはずして終わりなので楽ですね。 ……1年半くらいPCの掃除をさぼってたのでホコリがそこそこやばい。 1年半前に電源変えてきれいだったはずの配線がホコリまみれに。 エアブロワーで吹き飛ばしました。 他の部分も盛大にホコリがたまっていたので吹き飛ばしました。 メモリ部分もなんだかホコリが付着しているので飛ばしました。 メモリは完全に刺さっているような気がしたけど、 片方、若干浮いているような気がしました。 抜くと挿すとき割れそうで怖いので(臆病なんです…大昔に256MBのメモリを増設したときにお小遣いが吹き飛びそうでビビってました)、 そのままぐいぐいっと押しなおして念入りにホコリを吹き飛ばして電源投入すると 正常にWindowsが起動しました。

一応、グラフィックボードの接続を確認しましたが問題なし。 CPUはホコリまみれだったのでとっておきました。 全然関係ないと思うけどSSDとHDDのSATAがゆるゆるな感じだったので刺しなおしました。 あとは電源コードを見直しましたが、たぶんどれも関係がない。 電源を入れると一瞬で起動しました。 最近HDDのiMac使っているので起動が異様に早くてビビりました。

ちなみにですが、エラー時のビープ音は下記のようになっているそうです

AWORD BIOSの場合

(短音×1)正常起動
(短音×2)CMOS設定エラー
(長音×1、短音×1)メモリーエラー
(長音×1、短音×2)グラフィックボード、またはモニター接続エラー
(長音×1、短音×3)グラフィックメモリーエラー
(長音の連続)メモリー接続エラー、装着エラー
(短音の連続)電源供給エラー

AMI BIOSの場合

(短音×1)メモリーリフレッシュエラー
(短音×2)メモリーバリティーエラー
(短音×3)メモリーエラー
(短音×5)CPUエラー
(短音×6)キーボードエラー
(短音×7)CPU、マザーボードエラー
(短音×8)グラフィックメモリーエラー

起動時にビープ音が発生する|ドスパラ より引用

ちなみに私の場合は最初にこの音を聞いたとき ピーピーピー(しばらく間隔)ピーピーピー 3回に聞こえるときもあるし4回に聞こえるときもあるし…で焦りました。 たぶんメモリエラーだろうなとあたりを付けて… ちなみに引っ越し作業でマザーボードが何か書いてあるマニュアルどこかに消えてしまいました(笑) 探せばあるんだけど… と思ったら、PC内にドキュメント残しておいてた。

ASRock > B75M R2.0 これですね。 GUI でサポートされた 64Mb AMI UEFI Legal BIOS と書いてあるのでBIOSはAMIのほうですね。 4回に聞こえたのは聞き間違いのようだった…。

教訓。ホコリは大敵。1年に1回は掃除しよう…。

Git 備忘録

f:id:fa11enprince:20170818063154j:plain

Gitでcommitを分割したいとき

次のコマンドでコミット番号を見る

$ git log --oneline --graph  

リベースする

$ git rebase -i 59b146c  

※上記コミット番号はあくまで例

エディットするコミットを選ぶ

下記のようなコミットメッセージが表示されるので、pickをedit(e)に変更

pick 310154e 部分的な修正1とその他ほげほげ

e 310154e 部分的な修正1とその他ほげほげ

ひとつ前のコミットでリセットする(※ここがポイント)

$ git reset HEAD^

※mixedモードでリセットするのでcommitとaddがひとつ前のコミットに戻る

git add前の状態になるので、必要な単位でgit addcommitを繰り返す

全部終わったらcontinueする

$ git rebase --continue

毎回ssh-addが消える問題(Windows MSYS環境)

現象

$ git pull
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
$ ssh-add -l
Could not open a connection to your authentication agent.

※そもそもGitHubの公開鍵設定をしていない場合は
http://ryoichi0102.hatenablog.com/entry/2017/02/03/232920
とかを参照して下さい

とりあえずその場しのぎの処置

$ eval `ssh-agent`
$ ssh-add ~/.ssh/id_rsa
$ ssh-add -l

id_rsaのところはお使いの公開鍵に変えてください

面倒なんで.bashrcに書く方法

この辺とかあるが…うーんなんだか… 毎回手でたたくでいいかなって感じもする http://d.hatena.ne.jp/himadatanode/20160823/p14

でもイライラしてきたので.bashrcに書く

eval `ssh-agent`
ssh-add ~/.ssh/github_id_rsa

私の環境の場合はgithub_id_rsaです。適宜変えてください。

GitHubにリポジトリを新規作成する手順

f:id:fa11enprince:20170310151259j:plain よく忘れるので個人的メモ

何か既に手元にプロジェクトがあるとする。
例としてrails 4.2.2のrails tutorialのプロジェクトを作るとする。

GitHubでプロジェクト作成

f:id:fa11enprince:20170723052549p:plain

そうすると実は次に手順が書いてある

…or create a new repository on the command line

echo "# sample_app_4_2_2" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin [url].git
git push -u origin master

大体こんな感じでやればOKです。README.mdの追加がいらないのと、
プロジェクト配下のファイル全部をaddしてないですね…。

ちなみにここで間違った場合、git remote set-url origin [ユーザ名]@[url].gitでoriginを変更できます。

自分のPC上でgitの設定&pushをする

上に書いたのと同様です
プロジェクトに移動してから下記を実行します

git init
git add .
git commit -m "first commit"
git remote add origin [url].git
git push -u origin master

sshでもだいたい一緒です。privateリポジトリの場合ちょっと違ったかも…あんまり覚えてない。

一応確認

pushできているか見る。OK。でも自分の画像が即座に反映されてないのか…デフォルトのになってる。 f:id:fa11enprince:20170723060727p:plain

単なる備忘録でした。

WindowsでLinuxライクな環境を作る ConEmu+MSYS2

f:id:fa11enprince:20170709232638j:plain もともとCygwin大好き派だったのですが、 パッケージマネージャーとかがアレなんでここ数年はめっきり使わず。 有志でコマンドラインでパッケージマネージャーが作られていたものの アップデートするたびに壊れていたような印象があります。

WindowsでVagrantのためにrsyncを使いたいため ConEmuとMSYS2の組み合わせでシェル環境を作りました。 その記録です。

ConEmuのインストール

公式サイトから落としてインストールするだけ

MSYS2のインストール

公式サイトから落としてインストールするだけ

ConEmuの設定

デフォルトのシェルをMSYS2にする
MSYS2をインストールしてから
ConEmuのSettings > Startup > Tasks
Add Default Tasks
で{{Bash::Mysy2-64}}
が追加されるのでStartupでそれを選ぶ
特に変更しなくていい。

なぜか私の環境ではWindowsのPATHが追加されなかったのですが、
謎…。この設定はEnvironmentで変更することができるはずなのだが。
…と思ったら C:\msys64\msys2_shell.cmd の10行目あたりをコメントアウト解除すればいいらしいとどこかに書いてあった。 が、remを消しても効果なく…。
ユーザ環境変数にMSYS2_PATH_TYPEを作ってinheritを指定したらPATHが通った。

MSYS2に必要なものを入れる

MSYS2を入れたばかりだとgccすら入ってませんので MSYS2のほうでpacmanを実行する(ConEmuだとエラーになる)

パッケージマネージャー関連の更新

$ pacman -Sy pacman
$ pacman -Syu
...長時間待つ

下記を入れるとさらに2時間くらいかかります。

開発ツールとその他よく使うツールのインストール

$ pacman -S base-devel
$ pacman -S msys2-devel
$ pacman -S mingw-w64-i686-toolchain
$ pacman -S mingw-w64-x86_64-toolchain
$ pacman -S openssh
$ pacman -S vim
$ pacman -S git
$ pacman -S tmux
$ pacman -S msys/rsync

vim関連の設定ファイルを書き換える

ここまで正しくできれば${HOME}に.bash_profileと.bashrcがあるかと思います。 ※MSYS2とConEmuをデフォルトの状態で組み合わせると
${HOME}はCygwinなどと同様に/home/[Username]となります(実際のパスはC:\msys64\home)。
ただし、ログイン直後はWindowsのUserのHomeの/c/Users/[Username](%USERPROFILE%)となっています。
ちょっとこれはやな感じですね…。設定で変えられますが…。 vimのalias等を設定します .bashrcの末尾に

alias vi='vim'
alias grep='grep --color'
alias ll='ls -laF --color=auto'
alias ls='ls -F --color=auto'

とか追加します。

さらに.vimrcを設定しましょう。ここはお好みで… 最低限でよければ下記を参照して下しさい fa11enprince.hatenablog.com

参考リンク

Windows-アプリケーション/MinGW-MSYS/MSYS2インストール - yanor.net/wiki
MSYS2 で PATH が引き継がれない

Virtual BoxのNAT接続がうまくいかないので四苦八苦して解消

f:id:fa11enprince:20160409135557j:plain そもそもの発端はVagrantを使っていて、vagrant upしたときに
sshの設定でダメになりハマっていたところからでした。
こんなやつです。

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'vista-ie7'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: vista-ie7_default_1454528248664_66668
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
Timed out while waiting for the machine to boot. This means that
Vagrant was unable to communicate with the guest machine within
the configured ("config.vm.boot_timeout" value) time period.
 
If you look above, you should be able to see the error(s) that
Vagrant had when attempting to connect to the machine. These errors
are usually good hints as to what may be wrong.
 
If you're using a custom box, make sure that networking is properly
working and you're able to connect to the machine. It is a common
problem that networking isn't setup properly in these boxes.
Verify that authentication configurations are also setup properly,
as well.
 
If the box appears to be booting properly, you may want to increase
the timeout ("config.vm.boot_timeout") value.

よく見るエラーで、うーんわからんということで、
手動でVirtual Boxの環境を作るところからやってみました。
そしたらGuest OSからネットにつながらないじゃないですか。

なんでかNAT接続でVirtual Boxの上に構築したGuest OS(CentOS, Ubuntu)から
NAT接続で外につなげませんでした。
2週間くらい悩んでました。
前からネットワーク周りの設定をほかのソフトウェアがいじっていたせいか
不安定になっていました。
いろいろ調べましたが、Virtual BoxのつくるGuestとHostをつなぐネットワーク
10.0.2.2(Guest OSからみたときのHostのIPアドレス)とか
192.168.3.1(※これは環境による。Host側のデフォルトゲートウェイでGest側にDNSサーバーとして設定されるもの)
が物理的に見えないのでよくわからん…の状態でした。

現象

Guest OSのCentOSからping 8.8.8.8は通るのだけれどもping google.comは通りませんでした。
DNSを疑いましたが、/etc/resolve.confを自動で書き換えないように設定したのち、
/etc/resolve.confをGoogleのDNS 8.8.8.8にしても改善せず…。

環境

仮想ソフト: Virtual Box 5.1.22
Host OS: Windows 10 (1607)
Guest OS: CentOS 6.9 minimal
※別途VMWare Playerも入れてあります。

解決方法

私の環境での解決法は、VMWare Playerが入っていたので
Virtual Boxを両方アンインストールして
もう一度Virtual Boxをインストールしました。
他にもいろいろついでにソフトを消していましたが、おそらくこの2つが原因です。
なにかネットワーク設定が衝突していたのかもしれません…
アンインストールするとVMWare PlayerとVirtual Boxが作るネットワークは消えています。
そしてもう一度Virtual Boxで一からCentOS 6.9のminimalを入れます

その他起きたこと

再インストール後、なぜかChromeだけでネットに繋がりません。
ルータを再起動してもダメでした。
そしたらこのコマンド打ったら治りました。
Chromeが突然ネットに繋がらなくなくなった!そんな時の解決法はコレだ! | 電気通う

> netsh winsock reset

やはり……VMWare PlayerとVirtual Boxがなにかしていたのかな…。

作り直した結果

$ ping 8.8.8.8
=> 成功
$ ping google.com
=> 成功
$ curl http://www.yahoo.co.jp
=> 成功