我是Ubuntu的新手,这是我的问题:
VSCode一直在寻求权限以将任何编辑保存在任何文件上。
我只想编辑和保存,而不必每次都输入密码,所以在Ubuntu上可以吗?
我试图添加一个新用户,但我也看到了同样的问题。
我曾尝试以root身份运行VSCode,但是说以root身份运行它很危险。
使用VSCode保存文件时,如何避免此权限步骤?
答案 0 :(得分:7)
确保您(作为Ubuntu用户帐户)是您在VSCode中编辑的文件夹和文件的所有者:
cd /path/to/my/files
chown -R $USER:$USER .
注意:如果您不是大客户,则可能必须在sudo
之前加上
sudo chown -R $USER:$USER .
答案 1 :(得分:5)
这是一个常见问题。出于安全原因,您不想更改文件的owner:group,也不想以根用户身份运行VSCode。这是我的解决方案,并提供了一些背景信息。 在典型的Web服务器上,Web文件将是owner:group www-data:www-data(例如)-只有所有者(www-data)具有写许可权。 VSCode在$ USER帐户而不是www-data下运行,因此没有写权限。 您不能将VSCode更改为以www-data身份运行(不容易),因此,替代方法是将$ USER添加到www-data组,并为文件夹授予该组的写权限。这比仅具有读取权限的组的安全性稍差-在我看来,在开发计算机上是可以接受的。 将您自己添加到www-data组:
sudo usermod -aG www-data $USER
这不会立即生效,您需要自行解决然后退出并重新登录
su $USER
检查您是否在www-data组中
id
注销并再次登录。接下来,更改/ var / www / html的权限(或尝试写入的任何位置):
sudo chmod -R ug+rw /var/www/html
sudo chown -R www-data:www-data /var/www/html
重新启动VSCode,您的用户现在应该对该文件夹具有写权限。 如果出于任何原因您不小心更改了目录权限,可以使用以下命令还原它们:
sudo find /var/www/html -type d -execdir chmod 750 {} +
答案 2 :(得分:2)
当文件(您正在尝试使用vscode进行保存)位于PC上的此类位置(需要超级用户权限才能执行更改)时,通常会发生这种情况。要以root身份运行vscode,我们可以使用终端这样运行它:
sudo code --user-data-dir="~/.vscode-root
但是不建议以root用户身份运行vscode,因为sudo权限仅出于管理目的。更好的选择是将您的项目移动到不需要sudo权限的位置(例如桌面等)。
希望这会有所帮助。
答案 3 :(得分:1)
请使用以下链接在管理员模式下打开VS Code。
答案 4 :(得分:1)
据我所知,基本上有三种解决方案
以root
特权(不推荐)运行VS代码
sudo code --user-data-dir="~/.vscode-root"
如果从终端运行此命令,则VS Code将以root特权启动,但是以root特权运行用户级应用程序是潜在的危险,因为如果VS Code中发现某些漏洞,则可能会影响您的系统。 VS Code也会警告您。
chmod -R 777
命令(这取决于) sudo chmod -R 777 your_project_directory_location
示例
sudo chmod -R 777 /var/opt
如果使用此命令,不仅您,而且计算机上的其他用户也可以查看,修改您的项目。因为chmod 777
将文件的完全控制权授予了所有人。因此,仅在要与他人共享项目时才使用此命令。
chown
命令(推荐) cd location
sudo chown your_username your_project_directory
示例
假设我在project1
位置有一个名为/var/opt
的目录,我的用户名是mir
cd /var/opt
sudo chown mir project1
但是,如果您在应用chown
之前已经创建了一些文件,请不要忘记也更改其权限
sudo chown your_username your_project_directory/your_file_name
示例
sudo chown mir project1/file1.txt
建议使用它,因为它既不会造成任何安全问题,也不会给您的项目带来不必要的访问权限。它通过让您的项目由您自己来解决问题
答案 5 :(得分:0)
我也有同样的情况。我是通过Ubuntu商店安装的。但是,即使在商店内部,最新版本似乎仍在使用snap。我可能没有安装快照。我是通过ubuntu商店卸载的,然后通过终端安装了它。
sudo snap install --classic vscode
它删除了一些错误,但是我仍然遇到保存问题。但是,现在至少存在尝试写入的文件夹。 但是在检查文件后,我不是其中一些文件的所有者,因此您需要确保您是文件的所有者,并且问题应该消失了。请查看接受的答案,以确保文件的所有权。
现在,由于请求/snap/vscode/{version}
文件夹的权限,该错误在vscode中引起误导,但是如果您要保存的文件具有所有者permssioner作为用户,则问题将消失。
答案 6 :(得分:0)
为此,您需要更改文件夹的权限 1)打开其父文件夹的终端并输入命令 “ sudo chmod -R 777文件名”。
答案 7 :(得分:0)
“ sudo chmod -R 777文件名”适用于文件的父文件夹。
答案 8 :(得分:0)
使用以下命令以超级用户身份使用可视代码
sudo代码--user-data-dir =“〜/ .vscode-root
谢谢, 沙尼
答案 9 :(得分:0)
使用xampp做:
sudo chmod -R 777 /opt/lampp/htdocs
然后您就可以像人类一样用ctrl+s
进行保存,而无需“重试为sudo”
在htdocs中保存php文件时,如何让网站自动刷新?
答案 10 :(得分:-1)
sudo chown -R nameofuser:groupofuser *
nameofuser和groupofuser可以通过ls -al
命令找到
您必须在父文件夹中:)希望对您有所帮助