:::: MENU ::::
Posts tagged with: CentOS

eht0がリネームされ、ネットワークが使えない時の対処

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も合わせておく事。

再起動し、完了。


CentOSに統合アーカイバ atoolをインストール

LinuxのCUIにて、いろんなタイプの圧縮形式に対応するアーカイバ「atool」をインストールした。

対応フォーマット:tar  gzip、bzip2、compress、lzop、7z、rar、lha、ace、arj、rpm、deb、jar、7zip、cpio

インストール:

$ wget http://download.savannah.gnu.org/releases/atool/atool-0.39.0.tar.gz
$ tar zxf atool-0.39.0.tar.gz
$ cd atool-0.39.0/
$ ./configure
$ make
$ sudo make install

よく使うコマンド:

  • 中身確認:atool -l <Filename>
  • 解凍:atool -x <Filename>
  • 圧縮: atool <Archive>.<拡張子> -a <Filename1> <Filename2>…..
    拡張子にて自動で圧縮形式を判断する

実際、圧縮・解凍・リストなど別々のプログラムで動作しているのだが、atoolだけ覚えた方が楽。

ちなみに、最新版ではないが、rpmやdebパッケージも下記URLに用意されている。
http://download.savannah.gnu.org/releases/atool/


CentOSのFTPでパッシブモードで接続出来ない?

CentOS 5.8上のFTPでパッシブモードで接続出来ない症状が出るようです。
(ただし、iptablesを使用している場合)

何でも、0005135: After upgrade to 5.7 the ip_nat_ftp module breaks passive ftp connections – CentOS Bug Trackerによると、5.7からのバグらしい。

解決策は、iptables-config ファイルで ip_nat_ftp を削除する事で回避出来るとの事

# vi /etc/sysconfig/iptable-config
IPTABLES_MODULES="ip_conntrack_netbios_ns ip_conntrack_ftp"

保存後、iptablesをリロード(再起動)

# service iptables reload (restart)

s3cmdで警告メッセージが出る

CentOS,sl6で、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対応にする

FTPサーバソフトウェアはデフォールトでは危険性があるので、FXPを使用不可にしていることが多い。

でも、FXP対応だと便利であるのも確かなので、proftpdとvsftpdをFXP対応にする。

*FXPとは、簡単に言うと、クライアントのコネクションを経由しなくとも転送元のサーバから別のサーバにデータを転送できるプロトコルです。

 

vsftpd

/etc/vsftpd/vsftpd.confに下記2行を追加


pasv_promiscuous=YES

port_promiscuous=YES

ProFTPD

/etc/proftpd.conf内のGlobalセクション内に下記1行を追加

 AllowForeignAddress on 

編集・保存後は、それぞれプログラムを再起動

 

FXP転送を使用するには、FXP対応のクライアントでないと意味ありません。


RedHat系のOSで、不要になったパッケージを削除

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

libeventのエラーでyum更新出来ない

CentOS5.x上で、yum更新すると、下記のエラーのまま放置状態だったので、ようやく手をつけた。

–> Finished Dependency Resolution
Error: Missing Dependency: libevent-1.4.so.2 is needed by package memcached

memcachedは、remiパッケージから入れたもので、今回、nfsを使う用途が出てきたので、nfs-utilsをインストールしようとしたところ、やはり同じくlibeventのエラーで止まってしまう。

CentOSのリポジトリでは、libevent 1.1までしかなく、様々なプログラムが1.4を要求してくるので、手動にて更新してみた。

まず、memcachedを一旦削除。

# yum remove memcached

libevent 1.4をここからダウンロード(i386)

# wget "ftp://ftp.pbone.net/mirror/www.startcom.org/AS-5.0.0/updates/i386/libevent-1.4.13-1.i386.rpm"

libeventを手動更新

# rpm -Uvh libevent-1.4.13-1.i386.rpm

yum更新して、再度、memcachedインストール

# yum clean all
# yum update
# yum install memcached

今回、たまたまライブラリ関連のlibeventを手動更新したが、整合性がとれなくなり、プログラムが起動しなくなる恐れもあるので、真似する方は自己責任で!


bash-completionをインストール

CentOS6/sl6では、bash-completionが標準では入ってないのね。

epelのレポジトリを登録した後、下記でインストール

# yum install -y bash-completion --enablerepo=epel

ちなみに、bash-completion導入すると、コマンドの引数も保管してくれるので便利。


mkpasswdをインストールするには?

最近のRHEL6系(CentOSやScientific Linux)では、パスワード生成プログラムのmkpasswdが標準で入ってない。

yum search mkpasswdなどと、タイプしても見つかりません。

どうやら、expectのパッケージに入っているようなので、

# yum install -y expect

これで、mkpasswdが使えるようになる。


メモリ開放スクリプトをCronで実行

Linuxでも物理メモリが段々圧迫されて、未使用領域が少なくなってきます。
それほど、気にする必要はないのですが、知ってしまうと気になってしまうんですよね。

って事で、「CentOS 5で「空きメモリ」を増やす方法」のページを参考に、シェルスクリプトを借用させて頂きました。

date;
echo "total/used/free/shared/buffers/cached";
echo "before";
free -m|grep Mem:;
sync;
echo 3 > /proc/sys/vm/drop_caches;
echo 0 > /proc/sys/vm/drop_caches;
echo "after";
free -m|grep Mem:;

このスクリプトに、実行権限を与えて、/etc/cron.daily/に放り込むだけ。

但し、一度、手動でスクリプトを実行させ、問題ないことを確認した方が良いでしょう。

私の環境では、下記のようにメモリが開放されました。

            total used free shared buffers cached
before
Mem: 64396 52907 11489 0 695 49146
after
Mem: 64396 1791 62605 0 0 34

ちなみに、このスクリプトは、CentOS,Redhat,Ubuntu,Fedoraでも汎用性があるようです。

詳しくは、「減り続けるメモリ残量! 果たしてその原因は!?」をご覧頂ければと思います。


ページ:12345