我有一个需要在 NTFS 分区上执行的脚本。脚本的权限设置为 600。
我试图通过运行来修改权限chmod 755 script.sh
,这不会报告失败或任何事情 - 但它也不会更改文件的权限:
$ stat script.sh
File: `script.sh'
Size: 297070 Blocks: 584 IO Block: 4096 regular file
Device: 811h/2065d Inode: 35515 Links: 1
Access: (0600/-rw-------) Uid: ( 1000/ xxxxxx) Gid: ( 1000/ xxxxxx)
Access: 2010-09-30 14:05:16.041621000 -0700
Modify: 2010-09-30 14:05:05.070157000 -0700
Change: 2010-09-30 14:05:05.070475000 -0700
$ chmod 755 script.sh
$ stat script.sh
File: `script.sh'
Size: 297070 Blocks: 584 IO Block: 4096 regular file
Device: 811h/2065d Inode: 35515 Links: 1
Access: (0600/-rw-------) Uid: …
Run Code Online (Sandbox Code Playgroud) chmod u+x
和 just 和有什么不一样chmod +x
?我已经看到大量教程说要使用u+x
使脚本可执行。但是,省略u
似乎没有任何效果。
当谈到做一个可执行文件之间有什么区别chmod 755
和chmod +x
我的时候会用哪个呢?到目前为止chmod +x
,我只使用过并且我只是阅读了一些东西并且使用了它chmod 755
,我不知道使用chmod 755
或是否更好chmod +x
。
如何使用该chown
命令更改文件夹的所有子文件夹和文件的所有权?
我正在运行一个网络服务器和 FTP 服务器,其中/var/www
绑定到/home/user/www
.
我将两个目录都设置为chmod 777
(这很好,因为它仅用于测试)。
我可以将文件上传到/home/user/www
,但是每当我创建一个新目录时,我总是必须chmod 777
在该文件夹上运行。
否则,当我尝试浏览它时,会收到错误消息
您无权访问此服务器上的 /test/。
有没有办法让/var/www
任何人都可以访问里面的所有子文件夹?或者他们的权限可以自动设置为777
?chmod 777
每次都要打字很烦。
请有人帮助我使用 chmod,我有以下文件结构
-dir1
--file1
--file2
--dir1a
---file1a1
---file1a2
--dir1b
---file1b1
---file1b2
Run Code Online (Sandbox Code Playgroud)
如何chmod 655到 dir1 和所有子目录下的所有文件?因此,所有文件都将具有 655 权限,并且所有目录将保持原样。
谢谢
我想编写“批处理文件”(shell 脚本)的 Ubuntu 模拟。但是我不知道如何使用命令来制作它以便可以运行脚本。我也不知道在哪里使用它。chmod +x filename
我正在运行 Ubuntu 18.04,作为 Windows 的子系统。我在多台 PC 上做过这个,从来没有遇到过这个问题。我试着去git clone <repo>
,我得到了这个:
Cloning into '<repo>'...
error: chmod on /mnt/c/Users/Efsta/Code/<repo>/.git/config.lock failed: Operation not permitted
fatal: could not set 'core.filemode' to 'false'
Run Code Online (Sandbox Code Playgroud)
我尝试了以下方法:
? git config core.fileMode false
,这个结果
fatal: not in a git directory
? git config --global core.filemode false
? git config --add --global core.filemode false
似乎没有任何效果。我已经在这里尝试了几个答案,但 WSL 似乎有点棘手。任何人都知道如何解决这个问题?
我也尝试了这个问题中的所有内容:https : //stackoverflow.com/questions/1580596/how-do-i-make-git-ignore-file-mode-chmod-changes,似乎没有任何效果。
我不小心跑了
sudo chmod 755 -R /
Run Code Online (Sandbox Code Playgroud)
代替
sudo chmod 755 -R ./
Run Code Online (Sandbox Code Playgroud)
几秒钟后我停止了它,但是现在出现了一些问题,例如
sudo: must be setuid root
Run Code Online (Sandbox Code Playgroud)
如何恢复权限?
我在 Ubuntu 中使用 Arduino IDE,但串行端口出现问题。它在过去一直有效,但由于可能不必要的原因,我觉得需要将某些文件的所有权从 root 所有权更改为我的用户所有权。
这使 IDE 正常工作,但我无法使用正确的串行端口。在 dev 文件夹中,我需要的端口被列为权限 166。有人(不再在该区域帮助我)将权限交换为 666,这使得它一切正常。
但是,一旦我重新启动计算机,它就会恢复,如果我现在尝试使用以下命令:
sudo chmod 666 ttyACM0
Run Code Online (Sandbox Code Playgroud)
没发生什么事。没有错误消息,但也没有权限更改。
我怎样才能改变它,我怎样才能让它永久改变。
如果这个问题过于简单或不清楚,我深表歉意,我是一个 ubuntu 菜鸟,我不会吝啬反馈!
chmod ×10
permissions ×8
scripts ×2
apache2 ×1
arduino ×1
bash ×1
clone ×1
command-line ×1
directory ×1
executable ×1
git ×1
ntfs ×1
serial-port ×1
sudo ×1