중복 가능성:
쓰기 권한이 없는 파일로 표준 출력을 리디렉션합니다.
이 튜토리얼에 제공된 지침에 따라 drupal을 설치하려고 합니다. http://how-to.linuxcareer.com/how-to-install-drupal-7-on-ubuntu-linux 한 단계에서 막혔습니다.
$ cd /etc/apache2/sites-available
$ sudo sed 's/www/www\/drupal/g' default > drupal
bash: drupal: Permission denied
권한은 /var/www/drupal
777로 설정되어 있습니다.
답변1
sudo
이 자습서에서는 루트 셸을 사용하지 않으며 필요합니다. 를 사용하여 루트 쉘을 얻을 수 있습니다 sudo -i
.
를 선호하는 경우 sudo
리디렉션은 sudo
명령이 아닌 셸에 의해 처리됩니다. 따라서 /etc/apache2/sites-available
이전처럼 부팅 출력에서 파일을 생성 할 수 없습니다 . sudo
매뉴얼 에 따르면 , 다음과 같은 서브쉘을 사용해야 합니다:
$ cd /etc/apache2/sites-available
$ sudo sh -c "sed 's/www/www\/drupal/g' default > drupal"
답변2
분명히 권한은 /etc/apache2/sites-available
출력을 작성하는 777이 아닙니다. 리디렉션은 별도로 처리되며 sudo
쓰기 권한이 없습니다. 자, 거기에는 아무것도 없습니다 /var/www/drupal
. 거기에 글을 쓰실 건가요? 그렇다면 su -c "sed 's/www/www\/drupal/g' default > /var/www/drupal"
또는 를 사용할 수 있습니다 sed 's/www/www\/drupal/g' default | sudo tee drupal
.
답변3
우선, 당신은 여기 없습니다 /var/www/drupal/
. drupal
에 파일을 생성 하려고 합니다 /etc/apache2/sites-available/
. 다음 위치에 파일을 생성하려는 경우 /var/www/drupal
:
sed 's/www/www\/drupal/g' default >/var/www/drupal/drupal
그렇지 않으면:
sed 's/www/www\/drupal/g' default | sudo tee drupal