
OS X 10.6.8에서 Bash 프로세스 대체를 '루트'로 사용하면 작동하지 않습니다.
- 그래야 하는 걸까요?
- 왜?
참고: 제 말은... "<(목록)"입니다.
mysql -D robottinosino < <(echo 'select robot from tino_sino;')
/* 간단한 파이프를 사용하여 echo와 mysql을 교환할 수 있기 때문에 인위적인 예입니다... 머리 속에서 더 나은 예가 생각나지 않았습니다 */
편집하다:
다음과 같이 루트로 로그온합니다.
"스도 수 -"
(덧붙여, 제가 원한다면 더 좋은 방법이 있을까요?머무르다로그인?)
- 그래요~ 아니다Bash에서 제 질문은 정말 멍청했고 아래 댓글이 문제를 즉시 포착했습니다! :(
echo $0 은 "-sh"를 생성합니다 :(
이 질문은 이 시점에서 삭제되거나 다음과 같이 변형될 수 있을 것 같습니다.
"Bash를 사용하여 '루트'로 올바르게 로그인하는 방법은 무엇입니까?" (아마도 /private/etc/passwd?를 편집하면 작동하지 않는 것 같습니다. 또는... sudo bash -l?)
답변1
쉘을 변경하려면 다음을 실행하십시오.chsh -s /bin/bash
루트로 로그인한 상태에서 쉘을 한 번 실행하려면 다음을 실행하십시오 bash
./bin/bash
chsh
루트 쉘을 변경한 후:
# Changing user information for root.
# Use "passwd" to change the password.
##
# Open Directory: /Local/Default
##
Login: root
Uid [#]: 0
Gid [# or name]: 0
Generated uid: FFFFEEEE-DDDD-CCCC-BBBB-AAAA00000000
Home directory: /var/root
Shell: /bin/bash
Full Name: System Administrator
Office Location:
Office Phone:
Home Phone:
답변2
Bash를 사용하지 않는 경우 해당 Bash 기능을 사용할 수 없습니다.
sudo bash
대신 루트로 이동하거나 sudo bash -l
로그인 셸을 사용하여 루트로 이동하여 bash 구성을 읽을 수 있습니다 .