投稿

2015の投稿を表示しています

CentOS 7.1 をアップデートしたらソフトウェアとソフトウェアの更新がなくなっていた

CentOS 7.1 をアップデートしたらメニューのシステムツールからソフトウェアとソフトウェアの更新がなくなっていました。

MercurialEclipse のインストール

開発環境 (Eclipse 4.3) に MercurialEclipse をインストールしました。 インストール時に問題になったのはインストールする際に使用するアドレスです。 Add New Software のダイアログに入力すべきアドレスは http://mercurialeclipse.eclipselabs.org.codespot.com/hg.wiki/update_site/stable です。 Google で最初にでできた http://javaforge.com/project/HGE は使用できません。 MercuialEclipse については以下を参照してください。 https://bitbucket.org/mercurialeclipse/main/wiki/Home https://code.google.com/a/eclipselabs.org/p/mercurialeclipse/

CentOS 7.1 で Visual Studio Code

CentOS 6.5 では動作しなかった Visual Studio Code ですが、環境が CentOS 7.1 に変わったので再度インストールしてみました。 https://code.visualstudio.com Linux 64bit 版です。インストールは /opt に入れることにしました。 $ sudo unzip VSCode-linux-x64.zip -d /opt シンボリックリンクを作成します。 $ sudo ln -s /opt/VSCode-linux-x64/Code /usr/local/bin/code 起動してみましたが、すんなりと起動しました!

CentOS 7 へリモートデスクトップ接続する (xrdp)

イメージ
CentOS 7.1 (7.2 も同様) に RDP サーバーを導入して Windows からリモートデスクトップ接続で接続して使用できるようにします。 xrdp を使用します。 今回インストールに使用したのは xrdp-0.9.0 です。バージョンが上がっているのでこれまでとは違ったトラブルがありました。

CentOS 7.1 に TortoiseHg をインストール

CentOS 6.x で あきらめていた TortoiseHg を CentOS 7.1 にインストールしました。 今回はソースコードを使用しない簡単な手順です。 1. Mercurial をインストールします。 $ sudo yum install mercurial 最新ではないですが 2.6.2 と以前よりずっと新しいバージョンがインストールされます。 2. EPEL のリポジトリーをインストールします。 $ sudo yum install epel-release TortoiseHg が要求するパッケージの一部は EPEL のリポジトリーで提供されています。 3. rpm をダウンロードします。 http://koji.fedoraproject.org/koji/buildinfo?buildID=450218 より tortoisehg-2.8-2.fc20.noarch.rpm をダウンロードします。 4. rpm をインストールします。 環境によってインストールが必要なパッケージが無い場合はそれらをインストールしてから再度実行してください。自分の環境では以下がありませんでした。 $ sudo rpm -ivh tortoisehg-2.8-2.fc20.noarch.rpm エラー: 依存性の欠如:     PyQt4 >= 4.6 は tortoisehg-2.8-2.fc20.noarch に必要とされています     gnome-python2-gconf は tortoisehg-2.8-2.fc20.noarch に必要とされています     python-pygments は tortoisehg-2.8-2.fc20.noarch に必要とされています     qscintilla-python は tortoisehg-2.8-2.fc20.noarch に必要とされています 追加のパッケージをインストールしてから rpm をインストールします。 $ sudo yum install epel-release PyQt4 gnome-python2-gconf python-pygments qscintilla-python $ sudo rpm -ivh tort

Google Test 1.7.0

CentOS 6.5 で Google Test 1.7.0 を使えるようにします。 といってもそれほど難しくありません。 https://code.google.com/p/googletest/ にアクセスし Downloads  を開きます。 gtest-1.7.0.zip  をクリックしてダウンロードします。 指定のフォルダーへ展開します。展開先の親フォルダーとなるところを指定するとその下に gtest-1.7.0 というフォルダーが作成されます。以下はホームフォルダーに展開する例。 $ unzip gtest-1.7.0.zip -d ~ 展開後はこんな感じ $ cd ~/gtest-1.7.0/ $ ls CHANGES         CONTRIBUTORS  Makefile.am  README      build-aux  codegear   configure.ac  include  make  samples  src   xcode CMakeLists.txt  LICENSE       Makefile.in  aclocal.m4  cmake      configure  fused-src     m4       msvc  scripts  test README ファイルに従って libgtest.a を作成します。 $ gcc -isystem ~/gtest-1.7.0/include -I ~/gtest-1.7.0 -pthread -c ~/gtest-1.7.0/src/gtest-all.cc $ ar -rv libgtest.a gtest-all.o Google Test は C++ 用のテストフレームワークですが、extern "C" を使うことと C と C++ の違いを意識すれば C 言語でもテストできるので便利です。

CentOS 6.5 で Visual Studio Code

Windows では長年テキストエディタとして PeggyPro を使用してきましたが、作業が Linux へ移行したり PeggyPro 自体も終了したりしたので次のテキストエディターを探しているところです。 Visual Studio Code というものがマイクロソフトからプレビュー版があるというのでダウンロードしてみました。 https://code.visualstudio.com Linux 64bit 版です。インストールは /opt に入れることにしました。 $ sudo unzip VSCode-linux-x64.zip -d /opt シンボリックリンクを作成します。 $ sudo ln -s /opt/VSCode-linux-x64/Code /usr/local/bin/code インストールできたので実行してみます。 $ code ./Code: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./Code) ./Code: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./Code) ./Code: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /opt/VSCode-linux-x64/libnode.so) ./Code: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /opt/VSCode-linux-x64/libnode.so) ./Code: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /opt/VSCode-linux-x64/libgcrypt.so.11) ./Code: /lib64/libc.so.6: version `GLIBC_2.15' not found (required by

Linux で SATA ドライブのシリアル番号を表示するスクリプト

仕事柄、ストレージを扱うことが多いのですが、SATAドライブのシリアル番号を調べる必要がありました。 サーバーのSATAポートに直接接続されているものであれば hdparm で調べられますが、LSI のSAS-HBA に接続されているドライブには hdparm は使用できません。 こんなときは sg3_utils を使用することで SAS-HBA 越しの SATA ドライブのシリアル番号を取得できます。 sg_sat_identify DEVICE と指定すればドライブの IDENTIFY DEVICE DATA を見ることができます。しかしさすがに見づらいのでスクリプトと od で整形して表示するようにしました。 # シリアル番号の取得 # 入力: # $1 デバイスファイル get_serial_number() { local a=(`sg_sat_identify --raw $1 | od -j 20 -N 20 -t a -A n`) for i in `seq 0 2 18` do if [ "${a[$i + 1]}" != "sp" ] then ser="$ser${a[$i + 1]}" fi if [ "${a[$i]}" != "sp" ] then ser="$ser${a[$i]}" fi done echo $ser } いががでしょうか。 sg_sat_identify がエラーを返したとき終了ステータスを取得する方法がわかりません・・・

CVS リポジトリーを Mercurial へ変換 (SJIS コミットログを UTF-8 に変換)

Mercuiral にはリポジトリーを変換する機能があります。 かって CVSNT で作成していたリポジトリーを Mercurial に変換したので記録しておきます。 重要: この作業は Linux で作業した方が圧倒的にトラブルが少ないです。 Windows 環境では CVSNT が邪魔をして コンバート自体がうまく動作しません。 今回は CentOS 6.5 に Mercurial をソースからインストール した環境で作業を行いました。 1. コンバートエクステンションを有効にする 前提としてコンバートエクステンションを有効にしておく必要があります。 .hgrc に [extensions] hgext.convert= を追加して有効にしておきます。 2. hghook-cvslog-transcoder を用意する。 CVS で作成してきたリポジトリーのコミットログは SJIS (cp932) です。mercurial の機能だけでコンバートするとコミットログは SJIS のままなので文字化けしてしまいます。 そこで  hghook-cvslog-transcoder  を利用します。  ダウンロード と書いてあるリンクからダウンロードできます。ここでは ~/hghook-cvslog-transcoder に展開したとします。 3. CVSリポジトリーを取得する。 CVS リポジトリーをローカルにコピーします。ローカルにコピーした方がトラブルが少ないですし、やり直しも楽です。ここではコピーしたリポジトリーを ~/cvsroot とします。 Windows Server から Linux へのファイルコピーですが、今回は Windows の共有フォルダーにリポジトリーをコピーしてから Linux のファイルブラウザでコピーしました。 4. CVS から変換対象のモジュールをチェックアウトする。 コピーしたCVSリポジトリーから変換対象となるモジュールをチェックアウトします。ここでは module とします。 $ cvs -d ~/cvsroot co module 5. Mercurial にコンバート。 後は変換するだけです。 --config オプションで hghook-cvsl

CentOS 6.5 でシリアルポートに接続する方法

シリアルポートを持った機器に接続する場合、Windows だったらハイパーターミナルや TeraTerm を使うんですが Linux の場合は何を使えばよいのか調べました。 screen というツールがよさそうです。 インストールは yum でおこないます。 $ sudo yum install screen シリアルポートは /dev/ttyS0 になっていますので $ sudo screen /dev/ttyS0 115200 の様に起動します。115200 は転送レートです。 終了は Ctrl + a のあと k を押します。メッセージが表示されますのでそれに従ってください。

Debian 7.8 で TortiseHg / Mercurial

イメージ
CentOS では使うのをあきらめた TortoiseHg が Debian ではパッケージが提供されているので簡単に使えます。 さっそく 使用できるようにした sudo コマンド をつかってインストールです。 $ sudo apt-get install tortoisehg メニュー>プログラミングから実行できます。 通常の hg コマンドも同時にインストールされます。

Debian 7.8 で sudo コマンドを使えるようにする

CentOS と同様に  Debian Linux でも sudo コマンドを使用できるようにします。 Debianではデフォルトでwheelグループがありませんが、変わりに sudo グループがあります。こちらにユーザーを追加すればよいようです。 $ su パスワード: # usermod -a -G sudo yourname /etc/group をみるとユーザーが追加されているのが分かります。 一旦ログアウトしてログインすると sudo コマンドが使用できるようになりました。

Debian 7.8 にリモートデスクトップ接続 (xrdp)

イメージ
CentOS で行ったのと同様に Windowsからのリモートデスクトップ接続を試みます。 xrdp のインストール su で root になったのち、 xrdp をインストールします。 # apt-get install xrdp v0.5が標準パッケージのようです。 ファイアーウォールの設定 インストールしておいた  gufw  を使用します。+ をクリックしてルールを追加します。 TCP 3389 を許可します。 許可されています。 この状態で Windowsからすでにリモート接続できます。 IPアドレスか、 名前解決 できていればホスト名で接続できます。 日本語キーボードの設定 インストールしたままでは日本語キーボードに対応していませんので設定ファイルを作成します。 1.  [Xrdp-devel] Keyboard issue and Japanese Keyboard Layout  から  km-e0010411.ini  をダウンロードします。 2. km-e0010411.ini から km-0411.ini km-e0200411.ini km-e0210411.ini を作成し、/etc/xrdp 以下にコピーします。以下はコマンドの例。 $ cd /etc/xrdp $ sudo cp ~/ダウンロード/km-e0010411.ini km-0411.ini $ sudo ln -s km-0411.ini  km-e0010411.ini $ sudo ln -s km-0411.ini  km-e0200411.ini $ sudo ln -s km-0411.ini  km-e0210411.ini 今回のインストールの結果、カーソルキーが別のキーとして認識されているみたいです。 具体的にいうと、↑↓キーを押すと、ウィンドウが最大化したりもとに戻ったりします。これはいろいろと不便です。 対応はキーボード設定のショートカットを変更するといいみたいです。 アプリケーションメニュー>システムツール>設定 からシステム設定を開きます。 キーボードをクリックし、ショートカットのタブを開きます。 Super+Up, Super+Down の設定

Debian 7.8 と Windows の名前解決

イメージ
CentOS 6.5 で Windows の名前解決 で行ったように Debian Linux でも同じように名前でアクセスできるようにします。 ファイヤーウォールの設定 インストールしておいた gufw を使用します。+ をクリックしてルールを追加します。 samba を許可します。 Service > Samba を選んで、追加をクリックします。 Debian ⇒ Windows 1. /etc/nsswitch.conf の hosts のエントリーに wins を追加します。 $ su パスワード: # vi /etc/nsswitch.conf hosts: files mdns4_minimal [NOTFOUD=return] dns mdns4 wins 2. winbind をインストールします。 # apt-get install winbind 3. nmblookup コマンドや ping コマンドで名前解決ができているか確認します。 Windows ⇒ Debian 1. Samba をインストールします。 # apt-get install samba インストールと同時にサービスが開始されます。 2. Windows から ping コマンドや net コマンドで名前解決ができているか確認します。 おまけ 名前解決ができているのに firefox や lceweasel のアドレスバーにホスト名を入力すると勝手にwww.と.comを補完されて面倒です。この振る舞いは設定で無効にできます。 1. アドレスバーに about:config と入力 2. browser.fixup.alternate.enabled = false に設定 ( http://easyramble.com/disable-auto-complete-on-firefox-location-bar.html  を参考にしました。)

Debian 7.8 に GUI のファイヤーウォールクライアントをインストール (gufw)

イメージ
Hyper-V に debian 7.8 をインストール でインストールしたDebian Linux に GUIのファイヤーウォールクライアントをインストールします。 今回は操作が分かりやすい gufw を使うことにしました。 1. su コマンドで root になります。 2. apt-get でインストールします。 # apt-get-install gufw 3. 端末から gufw と入力すると起動できます。 (メニューには追加されないようなので手動で追加しておくと便利です。) $ gufw 4. Unlock のボタンをクリックします。 root のパスワードを入力します。 5. ファイヤーウォールの Status をオンにします。 + をクリックするとルールを追加できます。 8. その他 リモートデスクトップからはCentOS と同様、アカウントの制限でファイヤーウォールの設定ができないようです。

Debian 7.8 でホスト名の変更

Hyper-V に debian 7.8 をインストール でインストールしたDebian Linux のホスト名を変更します。 1. 端末を開きます。 hostname コマンドを私用すると現在のホスト名が表示されます。 $ hostname debian 2. /etc/hostname を編集します。 まずsuコマンドでrootになります。 $ su パスワード: # vi を起動して /etc/hostname を編集します。 # vi /etc/hostname /etc/hostname はホスト名のみが記述されていますので好みの名前に変更します。 (例) debian ↓ wheezy 3. /etc/hosts を編集します。 vi を起動して /etc/hostname を編集します。 # vi /etc/hosts dhcp を使用している場合、 172.0.1.1 のエントリーにインストール時のホスト名、ドメイン名があるはずです。 (例) 127.0.1.1   debian.localdomain  debian ↓ 127.0.1.1   wheezy .localdomain   wheezy 編集が終わったら保存を忘れずに。 4. 再起動 Debian Linux を再起動したら新しいホスト名が反映されています。 # reboot 5. その他 hostname コマンドを使用して一時的にホスト名を変更することができます。これを実行した後、 gufw がクラッシュしました。対応できていないようです。 CentOS の場合は  CentOS 6.5 のホスト名の変更  に書いてあります。

Hyper-V に debian 7.8 をインストール

イメージ
Hyper-V ( Windows Server 2008 R2 ) に debian 7.8 をインストールしてみました。 インストールには以下の DVD イメージを使用しました。 http://cdimage.debian.org/debian-cd/7.8.0/amd64/iso-dvd/debian-7.8.0-amd64-DVD-1.iso Hyper-V に Scientific Linux 6.3 をインストール の記事と仮想マシンの作成までは同じなので省略します。 LISが含まれているのでインストールに関して問題のあることはなかったので画像だけ張り付けておきます。 再起動後、debian のログイン画面が表示され、ログインできました。初回のみGNOME3が読み込めない趣旨のメッセージが出ましたが、その後でなくなってしまったのでよくわかりません。問題なく動作しているようです。

SCM Manager をアップデートする

以前、インストールした SCM Manager をアップデートしてみました。 1.35 ⇒ 1.45 です。 手順はダウンロードしたアーカイブを置き換えて、JAVA_HOMEを設定するだけで完了しました。 設定などは上書きされなかったので大丈夫なようです。 以前の記事はこちらです。

xrdp 6.1

http://cobitech.blogspot.jp/2014/01/centos-65.html で使用した xrdp がバージョンアップして 0.6.1 になっていたみたいで、ソフトウェアの更新でうっかりインストールしてしまいました。 結果。 大丈夫みたいです。