yuu_nkjm blog


2011-11-24(Thu) [長年日記] 編集

[KVM][LVM][openSUSE] LVMで管理された論理ボリュームをオンラインで拡張する

KVMの上で動かしているopenSUSEで,LVMで管理されているパーティション(論理ボリューム)をアンマウントすることなく拡張する.

仮想HDDの作成

virt-managerから,開く->詳細->ハードウェアの追加を選択する.Storage -> デバイスの種類:Virtio Diskを選択する.

LVMの操作

新しいHDDに物理ボリュームを作る

yastからパーティション設定を選ぶ.ハードディスク->/dev/vdb1 -> プライマリパーティション -> 最大サイズ -> パーティションをフォーマットしない(Linux LVM)と選ぶ.物理ボリューム/dev/vdb1が生成されている.

ボリュームグループへの物理ボリュームの追加

ボリュームグループへの物理ボリュームの追加がないやん…と思ったら,サイズ変更からできた.ボリューム管理-> サイズ変更から/dev/vdb1を選択して,追加する.

論理ボリュームのサイズ変更

/dev/system/root->サイズ変更を選んで,好きなサイズを選ぶ.サイズを増やすだけの場合のみ,アンマウントしなくても大丈夫なようだ.

以下の様な状態を想定する.

File System: /dev/mapper/system-root
mounted on: /
  • /dev/mapper/system-rootを/にマウントしたまま,/の容量を増やすことは出来る.
  • /dev/mapper/system-rootを/にマウントしたまま,/の容量を減らすことはできない.

関連ページ


2011-11-23(Wed) [長年日記] 編集

[sudo][rsync][ssh][backup] rsync + sudo + ssh

お題

  • リモートサーバのroot権限がないとアクセス出来ないファイルも含めて,バックアップが取りたい.
  • rootでは,リモートサーバにログインできない.一般ユーザでは鍵を使えばログインできる.

…というような状況なので,rsync + sudo + sshをすることを考える.

sudoを使ってリモートのバックアップ対象サーバにおいてrootでrsyncできる様にする

visodo
# /etc/sudoersの編集と同義.
 
#Defaults    requiretty
#ALL  ALL=(ALL) ALL 
#上記,二つをコメントアウト
# 追加
bakupuser ALL= NOPASSWD:/usr/bin/rsync

セキュリティを考えるとrsyncを許可するより,コピー先やオプションを書いたrsyncのシェルスクリプトを用意して,それの実行を許可した方が良いかな.

rsyncの実行

su 
rsync --rsync-path="sudo rsync" -qac hoge@hoge.nkjm.info:/ /mnt/backup/hoge.nkjm.info/

--rsync-pathはリモートで実行するrsyncを具体的に指定するオプション.これによりsudoしてrsyncをすることができる.

aはアーカイブのオプションで,つけとけば間違いない.qは出力を静かにさせる.詳細に振る舞いを確認したいときはvやvvとする.cはチェックサムの確認をする.オプション.

このケースでは,ssh-agentによる認証の転送をしてリモートサーバにログインをした.rsyncで明示的にssh+鍵認証をするなら,-eオプションを使う.

psしてみると,リモート側でrsyncが動いていることが分かる.


2011-11-22(Tue) [長年日記] 編集

[Apache][SSL][openSUSE] openSUSE11.4で認証局と証明書の作成

CAを生成するスクリプトがディストリビューションによって違うみたいなので,メモ.

CA【Certificate Authority】(認証局)の作成

cd /usr/share/ssl/misc/
./CA.pl -newca
 
CA certificate filename (or enter to create)
(enter)
Making CA certificate ...
Generating a 1024 bit RSA private key
......................++++++
..++++++
writing new private key to './demoCA/private/cakey.pem'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Kyoto
Locality Name (eg, city) []:Kyoto
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Kyoto
Organizational Unit Name (eg, section) []:Kyoto
Common Name (eg, YOUR name) []:*.nkjm.info
Email Address []:root@nkjm.info
.....
Write out database with 1 new entries
Data Base Updated

Common Nameが大事.ドメイン名と揃える必要がある.このとき*をワイルドカードとして用いることが出来る.

サーバ証明書を作成

openssl req -new -nodes -keyout mailkey.pem -out mailreq.pem -days 36500

証明書への署名

openssl ca -out mail_signed_cert.pem -infiles mailreq.pem
 
Using configuration from /etc/ssl/openssl.cnf
Enter pass phrase for ./demoCA/private/cakey.pem:
Check that the request matches the signature
Signature ok
Certificate Details:
(snip)
Sign the certificate? [y/n]:y
failed to update database
TXT_DB error number 2

ウェブレン社長 360°ブログ ≫ SSL プライベート認証局の構築によると,「openssl ca ,,,でサーバ証明書の発行、クライアント証明書の発行を行うと、failed to update database TXT_DB error number2 でエラーが発生する場合がある。この場合は、このデータベース($dir/index.txt)を一旦削除し、空のフアイルを作成(#touch $dir/index.txt)し、再実行するとうまくいく」とのこと.

rm demo/index.txt
touch demo/index.txt 
openssl ca -out mail_signed_cert.pem -infiles mailreq.pem
 
Using configuration from /etc/ssl/openssl.cnf
Enter pass phrase for ./demoCA/private/cakey.pem:
Check that the request matches the signature
Signature ok
Certificate Details:
(snip)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

トップ 最新 追記 設定
2006|01|06|12|
2007|06|09|
2008|01|03|04|06|07|08|09|10|12|
2009|01|02|05|06|07|08|10|11|12|
2010|03|04|05|06|07|08|09|10|11|
2011|01|02|03|04|05|06|07|08|09|11|12|
2012|01|02|04|06|07|08|10|11|12|
2013|01|02|03|07|08|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|
2015|01|02|07|11|12|
2016|01|03|05|07|08|09|