zoukankan      html  css  js  c++  java
  • linux系统下修改文件夹目录权限

    linux系统下修改文件夹目录权限

    文件夹权限问题

    Linux、Fedora、Ubuntu修改文件、文件夹权限的方法差不多。很多人开始接触Linux时都很头痛Linux的文件权限问题。这里告诉大家如何修改Linux文件-文件夹权限。以主文件夹下的一个名为cc的文件夹为例。 下面一步一步介绍如何修改权限: 1.打开终端。输入su(没

     

    Linux、Fedora、Ubuntu修改文件、文件夹权限的方法差不多。很多人开始接触Linux时都很头痛Linux的文件权限问题。这里告诉大家如何修改Linux文件-文件夹权限。以主文件夹下的一个名为“cc”的文件夹为例。

    下面一步一步介绍如何修改权限:
    1.打开终端。输入”su”(没有引号)

    2.接下来会要你输入密码,输入你的root密码。

    3.假设我的文件夹在主目录里,地址为  /var/home/dengchao/cc  。假设我要修改文件权限为777,则在终端输入  chmod  777 /var/home/userid/cc

    文件夹的权限就变为了777。

    如果是修改文件夹及子文件夹权限可以用  chmod -R 777 /var/home/userid/cc

    具体的权限(例如777的含意等)在下面解释下:
    1.777有3位,最高位7是设置文件所有者访问权限,第二位是设置群组访问权限,最低位是设置其他人访问权限。

    其中每一位的权限用数字来表示。具体有这些权限:

    r(Read,读取,权限值为4):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目 录的权限。

    w(Write,写入,权限值为2):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。

    x(eXecute,执行,权限值为1):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。

    2.首先我们来看如何确定单独一位上的权限数值,例如最高位表示文件所有者权限数值,当数字为7时,7用“rwx”表示–{4(r)+2(w)+1(x)=7}–

    又如果数值为6,则用“rw-”表示–{4(r)+2(w)+0(x)=6}–,”-”表示不具备权限,这里表示不具备“执行”权限。

    假如我们设定其他用户的访问权限为 “r–”,则数值为4+0+0=4

    一开始许多初学者会被搞糊涂,其实很简单,我们将rwx看成二进制数,如果有则用1表示,没有则有0表示,那么rwx则可以表示成为:111

    而二进制的111就是7。

    3.我们再来看下怎么确定3个数位上的权限。假如我们要给一个文件设置权限,具体权限如下:

    文件所有者有“读”、“写”、“执行”权限,群组用户有“读”权限,其他用户有“读”权限,则对应的字母表示为”rwx r– r–“,对应的数字为744

    一般都是最高位表示文件所有者权限值,第二位表示群组用户权限,最低位表示其他用户权限。

    下面来举些例子熟悉下。

    权限

    数值

    rwx rw- r–

    764

    rw- r– r–

    644

    rw- rw- r–

    664

    具体linux修改文件夹-文件目录权限就是这样设置的了.

    chmod用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。

    1. 文字设定法

    语法: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 有读权限。

    2. 数字设定法

    我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限, 2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。

    例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。

    数字设定法的一般形式为:

    语法:chmod [mode] 文件名

    指令实例:

    chmod a+x sort   
    % 即设定文件sort的属性为:
     文件属主(u) 增加执行权限
     与文件属主同组用户(g) 增加执行权限
     其他用户(o) 增加执行权限
     
    chmod ug+w,o-x text
    % 即设定文件text的属性为:
     文件属主(u) 增加写权限
     与文件属主同组用户(g) 增加写权限
     其他用户(o) 删除执行权限
     
    chmod u+s a.out
    % 假设执行chmod后a.out的权限为(可以用ls – l a.out命令来看):
     –rws--x--x 1 inin users 7192 Nov 4 14:22 a.out
     并且这个执行文件要用到一个文本文件shiyan1.c,其文件存取权限为“–rw-------”,
      即该文件只有其属主具有读写权限。
       当其他用户执行a.out这个程序时,他的身份因这个程序暂时变成inin(由于chmod
      命令中使用了s选项),所以他就能够读取shiyan1.c这个文件(虽然这个文件被设定为
      其他人不具备任何权限),这就是s的功能。
      因此,在整个系统中特别是root本身,最好不要过多的设置这种类型的文件(除非
      必要)这样可以保障系统的安全,避免因为某些程序的bug而使系统遭到入侵。
     
    chmod a–x mm.txt
    chmod –x mm.txt
    chmod ugo–x mm.txt
    % 以上这三个命令都是将文件mm.txt的执行权限删除,它设定的对象为所有使用者。
     
    $ chmod 644 mm.txt
    % 即设定文件mm.txt的属性为:-rw-r--r--
     文件属主(u)inin 拥有读、写权限
     与文件属主同组人用户(g) 拥有读权限
     其他人(o) 拥有读权限
     
    chmod 750 wch.txt
    % 即设定wchtxt这个文件的属性为:-rwxr-x---
     文件主本人(u)inin 可读/可写/可执行权
     与文件主同组人(g) 可读/可执行权
     其他人(o) 没有任何权限

    linux下搭建FTP服务器

    *************FTP文件说明*********************
    本FTP服务器软件包为vsftpd-2.3.4-1.fc14.i686.rpm
    FTP客户端软件包为ftp-0.17-51.fc12.i686.rpm
    1、vsftpd不再由xinetd控制;
    2、FTP使用port 21发起连接,使用port 20进行数据传输;
    3、vsftpd配置文件:    /etc/vsftpd/vsftpd.conf         #主配置文件
                /etc/vsftpd/vsftpd/ftpusers     #拒绝该文件中列出的用户登录FTP
                /etc/vsftpd/vsftpd/user_list    #默认同ftpusers相同
    4、查看/etc/passwd文件,可以看到FTP默认的共享目录路径为/var/ftp;
    5、FTP日志文件:/var/log/xferlog
    6、相关软件包:tcp_wrappers、ip_conntrack_ftp、ip_nat_ftp
        (这3个软件包是教材上列出的,我没有测试过其用途,有兴趣的朋友可以研究一下)
    7、启动和停止vsftp指令:
    #service vsftpd start       //启动vsftpd服务
    #service vsftpd stop        //停止vsftpd服务
    #service vsftpd restart     //重启vsftpd服务,每次更改FTP相关配置后,一定要用该命令重启vsftpd服务
    #chkconfig vsftpd on        //使vsftpd服务开机启动。(可选操作)
    8、注意SElinux的安全性质:
    一般SElinux是被强行启用的,对许多服务都默认有权限控制,如果在我们对FTP服务器测试时碰到一些莫名奇妙的错误时,可以关闭SElinux,
    也可以仅关闭SElinux对FTP服务的保护设置;
    #sestatus         //查看当前系统SElinux是否开启
    如果开启了,则打开/etc/selinux/config文件,编辑:将SELINUX=enforcing改成SELINUX=disabled,并把SELINUXTYPE=targeted注释掉!

    或者#setsebool -P ftpd_disable_trans 1     //仅关闭SELinux对FTP的保护
    *************FTP权限需求**********************
    a.允许匿名用户登录;
    b.允许匿名用户上传和下载资料(拒绝覆盖已有资料);
    c.允许本地用户登录;(注意SElinux的影响)
    d.FTP共享目录/var/ftp/
    e.拒绝匿名用户创建新文件或者文件夹;
    f.使登录用户可以下载共享资料
    ============================================================================

    1、查询本机是否已经安装ftp-server和ftp-client;
    #rpm -qa vsftpd
    #rpm -qa ftp

    2、如果没有安装,则下载相应软件包,或者yum在线安装;
    #yum install vsftpd     //ftp服务器软件包
    #yum install ftp        //ftp客户端软件包

    3、编辑/etc/vsftpd/vsftpd.conf
    anonymous_enable=YES      //允许匿名用户登录

    local_enable=YES          //允许本地用户登录

    write_enable=YES          //允许登录到FTP的用户执行写操作

    local_umask=022
    anon_umask=077            //匿名用户上传的文件权限都会进行umask的计算,变成-rw- --- ---

    anon_upload_enable=YES    //允许匿名用户上传文件

    xferlog_file=/var/log/vsftpd.log     //FTP服务器日志文件默认路径

    ftpd_banner=***********Welcome to My FTP Server***********

    4、开启vsftpd服务
    #service vsftpd start

    5、在FTP共享目录下建立文件夹
    #mkdir /var/ftp/pub              //用于存放共享文件资料
    #mkdir /var/ftp/incoming         //用于存放匿名用户上传的资料

    #ls -l /var/ftp/
    drwxr-xr-x. 2 root root 4096  5月  8 14:13 incoming
    drwxr-xr-x. 2 root root 4096  5月  8 14:15 pub
    //新创建的文件夹默认归属于root用户和用户组,需要更正!

    #chown ftp.ftp /var/ftp/incoming       //改为所属用户为ftp,用户组为ftp组
    #chown ftp.ftp /var/ftp/pub
    #ls -l /var/ftp
    drwxr-xr-x. 2 ftp ftp 4096  5月  8 14:13 incoming
    drwxr-xr-x. 2 ftp ftp 4096  5月  8 14:15 pub

    6、登录到FTP服务器
    #ftp 127.0.0.1
    Connected to 127.0.0.1 (127.0.0.1).
    220 ************Welcome to My FTP Server*************.
    Name (127.0.0.1:root): ftp                //这里的登录用户名输入ftp或者anonymous或者本地有效账户名
    331 Please specify the password.
    Password:                                 //匿名登录时,直接回车
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp>

    还有一种方法也可以登录到FTP服务器:打开火狐浏览器,输入ftp://127.0.0.1,即可匿名登录;
    7、允许登录用户下载/var/ftp/pub中的文件资料
    使用管理员帐号:
    #chmod +r /var/ftp/pub/*          //修改pub目录下文件的读权限

  • 相关阅读:
    11111 Generalized Matrioshkas
    Uva 442 Matrix Chain Multiplication
    Uva 10815 Andy's First Dictionary
    Uva 537 Artificial Intelligence?
    Uva 340 MasterMind Hints
    SCAU 9508 诸葛给我牌(水泥题)
    Uva 10420 List of Conquests(排序水题)
    Uva 409 Excuses, Excuses!
    10/26
    11/2
  • 原文地址:https://www.cnblogs.com/yymn/p/5615397.html
Copyright © 2011-2022 走看看