Linux的文件权限与目录配置

本文介绍了Linux系统中文件属性与权限的管理方法,包括如何使用chgrp和chown命令来改变文件的所有者和用户组,以及如何使用chmod命令来调整文件权限。此外,文章还概述了Linux的标准目录配置(FHS),解释了不同目录的作用及其应存放的内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

Linux最优秀的地方之一就是它的多用户、多任务环境。

Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。

如何改变文件的属性与权限

改变属性用户组

要求:要改变的组名必须要在/etc/group 文件内存在才行。

语法:chgrp [-R] dirname/filename

       -R: 进行递归的持续更改,连同目录下的所有子文件、子文件夹一起更改。

如:chgrp users install.log

改变文件所有者

要求:用户名必须在/etc/passwd 这个文件中能找到。

语法:chown [-R] dirname/filename

       -R: 进行递归的持续更改,连同目录下的所有子文件、子文件夹一起更改。

如:chown bin install.log

值得一提:如果同时改变所有者和用户组  可以:chown root:root install.log

到底什么时候能用到呢?当把一个文件复制给其它人时,由于复制行为(cp)会复制执行者的属性与权限,所有有必要改变所有者或用户组。

改变权限

 

chmod

u

g

o

a(all)

+

=

r:4

w:2

x:1

文件或目录

 

下面列出几个例子

1. chmod 777 .bashrc

2. chmod u=rwx,go=rx .bashrc

3. chmod a+w .bashrc

4. chmod a-x .bashrc

 

 

Linux的目录配置标准:FHS

/(root,根目录):与开机系统有关

 

目录

应放置文件内容

/bin

放置的是在单用户维护模式下还能够被操作的命令。如:cat,chmod等常用命令。

/boot

开机使用到的文件,包括Linux内核,以及开机菜单与开机所需配置文件。

/dev

任何设备与接口设置都是以文件的形式存在于这个目录。如:/dev/null

/etc

系统主要配置文件几乎都在这个目录内,如:账户密码文件,各种服务的起始文件,一般用户都可以查看但是只有root可以修改。

/home

默认的用户主文件夹

/lib

放置开机时会用到的函数库,以及在/lib /sbin 下面的命定会调用的函数库。函数库有点像外挂。

/media

可删除设备  如:软盘,光盘

/mnt

暂时挂载某些额外的设备

/tmp

临时文件或目录

/opt

第三方软件放置的目录

/root

系统管理员的主文件夹

/sbin

这里的命令只有root才能够利用来设置系统,如:开机、修复、还原系统所需命令。

/srv

一些网络服务启动后,这些服务要取用的数据目录

/lost+found

标准的ext2/ext3 文件系统格式才有的目录,用于文件系统发生错误时,将一些丢失的片段放到这个目录下。

/proc

这个目录本身是一个虚拟的文件系统,它放置的数据都在内存中,所以本身不占硬盘空间,如系统内核,进程。

/sys

/proc类似,也是虚拟文件系统,记录与内核相关信息。

 

 

 

 

 

 

 

 

/usr的意义与内容

放置的数据属于可分享的与不可变动的,是Linux操作系统软件资源放置的目录,而不是用户的数据。因为所有系统默认的软件都会放置到/usr下面,因此这个目录有点类似Windows系统的C:\WindowsC:\Program files\这两个目录的综合体。所以刚安装系统这里很大哦。

 

 

目录

应放置文件内容

/usr/X11R6

X Window系统重要数据所放置的目录,之所以取名为X11R6是因为最后的X版本为第11版,且改版的第6次释出之意。

/usr/bin/

绝大多数的用户可使用命令都在这,注意它与/bin的不同之处,是否与开机过程有关。

/usr/include/

c/c++等程序语言的头文件与包含文件放置处,当我们以tarball方式安装某些数据时,会用到这里的许多包含文件

/usr/lib/

包含各应用软件的函数库、目标文件,以及不被一般用户惯用的执行文件和脚本

/usr/local

系统管理员在本机自行安装自己下载的软件,建议安装到此目录,这样便于管理。

/usr/sbin

非系统正常运行所需要的系统命令,如某些网络服务器软件的服务命令。

/usr/share

放置共享文件的地方

/usr/src/

一般源码建议放置到这里,至于内核源码则放在/usr/src/linux/

 

/var 的意义与内容

var目录主要针对常态性变动的文件,如缓存,登录文件,以及某些软件运行所产生的文件。

 

 

目录

应放置文件内容

/var/cache

应用程序运行过程中产生的一些暂存文件

/bar/lib

程序执行过程中,需要使用到的数据文件放置目录,每个应用程序应该都有各自的目录。

/var/lock/

某些资源文件或者设备只能被一个程序使用,因此会产生一些加锁文件。

/var/log

这是登录文件方式的目录

/var/mail

放置个人电子信箱的目录,不过这个目录也可以放到/var/spool/mail目录中,通常这两个目录互为链接文件

/var/run/

某些程序或者服务启动后,会将他们的PID放置到这里

/var/spool/

放置一些队列数据,所谓的“队列”就是排队等待其他程序使用的数据。这些数据被使用后通常都会删除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值