とあるエンジニアの備忘log
2012年9月27日木曜日
自分的 Ubuntu 12.04 LTS を入れて最初にやること
この手のページはいっぱいあると思います。 人によって快適な環境というのは違うと思うので、あくまでも、自分用の備忘録という位置づけです。 #### Synaptic パッケージマネジャーをインストール #### Ubuntu ソフトウェアセンターから (または `apt-get install synaptic`) でインストール。 #### パッケージのインストール #### Synaptic (または `apt-get install`)でどんどんインストール。 - apt-file - chromium-browser - gnome-session-fallback # for Gnome Glassic - emacs - cvs - subversion - git - gitk - git-svn - git-email # for git send-email - global - ccache - ibus-mozc - curl - indent - manpages-ja # for 日本語 man - xmanpages-ja - libncurses5-dev # for Linux make menuconfig - virtualbox - virtualbox-guest-additions - cups-pdf # print PDF - geda - pcb - geda-utils - gcc-arm-linux-gnueabi # arm-linux-gnueabi-gcc - gcc-arm-linux-gnueabihf # arm-linux-gnueabihf-gcc - gcc-powerpc-linux-gnu # powerpc-linux-gnu-gcc - ckermit 64bit版Ubuntu上で、32bitプログラムをビルドしたい場合は以下も入れる。 - ia32-libs - lib32gcc1 - lib32stdc++6 - libc6-dev-i386 #### Unityを やめる #### ログイン画面で 「Gnome Classic (No effects)」を選択。 No effects を選ぶのは、ウィンドウスナップが嫌いだから。 #### 日本語変換設定 #### 「システムツール」-> 「設定」 -> 「キーボード・インプットメソッド」 とたどる。 「一般」 タブで、Ibusの有効をHenkan_Mode、無効をMuhenkan で行えるようにする。 「インプットメソッド」 タブで Anthyを無効に、Mozcのみを有効にする。 #### 日本語ディレクトリを英語に #### 「ダウンロード」、「テンプレート」、「デスクトップ」、「ドキュメント」、「ビデオ」、「ピクチャ」、「ミュージック」、「公開」 というディレクトリを英語にする。 $ LANG=C xdg-user-dirs-gtk-update #### Ctrlキー入れ替えなど #### 「システムツール」 -> 「システム設定」 -> 「キーボードレイアウト」 -> 「レイアウト」 -> 「オプション」 Ctrlキーの位置 : Ctrl と CapsLock を入れ替える Xサーバーを終了するためのキーシーケンス : Ctrl + Alt + backspace #### git config #### $ git config --global user.name "My Full Name" $ git config --global user.email "my.address@foo.com" $ git config --global color.ui auto #### ssh X forwading #### X で ssh を乗り越えさせる。 ssh クライアント (Xサーバー)側の設定: `/etc/ssh/ssh_config` を開き ForwardX11 no を ForwardX11 yes に変更。 ssh サーバー (Xクライアント)側の設定: `/etc/ssh/sshd_config` を開き ForwardX11 yes になっていることを確認。(Ubuntuの場合、たぶんデフォルトでそうなっている。) #### ssh 経由で evince が動くようにする #### `/etc/apparmor.d/abstractions/evince` に下記のように一行追加 --- /etc/apparmor.d/abstractions/evince.org +++ /etc/apparmor.d/abstractions/evince @@ -48,6 +48,7 @@ /usr/lib/p7zip/7za ixr, /usr/bin/zipnote ixr, /bin/tar ixr, + /bin/dbus-daemon Uxr, # allow read access to anything in /usr/share, for plugins and input methods /usr/local/share/** r, ### システム管理編 (ほとんど会社用) ### #### ユーザー追加 #### システムツール -> システム設定 -> ユーザーアカウント #### グループ追加 #### `gitusers` というグループを作成し、 `user1` と `user2` を加える場合、以下のような感じ。 $ sudo groupadd -g 2000 gitusers $ sudo gpasswd -a user1 gitusers $ sudo gpasswd -a user2 gitusers #### git 共有リポジトリ作成 #### 例えば、 `/var/git/myrepository.git` を作成する場合 $ sudo -i # mkdir /var/git # cd /var/git # mkdir myrepository.git # cd myrepository.git # chmod 2775 . # chgrp gitusers . # git --bare init --shared #### ssh server #### $ sudo apt-get install ssh #### apache #### $ sudo apt-get install apache2 Document Root はデフォルトで /var/www になっている。 とりあえずそのまま使用するのなら、 /var/www の下にコンテンツ追加すればよい。 #### gitweb #### $ sudo apt-get install gitweb `/etc/apache2/conf.d/gitweb` は特に変えなくてよい。 `/etc/gitweb.conf` もそのまま使う。 (`$projectroot = "/var/cache/git"` になっている。) FHSの説明を読むと /var/cache 以下に gitリポジトリを置くのはよくなさそうなので、 `/var/cache/git` から本物のリポジトリ置き場へシンボリックリンクをはっておく。 ブラウザにて http://127.0.0.1/gitweb にアクセスし、表示されることを確認。 #### postfix #### sudo apt-get install postfix 途中で選択肢が出てくるが 「インターネットサイト」を選択。 #### git push でメール送信 #### スクリプトは既に入っている。 例えば、 /my/git/repository.git へ push されたときに、 address@you.want.to.send へ メールを飛ばす場合以下のようにする。 $ sudo chmod a+x /usr/share/git-core/contrib/hooks/post-receive-email $ cd /my/git/repository.git/hooks $ ln -s /usr/share/git-core/contrib/hooks/post-receive-email post-receive $ git config hooks.mailinglist address@you.want.to.send #### git daemon #### 例えば、 `/var/git/myrepository.git` を git:// で公開する場合 $ sudo apt-get install git-daemon-run $ sudo sv start git-daemon $ > /var/git/myrepository.git/git-daemon-export-ok #### ntp daemon #### デフォルトでは起動時にワンショットで合わせる ntpdate が入っているが、 ntp にする。 $ sudo apt-get install ntp $ sudo apt-get remove ntpdate ### プロキシ関連の設定 (これもほぼ会社での用途) ### #### apt #### `/etc/apt/apt.conf` に以下のように書いておく。 (Ubuntu Server/Alternative でインストール時にプロキシ設定した場合は、すでに入っている) Acquire::http::Proxy "http://your.proxy.address.co.jp:8080/"; #### chromium #### 「設定」 -> 「詳細設定を表示...」 -> 「ネットワーク」 -> 「プロキシ設定の変更...」 システム全体に反映ボタンを押すと、 `/etc/apt/apt.conf`, `/etc/environment` あたりに書き込まれる。 chromium のプロキシ設定はユーザーごとに必要。 #### firefox #### 編集 -> 設定 -> 詳細 -> ネットワーク -> 接続設定... #### git プロトコル #### corkscrew で乗り越える。 $ sudo apt-get install corkscrew `/usr/local/bin/git-proxy` というファイルを作って、以下を記載。 #!/bin/sh corkscrew your.proxy.address.co.jp 8080 $1 $2 `~/.profile` に以下を記載 export GIT_PROXY_COMMAND=git-proxy #### subversion #### ~/.subversion/servers の [global] セクションに以下を追加。 http-proxy-host = your.proxy.address.co.jp http-proxy-port = 8080 #### postfix #### `/etc/postfix/main.cf` を開き `relayhost` の部分に会社指定の SMTPサーバーのIPアドレスを指定 #### ntp daemon #### プロキシ越えのやり方がわからない(できない?)ので、 `/etc/ntp.conf` で server の部分を会社指定のものに書き変え。
Linuxインストール on RAID (Intel RST)
前回の[Intel RST 設定画面の入り方](/2012/09/intel-rst.html)で、マザーボードの設定までできました。 SSD 4台で、RAID5 を構成しています。 続いて、Linux をインストールします。 RHEL, Fedora, Ubuntu あたりのディストリビューションで問題なくインストールし、起動できることを確認しましたので、以下にやり方をまとめました。 ### Red Hat Enterprise Linux Client 6.1 64bit ### インストール方法は RAID じゃないときと変わらないので、何も気にせずインストールするだけ。 ### Fedora17 x86-64bit ### インストール方法は RAID じゃないときと変わらないので、何も気にせずインストールするだけ。 GUI インストーラーの途中で、Basic Storage Device を選べばOK。 ### Ubuntu Desktop 10.04.3 LTS 64bit ### ちょっと古いですが、以前焼いたインストールメディアがあったので一応確認しました。 インストール方法は RAID じゃないときと変わらないので、何も気にせずインストールするだけ。 「ディスク全体を削除してから使用する」を選び、パーティション設定も完全おまかせでOK。 最後に、インストール準備完了画面で「拡張」ボタンを押す。 ブートローダーのインストール先に `/dev/sda` が選ばれているので、それを `/dev/mapper/isw_**********_Volume0` に変更した。 (ただし、 `/dev/sda` を選んでも動いた。よくわかりません。) ### Ubuntu Server 12.04.1 LTS 64bit ### ブートローダーのインストールの所で、若干のテクニックが必要。 「ディスクの検出」で「シリアルATA RAIDデバイスを有効にしますか?」で「はい」を選び、 普通にインストールを進める。 「ハードディスクへのGRUBブートローダーのインストール」のところがポイント。 インストール先に `/dev/sda` などを選ぶと GRUB を/dev/sda にインストールできません。 'grub-install /dev/sda' の実行に失敗しました。 これは致命的なエラーです。 とエラーになってしまう。 そこで、 Ctrl + Alt + F2 を押し、端末を表示する。 $ ls -l /dev/mapper とし、`isw_**********_Volume0` みたな文字列を見つける。 Ctrl + Alt +F1 で元の画面に戻る。 GRUBのインストール先を `/dev/mapper/isw_**********_Volume0` にする。(`**********` の部分はさっき見つけた文字列。) ### Ubuntu Desktop 12.04.1 LTS 64bit ### 試してみたけど、grub-install がうまくいきませんでした。 grub を別ディスクにインストールするというのは、望んでいる回避策ではないので。 というわけで、以下の Alternate install CD のインストールメディアを使いましょう。 ### Ubuntu Alternate 12.04.1 LTS 64bit ### [Ubuntuのトップページ](http://www.ubuntu.com/)から、 Download -> Desktop と進む。 よく見ると下の方に Alaternative options というのがあります。 そこから、 [Alternative downloads](http://www.ubuntu.com/download/alternative-downloads) のページにいけるので `ubuntu-12.04-alternate-amd64.iso` というのをダウンロードしてきた。 Server版と同じく、テキストベースのインストーラーが起動するので、「Ubuntu Server 12.04.1 LTS 64bit」のところで説明したのと全く同じやり方でうまくいきます。
2012年9月26日水曜日
Intel RST 設定画面の入り方
前回、[Linux ハードディスク 障害](/2012/09/linux.html)に書いたのですが、ハードディスクが危うい状態になったので、 RAID で新しく1台組んでみることにしました。 - MB : ASUS 「P8Z77-V PRO」 - SSD : Intel 「330 Series SSDSC2CT240A3K5」 を 4台 上記を選んだのは、現時点で 価格.com の人気ランキングで上位だったから。 とりあえず人気のものを使っておけば、何かトラブルが起きても情報が豊富だろうという、発想です。 にもかかわらず、RAIDの設定画面に入るまでにかな~り苦労してしまったので、メモっておきます。 ASUS 「P8Z77-V PRO」 には、SATAのポートが8個あるが、チップセットに繋がっているのは、下の6個のようなので、SSD はこちらに接続します。 グレー(白に見える)のコネクタに2台、ブルー(水色に見える)のコネクタに2台つなぎました。 ネイビーにつないではダメのようです。 続いて、BIOSに入り、 [Advanced Mode] → [Advanced] → [SATA Configuration] → [SATA Mode Selection] とたどって RAID を選択。 後はデフォルトでよいはず。 (S.M.A.M.T. Status Check = Enabled, Hot Plug = Disabled でよい) BIOSを抜けて、POST (Power On Self Test) 時に 「Ctrl + I」 で 「Intel Rapid Storage Technology Option ROMユーティリティ」画面に入れ、とマニュアルに書いてあるのですが、これがさっぱり入れない。 散々悩んだ挙句に、入り方がわかった。 以下の2点に気をつけないとダメだった。とくに 2. が盲点だった。 1. PS/2 キーボードを使う。 BIOS は PS/2でもUSBキーボードでも、DELキーを押せば入れます。 ところが、 「Ctrl + I」 は USBキーボードではダメで、PS/2キーボードを使わないとダメでした。 BIOSの中に、[Boot] → [USB Support] という項目があったので Full Initial にしてみましたが、やっぱり USBキーボードでは無理でした。 しかし、最近は PS/2 キーボードもめずらしくなってきているな。 2. Ctrl と I を「同時に」押す 最初、 Ctrl キーを押しながら I を連打していたが、これではダメのようだ。 Ctrl と I を「同時に」押す、というのが重要のようだ。 ASUS ロゴとともに 「Please press DEL to enter UEFI BIOS setting」というメッセージが表示されているときに、Ctrl と I を同時にポンポンと押せばよい。 無事、IRST Option ROMユーティリティに入れたので、 「1. Create RAID Volume」を選び、 RAID5を選択しました。 引き続いて、OS (Linux) をインストールしていきますが、続きは[次回](/2012/09/linux-on-raid5-intel-rst.html)。 p.S. ちなみに、Windowsからでも、RAID ARRAY の作成はできるらしい。 (Windows にあまり興味がないので、未確認ですが。。) いずれにせよ、自分は Linux しかインストールしませんので、IRST Option ROM ユーティリティから、RAID 設定をするしかありません。
2012年9月18日火曜日
Linux ハードディスク 障害
先週、どうもハードディスクアクセスが遅いなぁと思っていたら、今朝、RHEL マシンが起動しなくなった。 *** An error occurred during the file system check. *** Dropping you to a shell; the system will reboot *** when you leave the shell. Give root passwrd for maintenance (or type Control-D to continue): というメッセージがでた。とりあえず、root で入って、 `fsck` を実行してみる。 error reading block ***** (attempt to read block from file system resulted in short read) while getting next inode from scan. Ignore error
? no Force rewrite
? yes という感じで答えた。よくわからないけど。 Pass 2: Checking directory structure Entry '***' in ***/***/*** (******) has deleted/unused inode ******. Clear? みたいなのがいくつか出てきた。`***` の部分はファイル名やディレクトリ名です。これも `yes` で答えた。 Pass 3: Checking directory connectivity Connect to /lost+found? も `yes`。 Pass 4: Checking reference counts Inode ***** ref count is ***, should be ***. Fix? も `yes`。 とりあえず、 `yes` で答えていくととりあえず、起動するようになった。 Entry '***' in ***/***/*** (******) has deleted/unused inode ******. みたいなメッセージが出ていたディレクトリを確認してみると、確かに消失しているみたい。 失われたファイルの一部は `/lost+found` の中に入っていた。 ここに入るのはディレクトリエントリーが壊れて、ファイルの中身が助かっているものだろう。 ファイルの中身自体壊れたものはここにも、残っていないようだ。 いずれにせよ、早めにハードディスク交換して、OS再インストールだな。
2012年9月10日月曜日
Subversion の proxy 設定
Subversion で Proxy 設定をする方法のメモ。 $ svn co http://www.eglibc.org/svn/trunk eglibc svn: OPTIONS (URL: 'http://www.eglibc.org/svn/trunk'): Could not resolve hostname `www.eglibc.org': ホスト名に対応するアドレスがありません (http://www.eglibc.org) みたいにエラーになる場合、プロキシ設定をすればOK。 ~/.subversion/servers の [global] セクションで http-proxy-host = your.proxy.server.com http-proxy-port = 8080 みたいな行を追加するとうまくいきました。
新しい投稿
前の投稿
ホーム
登録:
投稿 (Atom)