2015年1月7日水曜日

仮想にCentOS7インストール&初期設定のメモ。

情弱な私には お気に入りバーと「Ctrl + K」の無いChromeは使いにくいので、IEばかり。(時々Chrome
しかし、「Ctrl + D」→「Enter」(こちらはChromeにもある。)が便利過ぎて、
IEのお気に入りが散らかってきたので、記事にして消そうかと……。



VMWare PlayerとVirtualBoxの違い。
Yahoo!知恵袋のここを参考にした。
→結論として、営利・非営利を問わず無料で使える「VirtualBox」を選択。

一番気になっていたのは「VirtualBox」がマルチCPUに対応しているか、だったが、問題無く設定できた。

今回は
http://www.centos.org/
からCentOS7をダウンロード。

以下を参考にCentOS7をインストールする。
DVDのisoを選択し再起動する際、一度電源を落とし、CPUのコア数を増やしてから再起動する方が、インストールが高速になるかもしれない。
(後から思っただけでやってないので注意。)
インストール時最小構成にすると、端末(windowsのdos窓みたいなやつ)しか使えないので注意。デスクトップには、今回GONOME??を選択しておいた。(あとコード組むために入れるので開発環境)
VirtualBoxで作成した仮想マシンにLinuxを導入してみよう(1)



以下を参考にCentOS7に「Guest Additions」をインストール。
(windowsとの行き来に必要なので入れておく。フォルダの共有や円滑なマウスの共有。インストール後は、CentOS7の画面をwindowsの一つのアプリケーションのようにマウスで移動できるようになる。もしかするとネットの接続にもいるのか……??(確認はしていない。))
「Guest Additions」のインストールでは、「VirtualBox」のメニューバーから
仮想のインストール用CDを挿入できる事に気が付かず時間を喰った。
VirtualBoxで作成した仮想マシンにLinuxを導入してみよう(2)





以下を参考に、CentOS7のユーザーに、共有したフォルダへのアクセス権?を与える。
端末で以下を実行。

$ sudo gpasswd -a ユーザ名 vboxsf


フォルダは自動マウント&永続マウント???みたいな設定にしておけば

/media/sf_自分で指定した名前

に自動的に生成されている。
VirtualBox 4 における共有フォルダの自動マウントの設定



インターネットへの接続は、恐らく初期設定のままで問題ない。
ただし、CentOS7の右上のあたりで、ネットへの有線接続が選択されているかが問題。
たびたびCentOS7が勝手に接続を切断して困る。



日本語への切り替えは、何か右上のユーザー名か何かをクリックして設定からなんかいじって、
日本語の「kana-kanji」(かな、かんじ)みたいなやつを追加した気がする。



端末やgeditやファイルマネージャ?など、GUIプログラムの設定やバージョンは、
プログラム選択時に、上の方のタスクバー?に表示されるプログラム名を右クリックか何か
すると出てくる。(気が付かずに1時間くらい探し回されて最悪だった。)


geditで、Makefileを作っておくと、ctrl+F8 でコンパイルから実行可能ファイルの生成までできる。
Makefile の書き方 (C 言語)
(「ctrl+F8」のままだと、windowsで予約されているショートカットが動作して鬱陶しいので、
「ツール(T)」→「Manahe External Tools」→「ビルド」→「ショートカットキー(K)」を、VisualStudioにちなんで「Ctrl+F7」に変更)

「ツール(T)」→「Manahe External Tools」→「ビルド」について、
        ショートカットキー(K):Ctrl+F7
        保存(S):編集中のドキュメント
        入力(I):編集中のドキュメント
        出力(O):ボトムペインに表示する
        適用範囲(A):ローカルファイルのみ
        ALL Lagnuages
で取りあえずは、動いた。


ダブルクリックで実行する場合で引数渡す必要が在ればシェルスクリプト(windowsのバッチファイルに相当)を1~3行程度書けばいい。
ただ、規定の実行先には端末が無いので、ファイルマネージャ?の設定で、
「毎回実行するプログラムを聞く」みたいな感じの奴を選択するしかない。
(頑張ると規定の実行先を追加できるのかどうか、私は知らないし、面倒なのでパス。)



LinuxにはMSDNの代わりに「man」「info」といったコマンドを端末に叩く事で、
多くの情報を手に入れる事ができる。



CentOSなどLinuxを日本語でインストールすると、
ホームディレクトリのフォルダ名まで日本語になってしまう。
(windows7とかだと、表示は日本語だが、英語名でアクセスできるようになっているのだが、、、)
手動で変更するのは、他のプログラムと連動してたりする場合に困るので、自動で変更する事が多いようだ。
結局私はやらなかったけど、メモ。
ホームディレクトリのフォルダ名を日本語から英語に変更する



//余談
CentOS7には、たぶん初期状態でgeditみたいな名前のエディタが入っているが、
日本語入力すると良く落ちる。2013年9月??くらいのバグが未だに更新されていないので注意。
現在は、windowsでコード書いて、実行とコンパイルだけCentOS7で行っている。……何とかしたい。
パッチはあるようだが、Linuxは素人なので、そんなのやりたくない。
Fedora19でgeditが落ちる問題
Fedora 19 の gedit が落ちる。

あと、geditを使っていると、コンパイルした時に、CPU使用率が上がりっぱなしで暴走している事がある。勘弁してくれ。(windowsの偉大さと、linuxが(サーバでしか)普及しない原因の片鱗を見た気がする。一言で言えば完成度が低い。そして、私には改善するだけの力も時間も無い。)
コンパイルが終了しても、処理中のマーク(winでの砂時計マーク)が消えないから鬱陶しい。
(追記:
既に新しいバージョンが出ている事まで確認したので、もしかすると、修正が入っている可能性はある。(まだ確認できていない。……と言うか、インストールの仕方が良く分からなかった。)
)
フォントのサイズをデフォルトの12から、Visual Studioと同じ10にすると、
情報量が増えて幸せになれるかも。

タブ幅も Visual Studio の設定に合わせて 4にしておく。

EclipsならLinuxでも動いた気がする。
エディタが日本語入力でも落ちないなら入れてみても良いかもしれない。


あー、これだからLinuxは嫌だったんだ。
まあ、使いこなせる人は何とも思わないのだろうけど。

そう言えば、昔Ubunt?使った時、プリインストールのFireFOX?が落ちまくって最悪だった。
今はFireFOX?が落ちるならChrome入れて見るけどどうかな?
……といいつつ、仮想なのでネットは全てwindowsでしかもIE。
やはりIEでしかないショートカットキーとお気に入りバーは捨てられない。



//
インストール時に開発環境にチェックを入れたお蔭か、プリインストールなのか、
兎も角opensslを入れる手間が省けた。
OpenSSL 1.0.1e-fips 11 Feb 2013
opensslのバージョン確認とアップデート(Heartbleed対応)
このバージョンは今問題を抱えてるのかもしれないけど、サーバじゃないしいいの……か??
CVE-2014-0160 OpenSSL Heartbleed 脆弱性まとめ
よく読んで無いけど、取りあえず、暗号化通信自体が目的じゃないのでパス。


早速コードを書いたものの、インクルードで失敗した。
OpenSSLを使って開発するには別でパッケージをインストールする必要があるらしい。
「libssl-dev」が必要な開発用パッケージで、ライブラリ、ヘッダ(/usr/include/openssl)、ドキュメント(たぶんmanコマンドでアクセスする奴)が入っているらしい。
Package: libssl-dev (0.9.8o-4squeeze14)

で、どうやってインストールするのか……。

まず同じLinuxでもOSによってリポジトリ(たぶんデータの保管場所)が違う?ためか、
使用するコマンドが異なる。
CentOS            : yum     コマンド
Ubuntu , Fedora : apt-getコマンド

CentOSであれば、端末で以下を実行。
(ただし、suコマンドでスーパーユーザーになっておく必要がある。要するにrootになる。
sudoとしてroot権限として実行させても良い。)
「yum install libssl-dev」
たぶん「apt-getコマンド」使うOSなら
「apt-get install libssl-dev」
(少なくともUbuntでは「apt-get install libssl-dev」らしい。CentOSとはパッケージ名が違う。
Ubuntuの./configureでCould not autodetect OpenSSL supportAdd Star より。)
なのかな?

……所が、実行してみた所、
「パッケージ libssl-dev は利用できません。」
何故なのか「"パッケージ libssl-dev は利用できません。"」でgoogle検索。
すると、Chinachu+PT2+CentOS6.6ではまった。
より、「libssl-dev→openssl-devel」(←上記サイトでは最後のlが抜けていてまた10分くらい悩んだ。)と読み替えればいいらしい。つまり、
yum install openssl-devel」でやっとインストールできた。



//
gccの警告オプション。
図書館で借りてきた「ふつうのLinuxプログラミング」という本を斜め読みしていたら、
gccでのコンパイル時に、「-Wall」オプションを付けると、警告を出してくれるらしい。
しかし、googleで検索すると、「-W」オプションを付けると、更に詳しい警告を出してくれる事が分かった。
gcc の警告オプション -Wall と -W


//
gccの最適化オプション(google検索)
最適化のオプション
-O2を指定しておくのが無難。



//
Curlの使い方。
curl -X GET https://twitter.com/
ソケット通信とかと比べれば、httpsでもコマンド一つでダウンロードできるので、便利。
上記ではtwitterのトップページをダウンロードし、端末へ表示する。


//
他のダウンローダ
wget


//eclipse C++のインストール。
tar.gzに圧縮されたファイルを、解凍して、自分のインストールしたいディレクトリに置くだけで良いみたい。

Pleiadesでの日本語化は上手く行かなかったので諦めた。
-javaagent:/home/administrator/Program_Files/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
を最終行に追加して、起動はするけど、動かない。Eclipseはver4.4.1かな?

日本語のコメントを使いたい場合は、
http://d.hatena.ne.jp/torazuka/20130225/eclipse
http://www.javadrive.jp/eclipse3/setup/index1.html

しかし今回インストールしたバージョンはデフォルトで「UTF-8」なので問題無く日本語のコメントが書けそう。
兎も角、geditみたいに日本語を弄ったら落ちる、みたいな仕様でなければいいかな。

0 件のコメント:

コメントを投稿