I don't know LFS but it seems it is using a dedicated user for building the software and /mnt/lfs has some pretty restrictive permissions. chmod 755 /mnt/lfs should probably solve your issue
–
Ulrich DangelMay 27 '12 at 1:18

I tried those suggestions but to no avail. I recalled that I created the user lfs, then deleted it and recreated it after assigning owner permissions. So I completely deleted it (and associated files) again, reassigned ownership to root and went through the whole process again.

Still, I couldn't change into /mnt/lfs/sources or /mnt/lfs/tools. So I tried changing /mnt/lfs to 755 again and it all worked. Weird - I should be able to enter a child directory to which I have granted access even though I don't have access to the parent.

"I should be able to enter a child directory to which I have granted access even though I don't have access to the parent." No, you shouldn't. You need x permissions from / to the final directory.
–
MatMay 27 '12 at 10:31

Surely that would imply that any user could change to any higher up directory in the filesystem.
–
LeoMay 28 '12 at 13:44

See chdir in POSIX: "EACCESS Search permission is denied for any component of the pathname." - note that the check is done at the time of call. You could change permissions on a path component afterwards (which would very likely have strange effects on unsuspecting processes).
–
MatMay 28 '12 at 13:52