`
tiankefeng0520
  • 浏览: 147263 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

Linux学习记录--文件权限

阅读更多

文件权限

Linux针对文件权限分为三组,即用户,用户组,其他

可通过ll(ls -l) 查看文件权限,此命令后续介绍

 

[root@localhost ~]# ll /etc/termcap

-rw-r--r--1 rootroot 807103 2007-01-07/etc/termcap

Ø  红色部分代表文件权限

Ø  黄色部分代表该文件所属用户

Ø  绿色部分代表该文件所属用户组

 

对于文件权限可分为3种(严格说并不是3种)

权限种类

描述

r

4

可读

w

2

可写

x

1

可执行

 

字符意义

文件权限相关共10个字符,其意义分别为

第1个字符:文件类型

[d]表示文件目录

[-]表示文件

[|]表示连接文件

[b]表示设备文件里的可供存储的接口设备

[c]表示设备文件里面的串行端口设备,如键盘

第2~4个字符:用户权限

第5~7个字符:用户组权限

第8~10个字符:其他用户权限

 

 

举例

-rw-r----x1  A  G1 807103 2007-01-07 /file

由上信息可看出:

该文件属于用户A,属于用户组G1

 

该文件对于用户权限为rw- 即为可读写权限

该文件对于用户组权限为r-- 即为可读权限

该文件对于其他权限为--x 即为可执行权限

 

假设A,B,C三个用户,A B属于用户组G1 ,C属于用户组G2

那么A就有拥有rw-权限

由于B属于用户组G1,因此B拥有r--权限

由于C属于用户组G2,因此C拥有--x权限

 

权限与属性的更改

chgrp:更改文件所属用户组

chown:更改文件所有者

chmod:更改文件权限

 

 

chgrp

这个命令就是change group的简称,不过要被改变的组名要在/etc/group/文件内存在才行,否则会报错

 

语法:chgrp [-R]  用户组dirname/filename

选项与参数:

-R:递归参数(recursive) 的持续更改,连同子目录下的所有文件,目录一起更改

 

举例:

 

[root@localhost ~]# ll install.log  //查看install.log属性
-rw-r--r-- 1 root root 35014 02-14 10:29 install.log
[root@localhost ~]# chgrp users install.log //更改用户组为users
[root@localhost ~]# ll install.log //查看install.log属性
-rw-r--r-- 1 root users 35014 02-14 10:29 install.log
[root@localhost ~]# chgrp nogronp install.log //输入一个无效的组
chgrp: 无效的组 “nogronp”

 

 

chown

 

这个命令就是change owenr的简称,不过要被改变的用户要在/etc/passwd/文件内存在才行,否则会报错

 

语法:chown[-R] 用户 文件/目录

chown[-R] 用户:组名文件/目录

选项与参数:

-R:递归参数(recursive) 的持续更改,连同子目录下的所有文件一起更改

 

举例:

[root@localhost ~]# ll install.log
-rw-r--r-- 1 root root 35014 02-14 10:29 install.log
[root@localhost ~]# chown bin install.log
[root@localhost ~]# ll install.log
-rw-r--r-- 1 bin root 35014 02-14 10:29 install.log
 have new mail in /var/spool/mail/root
[root@localhost ~]# chown tkf:users install.log
[root@localhost ~]# ll install.log
-rw-r--r-- 1 tkf users 35014 02-14 10:29 install.log

 

chmod

 

权限设置分为2种,分别可以使用数字和符号

 

语法:chmod  [-R]  权限 文件/目录

chmod  [-R]  符号表达式文件/目录

 

chmod

u(user)

g(group)

o(other)

a(all)

+(加入)

- (除去)

=(设置)

文件或目录

 

选项与参数:

-R:递归参数(recursive) 的持续更改,连同子目录下的所有文件一起更改

 

举例

 

[root@localhost ~]# ll baa
-rw-r--r-- 1 root root 176 2007-01-06 baa
[root@localhost ~]# chmod 754 baa
[root@localhost ~]# ll baa
-rwxr-xr-- 1 root root 176 2007-01-06 baa
[root@localhost ~]# chmod u=rw,g=x,o=x baa 
[root@localhost ~]# ll baa
-rw---x--x 1 root root 176 2007-01-06 baa
[root@localhost ~]# chmod a+w baa 
[root@localhost ~]# ll baa
-rw--wx-wx 1 root root 176 2007-01-06 baa
[root@localhost ~]# 

 

 

目录与文件权限的意义

 

R(Read):可读取此文件的实际内容,如读取文本文件的文件内容

当你具一个目录读取r 权限。表示你可以查看该目录下的文件名结构。

W(write): 可以编辑,新增或者是修改该文件的内容(但不含删除该文件)

当你具一个目录写入w 权限。表示你可以更改该目录结构

1.      新建新的文件与目录

2.      删除已经存在的文件和目录(不论该文件的权限是什么)

3.      将以存在的文件或目录进行重命名

4.      转移该目录内的文件,目录位置

X(execute):该文件具有可以被系统执行的权限(对于目录来说X就是进入文件夹的权限)

 

举例

[root@localhost ~]# mkdir -m 000 /tmp/testdir //root 用户权限为000的 文件夹testdir
[root@localhost ~]# cd /tmp/testdir/   //超级用户无权限也可进入
[root@localhost testdir]# touch testfile  //创建文件
[root@localhost testdir]# chown tkf . // 将文件夹testdir用户变更为tkf,以便一会切换用户操作
[root@localhost testdir]# ls -ald /tmp/testdir/ ./testfile 
-rw-r--r-- 1 root root    0 02-19 12:59 ./testfile
d--------- 2 tkf  root 4096 02-19 12:59 /tmp/testdir/
[root@localhost testdir]# su tkf //切换用户
[tkf@localhost testdir]$ cd ..
[tkf@localhost tmp]$ ll  ./testdir/        //无r权限
ls: ./testdir/: 权限不够
[tkf@localhost tmp]$ chmod u+r ./testdir  //分配r权限
[tkf@localhost tmp]$ ll  ./testdir/
?--------- ? ? ? ?          ? testfile    //可以看到目录结构 但是因为无X权限,目录下文件属性看不到
[tkf@localhost tmp]$ cd testdir/           //无x权限
bash: cd: testdir/: 权限不够
[tkf@localhost tmp]$ chmod u=rx ./testdir  //分配rx权限
[tkf@localhost tmp]$ ll  ./testdir/    
-rw-r--r-- 1 root root 0 02-19 12:59 testfile  //可以看到目录结构和文件属性
[tkf@localhost tmp]$ cd testdir/
[tkf@localhost testdir]$ rm -f testfile  //无W权限,不能删除目录下的文件
rm: 无法删除 “testfile”: 权限不够
[tkf@localhost tmp]$ chmod u=w ./testdir  //仅分配W权限
[tkf@localhost tmp]$ ls -ald ./testdir/
d-w------- 2 tkf root 4096 02-19 12:59 ./testdir/
[tkf@localhost tmp]$ rm ./testdir/testfile //缺少X权限 因此删不了
rm: 无法删除 “./testdir/testfile”: 权限不够 
[tkf@localhost tmp]$ chmod u=rw ./testdir  //分配RW权限
[tkf@localhost tmp]$ rm ./testdir/testfile  //缺少X权限 因此删不了
rm: 无法删除 “./testdir/testfile”: 权限不够
[tkf@localhost tmp]$ chmod u=wx ./testdir //分配XW权限
[tkf@localhost tmp]$ rm ./testdir/testfile //可以删除文件,同时文件的用户属于root ,在tkf用户仍可以删除
rm:是否删除有写保护的 一般空文件 “./testdir/testfile”? y

 

1.如果目录只有R权限。可以查看目录下文件结构,但是看不到文件属性,并且进入不了目录(cd)

2.如果目录有RX权限,可以查看目录下文件结构和属性,并且可以进入目录

3.要删除目录下的文件。目录至少需要WX权限

1
0
分享到:
评论

相关推荐

    linux学习笔记--很经典

    本篇“Linux学习笔记”详细介绍了Linux的基本目录结构及其各自的功能,这对于初学者理解Linux系统的核心概念非常重要。 #### 二、Linux目录结构解析 1. **/(根目录)** - 根目录是Linux文件系统的起点,所有的...

    Linux学习笔记-很不错适合linux入门者

    这包括如何创建和管理用户账户,理解Unix-like系统的文件权限(读、写、执行),以及如何使用命令行工具如`ls`, `cd`, `mkdir`, `rm`, `chmod`等进行日常文件操作。 系统配置和维护也是入门者需要了解的内容,笔记...

    linux学习笔记-01linux操作基础

    ### Linux学习笔记—01 Linux操作基础 #### 1. Linux 基础命令与用法 在Linux操作系统中,掌握一系列的基础命令是非常重要的。这些命令可以帮助用户进行各种日常操作,比如文件管理、目录切换、文件查看等。下面将...

    LINUX文件权限理解

    ### Linux 文件权限理解 #### 一、用户与组群管理 在 Linux 系统中,用户的账号信息主要存储于 `/etc/passwd` 文件内,包括一般用户和超级用户(root)的相关信息。每个用户的密码信息则单独保存在 `/etc/shadow` ...

    兄弟连linux教程1-16章学习笔记(全)

    4. **命令行操作**:在"兄弟连linux教程1-5章.txt"中,可能会涉及Linux命令行的基本操作,如文件和目录管理(创建、删除、移动、复制)、文件权限与用户管理、文本编辑器Vim的使用等。 5. **系统管理**:"兄弟连...

    util-linux-ng-util-linux-ng-2.17.2-12.24.el6_8.1.zip

    mount命令允许用户指定要挂载的设备、挂载点以及挂载选项,例如文件系统类型(ext4、ntfs、fat32等)、读写权限、是否自动挂载等。此外,/etc/fstab文件通常用来配置系统启动时自动挂载的设备,使得系统管理更为便捷...

    Linux学习笔记-初学者

    ### Linux学习笔记-初学者 #### 一、Linux分区命名规则及理解 Linux系统中的分区命名规则对于初学者来说非常重要,因为这直接影响到如何管理和识别不同的存储设备。下面详细介绍几个关键概念: - **MBR(Master ...

    aarch64-linux-android-4.9

    5. **库文件(Library Files)**:包括系统库和Android特定的库,如liblog用于日志记录,libandroid用于系统接口等。 6. **构建脚本和配置文件**:如Makefile,帮助自动化编译过程,使其适应Android的构建系统。 ...

    linux学习笔记-2

    ### Linux学习笔记精要 #### 一、Linux操作系统概述与常用命令 - **Shell与GUI**: Linux系统提供了两种主要的用户交互方式,图形用户界面(GUI)如Gnome和命令行界面(CLI)如Bash。GUI适合初学者,而CLI对于高效地...

    p6880880_190000_Linux-x86-64.zip

    2. 解压文件:在Linux服务器上,使用解压缩命令如`unzip`解压下载的文件。 3. 准备环境:确保服务器满足补丁的系统要求,如内存、磁盘空间和权限等。 4. 运行OPatch:进入解压后的目录,运行OPatch工具,指定补丁ID...

    wrapper-linux-x86-64-3.5.55 专业版

    此外,包装器还提供了日志记录、故障恢复、资源限制、权限管理等功能,提高了应用程序的健壮性和可维护性。 在部署Java应用时,首先要确保系统满足包装器的硬件和软件需求,然后配置`wrapper.conf`文件,指定Java...

    linux-serial-test-master.zip_SERIAL_linux serial_linux-serial-te

    6. **设备文件与权限**:在Linux中,串行端口作为设备文件存在,其访问权限由系统管理。理解如何通过chmod命令修改权限以及使用sudo运行程序以获取必要权限是使用Linux-Serial-Test的前提。 7. **调试与日志记录**...

    老男孩Linux运维笔记--文字版

    这份笔记以其实践性强、实用价值高的特点,深受广大Linux运维人员的喜爱,是日常学习和工作中不可或缺的参考资料。 在Linux运维的世界里,掌握基础与进阶知识至关重要。首先,你需要了解Linux操作系统的基本结构和...

    p6880880_112000_Linux-x86-64.rar

    3. **预检查**:运行Oracle提供的预检查脚本,确保系统满足升级的所有先决条件,如足够的磁盘空间、正确的文件权限等。 4. **应用补丁**:使用Oracle的`opatch`工具来应用补丁。对于RAC环境,通常需要在每个节点上...

    Linux最佳入门-个人学习笔记-知识点总结.rar

    这是个人10年前的Linux Ubuntu学习笔记,之后查笔记时,都会补充新知识,也有纠错,涵盖了10个PDF文件,由有道笔记导出,非常适合初学者。这些PDF文件包含了丰富的知识和实用技巧,能够帮助您更好地掌握Linux Ubuntu...

    Linux学习笔记(强悍总结值得一看)_linux_linux学习笔记_

    4. **文件权限**: Linux使用rwx(读、写、执行)三位权限,分为用户、组和其他人三类。`chmod`用于改变文件或目录的权限,`chown`和`chgrp`改变所有者和所属组。理解七位数权限表示法也是必须的。 5. **目录结构*...

    Linux学习笔记Linux学习笔记

    Linux学习笔记 本文档旨在为读者提供 Linux 操作系统的基础知识,包括 Linux 的介绍、安装、目录结构、远程操作工具等内容。 1. Linux 介绍 Linux 是一个开源、免费的操作系统,其稳定性、安全性、处理多并发能力...

    p6880880_112000_Linux-x86-64.zip

    这个特定的压缩包文件 "p6880880_112000_Linux-x86-64.zip" 显然是针对Oracle数据库11g的一个升级补丁,特别适用于Linux 64位操作系统。"p6880880" 是这个补丁的唯一标识符,可能在Oracle官方支持文档或更新列表中...

    Linux基础课件-- 文件权限设置-chown命令.pptx

    本文将详细讲解Linux中的一个重要命令——`chown`,它用于更改文件或目录的所有者以及所属用户组,是进行权限管理的关键工具。 `chown`(change owner)命令的作用在于调整文件或目录的所有权,即改变文件或目录的...

Global site tag (gtag.js) - Google Analytics