Поломался libc

FreeBSD, NetBSD, OpenBSD, DragonFly и т. д.

Модератор: arachnid

Ответить
Аватара пользователя
den_beckett
Сообщения: 274
ОС: Windows, Linux, BSD

Поломался libc

Сообщение den_beckett »

Бида-бида случилась: во время installworld система рухнула. Теперь при старте пишет, что /usr/lib/libc.so.7 поврежден, грузится с грехом пополам только в single. Файл ни удалить, ни заменить не получается. Вот такой вот попадос. :(
Есть у кого идеи, что можно сделать? Три дня ковыряюсь, все бестолку.
Правильный нуб не боится трудностей. Наоборот - он их ищет, а не найдя - создает.
OC: Windows 7 SP1, Arch, Gentoo, FreeBSD 10/stable, DragonflyBSD 3.9, Debian unstable
Спасибо сказали:
Аватара пользователя
lastpriot
Сообщения: 218
ОС: FreeBSD

Re: Поломался libc

Сообщение lastpriot »

если сборка сохранилась, можно повторно запустить installworld или вытянуть с /usr/obj нужные файлы
как запасной вариант: скачать base.txz от релиза (ftp.freebsd.org), и уже с архива востановить недостающие/проблемные файлы
Спасибо сказали:
Аватара пользователя
den_beckett
Сообщения: 274
ОС: Windows, Linux, BSD

Re: Поломался libc

Сообщение den_beckett »

lastpriot писал(а):
20.03.2013 02:46
если сборка сохранилась,

Есть и сборка, и бекап но
можно повторно запустить installworld или вытянуть с /usr/obj нужные файлы

Не катит, бо не работает. Это ж libc, а не фигнюшка какая.

Более того, даже ручками ничего сделать нельзя, даже из-под чрута - прав, говорит, недостаточно.:)
Если б все было так просто, я б сюда не пришел за советом. Попадос очень даже конкретный. Но сносить все-таки очень не хочется, хотя придется, если другого выхода не будет.

ЗЫж Не фряха, а DFBSD, но я полагаю, что в контексте сабжа разницы никакой.:)
Правильный нуб не боится трудностей. Наоборот - он их ищет, а не найдя - создает.
OC: Windows 7 SP1, Arch, Gentoo, FreeBSD 10/stable, DragonflyBSD 3.9, Debian unstable
Спасибо сказали:
Аватара пользователя
arachnid
Модератор
Сообщения: 1099
ОС: freeBSD

Re: Поломался libc

Сообщение arachnid »

а загрузиться с установочного чего-нибдь (не в курсе, что там со стрекозы) и тупо скопировать?
-= freeBSD stable, fluxbox =-
"если ты будешь со мной спорить, я тебя запишу в книжечку!" (с) Ежик
Спасибо сказали:
Аватара пользователя
den_beckett
Сообщения: 274
ОС: Windows, Linux, BSD

Re: Поломался libc

Сообщение den_beckett »

arachnid писал(а):
20.03.2013 14:18
а загрузиться с установочного чего-нибдь (не в курсе, что там со стрекозы) и тупо скопировать?

den_beckett писал(а):
20.03.2013 09:17
Более того, даже ручками ничего сделать нельзя, даже из-под чрута - прав, говорит, недостаточно.:)


Почему-то доступ к файлу блокирован, и сделать с ним ничего нельзя. И даже не ругается ни на что, тупо "operation not permitted", и все.

И ни "чего-нибудь" а именно с установочного диска, в котором инсталлятор автоматически монтирует установленную систему, надо только диск указать. Кроме самой стрекозы hammer не понимает никто, во всяком случае примеров мне неизвестно. И да, хаммеровские снапшоты не помогут - уже думал в эту сторону.

ЗЫж. Хотя вот сейчас пришла в голову идея собрать мир в лайве, и заинсталлить на хард. Завтра попробую (комп на работе).
Правильный нуб не боится трудностей. Наоборот - он их ищет, а не найдя - создает.
OC: Windows 7 SP1, Arch, Gentoo, FreeBSD 10/stable, DragonflyBSD 3.9, Debian unstable
Спасибо сказали:
Lazy_Kent
Сообщения: 709
Статус: Ленивый
ОС: openSUSE (Xfce)

Re: Поломался libc

Сообщение Lazy_Kent »

Спасибо сказали:
Аватара пользователя
arachnid
Модератор
Сообщения: 1099
ОС: freeBSD

Re: Поломался libc

Сообщение arachnid »

Lazy_Kent писал(а):
20.03.2013 23:26
Это как-то связано с http://www.freebsd.org/security/advisories...-13:02.libc.asc?

фряха и стрекоза - разные проекты.

den_beckett писал(а):
20.03.2013 16:48
arachnid писал(а):
20.03.2013 14:18
а загрузиться с установочного чего-нибдь (не в курсе, что там со стрекозы) и тупо скопировать?

den_beckett писал(а):
20.03.2013 09:17
Более того, даже ручками ничего сделать нельзя, даже из-под чрута - прав, говорит, недостаточно.:)


Почему-то доступ к файлу блокирован, и сделать с ним ничего нельзя. И даже не ругается ни на что, тупо "operation not permitted", и все.

И ни "чего-нибудь" а именно с установочного диска, в котором инсталлятор автоматически монтирует установленную систему, надо только диск указать. Кроме самой стрекозы hammer не понимает никто, во всяком случае примеров мне неизвестно. И да, хаммеровские снапшоты не помогут - уже думал в эту сторону.

ЗЫж. Хотя вот сейчас пришла в голову идея собрать мир в лайве, и заинсталлить на хард. Завтра попробую (комп на работе).


не может быть, что там еще флаги стоят на файле? например флаг неизменности. тогда сначала надо снять флаг, а потом удалять
-= freeBSD stable, fluxbox =-
"если ты будешь со мной спорить, я тебя запишу в книжечку!" (с) Ежик
Спасибо сказали:
Аватара пользователя
den_beckett
Сообщения: 274
ОС: Windows, Linux, BSD

Re: Поломался libc

Сообщение den_beckett »

arachnid писал(а):
21.03.2013 08:12
фряха и стрекоза - разные проекты.

Ну, код кочует из одних BSD в другие довольно активно. Пример - когда в нетке запилили в ядро MPLS, в стрекозе оно появилось максимум недели через три.
Но тут да - из другой оперы.

не может быть, что там еще флаги стоят на файле? например флаг неизменности. тогда сначала надо снять флаг, а потом удалять
.
Упс, а что за флаг неизменности? Никогда не сталкивался, как его посмотреть/изменить? Права на файле 444

Код: Выделить всё

# ls -l /mnt/usr/lib/libc.so.7
-r--r--r--  1 root  wheel  1113812 Mar 14 13:03 /mnt/usr/lib/libc.so.7
Правильный нуб не боится трудностей. Наоборот - он их ищет, а не найдя - создает.
OC: Windows 7 SP1, Arch, Gentoo, FreeBSD 10/stable, DragonflyBSD 3.9, Debian unstable
Спасибо сказали:
Аватара пользователя
arachnid
Модератор
Сообщения: 1099
ОС: freeBSD

Re: Поломался libc

Сообщение arachnid »

ls -lo показать флаги
chflags - их меняем
-= freeBSD stable, fluxbox =-
"если ты будешь со мной спорить, я тебя запишу в книжечку!" (с) Ежик
Спасибо сказали:
Аватара пользователя
lastpriot
Сообщения: 218
ОС: FreeBSD

Re: Поломался libc

Сообщение lastpriot »

посмотреть:

Код: Выделить всё

ls -lo /usr/lib/libc.so.7

снять:

Код: Выделить всё

chflags 0 /usr/lib/libc.so.7
Спасибо сказали:
Аватара пользователя
den_beckett
Сообщения: 274
ОС: Windows, Linux, BSD

Re: Поломался libc

Сообщение den_beckett »

arachnid, lastpriot, спасибо. [посыпает голову пеплом] Черт, который раз спотыкаюсь о то, что в линуксе и бздях coreutils все-таки разные. В линухе флаг -o у ls другой.

Кстати, сборка из лайва окончилась неудачей. Бодренько стартовала, но где-то на половине закончилась с ошибкой.
Буду пробовать дальше. Уже самому интересно, кроме того, столько нового узнал.:) В процессе выгугливания подобных случаев нашел много любопытного.
Правильный нуб не боится трудностей. Наоборот - он их ищет, а не найдя - создает.
OC: Windows 7 SP1, Arch, Gentoo, FreeBSD 10/stable, DragonflyBSD 3.9, Debian unstable
Спасибо сказали:
Аватара пользователя
den_beckett
Сообщения: 274
ОС: Windows, Linux, BSD

Re: Поломался libc

Сообщение den_beckett »

Пишу из горящего танка.:)
Спасибо, все получилось. Удалось заменить поврежденный файл. Кстати, потом выяснилось, что он был не один. В итоге ремонтные работы свелись к

Код: Выделить всё

cd /usr/src/lib
make
make install
make clean
cd /usr/src/libexec
make
make install
make clean
cd /usr/src
make _bootstrap-tools
make buildworld && make buildkernel KERNCONF=MYKERNEL
make installkernel KERNCONF=MYKERNEL
make preupgrade
make installworld
make upgrade
mergemaster


После успешной перезагрузки первым делом запустил git checkout по дереву портов, ругнулся только на конфиги, в которые я лазил шаловливыми ручками(грешен, каюсь). Беглый просмотр логов не выявил причину краха системы. Хз, что с ней тогда случилось. Но сейчас все нормально, проблема решена, а я уж грешным делом подумывал о переустановке.:)

ЗЫж Спасибо всем, кто помогал советами.
ЗЗЫж. Форум так забавно выглядит в elinks'е.:) Но почему-то форму ответа не выбрать с клавы, хорошо мыша есть, можно ткнуть.
Правильный нуб не боится трудностей. Наоборот - он их ищет, а не найдя - создает.
OC: Windows 7 SP1, Arch, Gentoo, FreeBSD 10/stable, DragonflyBSD 3.9, Debian unstable
Спасибо сказали:
Ответить