Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam. Napotkałem pewną trudność przy emergowaniu grub2. Odmaskowałem go sobie z ~x86, przy próbie instalacji tego pakietu dostaję błąd:
kompas ~ # emerge -av sys-boot/grub:2 These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N *] sys-boot/grub-9999 USE="nls sdl truetype -custom-cflags -debug -device-mapper -efiemu -static" GRUB_PLATFORMS="pc -coreboot -efi-32 -efi-64 -emu -ieee1275 -multiboot -qemu -qemu-mips -yeeloong" 0 kB Total: 1 package (1 new), Size of downloads: 0 kB Would you like to merge these packages? [Yes/No] y >>> Verifying ebuild manifests >>> Emerging (1 of 1) sys-boot/grub-9999 >>> Unpacking source... * bzr branch start --> * repository: http://bzr.savannah.gnu.org/r/grub/trunk/grub/ => /var/portage/distfiles/bzr-src/grub bzr: ERROR: exceptions.TypeError: readline() takes exactly 1 argument (2 given) Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/bzrlib/commands.py", line 912, in exception_to_return_code return the_callable(*args, **kwargs) File "/usr/lib/python2.7/site-packages/bzrlib/commands.py", line 1112, in run_bzr ret = run(*run_argv) File "/usr/lib/python2.7/site-packages/bzrlib/commands.py", line 690, in run_argv_aliases return self.run(**all_cmd_args) File "/usr/lib/python2.7/site-packages/bzrlib/commands.py", line 705, in run return self._operation.run_simple(*args, **kwargs) File "/usr/lib/python2.7/site-packages/bzrlib/cleanup.py", line 135, in run_simple self.cleanups, self.func, *args, **kwargs) File "/usr/lib/python2.7/site-packages/bzrlib/cleanup.py", line 165, in _do_with_cleanups result = func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/bzrlib/builtins.py", line 1209, in run from_location) File "/usr/lib/python2.7/site-packages/bzrlib/bzrdir.py", line 1032, in open_tree_or_branch bzrdir = klass.open(location) File "/usr/lib/python2.7/site-packages/bzrlib/bzrdir.py", line 911, in open return BzrDir.open_from_transport(t, _unsupported=_unsupported) File "/usr/lib/python2.7/site-packages/bzrlib/bzrdir.py", line 941, in open_from_transport redirected) File "/usr/lib/python2.7/site-packages/bzrlib/lazy_import.py", line 125, in __call__ return obj(*args, **kwargs) File "/usr/lib/python2.7/site-packages/bzrlib/transport/__init__.py", line 1657, in do_catching_redirections return action(transport) File "/usr/lib/python2.7/site-packages/bzrlib/bzrdir.py", line 928, in find_format transport, _server_formats=_server_formats) File "/usr/lib/python2.7/site-packages/bzrlib/bzrdir.py", line 1949, in find_format return format.probe_transport(transport) File "/usr/lib/python2.7/site-packages/bzrlib/bzrdir.py", line 3292, in probe_transport server_version = medium.protocol_version() File "/usr/lib/python2.7/site-packages/bzrlib/smart/medium.py", line 632, in protocol_version client_protocol.query_version() File "/usr/lib/python2.7/site-packages/bzrlib/smart/protocol.py", line 791, in query_version self.call('hello') File "/usr/lib/python2.7/site-packages/bzrlib/smart/protocol.py", line 631, in call self._request.finished_writing() File "/usr/lib/python2.7/site-packages/bzrlib/smart/medium.py", line 439, in finished_writing self._finished_writing() File "/usr/lib/python2.7/site-packages/bzrlib/transport/http/__init__.py", line 646, in _finished_writing data = self._medium.send_http_smart_request(self._buffer) File "/usr/lib/python2.7/site-packages/bzrlib/transport/http/__init__.py", line 615, in send_http_smart_request code, body_filelike = t._post(bytes) File "/usr/lib/python2.7/site-packages/bzrlib/transport/http/_urllib.py", line 139, in _post accepted_errors=[200, 403])) File "/usr/lib/python2.7/site-packages/bzrlib/transport/http/_urllib.py", line 79, in _perform response = self._opener.open(request) File "/usr/lib/python2.7/urllib2.py", line 394, in open response = self._open(req, data) File "/usr/lib/python2.7/urllib2.py", line 412, in _open '_open', req) File "/usr/lib/python2.7/urllib2.py", line 372, in _call_chain result = func(*args) File "/usr/lib/python2.7/site-packages/bzrlib/transport/http/_urllib2_wrappers.py", line 709, in http_open return self.do_open(HTTPConnection, request) File "/usr/lib/python2.7/site-packages/bzrlib/transport/http/_urllib2_wrappers.py", line 649, in do_open response = connection.getresponse() File "/usr/lib/python2.7/site-packages/bzrlib/transport/http/_urllib2_wrappers.py", line 263, in getresponse self._response = httplib.HTTPConnection.getresponse(self) File "/usr/lib/python2.7/httplib.py", line 1027, in getresponse response.begin() File "/usr/lib/python2.7/site-packages/bzrlib/transport/http/_urllib2_wrappers.py", line 184, in begin httplib.HTTPResponse.begin(self) File "/usr/lib/python2.7/httplib.py", line 439, in begin self.msg = HTTPMessage(self.fp, 0) File "/usr/lib/python2.7/mimetools.py", line 25, in __init__ rfc822.Message.__init__(self, fp, seekable) File "/usr/lib/python2.7/rfc822.py", line 108, in __init__ self.readheaders() File "/usr/lib/python2.7/httplib.py", line 280, in readheaders line = self.fp.readline(_MAXLINE + 1) TypeError: readline() takes exactly 1 argument (2 given) bzr 2.2.2 on python 2.7.2 (Linux-3.0.6-gentoo-i686-Intel-R-_Core-TM-_i5-2500K_CPU_@_3.30GHz-with-gentoo-2.0.3) arguments: ['/usr/bin/bzr', 'branch', '--no-tree', 'http://bzr.savannah.gnu.org/r/grub/trunk/grub/', '/var/portage/distfiles/bzr-src/grub'] encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'pl_PL.UTF-8' plugins: bash_completion /usr/lib/python2.7/site-packages/bzrlib/plugins/bash_completion [2.2.2] launchpad /usr/lib/python2.7/site-packages/bzrlib/plugins/launchpad [2.2.2] netrc_credential_store /usr/lib/python2.7/site-packages/bzrlib/plugins/netrc_credential_store [2.2.2] news_merge /usr/lib/python2.7/site-packages/bzrlib/plugins/news_merge [2.2.2] *** Bazaar has encountered an internal error. This probably indicates a bug in Bazaar. You can help us fix it by filing a bug report at https://bugs.launchpad.net/bzr/+filebug including this traceback and a description of the problem. * ERROR: sys-boot/grub-9999 failed (unpack phase): * bzr.eclass: can't branch from http://bzr.savannah.gnu.org/r/grub/trunk/grub/ * * Call stack: * ebuild.sh, line 56: Called src_unpack * environment, line 3506: Called bzr_src_unpack * environment, line 779: Called bzr_fetch * environment, line 746: Called bzr_initial_fetch 'http://bzr.savannah.gnu.org/r/grub/trunk/grub/' '/var/portage/distfiles/bzr-src/grub' * environment, line 771: Called die * The specific snippet of code: * ${EBZR_FETCH_CMD} ${EBZR_OPTIONS} "${repo_uri}" "${branch_dir}" || die "${EBZR}: can't branch from ${repo_uri}" * * If you need support, post the output of 'emerge --info =sys-boot/grub-9999', * the complete build log and the output of 'emerge -pqv =sys-boot/grub-9999'. * The complete build log is located at '/var/tmp/portage/sys-boot/grub-9999/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-boot/grub-9999/temp/environment'. * S: '/var/tmp/portage/sys-boot/grub-9999/work/grub-9999' >>> Failed to emerge sys-boot/grub-9999, Log file: >>> '/var/tmp/portage/sys-boot/grub-9999/temp/build.log' * Messages for package sys-boot/grub-9999: * ERROR: sys-boot/grub-9999 failed (unpack phase): * bzr.eclass: can't branch from http://bzr.savannah.gnu.org/r/grub/trunk/grub/ * * Call stack: * ebuild.sh, line 56: Called src_unpack * environment, line 3506: Called bzr_src_unpack * environment, line 779: Called bzr_fetch * environment, line 746: Called bzr_initial_fetch 'http://bzr.savannah.gnu.org/r/grub/trunk/grub/' '/var/portage/distfiles/bzr-src/grub' * environment, line 771: Called die * The specific snippet of code: * ${EBZR_FETCH_CMD} ${EBZR_OPTIONS} "${repo_uri}" "${branch_dir}" || die "${EBZR}: can't branch from ${repo_uri}" * * If you need support, post the output of 'emerge --info =sys-boot/grub-9999', * the complete build log and the output of 'emerge -pqv =sys-boot/grub-9999'. * The complete build log is located at '/var/tmp/portage/sys-boot/grub-9999/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-boot/grub-9999/temp/environment'. * S: '/var/tmp/portage/sys-boot/grub-9999/work/grub-9999'
Offline
Po co z live ebuilda? Nie możesz normalnej wersji zainstalować?
Offline
W sumie mogę ale nie wiem jak:)
znalazło mi takie do wyboru:
[i] sys-boot/grub Available versions: (0) 0.92-r1 0.94-r1 0.96-r1 0.96-r2 ~0.96-r3 ~0.97 0.97-r2 0.97-r3 0.97-r4 0.97-r5 0.97-r6 ~0.97-r8 0.97-r9 0.97-r10 (2) **1.99-r2 **9999 {custom-cflags debug device-mapper efiemu grub_platforms_coreboot grub_platforms_efi-32 grub_platforms_efi-64 grub_platforms_emu grub_platforms_ieee1275 grub_platforms_multiboot grub_platforms_pc grub_platforms_qemu grub_platforms_qemu-mips grub_platforms_yeeloong ncurses netboot nls sdl static truetype} Installed versions: 0.97-r10(18:26:07 07.07.2011)(ncurses -custom-cflags -netboot -static) Homepage: http://www.gnu.org/software/grub/ Description: GNU GRUB boot loader
Offline
Zamaskuj wersję 9999 via package.mask.
Offline
Umieściłem wpis
=sys-boot/grub-9999
w /etc/portage/package.mask no ale nadal emerge probuje zainstalować wersje z live ebuilda. Zamiast gwiazdki przy pytaniu o instalację teraz jest #.
Offline
A jak go wcześniej odmaskowałeś?
Offline
Zgodnie z tym co jest w sekcji instalacja w tym artykule: http://en.gentoo-wiki.com/wiki/Grub2
Offline
Tam piszą, że on jest hard masked, ale w wyniku z eixa tego nie widać…
Z tego co widzę, wersje na slocie 2 po prostu nie mają żadnych keywordów, zatem może tak:
<sys-boot/grub-9999 **
do package.keywords? Nie mam już Gentoo żeby sprawdzić, także jeśli napisałem głupotę, to sorry.
Offline
Oszywiście Twój wpis pomógł-dzięki. To możliwe, że w wersji grub2 dla gentoo nie działa polecenia update-grub?
Offline
Pewnie że możliwe, w GRUB1 update-grub też w Gentoo nie było… W przypadku GRUB2 z update-grub jest już trochę inaczej: http://forum.dug.net.pl/viewtopic.php?pid=169635#p169635 — nawet w Debianie update-grub oraz update-grub2 właściwie wywołują:
grub-mkconfig -o /boot/grub/grub.cfg
A to już w Gentoo obecnie jest (opierając się na Twoim linku do wiki).
Tak z ciekawości — po co Ci GRUB2? ;)
Offline
Ano fakt, jeżeli GRUB2 wstaje z Btrfs a GRUB1 nie, to jest to jakiś sensowny powód…
… choć osobiście i tak wolałbym GRUB1 + osobna partycja /boot w ext2 :P
Offline
No ale jak wtedy odpalić system który / ma na btrfs? Bo przy tym rozwiązaniu przy wyborze systemu z gruba pokazuje, że nie jest w stanie zamontować partycji.
Offline
A gdzie masz kernel tego systemu na Btrfs? Normalnie to jest tak, że GRUB ładuje kernel z jakiejś partycji i to tę partycję (jej system plików) GRUB musi obsługiwać. Dalej to już jest sprawa kernela — kernel musi mieć wkompilowaną obsługę systemu plików na partycji „/”.
Offline
Kernel wrzucam na /boot a w nim na stale wkompilowana obsluga btrfs.
Offline
Błąd w konfigu GRUB-a? To GRUB czy kernel zgłasza błąd? Też kiedyś bawiłem się Btrfs w Gentoo i z podniesieniem systemu nie było żadnego problemu.
Offline