linux学习笔记(3)-文件系统
- 三大类文件类型
- 普通文件:包括文本文件、数据文件、可执行的二进制程序文件
- 目录文件:linux系统把目录看成一种特殊的文件,利用它构成了文件系统的树形结构
- 设备文件:把设备也看成是一个文件,例如你的鼠标,你的硬盘,等在linux中表现的就是一个文件
- 文件类型的标识符
前面谈到linux有多种不同的文件类型,对不同的文件处理方式肯定不同,例如对普通文件和对目录文件处理方式肯定是不同的,那么系统有是怎么识别的呢?,在文件属性里分别用不同的编码给他们做标记就行
下面是 不同文件的不同编码
- 普通文件(-)
- 目录(d)
- 符号链接(l)
- 字符设备文件(c)
- 快设备文件(b)
- 套接字(s)
- 命名管道(p)
用命令查看文件的类型
#ls -l
例如下图中的test文件夹,前面有drwxr-xr-x,其中第一个编码d,就是这是一个目录,其他类推

在/dev目录可以找到字符设备文件、快设备文件和连接文件哦!
- 文件权限
一个文件的权限系统分为三部分,是根据用户的属性来划分的
- 文件的拥有者的权限(u)
- 文件所属组的成员权限(g)
- 其他用户权限(o)
文件的权限类型也分为三部分
- 读r (Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录得到权限
- 写w (Write,写入):对文件而言,就有修文件内容的权限;对目录来说,具有删除、移动目录内文件的权限
- 执行x(eXecute,执行):对文件而言,具有执行文件的权限;对目录而言,表示是该用户具有进入目录的权限
比如
-rw-r--r--
第一个"-"表示该文件是普通文件
接下来的"rw-"表示文件的所属者具有读和写权限
接下来的"r--"表示和文件所属用户的同组用户仅仅具有读权限
接下来的"r--"表示其他同行仅仅具有读权限
- 修改文件权限命令
利用chmod可以修改文件权限
格式chmod [-R] {[ugoa][+-=][rwx]} <文件名或者目录名>
备注:格式中的[]表示该选项是可选的,{}表示是一个整体,<>表示必选参数
不同选项的意义
- -R:若操作的是目录,表示递归的对该目录下的所有子项目实施相同的权限设置
- u表示属主(user)
- g表示所属组用户(group)
- o表示其他用户(other)
- a表示所有用户(all)
+-=分别表示 增加,删除,设置
实例操作
先新建一个test.txt文件
#touch test.txt
#ls -l
发现所属主具有读和写权限

对其增加执行权限
#chmod u+x test.txt
#ls -l

Chmod 也可以利用三位数字改变文件的权限
第一位代表文件的所属主的权限
第二位代表文件的所属组的权限
第三位代表文件的其他用户的权限
4(读)R
2(写) W
1(执行) X
#chmod 700 test.txt
#ls -l

Test.txt文件的所属主具有读写执行的权限,其他用户没有任何权限,会发现这很方便的
- 修改文件的的所属者和所属组
可以利用chown命令来改变,(change owner)改变文件或目录所属的用户和用户组权限
注意:执行前必须保证用户和用户组是系统已经存在的
先有用户user1 user2。所属组有group1 group2
将testfile从原先的所属者为user1改为user2,原先的所属组user1改为group2
#chown user2:group2 testfile

#总结#
又坚持了一天,加油!
linux学习笔记(3)-文件系统的更多相关文章
- Linux学习笔记(一) 文件系统
对于每一个 Linux 学习者来说,了解 Linux 文件系统的结构是十分有必要的 因为在 Linux 中一切皆文件,可以说只有深入了解 Linux 的文件系统,才会对 Linux 有更深刻的理解 L ...
- Linux学习笔记(二) 文件管理
了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令 1.pwd pwd 是 Print Working Directory 的简写,用于显 ...
- Linux学习笔记(四) vi编辑器
一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...
- Linux学习笔记(五) 账号管理
1.用户与组账号 用户账号:包括实际人员和逻辑性对象(例如应用程序执行特定工作的账号) 每一个用户账号包含一个唯一的用户 ID 和组 ID 标准用户是系统安装过程中自动创建的用户账号,其中除 root ...
- Linux学习笔记(六) 进程管理
1.进程基础 当输入一个命令时,shell 会同时启动一个进程,这种任务与进程分离的方式是 Linux 系统上重要的概念 每个执行的任务都称为进程,在每个进程启动时,系统都会给它指定一个唯一的 ID, ...
- Linux学习笔记(七) 查询系统
1.查看命令 (1)man 可以使用 man 命令名称 命令查看某个命令的详细用法,其显示的内容如下: NAME:命令名称 SYNOPSIS:语法 DESCRIPTION:说明 OPTIONS:选项 ...
- Linux学习笔记-文件系统和基本命令
目录 分区设备文件名 分区 挂载 文件目录 文件处理命令 目录处理命令 硬件设备文件名 IDE硬盘 /dev/hd[a-d] USB硬盘 /dev/sd[a-p] 光驱 /dev/cdrom或者/de ...
- Linux学习笔记之 Btrfs文件系统简介及使用
Btrfs 也有一个重要的缺点,当 BTree 中某个节点出现错误时,文件系统将失去该节点之下的所有的文件信息.而 ext2/3 却避免了这种被称为”错误扩散”的问题. Btrfs相关介绍: Btrf ...
- deepin linux学习笔记
目录 deepin linux学习笔记 前言 linux常用命令 ls 显示文件夹内容 cd 切换当前目录 pwd 查看当前工作目录 mkdir 新建文件夹 rm 删除文件或文件夹 mv 移动文件 c ...
- linux学习笔记2 - linux常用命令
转载请标注原链接:http://www.cnblogs.com/xczyd/p/5543731.html 第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装lin ...
随机推荐
- hdu 3635 Dragon Balls
Dragon Balls Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- Python性能测试
python -m profile xxx.py > log.txt 打开log.txt查看,搜索你所关心的方法调用耗费的时间. profile的统计结果分为ncalls.tottime.per ...
- 【Knockout】二、监控属性Observables
MVVM和viewModel Knockout是建立在以下三大核心功能之上的: 监控属性和依赖跟踪(Observables and dependency tracking) 声明式绑定(Declara ...
- C# 计算文件的 Hash 值
/// <summary> /// 提供用于计算指定文件哈希值的方法 /// <example>例如计算文件的MD5值: /// <code> /// String ...
- centos6.5下磁盘分区及挂载
1..查看磁盘空间 2.磁盘分区 3.格式化分区 4.挂载/卸载
- 【转】Android属性之build.prop,及property_get/property_set
简要分析一下build.prop是如何生成的.Android的build.prop文件是在Android编译时收集的各种property(LCD density/语言/编译时间, etc.),编译完成 ...
- 添加点标注IMarkerElement
private void AddPointElement(IPoint pPoint) { if (pPoint != null) { IElement pElement = null; IRgbCo ...
- 在O(1)时间删除链表结点
题目:给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点. 链表结点与函数的定义如下: struct ListNode { int m_nValue; ListNode* m_p ...
- JDK中工具类的使用
JDK中内置了很多常用的工具类,且多以“s”结尾,如:集合工具类Collections,数组工具类Arrays,对象工具类Objects,文件工具类Files,路径工具类Paths,数学工具类Math ...
- spring 计划任务:cron表达式
Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表一个含义,Cron有如下两种语法 格式: Seconds Minutes Hours DayofMonth Mont ...