SSHが使えなくなった製品なので...
製品アップデートで動かなくなったSSHのために、
RedSleeveからopensshとopensslのパッケージを持ってきた話
http://qiita.com/hkato/items/1b220ac5bf9a6fdf0fd7
これがうまくいっている様なので、他のRPMパッケージもRed Sleeve Enterprise Linux 6化してしまおう
手順
diffのインストール
設定ファイルの差分を見たいため
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/diffutils-2.8.1-28.el6.armv5tel.rpm
# rpm -ivh diffutils-2.8.1-28.el6.armv5tel.rpm
yumのインストール
yumでRedSleeveを当てようと思うため、まずはyumを動かすために必要なパッケージを拾ってきてrpmコマンドでインストール/アップデートする
パッケージの取得
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/yum-3.2.29-69.el6.noarch.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/pygpgme-0.1-18.20090824bzr68.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/python-iniparse-0.3.1-2.1.el6.noarch.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/python-urlgrabber-3.9.1-9.el6.noarch.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/yum-metadata-parser-1.1.2-16.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/gpgme-1.1.8-3.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/python-pycurl-7.19.0-8.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/gnupg2-2.0.14-8.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/libcurl-7.19.7-46.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/pth-2.0.7-9.3.el6.0.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/pinentry-0.7.6-8.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/nss-3.19.1-8.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/libidn-1.18-2.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/libssh2-1.4.2-1.el6.1.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/nspr-4.10.8-2.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/nss-softokn-3.14.3-23.el6.0.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/nss-softokn-freebl-3.14.3-23.el6.0.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/nss-util-3.19.1-1.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/nss-sysinit-3.19.1-8.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/curl-7.19.7-46.el6.armv5tel.rpm
nss, curlなどのアップデート
yumがnssやcurlに依存しているためそこら辺を先にアップデートする
# rpm -Uvh nss-3.19.1-8.el6.armv5tel.rpm \
nss-softokn-3.14.3-23.el6.0.armv5tel.rpm \
nss-softokn-freebl-3.14.3-23.el6.0.armv5tel.rpm \
nss-util-3.19.1-1.el6.armv5tel.rpm \
nspr-4.10.8-2.el6.armv5tel.rpm \
nss-sysinit-3.19.1-8.el6.armv5tel.rpm \
curl-7.19.7-46.el6.armv5tel.rpm \
libcurl-7.19.7-46.el6.armv5tel.rpm \
libidn-1.18-2.el6.armv5tel.rpm \
libssh2-1.4.2-1.el6.1.armv5tel.rpm
yum自身のインストールと依存パッケージのアップデート
# rpm -Uvh yum-3.2.29-69.el6.noarch.rpm \
yum-metadata-parser-1.1.2-16.el6.armv5tel.rpm \
gpgme-1.1.8-3.el6.armv5tel.rpm \
python-iniparse-0.3.1-2.1.el6.noarch.rpm \
python-urlgrabber-3.9.1-9.el6.noarch.rpm \
python-pycurl-7.19.0-8.el6.armv5tel.rpm \
gnupg2-2.0.14-8.el6.armv5tel.rpm \
pth-2.0.7-9.3.el6.0.armv5tel.rpm \
pinentry-0.7.6-8.el6.armv5tel.rpm \
pygpgme-0.1-18.20090824bzr68.el6.armv5tel.rpm
リポジトリのインストール
yum repoをredsleeveのものにする
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/redsleeve-release-6-20160310.el6.armv5tel.rpm
# rpm -Uvh redsleeve-release-6-20160310.el6.armv5tel.rpm
いよいよupdate(失敗)
# yum update
とするが失敗してしまうpythonがエラーを吐く。とりあえずpythonをアップデートするか。
pythonのアップデート
必要パッケージの取得
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/python-2.6.6-64.el6.0.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/python-libs-2.6.6-64.el6.0.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/expat-2.0.1-11.el6.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/zlib-1.2.3-29.el6.armv5tel.rpm
アップデートの実施
# rpm -Uvh python-2.6.6-64.el6.0.armv5tel.rpm \
python-libs-2.6.6-64.el6.0.armv5tel.rpm \
expat-2.0.1-11.el6.armv5tel.rpm \
zlib-1.2.3-29.el6.armv5tel.rpm
いよいよupdate(でも失敗)
# yum update
それでも失敗。
rpmdbのクリアや色々してみたがダメ。よく考えるとrpmコマンド自身がyumに対して古そう…
rpmコマンドのアップデート
必要パッケージの取得
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/rpm-4.8.0-47.el6.0.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/rpm-libs-4.8.0-47.el6.0.armv5tel.rpm
# curl -O http://ftp.redsleeve.org/pub/el6/6.7/base/RPMS/rpm-python-4.8.0-47.el6.0.armv5tel.rpm
アップデート実施
# rpm -Uvh rpm-4.8.0-47.el6.0.armv5tel.rpm \
rpm-libs-4.8.0-47.el6.0.armv5tel.rpm \
rpm-python-4.8.0-47.el6.0.armv5tel.rpm
いよいよアップデート(成功?)
# yum update
一覧がちゃんと出てくる。yum,rpmに関しては動いている様子。
ただし、実際にアップデートを行おうとすると悲しいかなディスクフルで終了する。
いつかのディレクトリをHDDに割り当て
今まのシステムになかったyumのキャッシュやrpmのdbをhddに移す。
# mkdir -p /home/var/cache/yum
# rm -rf /var/cache/yum
# ln -s /home/var/cache/yum /var/cache/yum
# mkdir -p /home/var/lib
# mv /var/lib/yum /home/var/lib/
# ln -s /home/var/lib/yum /var/lib/yum
# mv /var/lib/rpm /home/var/lib/rpm
# ln -s /home/var/lib/rpm /var/lib/rpm
これでもディスクフル。
仕方ないので/usr/shareをhddへ…
# mkdir -p /home/usr
# mv /usr/share /home/usr/
# ln -s /home/usr/share /usr/share
それでもダメ。
仕方ないので次の様に…
1パッケージづつyumでアップデート(成功)
rpmの一覧を出して、fc12のパッケージだったらyum update -y hogeする様にしてみる
# rpm -qa|grep fc12 |sort|sed 's/-[0-9].*//;s/^/yum update -y /' | sh -
再起動
rebootが効かなくなってしまったら、次のページを参考に
インストール完了状況
OS名
# cat /etc/redhat-release
Red Sleeve Enterprise Linux release 6 (Leap)
RSEL6になっている
fc12残
# rpm -qa|grep fc12|sort
で未だにぞろぞろ出てくる。が、rsel6にはなくfc12にしかないパッケージ(主にマルチメディアを扱う系)やfc12の方が最新のものを採用しているもの
それと、サイズが大きくてディスクフルになってしまい依然アップデートできないもの
# yum update
.
.
.
================================================================================
パッケージ アーキテクチャ
バージョン リポジトリー
容量
================================================================================
更新:
glibc armv5tel 2.12-1.166.el6.7.0 updates 3.4 M
glibc-common armv5tel 2.12-1.166.el6.7.0 updates 14 M
openldap armv5tel 2.4.40-7.el6 base 248 k
samba armv5tel 3.6.23-24.el6 base 4.3 M
samba-common armv5tel 3.6.23-24.el6 base 8.4 M
samba-winbind-clients armv5tel 3.6.23-24.el6 base 1.7 M
依存性関連でのインストールをします。:
libtevent armv5tel 0.9.18-3.el6 base 23 k
nss-tools armv5tel 3.19.1-8.el6 base 412 k
samba-winbind armv5tel 3.6.23-24.el6 base 1.8 M
トランザクションの要約
================================================================================
インストール 3 パッケージ
アップグレード 6 パッケージ
ここら辺で良しとする。
これで
- IO DATA がbuildしたと思われる kernel-2.6.31.14
-
- Red Sleeve Enterprise Linux 6
-
- Fedora 12
になった
動作確認
とりあえず
- Web管理画面
- DAAP (mt-daapd)
- DLNA (minidlna)
- samba
- ssh/scp
など主要機能は動いている様子(自分はnetatalk, nfsは無効にしてます)