I am trying to generate a new image for FC4 that includes all of the
updates to date so that they will not all have to be applied after the
install. I have a script which goes through all the steps necessary to
generate an image (including everything that has to be done before
running buildinstall) and it has been working fine on FC2 and FC3.
However, when I went to generate the FC4 image, the generation completed
successfully but during an HTTP based install, I got the following
exception:
| Traceback (most recent call last): #
|
| File "/usr/bin/anaconda", line 1160, in ? #
|
| intf.run(id, dispatch) #
|
| File "/usr/lib/anaconda/text.py", line 447, #
|
| in run #
|
| (step, args) = dispatch.currentStep() #
|
| File "/usr/lib/anaconda/dispatch.py", line #
|
| 279, in currentStep #
|
| self.gotoNext() #
|
| File "/usr/lib/anaconda/dispatch.py", line #
|
| 174, in gotoNext #
|
| self.moveStep() # |
| File "/usr/lib/anaconda/dispatch.py", line #
|
| 242, in moveStep #
|
| rc = apply(func, self.bindArgs(args)) #
|
| File "/usr/lib/anaconda/packages.py", line #
|
| 158, in readPackages #
|
| hdrlist = method.readHeaders() #
|
| File "/usr/lib/anaconda/urlinstall.py", line #
|
| 170, in readHeaders #
|
| url = grabber.urlopen (hdurl, retry = 5) #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/gr #
|
| abber.py", line 444, in urlopen #
|
| return default_grabber.urlopen(url, #
|
| **kwargs) #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/gr #
|
| abber.py", line 575, in urlopen #
|
| return self._retry(opts, retryfunc, url) #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/gr #
|
| abber.py", line 547, in _retry #
|
| return apply(func, (opts,) + args, {}) #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/gr #
|
| abber.py", line 574, in retryfunc #
|
| return URLGrabberFileObject(url, #
|
| filename=None, opts=opts) #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/gr #
|
| abber.py", line 727, in __init__ #
|
| self._do_open() #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/gr #
|
| abber.py", line 794, in _do_open #
|
| fo, hdr = self._make_request(req, opener) #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/gr #
|
| abber.py", line 885, in _make_request #
|
| fo = opener.open(req) #
|
| File "/usr/lib/python2.4/urllib2.py", line #
|
| 358, in open #
|
| response = self._open(req, data) #
|
| File "/usr/lib/python2.4/urllib2.py", line #
|
| 376, in _open #
|
| '_open', req) #
|
| File "/usr/lib/python2.4/urllib2.py", line #
|
| 337, in _call_chain #
|
| result = func(*args) # |
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/ke #
|
| epalive.py", line 213, in http_open #
|
| return self.do_open(HTTPConnection, req) #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/ke #
|
| epalive.py", line 240, in do_open #
|
| self._start_transaction(h, req) #
|
| File #
|
| "/usr/lib/python2.4/site-packages/urlgrabber/ke #
|
| epalive.py", line 315, in _start_transaction #
|
| h.putrequest('GET', req.get_selector()) #
|
| File "/usr/lib/python2.4/httplib.py", line #
|
| 748, in putrequest #
|
| self.putheader('Host', #
|
| self.host.encode("idna")) #
|
| File "/usr/lib/python2.4/encodings/idna.py", #
|
| line 160, in encode #
|
| result.append(ToASCII(label)) #
|
| File "/usr/lib/python2.4/encodings/idna.py", #
|
| line 64, in ToASCII #
|
| label = label.encode("ascii") #
|
| LookupError: unknown encoding: ascii # |
I mounted the netstg2.img file that was created during buildinstall, and
found that /usr/lib/python2.4/encodings/ascii.py was missing. It seems
that this file was being removed during the cleanup of unused python
modules even though it should not have been (since idna.py uses it). For
now I just modified upd-instroot to add this file back after running
pythondeps. I was able to use this modified image for an HTTP based
install.
Have other people seen this problem, and is there a fix for it, or is it
necessary to do something like I did in order to generate a correct
image? I'm using the stock anaconda and anaconda-runtime included in FC4:
anaconda-10.2.1.5-2
anaconda-runtime-10.2.1.5-2
Thanks,
Brian