답변:
Heredoc 사용 또는 "EOF에 추가"는 다음과 같습니다. 아니 문제.
모든 리디렉션 ( > ) 적용된 전에 실제 명령을 실행합니다. 즉, 쉘이 먼저 열려고 시도합니다. /etc/php5/apache2/php.ini 편지 쓰기 귀하의 계정을 사용하여 , 그런 다음 완전히 쓸모 없어집니다. sudo cat.
이 문제를 해결할 수있는 한 가지 방법은 다음과 같습니다.
sudo bash -c "cat >> /etc/php5/apache2/php.ini" <<EOF
(당신은을 통해 대화 형 셸을 실행할 수 있습니다 sudo -s, 또는 사용 dd 또는 tee 파일에 쓰기위한 것입니다.)
관련 메모에서 > 의지 덮어 쓰기 오래된 php.ini. 용도 >> 추가 할 수 있습니다.
EOF ", 정확히 같은" EOF ". 아니 " .EOF "당신이 현재하고있는 것처럼.
sudo su 그리고 나서 적당한 쉘을 가지고 있습니다. root. 이 명령을 실행하지 않고 sudo 접두사. 나중에, exit 루트 셸에서 돌아갑니다.
@grawity의 답변을 확대하여 tee 사용법을 보여줍니다.
sudo tee /etc/php5/apache2/php.ini >/dev/null <<EOF
# extensions
extension=”memcached.so”
extension=”apc.so”
EOF
덮어 쓰는 대신에 추가를 위해 티의 "-a"옵션을 사용하십시오.
ls -al /etc/php5/apache2/php.ini, 파일의 권한 설정은 무엇입니까?