URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 90939
[ Назад ]

Исходное сообщение
"Freebsd uname -a"

Отправлено Kris , 14-Фев-11 00:40 
Добрый вечер.

Обновился через cvsup
сам файл

*default  host=cvsup3.ua.FreeBSD.org
*default  base=/var/db
*default  prefix=/usr
*default  release=cvs tag=RELENG_8_2
*default  delete use-rel-suffix
*default compress
src-all
#ports-all

собрал мир, ядро, проинсталил ядро и мир.

Суть проблемы:

[root@gw-151-20 /usr/home/kris]# uname -a
FreeBSD gw-151-20.cnm.local 8.0-RELEASE FreeBSD 8.0-RELEASE #5: Tue Feb  8 21:36:19 EET 2011     root@gw-151-142.cnm.local:/usr/src/sys/amd64/compile/AMD64_IPFW  amd64

А теперь смотрим
[root@gw-151-20 /usr/home/kris]# uname -i
GENERIC
Все верно, я чдро собрал дефалтное специально, 5-й раз, прозревая почему это я не обновился.

Еще интересней

[root@gw-151-20 /usr/home/kris]# cat /usr/src/sys/conf/newvers.sh|less
TYPE="FreeBSD"
REVISION="8.2"
BRANCH="RC3"
if [ "X${BRANCH_OVERRIDE}" != "X" ]; then
        BRANCH=${BRANCH_OVERRIDE}

Вопрос, почему меня обманывает система. И что сделать, что бы она показывала верную информацию через uname -a



Содержание

Сообщения в этом обсуждении
"Freebsd uname -a"
Отправлено anonymouse , 14-Фев-11 02:43 
а разве вышел релиз 8.2 ?

"Freebsd uname -a"
Отправлено alexmest , 14-Фев-11 02:56 
посмотрите http://www.opennet.me/opennews/art.shtml?num=29292

Удачи


"Freebsd uname -a"
Отправлено lavr , 14-Фев-11 10:15 
>[оверквотинг удален]
> я не обновился.
> Еще интересней
> [root@gw-151-20 /usr/home/kris]# cat /usr/src/sys/conf/newvers.sh|less
> TYPE="FreeBSD"
> REVISION="8.2"
> BRANCH="RC3"
> if [ "X${BRANCH_OVERRIDE}" != "X" ]; then
>         BRANCH=${BRANCH_OVERRIDE}
> Вопрос, почему меня обманывает система. И что сделать, что бы она показывала
> верную информацию через uname -a

reboot был выполнен?


"Freebsd uname -a"
Отправлено Sand , 15-Фев-11 13:50 
cat /usr/src/Makefile - смотрим там

# For individuals wanting to upgrade their sources (even if only a
# delta of a few days):
#
#  1.  `cd /usr/src'       (or to the directory containing your source tree).
#  2.  `make buildworld'
#  3.  `make buildkernel KERNCONF=YOUR_KERNEL_HERE'     (default is GENERIC).
#  4.  `make installkernel KERNCONF=YOUR_KERNEL_HERE'   (default is GENERIC).
#       [steps 3. & 4. can be combined by using the "kernel" target]
#  5.  `reboot'        (in single user mode: boot -s from the loader prompt).
#  6.  `mergemaster -p'
#  7.  `make installworld'
#  8.  `make delete-old'
#  9.  `mergemaster'                         (you may wish to use -U or -ai).
# 10.  `reboot'
# 11.  `make delete-old-libs' (in case no 3rd party program uses them anymore)
#
# See src/UPDATING `COMMON ITEMS' for more complete information.
#

проверяем, все ли операции сделаны
в частности mergemaster, который обновляет motd


"Freebsd uname -a"
Отправлено lavr , 15-Фев-11 17:48 
>[оверквотинг удален]
>       (you may wish to use
> -U or -ai).
> # 10.  `reboot'
> # 11.  `make delete-old-libs' (in case no 3rd party program uses
> them anymore)
> #
> # See src/UPDATING `COMMON ITEMS' for more complete information.
> #
> проверяем, все ли операции сделаны
> в частности mergemaster, который обновляет motd

motd никак не влияет на uname


"Freebsd uname -a"
Отправлено Kris , 16-Фев-11 02:19 
>[оверквотинг удален]
>> -U or -ai).
>> # 10.  `reboot'
>> # 11.  `make delete-old-libs' (in case no 3rd party program uses
>> them anymore)
>> #
>> # See src/UPDATING `COMMON ITEMS' for more complete information.
>> #
>> проверяем, все ли операции сделаны
>> в частности mergemaster, который обновляет motd
> motd никак не влияет на uname

Что то мне уже не смешно даже.

Имею:

uname -a
FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64

Хочу пересобрать себе ядро.
cd /usr/src/sys/amd64/conf/
[root@gw-151-143 /usr/src/sys/amd64/conf]#
[root@gw-151-143 /usr/src/sys/amd64/conf]# config AMD64_IPFW
Kernel build directory is ../compile/AMD64_IPFW
Don't forget to do ``make cleandepend && make depend''
[root@gw-151-143 /usr/src/sys/amd64/conf]# cd ../compile/AMD64_IPFW
[root@gw-151-143 /usr/src/sys/amd64/compile/AMD64_IPFW]# make cleandepend && make depend $$ make && make install

Перезагружаюсь
uname -a

FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64

В файле AMD64_IPFW
ident           AMD64_IPFW

Технологию вида
make buildkernel KERNCONF=AMD64_IPFW
make installkernel KERNCONF=AMD64_IPFW

Тоже пробовал.

Кто подскажет,что делать .....


"Freebsd uname -a"
Отправлено Kris , 16-Фев-11 02:41 
>[оверквотинг удален]
> uname -a
> FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011
>     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64
> В файле AMD64_IPFW
> ident           AMD64_IPFW
> Технологию вида
> make buildkernel KERNCONF=AMD64_IPFW
> make installkernel KERNCONF=AMD64_IPFW
> Тоже пробовал.
> Кто подскажет,что делать .....

Причем в процессе, такие приятные глазу строки
--------------------------------------------------------------
>>> Kernel build for AMD64_IPFW completed on Wed Feb 16 01:38:46 EET 2011

--------------------------------------------------------------

Тут же делаю
make installkernel KERNCONF=AMD64_IPFW

Перезагружаюсь и получаю
[root@gw-151-143 /usr/home/kris]# uname -a
FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64

Слово GENERIC - это уже глобальная переменная что ли ?


"Freebsd uname -a"
Отправлено Kris , 16-Фев-11 10:03 
>[оверквотинг удален]
> --------------------------------------------------------------
>>>> Kernel build for AMD64_IPFW completed on Wed Feb 16 01:38:46 EET 2011
> --------------------------------------------------------------
> Тут же делаю
>  make installkernel KERNCONF=AMD64_IPFW
> Перезагружаюсь и получаю
> [root@gw-151-143 /usr/home/kris]# uname -a
> FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011
>     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64
> Слово GENERIC - это уже глобальная переменная что ли ?

И паралельно вопрос, к тем кто делал downgrade Freebsd.
Это возможно удаленно ? Если да, то как и какие ограничения (например в пределах одной ветки....)


"Freebsd uname -a"
Отправлено lavr , 16-Фев-11 14:35 
>[оверквотинг удален]
> --------------------------------------------------------------
>>>> Kernel build for AMD64_IPFW completed on Wed Feb 16 01:38:46 EET 2011
> --------------------------------------------------------------
> Тут же делаю
>  make installkernel KERNCONF=AMD64_IPFW
> Перезагружаюсь и получаю
> [root@gw-151-143 /usr/home/kris]# uname -a
> FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011
>     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64
> Слово GENERIC - это уже глобальная переменная что ли ?

слово GENERIC - имя ядра:
/usr/src/sys/amd64/compile/GENERIC

ваши беды от каши и сумбура:

1) config - это старый метод сборки ЯДРА (только ядра) у всех xBSD и я бы его
НЕ СТАЛ ИСПОЛЬЗОВАТЬ!
Посему, зачистите /sys/amd64/compile
2) лучше использовать традиционный метод сборки из /usr/src
3) перед сборкой чего-либо, следует выполнять:

# rm -rf /usr/obj/*

Допустим у меня установлена 8.2-RC3, те и система и ядро синхронизированы:
система 8.2-RC3 (бинарники) и ядро 8.2-RC3, тогда я могу без пересборки системы,
собирать только нужное мне ядро:

- зачищаем /usr/obj

# rm -rf /usr/obj/*

- переходим в /usr/src

# cd /usr/src

- собираем и устанавливаем ядро:
сборка:

# make buildkernel KERNCONF=NAME (где NAME имя файла ядра из /sys/ARCH/conf, где ARCH - требуемая архитектура)

инсталляция:

# make installworld KERNCONF=NAME

прим: внутри одной ветки можно сделать downgrade, хотя лучше до этого не доводить,
важно с чем собран третичный софт: версии системных библиотек


"Freebsd uname -a"
Отправлено Kris , 16-Фев-11 14:39 
>[оверквотинг удален]
> # cd /usr/src
> - собираем и устанавливаем ядро:
> сборка:
> # make buildkernel KERNCONF=NAME (где NAME имя файла ядра из /sys/ARCH/conf, где
> ARCH - требуемая архитектура)
> инсталляция:
> # make installworld KERNCONF=NAME
> прим: внутри одной ветки можно сделать downgrade, хотя лучше до этого не
> доводить,
> важно с чем собран третичный софт: версии системных библиотек

Спасибо большое. Сейчас буду пробовать.
Как посмотреть, что и бинарники и система синхронизированы ? (нет не стыдно такое спрашивать, хоть и не первое ядро собираю....). Видимо пора поспать.



"Freebsd uname -a"
Отправлено Kris , 16-Фев-11 14:42 
>[оверквотинг удален]
>> # make buildkernel KERNCONF=NAME (где NAME имя файла ядра из /sys/ARCH/conf, где
>> ARCH - требуемая архитектура)
>> инсталляция:
>> # make installworld KERNCONF=NAME
>> прим: внутри одной ветки можно сделать downgrade, хотя лучше до этого не
>> доводить,
>> важно с чем собран третичный софт: версии системных библиотек
> Спасибо большое. Сейчас буду пробовать.
> Как посмотреть, что и бинарники и система синхронизированы ? (нет не стыдно
> такое спрашивать, хоть и не первое ядро собираю....). Видимо пора поспать.

Вот допустим у меня

FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64
Это значит, что рассинхронизированы, потому. что
8.2-RC3
FreeBSD 8.2-RC3 #1

Да ?


"Freebsd uname -a"
Отправлено Kris , 16-Фев-11 14:57 
>[оверквотинг удален]
>> Спасибо большое. Сейчас буду пробовать.
>> Как посмотреть, что и бинарники и система синхронизированы ? (нет не стыдно
>> такое спрашивать, хоть и не первое ядро собираю....). Видимо пора поспать.
> Вот допустим у меня
> FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011
>     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64
> Это значит, что рассинхронизированы, потому. что
> 8.2-RC3
> FreeBSD 8.2-RC3 #1
> Да ?

Интересно получается.
Делаю

[root@www /usr/home/kris]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked (uses shared libs), for FreeBSD 8.1, stripped

И меня смущает for FreeBSD 8.1
Ведь это не правильно ?



"Freebsd uname -a"
Отправлено Kris , 16-Фев-11 15:00 
>[оверквотинг удален]
>> Это значит, что рассинхронизированы, потому. что
>> 8.2-RC3
>> FreeBSD 8.2-RC3 #1
>> Да ?
> Интересно получается.
> Делаю
> [root@www /usr/home/kris]# file /bin/ls
> /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked (uses
> shared libs), for FreeBSD 8.1, stripped
> И меня смущает for FreeBSD 8.1

Попробовал

[root@gw-151-143 /usr/home/kris]# freebsd-update upgrade -r 8.2-RC3
freebsd-update: Cannot upgrade from 8.2-RC3 to itself

Значит бинарники все таки 8.2 ?

> Ведь это не правильно ?


"Freebsd uname -a"
Отправлено Kris , 16-Фев-11 15:14 
>[оверквотинг удален]
>> Делаю
>> [root@www /usr/home/kris]# file /bin/ls
>> /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked (uses
>> shared libs), for FreeBSD 8.1, stripped
>> И меня смущает for FreeBSD 8.1
> Попробовал
> [root@gw-151-143 /usr/home/kris]# freebsd-update upgrade -r 8.2-RC3
> freebsd-update: Cannot upgrade from 8.2-RC3 to itself
> Значит бинарники все таки 8.2 ?
>> Ведь это не правильно ?

Сделал в /usr/src/

make buildkernel KERNCONF=AMD64_IPFW
make installkernel KERNCONF=AMD64_IPFW

перезагрузился.

Ситуация та же.
[root@gw-151-143 /usr/home/kris]# uname -a
FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64

/usr/obj  чистил


"Freebsd uname -a"
Отправлено h , 17-Фев-11 16:48 
>>[оверквотинг удален]
>>> Делаю

cat /etc/make.conf

покажите ....


"Freebsd uname -a"
Отправлено lavr , 17-Фев-11 00:15 
>[оверквотинг удален]
>>> Спасибо большое. Сейчас буду пробовать.
>>> Как посмотреть, что и бинарники и система синхронизированы ? (нет не стыдно
>>> такое спрашивать, хоть и не первое ядро собираю....). Видимо пора поспать.
>> Вот допустим у меня
>> FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011
>>     root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC  amd64
>> Это значит, что рассинхронизированы, потому. что
>> 8.2-RC3
>> FreeBSD 8.2-RC3 #1
>> Да ?

нет, вы увидели только ядро, оно 8.2-RC3

> Интересно получается.
> Делаю
> [root@www /usr/home/kris]# file /bin/ls
> /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked (uses
> shared libs), for FreeBSD 8.1, stripped
> И меня смущает for FreeBSD 8.1
> Ведь это не правильно ?

да, это очень нехорошо, система может очень ненормально работать.

в xBSD система - это то что называется binaries/бинарники и ядро, должны быть
синхронизированы, те система и ядро должны быть одной версии.

Те (то есть), если мы выполнили csup или svn - апгрейд sources, то далее мы должны:

зачищаем /usr/obj - туда кладутся вновь собранные бинарники и ядро:

# rm -rf /usr/obj/*

переходим в sources системы (и все дальнейшие сборки make выполняем из этой директории):

# cd /usr/src

собираем НОВУЮ СИСТЕМУ/новые бинарники (только собираем, без установки, новые собранные
бинарники и библиотеки будут в /usr/obj):

# make buildworld

собираем с помощью новых бинарников и библиотек - ядро

# make buildkernel KERNCONF=NAME

если все собралось без проблем, устанавливаем новое ядро:

# make installkernel KERNCONF=NAME

выполняем подготовительный mergemaster:

# mergemaster -p

устанавливаем ранее собранную новую систему:

# make installworld
# make delete-old
# mergemaster
# reboot

если все хорошо после перезагрузки, то вычищаем старые библиотеки:

# cd /usr/src
# make delete-old-libs

Но полный и правильный алгоритм расписан в:

# less /usr/src/Makefile
# less /usr/src/UPDATING (в разделе COMMON ITEMS)

попробуйте все это проделать на тренировочной системе или установите
виртуальную машину VirtualBox и под ней установите FreeBSD и попробуйте
сборку системы и сборку ядра.

прим. Если бинарники системы, ядра и sources одной версии, то сборку ядра
можно производить БЕЗ СБОРКИ системы:

- допустим у меня установлена система FreeBSD 7.3-RELEASE
- исходники/sources тоже для 7.3-RELEASE
- ядро GENERIC

я хочу пересобрать ядро под себя, так как исходя из верхнего у меня система и ядро
синхронизированы, sources тоже для 7.3-RELEASE, я могу пересобрать и установить
ТОЛЬКО ядро с нужными мне параметрами:

# cd /sys/arch/conf
# cp GENERIC MYKERNEL
# vi MYKERNEL (изменяю по себя)

где arch - требуемая архитектура, i386 или amd64 или ...

собираю и устанавливаю новое ядро:

# rm -rf /usr/obj/*
# cd /usr/src
# make buildkernel KERNCONF=MYKERNEL
# make installkernel KERNCONF=MYKERNEL
# reboot