ラベル debian の投稿を表示しています。 すべての投稿を表示
ラベル debian の投稿を表示しています。 すべての投稿を表示

2010-07-04

debian 64bitで32bitバイナリをビルドするメモ

64bit debianのgccでCプログラムをビルドするとデフォルトで64bitになる。

gccで32bitバイナリを作りたい時はgcc-multilib(C++の場合は、g++-multilib) を入れる

% sudo apt-get install gcc-4.1-multilib

として

% cc -m32 example.c

でOK

% objdump -p a.out | grep format
a.out:     file format elf32-i386
http://blog.gnu-designs.com/fix-for-incompatible-libstdc-error-message

2010-06-27

ddclientメモ

以前から使っていたDiCEではここ最近になってなぜかIPの更新ができなくなってしまったので、DynDNS.comの説明を参考にしてddclientを導入した。

ダイナミックDNSサービスはDynDNSを利用
https://www.dyndns.com/

IPアドレス更新クライアントについて
https://www.dyndns.com/support/clients/

Linux / UNIX Update Clients
https://www.dyndns.com/support/clients/unix.html


上側に書いてあったのでddclientを採用。
主要なOSのバイナリは配布されている。
debianなら導入はapt-getでも可。


DynDNSを使っていれば設定ファイルは以下から自動で生成できる
https://www.dyndns.com/support/tools/clientconfig.html

なかみはこんな感じ

## ddclient configuration file
daemon=600
# check every 600 seconds
syslog=yes
# log update msgs to syslog
mail-failure=メールアドレス # Mail failed updates to user
pid=/var/run/ddclient.pid
# record PID in file.
## Detect IP with our CheckIP server
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
## DynDNS username and password here
login=ログイン名
password=パスワード
## Default options
protocol=dyndns2
server=members.dyndns.org
## Dynamic DNS hosts
ホスト名

/etc/ddclient.confに書いて、/etc/init.d/ddclient restart で完了

2010-06-23

GoogleCLをdebianで試す

ちょっと便利そうなものがでてたので試してみました。

http://japan.cnet.com/news/service/story/0,3800104747,20415466,00.htm
http://code.google.com/p/googlecl/


まずプロジェクトページからダウンロード~普通にインストール

wget http://googlecl.googlecode.com/files/googlecl-0.9.7.tar.gz
tar xzf googlecl-0.9.7.tar.gz
cd googlecl-0.9.7
sudo python setup.py install


gdataが必要らしいので同様にインストール
http://code.google.com/p/gdata-python-client/


wget http://gdata-python-client.googlecode.com/files/gdata-2.0.10.tar.gz
tar xzf gdata-2.0.10.tar.gz
cd gdata-2.0.10
sudo python setup.py install


debianの場合は起動するpythonによって/usr/binにインストールされる場合と/usr/local/binになる場合があるので、エラーがでた場合は要確認。


ためしにbloggerにポストしてみます。
実際この記事は以下のコマンドでポストしました。

google blogger post --title "GoogleCLをdebianで試す" "`cat blog`"


複数ブログがある場合、このコマンドの後に番号で選択します。
なお、初回起動時はOAuthの認証が必要になります。
ブラウザがインストールされていれば自動で起動します。

設定をすればemacsとかでbloggerに投稿したりできるので便利です。

2010-04-18

debianの時計を合わせる

普通はOSをインストールした時にちゃんと設定されはずですが、どういう訳かシステムの時計がずれてきていたので設定方法をメモ。

時計を合わせるにはntpdateというパッケージを使います。
debianではntpdate-debianというコマンドが使えます。

$ sudo apt-get install ntpdate
$ sudo ntpdate-debian

これでNTPサーバに問い合わせて時計を合わせてくれます。
/etc/default/ntpdateファイルを編集すればNTPサーバを変更できます。

ついでにcrontabの設定もしておきます。

$ sudo crontab -e
0 0 1 * * ntpdate-debian

  

2010-02-20

Linux(Debian Lenny) KVMの仮想マシン用ネットワーク設定

前回KVMでOpenSolarisをセットアップしましたが、ネットワーク設定については省略していたので一応メモしておきます。

とは言っても基本的にはここに書いてあるとおりにすればOKです。
http://www.howtoforge.com/virtualization-with-kvm-on-a-debian-lenny-server


ネットワーク設定は、Debianの場合は/etc/network/interfaces ファイルを編集して行います。たぶんUbuntuでも同様です。
参考までに設定内容をさらしておきます。

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
auto eth0
iface eth0 inet manual

auto virbr0
iface virbr0 inet static
   address 192.168.1.50
   network 192.168.1.0
   netmask 255.255.255.0
   broadcast 192.168.1.255
   gateway 192.168.1.1
   bridge_ports eth0
   bridge_fd 9
   bridge_hello 2
   bridge_maxage 12
   bridge_stp offk

 仮想マシンを作成する際に、ネットワーク接続設定で共有物理装置を選択してここの設定で作成したブリッジを使用するようにします。
また、親機はLANで192.168.1.50にIP固定してますが、仮想マシンの方でもIPを固定したい場合は仮想マシン側で設定する必要があります。
最近のほとんどのOSではインストール時にデフォルトでDHCPが使われるので、IP固定する必要が無い場合は仮想マシン側で特に設定する必要はありません。

上記の設定をして、
% sudo /etc/init.d/networking restart

として、ifconfigすればvirbr0が追加されているのが確認できます。
% sudo ifconfig
eth0      Link encap:イーサネット  ハードウェアアドレス 00:1b:fc:b5:d7:16
          inet6アドレス: fe80::21b:fcff:feb5:d716/64 範囲:リンク
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
          RXパケット:2941586 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:4429749 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:1000
          RXバイト:783148810 (746.8 MiB)  TXバイト:5767081060 (5.3 GiB)
          割り込み:254 ベースアドレス:0x4000

lo        Link encap:ローカルループバック
          inetアドレス:127.0.0.1 マスク:255.0.0.0
          inet6アドレス: ::1/128 範囲:ホスト
          UP LOOPBACK RUNNING  MTU:16436  メトリック:1
          RXパケット:97752 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:97752 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:0
          RXバイト:131654783 (125.5 MiB)  TXバイト:131654783 (125.5 MiB)

virbr0    Link encap:イーサネット  ハードウェアアドレス 00:1b:fc:b5:d7:16
          inetアドレス:192.168.1.50 ブロードキャスト:192.168.1.255  マスク:255.255.255.0
          inet6アドレス: 2001:c90:1440:3692:21b:fcff:feb5:d716/64 範囲:グローバル
          inet6アドレス: fe80::21b:fcff:feb5:d716/64 範囲:リンク
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
          RXパケット:2638912 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:4277438 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:0
          RXバイト:271638921 (259.0 MiB)  TXバイト:5737162576 (5.3 GiB)

ここで仮想マシンを立ち上げると、以下のように vnet が追加されていきます。
vnet0     Link encap:イーサネット  ハードウェアアドレス 00:ff:ea:f3:9d:56
          inet6アドレス: fe80::2ff:eaff:fef3:9d56/64 範囲:リンク
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
          RXパケット:64 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:306 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:500
          RXバイト:7259 (7.0 KiB)  TXバイト:59290 (57.9 KiB)
以上で設定は終わりです。
一応仮想マシン側の方も確認してみます
$ ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
rtls0: flags=1004843 mtu 1500 index 2
        inet 192.168.1.15 netmask ffffff00 broadcast 192.168.1.255
lo0: flags=2002000849 mtu 8252 index 1
        inet6 ::1/128
rtls0: flags=2000841 mtu 1500 index 2
        inet6 fe80::5652:ff:fe34:e14/10
rtls0:1: flags=2080841 mtu 1500 index 2
        inet6 2001:c90:1440:3692:5652:ff:fe34:e14/64

こまかい内容はよく分かりませんが、とりあえずDHCPで192.168.1.15が割り当てられているようです。

ZenBackWidget