LFS 6.7 /bin/sh 명령을 찾을 수 없습니다.

LFS 6.7 /bin/sh 명령을 찾을 수 없습니다.

저는 LFS 9.0을 구축 중이며 6.7장에 도달했습니다. make mrproper를 실행하면 다음과 같은 출력이 표시됩니다.

make: /bin/sh: Command not found
...(above repeated ~20 times)...
make: /bin/sh: Command not found
Makefile:649: arch//Makefile: no such file or directory
make: *** No rule to make target 'arch//Makefile'. Stop.

6.2와 6.4에 설명된 대로 재부팅하고, 파일 시스템을 다시 마운트하고, 시스템에 들어가려고 했습니다. 또한 재부팅 전후에 /bin/sh 심볼릭 링크를 다시 생성해 보았습니다. 나는 책을 올바르게 따랐고 재부팅한 이후 다음 명령을 실행했다고 생각합니다.

mount -v --bind /dev $LFS/dev
mount -vt devpts devpts $LFS/dev/pts -o gid=5,mode=620
mount -vt proc proc $LFS/procmount -vt sysfs sysfs $LFS/sys
mount -vt tmpfs tmpfs $LFS/run

chroot "$LFS" /tools/bin/env -i HOME=/root TERM="$TERM" PS1='(lfs chroot) \u:\w\$ ' PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin /tools/bin/bash --login +h

ln -sv /tools/bin/{bash,cat,chmod,dd,echo,ln,mkdir,pwd,rm,stty,touch} /bin
ln -sv /tools/bin/{env,install,perl,printf} /usr/bin
ln -sv /tools/lib/libgcc_s.so{,.1} /usr/lib
ln -sv /tools/lib/libstdc++.{a,so{,.6}} /usr/lib
ln -sv bash /bin/sh

under /sources/linux-5.2.8 ran
makr mrproper

업데이트: bash와 sh의 연결을 해제한 후 "ln -sv bash /bin/sh"를 다시 실행한 후 원래 출력을 다시 얻었습니다. .bin에서 심볼릭 링크 목록을 가져오기 위해 "find /bin -type l -ls"를 실행했는데 /bin/sh가 반환되었습니다.

/bin/sh -> bash

답변1

첫 번째 심볼릭 링크를 만들 때 bash를 잘못 입력했습니다. bash와 /bin/sh의 연결을 해제하고 "ln -sv /tools/bin/bash /bin"을 다시 실행한 다음 "ln -sv bash /bin/sh"를 다시 실행하여 문제를 해결했습니다.

관련 정보