linux基础一

本文围绕Linux系统展开,介绍了文件权限与用户配置相关内容。包括用户身份与用户组记录文件,文件属性查看及权限修改命令,如chgrp、chown、chmod等。还阐述了权限对文件和目录的意义,以及Linux下各主要目录的用途,如/bin、/boot等。

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

linux的文件权限与用户配置

linux一般将文件可读写的身份分为三个类别,分别是拥有着(owner),所属群组(group),其他人(others),且这三种身份各有读(read),写(write),执行(execute)等权限。

1. linux用户身份与用户组记录文件

在linux系统中,默认情况下,所有系统上的账号与一般身份用户,包括root的相关信息,都记录在 /etc/passwd 这个文件内,个人密码则是记录在 /etc/shadow 这个文件内,至于linux所有的组名都登记在 /etc/group 中。这三个文件可以说是linux系统里面账号,密码,用户组信息的集中地,so不要随便删除这三个文件

2.linux文件权限
2.1 linux文件属性

使用ls -al命令查看
在这里插入图片描述
第一列类似 -rw-r–r-- 指的是文件类型权限

  • 仔细看第一列可以发现有十个字符,第一个字符代表这个文件是目录,文件或者链接文件等:
  • [d]代表目录,
  • [-]代表文件,
  • [l]代表是链接,
  • [b]代表为设备文件里面的可供存储的周边设备(可按块随机读写的设备)
  • [c]代表为设备文件里面的串行端口设备,例如鼠标,键盘
  • 接下来的字符串,以三个为一组,且都为[rwx]的三个参数的组合,其中[r]代表可读,[w]代表可写,[x]代表可执行,但是请注意,这三个顺序是不会变的,如果该权限不存在,则用[-]表示。
  • 第一组为拥有者的全新,第二组为此用户组内的账号拥有的权限,第三组为其他用户所拥有的的权限

第二列数字 num 指的的链接数
第三列 root 指的是文件拥有者
第四列 root 指的是文件所属用户组
第五列 数字 指的是文件的大小
第六列 Dec … 指的是文件最后被修改的日期
第七列/最后一列 指的是文件名

2.2 如何修改文件属性与权限

下面介绍几个常用于用户组,拥有者,各种身份的权限的修改命令

  • chgrp:修改文件所属用户组
    语法:chgrp [-R] 用户组名称 要修改的文件/要修改的目录
    -R代表递归,在修改某个目录下所有文件的所属组时使用
    例: chgrp testUser test.py
    注意,要被修改的用户组必须存在于 /etc/group 中,否则会摆错。
  • chown:修改文件拥有者
    语法:chown [-R] 用户名 文件或目录 或
    chown [-R] 用户名:组名 文件或目录
    由上可以看出,chown在修改所属用户的时候,可以一起修改其所属组。
    例:chown testUser test.py ----只修改所属用户
    chown root:root test.py ----既修改所属用户也修改所属用户组
    注意:要被修改的拥有者也必须存在于系统中, 其存在文件为 /etc/passwd,否则也会出现错误
  • chmod:修改文件的权限,SUID,SGID,SBIT等特性
    权限设置有两种方式,分别可以使用数字或者符号来进行修改
    第一种:数字
    各权限的数字对照表:
    r:4
    w:2
    x:1
    语法:chmod 777 test.py (777代表权限加满,具体加多少看你想给对应用户的权限是多少,例如,754,655等)
    第二种:符号
    使用这种方式的话就要用到每个分组的身份了,如下:
    u :用户
    g:分组
    o:其他
    a:以上三种身份
    当然权限就要用到对应的rwx了,
    语法:chmod u=rwx,g=rw,o=r test.py
    如果想给test.py的其他用户加上x权限,简单的方式
    chmod o+x test.py
    如果想给test.py的u用户去掉x权限,简单的方式
    chmod u-x test.py
2.3权限对于目录与文件的意义

对文件的读,写,执行,我们好理解,读 就是可以读取该文件的内容,写 就是可以编辑等操作此文件, 执行就是对文件的一系列执行,
但是对目录的rwx权限,是怎么回事呢,首先r,读对于目录来说只是可以查看该目录下的目录列表,w,写是可以对该目录下的文件进行编辑,新增,删除等操作,那么x,总不能对目录进行执行操作吧,是的,x对于目录来说就相当于一把钥匙,如果没有x权限,就没办法进入到该目录下,也就无法执行该目录下的任何命令,即便你有r,w权限。
cd

linux目录配置

linux下一切皆文件,其最主要的目录就是[/]根目录,所有的其他目录都是由其衍生出来的,那么linux下都有哪些目录,又都是存放哪些类型的文件的呢?
1. /bin
存放的是执行文件,比如常用的cat,touch,mkdir等
2. /boot
存放的是启动会使用到的文件,包括linux内核文件以及启动选项与启动所需配置文件等
3. /dev
在linux系统上,任何设备与接口设备都是以文件的形式存放于这个目录中
4. /etc
系统主要的配置文件几乎都存放于这个目录
5. /lib
系统的函数库非常多,而lib放置的则是在启动时会用到的函数库,以及在/bin或/sbin下的命令会调用的函数库
6. /media
存放的是可以删除的设备,包括软盘,光盘等
7. /mnt
如果你想暂时挂载某些设备,建议你放置于这个目录下
8. /opt
这是给第三方辅助软件放置的位置
9. /run
早起的FHS规定系统启动后所产生的各项信息应该要放置到/var/run下,新版的FHS则规范到/run下,由于/run可以使用内存来模拟,所以性能更佳
10. /sbin
linux有非常多的命令是用来设置环境变量的,这些命令只有root才能够来设置系统,其他用户最多只能用来查询,放在/sbin下的为启动过程中所需要的,包括了启动,修复,还原系统所需要的的命令
11. /srv
可以视为service的缩写,是一些网络服务启动后,这些服务所需要使用的数据目录,常见的如www,ftp等
12. /tmp
这是让一般用户或是正在执行的程序暂时放置文件的地方
13. /home
这是系统默认的用户家目录
14. /root
系统管理员的家目录
15. /lost+found
这个目录是使用标准的ext2,ext3,ext4文件系统格式才会产生的目录,目的在于当文件系统发生错误是,讲一次额遗失的片段放置到这个目录,如果使用的是xfs文件系统,就不会存在该目录
16. /proc
这个目录本身是一个虚拟文件系统,放置的数据都是在内存中,例如系统内核,进程信息等
17. /sys
这个和proc相似,也是虚拟文件系统,主要也是记录内核与系统硬件信息相关的内容
18. /usr
操作系统软件资源所放置的目录,其下面还有几个常用二级目录,
18.1 /usr/bin/
所有一般用户能够使用的命令都在这
18.2 /usr/lib
基本上,和/lib功能形同,所以/lib就是连接到此的
18.3 /usr/local
系统管理员在本机安装自己下载的软件,建议安装到此目录
18.4 /usr/sbin
非系统正常运行所需要的系统命令
18.4 /usr/share
主要放置只读的数据文件,当然也包括共享文件
18.5 /usr/games
与游戏比较相关的数据存放处
18.6 /usr/include
c/c++等程序的头文件(header)与包含文件(include)放置处
18.7 /usr/libexec
某些不被一般用户常用的执行文件或shell,会放置于此
18.8 /usr/src
一般源代码建议放置榆次
19 /var
如果说/usr是安装时占用较大硬盘容量的目录,那么/var就是在系统运行后才渐渐占用硬盘的容量的目录,因为/var主要存放经常性变动的文件,包括缓存(cache),日志文件(logs)以及某些软件运行所产生的文件,其中几个常见的二级目录:
19.1 /var/cache
应用程序本身运行过程中产生的缓存
19.2 /var/lock
某些设备或是文件资源一次只能被一个应用程序锁使用,如果同时有两个程序使用该设备,就可能产生错误,因此就得将该设备上锁,以确保该设备只会给单一软件锁使用
19.3 /var/log
这是日志存放的目录
19.4 /var/email
放置个人电子邮箱的目录,该目录也被放置于/var/spool/mail中
19.5 /var/run
某些程序或是服务启动后,会将它们的PID放在这个目录下
19.6 /var/spool
放置一些队列数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值