[Comm] Нужно проапгрейдить ядро из сизифа . Что качать кроме самого ядра?

Alex Yustasov =?iso-8859-1?q?snmon_=CE=C1_server=2Eby?=
Вт Сен 24 16:33:08 MSD 2002


On Tue, Sep 24, 2002 at 02:16:02PM +0400, Alexey V. Lubimov wrote:
> On Tue, 24 Sep 2002 16:01:01 +0600
> Igor Prischepoff <igor на tyumbit.ru> wrote:
> 
> > Здравствуйте все.
> > 
> > Alt Linux master 2.0
> > 
> > Для разрешения моих проблем с альзой и звуком
> > мне посоветовали проапгрейдить ядро из сизифа.
> > Вопрос:
> >  что нужно выкачивать кроме rpm'ки своего ядра?

kernel24-...rpm
alsa24-...rpm
kernel24-headers-...rpm
если надо NVIDIA_kernel-...rpm

> >  и альзы.Нужно ли качать новые альза миксер и плеер?

миксер и плеер наверное не надо

> >  Проапгрейдится с помощью apt не могу. Комп домашний.инета там нету.
> 
> финт ушами. 
> качаете каталог 
> ftp.altlinux.ru/pub/distributions/ALTLinux/Sisyphus/i586/base/*
>
Ну весь не надо. Хватит и
ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/Sisyphus/i586/base/hashfile.gpg                    
ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/Sisyphus/i586/base/release.core                    
ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/Sisyphus/i586/base/release.classic                 
ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/Sisyphus/i586/base/pkglist.classic.bz2             
ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/Sisyphus/i586/base/srclist.classic.bz2             
А потом bunzip2 -k *.bz2

> затем у себя на винчестере создаете каталог
> 
> /Sisyphus/i586/base/ 
> и кладете туда скачанное содержимое.
> 
> в /etc/apt/sources.list добавляете
> 
> file [alt] /Sisyphus i586 classic
> 
> после чего apt-get update
> и далее 
> apt-get install пакет
> будет информировать вас о том, чего не хватает для этого пакета.
> поставить аптом ничего не удастся, потому как пакетов то не будет, но вся инфраструктура должна работать.
> 
> 
> 
А потом можно попробовать скриптик (в аттаче). Только не пинайте ногами.
Писал вначале для rsync-a, потом переделывал для wget. Писатель тоже не
ахти-какой. И наверное perl-ом было-бы проще. Но не вем.
Потом качаю wget -c -x -nH --cut-dirs=4 -i inc-load
где нибудь в другой директории. А потом качаю в .../i586/RPMS.classic
Вместо apt-get dist-upgrade можно ставить apt-get install ...
или закоментировать эту строчку и в ком. строке apt-get install ... >& out
и натравливать на out
> 
> 
----------- следующая часть -----------
#!/bin/bash

echo 'y' > outy

sudo apt-get dist-upgrade < outy >& out
rm -f outy

declare -a LIST

I=0
for i in $(cat out) 
do
    LIST[$((I))]=$i
    I=$(($I + 1))
done

NUM=$(($I))

for ((J=0; NUM > J; J=(($J + 1))))
do
    if [ ${LIST[$((J))]} == "Не" ] ; then
	if [ ${LIST[$((J + 1))]} == "удалось" ] ; then
	    if [ ${LIST[$((J + 2))]} == "получить" ] ; then
		break;
	    fi
	fi
    fi
done

J=$(($J + 3))


# лень доделывать
# 1 - если всего один файл, и он с неправильной длинной
# 2 - если два подряд файла с неправильной длинной
echo > inc-rpm
echo > tmp-wget
for ((I=0; NUM > I; I=(($I + 1))))
do
    if [ ${LIST[$((I))]} == "Err" ] ; then
	if [ ${LIST[$((I + 1))]} == 'file:' ] ; then
		echo ${LIST[$((J))]} >> tmp-wget
		echo '# '${LIST[$((J))]} >> inc-rpm
		while true
		do
		    if [ ${LIST[$((J + 1))]} == 'Size' ]; then
			if [ ${LIST[$((J + 2))]} == 'mismatch' ]; then
			    J=$(($J + 6))
			    echo '#!!! Size mismatch' >> inc-rpm
			    echo ${LIST[$((J))]} >> tmp-wget
			    echo '# '${LIST[$((J))]} >> inc-rpm
			fi
		    else
			J=$(($J + 7))
			break
		    fi
		done
		echo ${LIST[$((I + 3))]}'-'${LIST[$((I + 4))]}'*' >> inc-rpm
	fi
    fi
done

echo > inc-load
for i in $(cat tmp-wget)
do
    echo 'ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/Sisyphus/i586/'$(echo $i | cut -d '/' -f6,7,8) >> inc-load
done
rm -f tmp-wget


Подробная информация о списке рассылки community