标签: chmod

如何在没有 /usr/bin/chmod 的情况下进行 chmod?

今天,一位 Unix 培训师告诉我一个故事,其中 root 密码被泄露给了学生,其中一个家伙从/usr/bin/chmod自己身上删除了执行权限。chmod在这种情况下如何恢复并使其再次可执行?假设从外部来源获取它或重新编译它不是一个更好的选择,是否有一些可以chmod自行恢复的智能黑客?

请注意,这发生在很久以前,我不是在寻找当前问题的解决方案,只是好奇 Unix 为我们提供了哪些解决此类问题的方法。

permissions chmod executable system-recovery

164
推荐指数
9
解决办法
6万
查看次数

获取文件的 chmod 数值

在 FreeBSD 和 Linux 中,如何获取chmod文件的数值?例如,644而不是-rw-r--r--? 我需要一个 Bash 脚本的自动方式。

linux freebsd chmod

138
推荐指数
4
解决办法
20万
查看次数

了解 UNIX 权限和文件类型

chmod直到今天,我才真正了解如何工作。我遵循了一个向我解释了很多事情的教程。

例如,我了解到您拥有三个不同的权限组:

  • 业主 ( u)
  • 组 ( g)
  • 大家(o

基于这三个群体,我现在知道:

  • 如果文件归用户所有,则用户权限决定访问权限。
  • 如果文件所在的组与用户所在的组相同,则组权限决定访问权限。
  • 如果用户不是文件所有者,并且不在组中,则使用其他权限。

我还了解到您拥有以下权限:

  • 读 ( r)
  • 写 ( w)
  • 执行 ( x)

我创建了一个目录来测试我新获得的知识:

mkdir test
Run Code Online (Sandbox Code Playgroud)

然后我做了一些测试:

chmod u+rwx test/
# drwx------
chmod g+rx test/
# drwxr-x---
chmod u-x test/
# drw-r-x---
Run Code Online (Sandbox Code Playgroud)

经过一段时间的鬼混后,我想我终于掌握chmod了使用此命令设置权限的方法。


但...

我还有几个问题:

  • 什么是d在开始代表什么?
  • 包含插槽的名称和用途是什么?它还能容纳哪些其他值?
  • 如何设置和取消设置?
  • 这有什么价值d?(因为你只有 7=4+2+1 7=4+2+1 7=4+2+1)
  • 为什么人们有时会使用0777而不是777来设置他们的权限?

但因为我不应该问多个问题,所以我会尝试用一个问题来问它。

在基于 UNIX 的系统(例如所有 Linux 发行版)中,关于权限,第一部分 ( d) …

linux ls permissions chmod

85
推荐指数
4
解决办法
7万
查看次数

'chmod g+s' 命令

你好我想了解chmod g+s命令在Unix中的作用。

我还想知道它在这种特定情况下的作用:

cd /home/canard;
touch un;
chgrp canard .;
chmod g+s .;
touch deux ;
Run Code Online (Sandbox Code Playgroud)

我了解所有命令角色,除了chmod g+s我想知道文件之间的差异un以及deux由这一系列命令产生的差异。

permissions chmod files setgid

74
推荐指数
3
解决办法
19万
查看次数

如何通过字符串获取权限号:-rw-r--r--

我需要设置相同的 chmod,如何获取-rw-r--r-- 的编号

chmod

64
推荐指数
5
解决办法
27万
查看次数

如何在没有 777 权限的情况下创建可从 Windows 写入的 Samba 共享?

我在 Linux 机器(Debian 8)上有一个路径,我想与 Samba 4 共享到 Windows 计算机(域中的 Win7 和 8)。在我的smb.conf我做了以下事情:

[myshare]
path = /path/to/share
writeable = yes
browseable = yes
guest ok = yes
public = yes
Run Code Online (Sandbox Code Playgroud)

我有完美的 Windows 读取权限。但是为了有写访问权限,我需要做chmod -R 777 /path/to/share才能从 Windows 写入它。

我想要的是在我提供/path/to/share.

我已经尝试过:

[myshare]
path = /path/to/share
writeable = yes
browseable = yes
Run Code Online (Sandbox Code Playgroud)

然后 Windows 要求提供凭据,但无论我输入什么,它总是被拒绝。

在不授予 777 权限的情况下,从 Windows 域计算机获得对 Samba 共享的写访问权限的正确方法是什么?

permissions chmod samba windows shared-folders

57
推荐指数
2
解决办法
31万
查看次数

四位数值中的第一个 chmod 八进制数是什么?

有时我会看到chmod使用四个八进制数字而不是三个的命令——可选的第一个数字是什么?例如,chmod 777相当于chmod a+rwx; 什么是相同的命令chmod 2777

chmod

52
推荐指数
1
解决办法
4万
查看次数

chmod + 静默模式 + 如何在出现错误的情况下强制退出代码 0

是否可以执行 chmod 并忽略命令中的错误

示例(备注 file.txt 不存在以显示示例)

当我打字

chmod 777 file.txt
Run Code Online (Sandbox Code Playgroud)

我在输出上出错

  chmod: cannot access file.txt : no such file or directory
Run Code Online (Sandbox Code Playgroud)

所以我将 -f 标志添加到命令中,如下所示:( file.txt 不存在以显示案例)

  chmod -f 777 file.txt
  echo $?
  1
Run Code Online (Sandbox Code Playgroud)

但是从示例 chmod 返回 1

请建议如何强制 chmod 命令在出现错误的情况下给出退出代码 0

shell chmod shell-script error-handling

52
推荐指数
3
解决办法
5万
查看次数

在文件夹中创建文件:权限被拒绝

我在将文件复制到 Ubuntu 12.04 上的目录时遇到问题。我在主目录中创建一个目录,以便我要复制到的路径是:

/home/sixven/camp_sms/inputs
Run Code Online (Sandbox Code Playgroud)

但是当ini在终端运行以下命令创建示例文件时如下:

francisco-vergara@Francisco-Vergara:/home/sixven/camp_sms/inputs$ touch test_file.txt
touch: can not make `touch' on «test_file.txt»: permission denied
Run Code Online (Sandbox Code Playgroud)

我无法直接复制该目录中的文件。如何使用chown&chmod命令分配权限以复制文件?

我不知道要使用哪个用户和组。

chmod chown

51
推荐指数
2
解决办法
61万
查看次数

更改符号链接的权限

我有一个具有这些权限的符号链接:

lrwxrwxrwx 1 myuser myuser       38 Aug 18 00:36 npm -> ../lib/node_modules/npm/bin/npm-cli.js*
Run Code Online (Sandbox Code Playgroud)

符号链接位于 .tar.gz 存档中。现在,当我使用 maven 解压缩 tar.gz 存档时,符号链接不再有效。因此,我试图重建符号链接。首先,我使用ln创建符号链接,但如何设置与原始符号链接相同的权限?

chmod symlink

49
推荐指数
3
解决办法
19万
查看次数