我是php,mysql的新手。我写了一个hello.php脚本,我试图将其复制到/ var / www目录中(稍后将要通过Web浏览器打开它)。同样的问题是,尽管我是root用户,但我不允许在/ var / www中保存/写入任何文件。我尝试在this问题中实现步骤,但在处理第三行时出现以下错误
find /var/www/ -type f -exec chmod g+w '{}' ';'
chmod: changing permissions of `/var/www/index.html': Operation not permitted
我知道符号链接也是一种选择。我希望能够直接将文件写入/复制到/ var / www /目录。
关于出了什么问题的任何建议?
答案 0 :(得分:16)
这是* unix权限的问题,获得root访问权限,例如键入
sudo su
[then type your password]
并尝试做你必须做的事情
答案 1 :(得分:13)
chown -R user.group /var/www
这样您就可以与您的用户一起写信了。
答案 2 :(得分:8)
你有一个名为hello.php的/var/www
文件已经拥有权限吗?也许系统无法替换文件?
虽然root访问权应取代系统上的任何用户。
您是否尝试过对www
文件夹应用权限?
如果可以,请尝试以下操作:
sudo chmod -R 777 /var/www
然后做:
sudo cp hello.php /var/www
如果您100%知道可以在整个www
文件夹上设置权限,我建议您执行此操作。通过它的声音,您在自己的生产服务器上运行,因为大多数实时/共享托管服务器都已设置,以便www
文件夹不在/ var文件夹中(而是在用户的主文件夹中) )。
使用sudo前缀做任何事情都要非常小心,如果你做错了,你可能会严重损坏你的系统。
答案 3 :(得分:1)
今天遇到类似的问题。没有在这里看到我的修复,所以我想我会分享。
Root无法删除文件。
我做了我的研究。原来有一种叫做不可变的东西。
# lsattr /path/file
----i-------- /path/file
#
正在配置的这个位阻止了root用户修改/删除它。
为了删除这个,我做了:
# chattr -i /path/file
之后我可以发送文件。
相反,这是一个巧妙的诀窍,知道你是否有想要避免的东西。
:)
答案 4 :(得分:1)
sudo chown -R $USER:$USER /var/www
答案 5 :(得分:0)
首先,这与php无关。这是一个unix权限问题。您需要以超级用户(sudo / su)身份登录并输入密码,然后尝试该命令。
$ su
(type password )
\# your command
$ sudo command
$ (type password)
如果您实际指定了所使用的操作系统,它也可能会有所帮助。
答案 6 :(得分:0)
sudo cp hello.php /var/www/
你得到什么输出?
答案 7 :(得分:0)
如果以上都不起作用,您可能正在处理vfat文件系统。使用“df”进行检查。
有关详细信息,请参阅http://www.charlesmerriam.com/blog/2009/12/operation-not-permitted-and-the-fat-32-system/。
答案 8 :(得分:0)
首先,您需要以root身份登录,然后转到/ etc目录并执行下面给出的一些命令。
[root@localhost~]# cd /etc
[root@localhost /etc]# vi sudoers
并在结尾输入此行
kundan ALL=NOPASSWD: ALL
其中kundan是用户名而不是保存。然后尝试传输文件并将sudo
作为前缀添加到要执行的命令中:
sudo cp hello.txt /home/rahul/program/
其中rahul是同一服务器中的第二个用户。
答案 9 :(得分:0)
您只需撰写sudo
而不是su
。
然后只需将PHP文件复制到var/www/ directory
。
然后转到浏览器,编写本地host/test.php
或.php
文件名。
答案 10 :(得分:0)
在你要修改的目录中输入以下命令吧:
例如目录:/var/www/html
sudo setfacl -m g:username:rwx . #-> for file
sudo setfacl -d -m g:username: rwx . #-> for directory
这将解决问题。
用您的用户名替换用户名。
答案 11 :(得分:0)
问题是权限问题导航到var/www/ 右键单击它并选择以管理员身份打开 然后继续你的工作