我在用 ”Ubuntu服务器13.10“ 在我的服务器上并且”Windows7的SP1“在我的电脑上。现在我想使用 FTP 编辑、添加、删除、重命名服务器上的文件和文件夹。为此,我安装了”FileZilla 3.7.4.1 win32“然后尝试使用它连接我的服务器。我添加了我的内部服务器 IP(sftp://192.168.1.99)和我的用户名(Ubuntu 用户名不是 root)和密码,并添加了 Port22。之后,我能够在 FileZilla 上看到我的服务器文件,但无法使用 FileZilla 编辑、添加、删除、重命名服务器中的文件和文件夹。
当我尝试添加文件时得到“打开以进行写入:权限被拒绝“当尝试删除文件时,得到”没有权限“。现在我的主要问题是”如何使用 FileZilla 在 Ubuntu 服务器中编辑/添加/删除/重命名文件/文件夹?“。 等待你的回复...
答案1
您是否尝试过执行命令ls -l您想要读取/写入的文件夹?您连接的用户可能没有足够的权限。当另一个用户创建了您想要访问的文件时,通常会出现这种情况。
尽管ls -l让你检查谁是你想要访问的文件/目录的所有者,以更改你可以使用的权限chmod
(更多信息这里)
编辑:如果您想管理单个用户对特定文件夹的访问权限,您必须执行以下操作之一:
- 创建文件夹,使用户成为所有者,并对其拥有所有权限
- 确保文件夹的所有者允许用户访问它
为此,您可以更改文件夹的所有权并将其归属于用户。这样,您就可以按照自己想要的方式管理访问权限。只需输入sudo chown -R user /var/www/site1
。这将递归地(感谢 -R)将所有权归属于用户。
作为奖励,你可以chmod 500 /var/www/site1
让除了用户(当然还有 root)之外的任何人都无法读取/写入文件夹
注意:chmod 的参数 5 表示授予读写权限。要授予读、写和执行权限,请使用 7。要不授予任何权限,请使用 0。第一个数字代表所有者的权限,第二个数字代表组的权限,第三个数字代表其他用户的权限。如果您需要更多信息,请参阅提供的链接
NB2:要检查您对文件或文件夹的所有权/权限,请键入ls -l /my/folder
,您将获得如下结果:
-rw-r--r-- 1 root root 65 Feb 11 15:08 index.html
| | |
permissions | |
owner group
答案2
您所做的是通过 SSH(即 SFTP)连接 FTP。因此,您只能执行您的用户被允许通过 SSH 执行的操作 - 如果您的用户不拥有或不属于对您尝试编辑的文件或您尝试在其中创建文件的文件夹具有写入权限的组,您将无法通过 SFTP 执行此操作(因为您无权通过 SSH 执行此操作)。
ls -alh
例如,您可以使用它来检查这些文件和文件夹属于哪个组,以及该组是否具有写对这些文件和文件夹的权限,然后将您的用户添加到该组,您就可以开始了(也可以通过 SFTP)。