NICを入れ替えたり、仮想化でゲストOSをコピーしたりするときに下記のエラーでネットワークが使用出来ない場合がある。
udev: renamed interface eth0 to eth1
ネットワークインターフェースは1つしかないのに、eth1に割り当てられる症状なのですが、以前に使っていたNICがeth0として記録され、情報が残っているからのようです。
この役目をしているのが、/etc/udev/rules.d/70-persistent-.rulesで、これを削除し、再起動して問題なければ良いが、場合によっては、症状が解決されず、消したはずの70-persistent-.rulesが復活します。
(どこかに設定が残ってる??)
この場合、70-persistent-.rulesを編集
# PCI device 0x14e4:0x163b (bnx2) (custom name provided by external tool) SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”77:22:cb:3a:9a:47“, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”eth0”
address部分とeth0の部分を合わせてあげれば良いかと。
もう一つ、確認しておきたいのは、/etc/sysconfig/network-scripts/ifcfg-eth0のHWADDRも合わせておく事。
再起動し、完了。
Scientific Linux 6から、そのままOracle Linuxへ移し替える、こんな記事「Oracle Linux 6.2 via さくらのVPS」がありましたので、早速、試してみました。
記事通りに行うことで、本当に入れ替わっちゃいましたよ。
ちなみに、ブート時は、Scientific Linux 6のまま。
CUIログイン画面は、「Oracle Linux Server release 6.2」
/etc/redhat-releaseは、「Red Hat Enterprise Linux Server release 6.2 (Santiago)」
何となく混在している感じで、あんまり気持ちイイものではないので、常用はしませんけどね。
一応、作業項目を掲載しておきます。
# yum erase sl-release selinux-policy dhcp-common -y # cd /etc/yum.repos.d # rm -f sl* # vi public-yum-ol6.repo [ol6_u2_base] name=Oracle Linux 6 U2 - $basearch - base baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/2/base/$basearch/ gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6 gpgcheck=1 enabled=1 # yum install oraclelinux-release -y # yum install -y \ selinux-policy \ dhcp-common \ acpid \ aic94xx-firmware \ b43-openfwwf \ bfa-firmware \ biosdevname \ cpuspeed \ crda \ cronie \ cronie-anacron \ crontabs \ cryptsetup-luks \ cryptsetup-luks-libs \ cyrus-sasl \ device-mapper \ device-mapper-event \ device-mapper-event-libs \ device-mapper-libs \ dhclient \ dmraid \ dmraid-events \ dracut \ dracut-kernel \ git \ hal \ hal-info \ initscripts \ iputils \ iwl100-firmware \ iwl5150-firmware \ iwl6000-firmware \ iwl6000g2a-firmware \ iwl6000g2b-firmware \ iwl6050-firmware \ kbd \ kexec-tools \ kpartx \ libdrm \ lvm2 \ lvm2-libs \ mdadm \ netxen-firmware \ ntp \ ntpdate \ openssh \ openssh-clients \ openssh-server \ parted \ pcmciautils \ perl-Git \ plymouth \ pm-utils \ policycoreutils \ postfix \ prelink \ python-iwlib \ quota \ readahead \ rng-tools \ rsyslog \ setuptool \ smartmontools \ sysstat \ system-config-network-tui \ udev \ usermode \ util-linux-ng \ virt-what \ wireless-tools \ yum-conf-sl-other \ # yum upgrade -y # shutdown -r now
# cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.2 (Santiago)
Oracle Linuxを本格的にサーバとして使用する場合には、正規の方法でインストールしましょう。
CentOS,Scientific Linux 6で、epelからs3cmdをインストール出来るのですが、バージョンが古いので、警告が出るようです。
$ s3cmd --version /usr/lib/python2.6/site-packages/S3/Utils.py:17: DeprecationWarning: the sha module is deprecated; use the hashlib module instead import sha as sha1 s3cmd version 0.9.9.9
解決方法として、
S3 tools – Browse /s3cmd at SourceForge.netから、最新版をダウンロードし、pythonインストールで解決出来ますね。
$ wget "http://downloads.sourceforge.net/project/s3tools/s3cmd/1.1.0-beta3/s3cmd-1.1.0-beta3.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fs3tools%2Ffiles%2Fs3cmd%2F1.1.0-beta3%2F&ts=1332030694&use_mirror=jaist" $ tar zxf s3cmd-1.1.0-beta3.tar.gz $ cd s3cmd-1.1.0-beta3/ $ sudo python setup.py install $ s3cmd --versions3cmd version 1.1.0-beta3
もう一つ、転送するときに、下記の警告も出る場合、
WARNING: Module python-magic is not available. Guessing MIME types based on file extensions.
yumでpython-magicをインストールすれば良い
# yum install python-magic
FTPサーバソフトウェアはデフォールトでは危険性があるので、FXPを使用不可にしていることが多い。
でも、FXP対応だと便利であるのも確かなので、proftpdとvsftpdをFXP対応にする。
*FXPとは、簡単に言うと、クライアントのコネクションを経由しなくとも転送元のサーバから別のサーバにデータを転送できるプロトコルです。
/etc/vsftpd/vsftpd.confに下記2行を追加
pasv_promiscuous=YES port_promiscuous=YES
/etc/proftpd.conf内のGlobalセクション内に下記1行を追加
AllowForeignAddress on
編集・保存後は、それぞれプログラムを再起動
FXP転送を使用するには、FXP対応のクライアントでないと意味ありません。
package-cleanupと言うコマンドを利用するが、デフォルトで入ってない場合がある。
入ってない場合は、下記でインストール
# yum install yum-utils
# package-cleanup --leaves Setting up yum libyaml-0.1.4-1.el5.rf.i386
# yum remove libyaml-0.1.4-1.el5.rf.i386
アップグレードする前に、6.2のリリースノートを見ましょう。
$ cat /etc/redhat-release
Scientific Linux release 6.1 (Carbon)
$ rpm -qa sl-release --qf '%{v}\n'
6.1
6.2へバージョンアップすると、/etc/yum.repo.d/sl.repoとsl-other.repoが更新されますので、カスタマイズしている方は、バックアップをとっておく。(sl.repo.rpmsaveが自動的にバックアップされるので必要ないかも)
小生は、カスタマイズしていないので、そのまま次へ進む
必要ないかもしれませんが、一応、6.1の最新バージョンにアップデートしておきます。
# yum update # yum clean all
いよいよ6.1から6.2へリポジトリを切り替えます。
# yum --releasever=6.2 update sl-release Running Transaction Updating : sl-release-6.2-1.1.x86_64 1/2 Cleanup : sl-release-6.1-2.x86_64 2/2 Updated: sl-release.x86_64 0:6.2-1.1
# cat /etc/redhat-release
Scientific Linux release 6.2 (Carbon)
# rpm -qa sl-release --qf '%{v}\n'
6.2
# yum update ... ...略 yum-plugin-security noarch 1.1.30-10.el6 sl 36 k Transaction Summary =========================================================================================================================================================== Install 3 Package(s) Upgrade 95 Package(s) Total download size: 35 M Is this ok [y/N]: y ….. yum-autoupdate.noarch 5:2-4.2 zlib.x86_64 0:1.2.3-27.el6 Complete!
これで、Scientific Linux 6の6.2へのアップグレードが完了しました。
出来れば、再起動した方が好ましいでしょう。
再起動後、無事、立ち上がり、「Scientific Linux release 6.2 (Carbon)」のログイン画面が出てきたら、終了です。
/boot領域が多くないので、私の環境では、古いKernelを削除しておいた。
# package-cleanup --oldkernels
さくらのVPS上で、時々Firefoxを起動する事があるけど、少しでも早いほうが良いので、キャッシュディレクトリをramdiskに設定してみた。
さくらのVPSに限ったわけではないので、通常Linux環境でも大丈夫。
/ramdiskにCacheディレクトリが作成されていれば、無事完了です。
さくらのVPS上で運用しているScientific Linux 6にMozcをインストールして、日本語が使いやすくなった。
ちなみに、Mozcって、Google日本語入力のオープンソース版の事ね。
通常のリポジトリでは、Mozcはサポートしていないので、より簡単にインストールができるIKOINOBAのリポジトリを利用させていただきました。
今回は、Scientific Linux 6の設定でしたけど、他のディストリビューション(UbuntuなどのDebian系、CentOS等のRedHat系)でも、IKOINOBAのリポジトリで対応してます。
本日、Scientific Linux 6のYUM更新で、kvm,qemu関連(qemu-kvm)をアップデートした後に、再起動したら、ゲストOSが起動しなくなってしまった。
ゲストOSを起動しようとすると、下記のエラー
ドメインの復元中にエラーが発生しました: cannot send monitor command ‘{“execute”:”qmp_capabilities”}’: Connection reset by peer
この対処法として、qemu内のsaveディレクトリに、ゲストOSのセーブデータが残っているのが原因なようなので、これを削除することで、解決出来るようです。
# cd /var/lib/libvirt/qemu/save server1.save server2.save
やはりセーブデータが残っていたので、これを削除。
rmで削除でなく、virshコマンドで削除なので、注意
# virsh managedsave-remove server1 Removed managedsave image for domain server1 # virsh managedsave-remove server2 Removed managedsave image for domain server2
セーブデータ削除後、「仮想マネージャー」のGUIにて、無事起動。
ちなみに、CUIだと、下記
# virsh start server1 ドメイン Server1 が起動されました
ゲストOS上で重要なサーバを起動しているので、ちょっぴり焦りました(^_^;
今回起こった症状の原因は、ゲストOSを停止させずに、ホストOSを再起動させた事が原因ではないかと推測しています。 ホストOSを再起動する際には、安全の為、ゲストOSを停止しておいた方が良いかもしれません。
尚、今回、http://d.hatena.ne.jp/think-t/20111220/p1の記事を参考にさせて頂いて、大変助かりました。(感謝)
CentOS6/Scientific Linux 6では、bash-completionが標準では入ってないのね。
epelのレポジトリを登録した後、下記でインストール
# yum install -y bash-completion --enablerepo=epel
ちなみに、bash-completion導入すると、コマンドの引数も保管してくれるので便利。