ユーザ権限で virt-manager がが

デスクトップOSとしてUbuntuを使うとサーバとの連携がいろいろと楽でいいのですが、
まれにその連携がうまくいかないことがあります。

今回はユーザ権限で起動したvirt-managerでlibvirtdに接続ができなかったので
対応した内容をメモ書きで残しておきます。

0. 環境

OS:Ubuntu 12.10 Desktop

1. エラー内容

libvirt に接続できませんでした。

Verify that:
– The ‘libvirt-bin’ package is installed
– The ‘libvirtd’ daemon has been started
– You are member of the ‘libvirtd’ group

Libvirt URI is: qemu:///system

Traceback (most recent call last):
File “/usr/share/virt-manager/virtManager/connection.py”, line 1027, in _open_thread
self.vmm = self._try_open()
File “/usr/share/virt-manager/virtManager/connection.py”, line 1009, in _try_open
flags)
File “/usr/lib/python2.7/dist-packages/libvirt.py”, line 102, in openAuth
if ret is None:raise libvirtError(‘virConnectOpenAuth() failed’)
libvirtError: ソケットの ‘/var/run/libvirt/libvirt-sock’ への接続に失敗しました: 許可がありません

 

2. 対応内容

root@phenom:~# vi /etc/libvirt/libvirtd.conf

root@phenom:/etc/libvirt# diff libvirt.conf.def libvirtd.conf
88c88
< unix_sock_ro_perms = “0770”

> unix_sock_ro_perms = “0777”
98c98
< unix_sock_rw_perms = “0770”

> unix_sock_rw_perms = “0777”
101c101
< #unix_sock_dir = “/var/run/libvirt”

> unix_sock_dir = “/var/run/libvirt”

root@phenom:~# service libvirt-bin stop
libvirt-bin stop/waiting
root@phenom:~#
root@phenom:~# service libvirt-bin start
libvirt-bin start/running, process 4368
root@phenom:~#

 

デフォルトではソケットファイルが作られないので、
ソケットファイルを生成しつつotherに権限を与えてあげれば良いかと。

ただ、otherに権限与えるのがあまり好ましくない環境ではおすすめしません。
よくよく考えるとlibvirtdグループに実行ユーザ加えてあげればいいような・・・

IPv6 環境で ufw を使ってみた

我が家の回線は KDDI の au ひかりなんですが、
auひかりといえばネイティブな IPv6 環境を提供してくれるナウい回線なわけで、いろいろ遊べるんですね。
それで、今日は我が家で運用しているサーバに載っているWordpress に対してロシアからアタックを食らっていたので、
そろそろファイウォールの導入でもしようかと考え、思い立ったら吉日でさっそく ufw を使ってみました。

ufw についての詳細は割愛しますが、Ubuntu に採用されている簡易的なファイアウォールで、
ベースは iptables なのですが、簡単に使えるようにした wrapper 的なプログラムといったところです。

以下のオプションで簡単に設定ができてしまいます。
ゆとり世代の私には大変ありがたい。

wktk# ufw –help

Usage: ufw COMMAND

Commands:
enable                          enables the firewall
disable                         disables the firewall
default ARG                     set default policy
logging LEVEL                   set logging to LEVEL
allow ARGS                      add allow rule
deny ARGS                       add deny rule
reject ARGS                     add reject rule
limit ARGS                      add limit rule
delete RULE|NUM                 delete RULE
insert NUM RULE                 insert RULE at NUM
reset                           reset firewall
status                          show firewall status
status numbered                 show firewall status as numbered list of RULES
status verbose                  show verbose firewall status
show ARG                        show firewall report
version                         display version information

Application profile commands:
app list                        list application profiles
app info PROFILE                show information on PROFILE
app update PROFILE              update PROFILE
app default ARG                 set default application policy

たとえば、192.167.79.29というロシアのIPからの接続をすべて拒否したいときは

wktk# ufw deny from 192.167.79.29

といった感じでルールを追加できます。
ここについても詳しく述べられているサイトがほかにありますので割愛します。

wktk# ufw status
Status: active

To                         Action      From
—                         ——      —-
Anywhere                   ALLOW       Anywhere
Anywhere                   DENY        192.167.79.29

で、ここからが本題です。

この ufw ですが、ルールを入れた後に enable したら、自宅ネットワーク内からサーバへの疎通が一切取れなくなってしまいました。
なぜかグーグル先生に聞いてみたところ、どうやら答えは /etc/default/ufw というファイルにあるようでした。

wktk# vi /etc/default/ufw

# /etc/default/ufw
#

# Set to yes to apply rules to support IPv6 (no means only IPv6 on loopback
# accepted). You will need to ‘disable’ and then ‘enable’ the firewall for
# the changes to take affect.
IPV6=no

ん?OS入れるとき v6 有効にしたままなのに、IPV6=no って・・・

IPV6=no を yes にしてあげたら無事に自宅内のLANからでも v6 でつなげるようになりましたとさ。

前置きが長かったですが、ご了承ください。

 

参考資料

Ubuntu Forums [ubuntu] ufw and ipv6  :http://ubuntuforums.org/showthread.php?t=1214543

 

Ubuntu 10.04 で quota メモ

インストール

root@wktk:/# apt-get install quota quotatool

fstab編集

root@wktk:/# vi /etc/fstab

“/etc/fstab” 12 lines, 681 characters
# /etc/fstab: static file system information.
#
# Use ‘blkid -o value -s UUID’ to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
# / was on /dev/vda1 during installation
UUID=c65156da-fd9f-4694-a3a3-cba8dd1db6bf /               ext4    errors=remount-ro,usrquota,grpquota 0       1
# swap was on /dev/vda5 during installation
UUID=2c8d9c41-c46a-4906-a633-cfd7be97d018 none            swap    sw              0       0

再マウント

root@wktk:/# mount -o remount /dev/vda1

wktk# mount
/dev/vda1 on / type ext4 (rw,errors=remount-ro,usrquota,grpquota)
proc on /proc type proc (rw,noexec,nosuid,nodev)
none on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /dev type devtmpfs (rw,mode=0755)
none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
none on /dev/shm type tmpfs (rw,nosuid,nodev)
none on /var/run type tmpfs (rw,nosuid,mode=0755)
none on /var/lock type tmpfs (rw,noexec,nosuid,nodev)
none on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
none on /var/lib/ureadahead/debugfs type debugfs (rw,relatime)

クオータの有効化

root@wktk:/# quotaon -p /dev/vda1
group quota on / (/dev/vda1) is on
user quota on / (/dev/vda1) is on
root@wktk:/# quota

root@wktk:/# quotaon -avug
/dev/vda1 [/]: group quotas turned on
/dev/vda1 [/]: user quotas turned on
root@wktk:/#

ファイルの所有権チェック

root@wktk:/# quotacheck -avugm
quotacheck: Your kernel probably supports journaled quota but you are not using it. Consider switching to journaled quot
a to avoid running quotacheck after an unclean shutdown.
quotacheck: WARNING – Quotafile //quota.user was probably truncated. Cannot save quota settings…
quotacheck: WARNING – Quotafile //quota.group was probably truncated. Cannot save quota settings…
quotacheck: Scanning /dev/vda1 [/] done
quotacheck: Checked 11909 directories and 76257 files
root@wktk:/#

 

クオータの状況確認

wktk# repquota -a
*** Report for user quotas on device /dev/vda1
Block grace time: 7days; Inode grace time: 7days
Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
———————————————————————-
root      — 1502740       0       0          78726     0     0

・・・(略)
wktk0002  —     120       0       0             14     0     0
wktk0003  —   51552       0       0           2517     0     0
wktk0004  —   47432       0       0           1168     0     0
wktk0005  —     860       0       0             82     0     0
・・・(略)
wktk#

 

クオータのDB更新

wktk# quotacheck -m -a

クオータテンプレートの適用

wktk# edquota -p tempuser wktk0003

 

 

Serversman@VPSをdebian 5.0から6.0へアップグレード

何かと某掲示板で話題の絶えない Serversman@VPS ですが、ベータ版のころからお付き合いして早2年。
Disk I/Oはもうご愛嬌といった感じでしょう。価格とクオリティの両立って難しいですね。

でもって、久々に暇だったので弄ってみました。

今回は Ubuntu 10.10 server のサポート切れということもあり、OSを変更してみました。
※ do-release-upgrade すればいい話なのですが、うまく動かなかったもので・・・

で、さっそくDTIのコンパネから初期化・OS変更をかけてみました。

ちなみに、Serversman@VPSのコンパネのOS選択画面はこんな感じです。
バージョンがわからないじゃないですか・・・

とりあえず、debian (64bit)を選択。
数十分経ってSSHで繋いでみると・・・

dti# cat /etc/debian_version
5.0.9
dti#

ウホッw lenny ってあと2ヶ月ぐらいでサポート切れるじゃないですがw
このまま使うの心もとないということで、6.o squeeze にバージョンアップしてみました。
自分の忘備録もかねて手順を記します。

1. aptの参照ソース変更

エディタで sources.list を編集。
s/lenny/squeeze/g  といった感じですかね。
それと、エラーが出るので2行目をコメントアウト。

dti# vi /etc/apt/sources.list

deb http://ftp.jp.debian.org/debian/ squeeze main contrib non-free
#deb http://ftp.jp.debian.org/debian-volatile/ squeeze/volatile main contrib non-free
deb http://security.debian.org/ squeeze/updates main contrib non-free
~

2. 気合で apt-get update / upgrade する

apt-get update / upgrade 中にconfを最新版に置き換えていいかとか聞いてくるので、
支障がなさそうなconfは全部最新版に上げる。

dti# apt-get update
Get:1 http://security.debian.org squeeze/updates Release.gpg [836B]
Get:2 http://ftp.jp.debian.org squeeze Release.gpg [1672B]

(略)confを最新版に置き換えていいかとか聞かれる

dti# apt-get upgrade
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following packages have been kept back:
apache2 apache2-mpm-prefork apache2.2-common apt apt-utils bash bind9 bind9utils binutils cpio cron debianutils
dhcp3-client dhcp3-common diff dpkg e2fsprogs ed expect findutils ftp gcc-4.3-base gnupg gpgv grep groff groff-base

(略)confを最新版に置き換えていいかとか聞かれる

dti#

 

3. バージョン上がったか恐る恐る確認する

6.0.xになってれば成功?かな。

dti# cat /etc/debian_version
6.0.3
dti#

ちなみにカーネルはOpenVZなので、ホストOSのバージョンに依存します・・・
つまり、上がりません。

dti# uname -a
Linux dti.mykw.jp 2.6.18-164.15.1.el5.028stab068.9 #1 SMP Tue Mar 30 18:07:38 MSD 2010 x86_64 GNU/Linux
dti#

残念!

 

4. いらない子のお掃除 & 再起動

いらない子をお掃除してディスクを節約。

dti# apt-get autoremove
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following packages will be REMOVED:
libbind9-50
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 81.9 kB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database … 28104 files and directories currently installed.)
Removing libbind9-50 …
dti# shutdown -r now

Broadcast message from root@dti.mykw.jp (pts/4) (Sun Jan 22 21:54:51 2012):
The system is going down for reboot NOW!

再起動を待つこと十分程度・・・・
なんでこんなに遅いんだろ。オーバーヘッドの少ないOpenVZなのに・・・

とりあえず、以上で作業は終了。
簡単でしたが、VMが遅すぎて1日仕事でした。
せっかくIPv6もネイティブでサポートしてるので早く改善されることを願うばかりです。

 

Cloud Core VPS の Unixbench/ddベンチの結果

いろいろと所縁の深いKDDI Web CommunicationsのCloud Core VPSでUnixbenc測ってみました。
CPUはOpteron 1Core/メモリは2GB/ストレージは100GB カタログスペックper価格の比は最安なんじゃないんでしょうか?
ただし、さくらのVPSと比較してしまうと以下の点が劣って見えてしまいます。

・PTRレコードを任意のホスト名で設定できない

・現状ではOSを選べない(CentOS5.x)

・リモートコンソールがない

・リソースモニタがない

逆引きを除いて、これらの機能は今後拡張する予定とのことなので
”客観的に”みるとしばらく様子を見るといった感じでしょうかね。

CloudCore VPS|KDDIウェブコミュニケーションズ
http://www.cloudcore.jp/vps/

ちなみにddベンチに関しては過去に競合各社のベンチをとっているので
比較なんかしてみるといいかも?
http://blog.mykw.jp/?p=238

dd ベンチの結果

[root@kvps yutaro]# dd if=/dev/zero of=./hoge bs=1M count=5000
5000+0 records in
5000+0 records out
5242880000 bytes (5.2 GB) copied, 36.609 seconds, 143 MB/s
[root@kvps yutaro]#

Unixbenchの結果

#    #  #    #  #  #    #          #####   ######  #    #   ####   #    #
#    #  ##   #  #   #  #           #    #  #       ##   #  #    #  #    #
#    #  # #  #  #    ##            #####   #####   # #  #  #       ######
#    #  #  # #  #    ##            #    #  #       #  # #  #       #    #
#    #  #   ##  #   #  #           #    #  #       #   ##  #    #  #    #
####   #    #  #  #    #          #####   ######  #    #   ####   #    #

Version 5.1.2                      Based on the Byte Magazine Unix Benchmark

Multi-CPU version                  Version 5 revisions by Ian Smith,
Sunnyvale, CA, USA
December 22, 2007                  johantheghost at yahoo period com

1 x Dhrystone 2 using register variables  1 2 3 4 5 6 7 8 9 10

1 x Double-Precision Whetstone  1 2 3 4 5 6 7 8 9 10

1 x Execl Throughput  1 2 3

1 x File Copy 1024 bufsize 2000 maxblocks  1 2 3

1 x File Copy 256 bufsize 500 maxblocks  1 2 3

1 x File Copy 4096 bufsize 8000 maxblocks  1 2 3

1 x Pipe Throughput  1 2 3 4 5 6 7 8 9 10

1 x Pipe-based Context Switching  1 2 3 4 5 6 7 8 9 10

1 x Process Creation  1 2 3

1 x System Call Overhead  1 2 3 4 5 6 7 8 9 10

1 x Shell Scripts (1 concurrent)  1 2 3

1 x Shell Scripts (8 concurrent)  1 2 3

========================================================================
BYTE UNIX Benchmarks (Version 5.1.2)

System: ccvps.mykw.jp: GNU/Linux
OS: GNU/Linux — 2.6.18-274.7.1.el5 — #1 SMP Thu Oct 20 16:21:01 EDT 2011
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap=”UTF-8″, collate=”UTF-8″)
CPU 0: AMD Phenom(tm) 9550 Quad-Core Processor (4400.8 bogomips)
x86-64, MMX, AMD MMX, Physical Address Ext, SYSENTER/SYSEXIT, AMD virtualization, SYSCALL/SYSRET
01:32:11 up 4 min,  2 users,  load average: 0.01, 0.09, 0.05; runlevel 3

————————————————————————
Benchmark Run: Thu Nov 17 2011 01:32:11 – 02:00:02
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        8842083.6 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1900.4 MWIPS (9.8 s, 7 samples)
Execl Throughput                               3415.6 lps   (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        657083.0 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks          205984.6 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        826868.3 KBps  (30.0 s, 2 samples)
Pipe Throughput                             1877406.2 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 310101.4 lps   (10.0 s, 7 samples)
Process Creation                               7311.9 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   4047.4 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    561.2 lpm   (60.1 s, 2 samples)
System Call Overhead                        2585518.8 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    8842083.6    757.7
Double-Precision Whetstone                       55.0       1900.4    345.5
Execl Throughput                                 43.0       3415.6    794.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     657083.0   1659.3
File Copy 256 bufsize 500 maxblocks            1655.0     205984.6   1244.6
File Copy 4096 bufsize 8000 maxblocks          5800.0     826868.3   1425.6
Pipe Throughput                               12440.0    1877406.2   1509.2
Pipe-based Context Switching                   4000.0     310101.4    775.3
Process Creation                                126.0       7311.9    580.3
Shell Scripts (1 concurrent)                     42.4       4047.4    954.6
Shell Scripts (8 concurrent)                      6.0        561.2    935.3
System Call Overhead                          15000.0    2585518.8   1723.7
========
System Benchmarks Index Score                                         963.5