让linux下的用户只有只读权限

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了让linux下的用户只有只读权限相关的知识,希望对你有一定的参考价值。

就是说 我再SSH下新建了个SSH用户 想让那个用户只有读目录的权限 没有其他执行权限 或者无法修改SSH其他目录下文件的权限 有方法可以解决吗?
LINUX怎么新建个组啊,给个guest权限,指定一个临时目录

能把具体命令告诉我下吗

  可以用chmod 命令修改文件权限。
  chmod命令是非常重要的,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
  用法:
  文字设定法:
  chmod [who] [+ | - | =] [mode] 文件名¼
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。
操作符号可以是:
+ 添加某个权限。
- 取消某个权限。
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
r 可读。
w 可写。
x 可执行。
X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件 的用户ID位,“g+s”设置组ID位。
t 保存程序的文本到交换设备上。
u 与文件属主拥有一样的权限。
g 与和文件属主同组的用户拥有一样的权限。
o 与其他用户拥有一样的权限。
文件名:以空格分开的要改变权限的文件列表,支持通配符。
在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example 使同组和其他用户对文件example 有读权限。
  数字设定法:
  数字表示的属性的含义:
  0表示没有权限
  1表示可执行权限
  2表示可写权限
  4表示可读权限
  然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)
  如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)
参考技术A 可以啊,用命令下输入 groupadd 组名
chmod g-w 文件名 给这个组只写的权限
chmod g-r 文件名 给这个组只读的权限
参考技术B 系统默认吧 用chown +rrr 目录名 参考技术C groupadd guest 参考技术D linux下的读写和执行权限是基于文件的。每个目录、甚至每个设备都是文件。每个单个的文件有文件主rwx、组rwx和别人(other, 即外部世界)的rwx标识, 这里r是读,w是写,x是执行。
另外,不给一个用户一点必要的执行权限(如果可能的话),那也是不现实的。因为,他要进入一个目录,这个目录必须至少是other可执行的。他要读一个文件,必须用到如ls, less, cat一类工具(即执行这些可执行文件)。
有个折中的办法是,新建了个用户时不给他HOME,因为,每个用户在自己的HOME里一般(有些文件也例外)有rwx全权。同时,给他一个简单的shell(包括以上所说的ls, less, cat之类)。
关于文件夹的执行权限:当要访问一个文件夹的时候必须要有执行权限,如果没有那么不能进入这个文件夹,即使对这个文件夹有写的权限也不能在这文件夹下建立任何文件和文件夹。
如果对一个文件夹只有只读的权限,那么只能在这个文件夹外部对其读取而不能进入其内部。

关于文件夹内的删除文件问题:
要想在文件夹内写新的文件和新的文件夹进去,或者想删除文件夹里的文件,必须同时拥有执行和写这两个权限,没有的话是不能新建目录的。
建立一个新用户

  修改用户的个人设置

文件目录的权限设置

两个重要文件:passwd与group

建立一个新用户

建立一个新的用户包括两个步骤,第一步是使用useradd命令完成一个新用户的初始化设置工作;第二步是用passwd为这个新用户设置密码。例如,我们要给系统添加一个用户叫floatboat,密码为fan2001z,那相关的操作是:

useradd floatboat <回车>

这时候系统没有任何显示。接着:

passwd floatboat <回车>

系统显示:

Changing password for user floatboat

New UNIX password:

你输入:

fan2001z<回车>

注意,由于linux并不采用类似windows的密码回显(显示为*号)——为避免你输入密码时被人注意到有多少位——所以,输入的这些字符你是看不见的。

系统显示:

Retype new UNIX password:

你再重新输入一次密码,然后回车确认,这时系统会显示:

passwd:all authentication tokens updated successfully

表示修改密码成功了。

到这里,新用户的创建工作就算完成了。

Developer工具新建oracle用户,希望新建用户能只读其他用户下的表或视图,请问权限应该如何设定?

create user a1 identified by a1;
grant connect to a1;
grant select any table to a1;追问

新建的ORACLE用户是给客户使用的,不希望他看到其他用户建立的对象(除了指定的外)。现在的问题是很多系统对象(比如表)采用的权限是public,这样新建的用户也能访问这些赋予public权限的对象,请问应该如何设置呢?

追答

这就要通过角色管理了,你可以创建一个角色给用户,具体查看一下联机文档吧

参考技术A grant connect to ABC;
grant select any table to ABC;
grant select any view to ABC;追问

新建的ORACLE用户是给客户使用的,不希望他看到其他用户建立的对象(除了指定的外)。现在的问题是很多系统对象(比如表)采用的权限是public,这样新建的用户也能访问这些赋予public权限的对象,请问应该如何设置呢?

追答

无法设置让某个用户无法访问public的资源

参考技术B 我不会啊 你可以问问别人啊

以上是关于让linux下的用户只有只读权限的主要内容,如果未能解决你的问题,请参考以下文章

Linux服务器实现跨用户文件链接并设置只读权限

linux下ftp权限控制

Linux chmod命令详解

linux文件共享分配只读+禁止复制文件怎么分配权限?

Linux下设置文件权限

linux如何将一个目录下所有的文件都改成775的权限