![Bash 프로세스 교체는 OS X에서 "루트"로 실행되지 않습니다.](https://linux55.com/image/23952/Bash%20%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4%20%EA%B5%90%EC%B2%B4%EB%8A%94%20OS%20X%EC%97%90%EC%84%9C%20%22%EB%A3%A8%ED%8A%B8%22%EB%A1%9C%20%EC%8B%A4%ED%96%89%EB%90%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
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 구성을 읽을 수 있습니다.