当一台服务器上,既有测试环境,也有生成的环境,开发需要在线上测试,如果开发生产环境的权限,那开发容易误操作

需求如下:

(1)生产环境的代码,必须有专用的账号登陆进行管理

(2)开发测试环境的代码,开发能够访问,但访问不了生产环境目录

位了实现这个目的,操作如下

(1)将生产的环境的用户组和拥有者都修改为www

//修改用户

chown -R www /product-folder

//修改组

chgrp -R www /product-folder

(2)设置生产环境的权限为775,也就是只有拥有者,同组的人才能有权限读写,其它人只能读

chmod 775 -R /product-folder

 (3) 所有开发都在一个组里面,新建开发的组

groupadd dev

 (4) 创建开发 uesr1 user2 并添加到组dev

useradd user1 -d /home/user1

//修改密码

passwd user1

//用户添加到组

gpasswd –a user1 dev

 (5) 假设测试的目录为/test-folder, 保持/test-folder的Apache权限

  保持/test-folder的Apache权限   

  chown -R www /test-folder

chmod 775 -R /test-folder

将测试目录的组分配给开发

chgrp -R dev /test-folder

到这里,user1,user2只能访问test-folder不能访问product-folder

以下附上Linux上用户和组的操作

1linux修改文件所属用户和组

使用chown命令可以修改文件或目录所属的用户:

命令:chown 用户 目录或文件名

例如:chown qq /home/qq (把home目录下的qq目录的拥有者改为qq用户)

使用chgrp命令可以修改文件或目录所属的组:

命令:chgrp 组 目录或文件名

例如:chgrp qq /home/qq (把home目录下的qq目录的所属组改为qq组)

一、创建用户:
1、使用命令 useradd
例:useradd user1——创建用户user1
useradd –e 12/30/2009 user2——创建user2,指定有效期2009-12-30到期
用户的缺省UID从500向后顺序增加,500以下作为系统保留账号,可以指定UID,
例:useradd –u 600 user3

2、使用 passwd 命令为新建用户设置密码
例:passwd user1
注意:没有设置密码的用户不能使用。

3、命令 usermod 修改用户账户
例:将用户 user1的登录名改为 u1,
usermod –l u1 user1
例:将用户 user1 加入到 users组中,
usermod –g users user1

例:将用户 user1 目录改为/users/us1
usermod –d /users/us1 user1

4、使用命令 userdel 删除用户账户
例:删除用户user2
userdel user2
例:删除用户 user3,同时删除他的工作目录
userdel –r user3

5、查看用户信息
id命令查看一个用户的UID和GID, 例:查看user4的id
id user4
finger命令 ——可以查看用户的主目录、启动shell、用户名、地址、电话等信息
例:finger user4

二、用户组:
6、命令 groupadd创建用户组
groupadd –g 888 users
创建一个组users,其GID为888

7、命令 gpasswd为组添加用户
只有root和组管理员能够改变组的成员:
例:把 user1加入users组
gpasswd –a user1 users
例:把 user1退出users组
gpasswd –d user1 users
8、命令groupmod修改组
groupmod –n user users 修改组名user为users

9、groupdel删除组
groupdel users 删除组users

linux服务器如何设置目录权限,让开发只能在测试目录下开发,不在线上目录上开发的更多相关文章

  1. CentOS Linux服务器安全设置

    转自:http://www.osyunwei.com/archives/754.html 引言: 我们必须明白:最小的权限+最少的服务=最大的安全 所以,无论是配置任何服务器,我们都必须把不用的服务关 ...

  2. Linux 服务器如何设置文件和文件夹的读写权限

    修改文件可读写属性的方法 例如:把index.htm 文件修改为可写可读可执行: chmod 777 index.htm 要修改目录下所有文件属性可写可读可执行: chmod 777 *.* 该命令中 ...

  3. Windows连接Linux服务器中MySQL数据库-权限配置

    问题描述 在Windows系统中安装了监控MySQL数据库服务器性能的工具Spotlight on MySQL,利用Spotlight连接Linux服务器中的MySQL,进行相关配置如下:   点击& ...

  4. Linux服务器时间设置命令

    hwclock -r       # 读取BIOS 时间 hwclock -w     # 将当前系统时间写入BIOS date -s 2010/10/02   # 设置年月日 date -s 15: ...

  5. Linux服务器时间设置及同步

    闲余:夏日将到,园区计划五一期间进行大面积的电网停电检修,运维同学因此将公司测试服务器提前关闭了.收假后,测试告诉我,他发现一个bug--一段定时任务程序未执行,我的第一反应就是--会不会是假期测试服 ...

  6. Linux服务器---基础设置

    Centos分辨率      virtualbox里新安装的Centos 7 的分辨率默认的应该是800*600. 如果是‘最小化安装’的Centos7 进入的就是命令模式 .如果安装的是带有GUI的 ...

  7. “/”应用程序中的服务器错误。 / c:\windows\temp目录权限设置

    说明: 1 对该目录的权限是ASP.net生成编译运行的临时文件需要,ASP不需要这个目录是因为ASP的脚本代码是解释执行. 2 Windows2003默认的设置是可以正常运行ASP.net的,造成问 ...

  8. 【转】使用vnc连接linux服务器方便hadoop开发调试

    VNC(Virtual Network Computing)它能将完整的窗口界面通过网络,传输到另一台计算机的屏幕上. 类似的软件在Windows服务器中包含的"Terminal Serve ...

  9. [转]linux下centos服务器安全设置

    引言: 我们必须明白:最小的权限+最少的服务=最大的安全 所以,无论是配置任何服务器,我们都必须把不用的服务关闭.把系统权限设置到最小话,这样才能保证服务器最大的安全.下面是CentOS服务器安全设置 ...

随机推荐

  1. aliyun ubuntu mysql

    http://www.codingyun.com/article/38.html ------------ python install mysql module ubuntu下mysql-pytho ...

  2. android sqlite导入数据

    @Override public void onUpgrade(SQLiteDatabase db, int arg1, int arg2) { // TODO Auto-generated meth ...

  3. Unity3D Android手机开发环境配置,可真机发布调试

    此方法配置好,在可以在unity直接发布到手机上,并可以实时调试. 1.配置eclipse环境:首先在官网下载安装包:http://developer.android.com/sdk/index.ht ...

  4. 去掉NSString中的HTML标签

    经常出现字符串带有html标签.下面有个方法一步到位去掉HTML标签 <span style="font-family: 'comic sans ms', sans-serif; co ...

  5. [转载]SharePoint 2013搜索学习笔记之搜索构架简单概述

    Sharepoint搜索引擎主要由6种组件构成,他们分别是爬网组件,内容处理组件,分析处理组件,索引组件,查询处理组件,搜索管理组件.可以将这6种组件分别部署到Sharepoint场内的多个服务器上, ...

  6. Vue基础---->VueJS的使用(一)

    Vue.js是一个构建数据驱动的web界面的库.它的目标是通过尽可能简单的API 实现响应的数据绑定和组合的视图组件,今天我们就开始vue.js的学习. vue的安装及使用 一.vue的下载地址:ht ...

  7. Qt之QAbstractItemView右键菜单

    一.功能概述 说起右键菜单,之前Qt之自定义QLineEdit右键菜单这篇文章中我已经讲述过3种右键菜单的实现方式,今儿也是在啰嗦一下,针对QListWidget类在定制一下右键菜单,我使用的具体方式 ...

  8. Linq之Lambda表达式

    一 什么是LINQ? LINQ即Language Integrated Query(语言集成查询),LINQ是集成到C#和Visual Basic.NET这些语言中用于提供查询数据能力的一个新特性. ...

  9. 使用EasyUI的插件前需要引入的文件

    一.使用EasyUI的插件需要引入一些文件 1.引入相关文件 easyui.css: easyUi的样式文件 icon.css:easyUI的图标样式文件 easyui.min.js:easyUi的类 ...

  10. knockout的依赖属性dependentObservable的参数 和Value转换器

    可写的依赖监控属性ko.dependentObservable的参数 read:   必选,一个用来执行取得依赖监控属性当前值的函数write:  可选,如果声明将使你的依赖属性可写,别的代码如果这个 ...