Linux基础

        谈起Linux,一般是在说Linux内核,安卓底层也是Linux内核。

1.Shell

狭义地说,操作系统仅是内核(kernel)那部分,而我们平常说的操作系统,一般都是包括外壳(shell)那部分。

如此说来,为什么会有Shell ,什么是Shell?

为什么会有Shell

一部分原因:操作系统内核使用起来并不简单,且出于安全考虑,并不直接给用户来使用操作系统。

主要原因:绝大数用户并不了解内核本身,为了便于用户体验操作,做成更接近于人类思维的Shell,由Shell和内核交互,才是最优解。

什么是Shell

将使用者的命令翻译给核心(kernel)处理。
同时,将核心的处理结果翻译给使用者。

具体操作

Shell本质是系统启动后,执行起来的一个程序,也就是进程,系统启动期间,一直存在,每一个用户分配一个进程。

对于用户的指令,Shell会进行识别:

如果为错误操作,直接拦截,不反馈给内核。

如果是不安全指令,会生成子进程,由子进程和内核交互,避免出现崩溃而终止主进程。

2.Linux用户

Root和普通用户

如果你是普通用户

1.你要登录Root:需要键入Root账号密码

2.你要登录其他普通用户:需要键入他人账号密码 

3.你是Root账号:随意切换账号

3.Linux权限

对于用户分为:Root用户和普通用户

根据用户对文件的行为分为:拥有者(user,u),所属组(group,g),Other(o)

文件的权限操作有:r(读) w(写)x(执行)

三位一组,从左至右,依次表示u,g,o的文件权限

比如用户euto对于文件test.c目前有rw能力:

可以用chmod修改u失去r权限

也可以chmod添加回来:

如果x权限,需要满足文件是可执行文件且有执行权限,两者缺一不可

有x权限但不是可执行文件:

 没有x但是可执行文件:

如果您是Root用户

Root用户没x权限情况下也会报Permission denied的

认识文件信息

第一列表示文件类型,虽然Linux不通过后缀来识别文件是哪种类型,但是后缀推荐使用,一是有些工具软件需要,二是我们需要通过后缀来便于可读

d:文件夹/目录
-:普通文件:图片,源文件,txt,源文件等
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等连续读写)(Linux下一切皆文件)
p:管道文件
c:字符设备文件(例如屏幕等串口设备等随机读写)

i.读(r/4):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
ii.写(w/2):Write对文件而言,具有修改文件内容的权限;对目录来说具有创建文件,删除移动目录内文件的权限
iii.执行(x/1):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
iv.“—”表示不具有该项权限 

 相关指令

1.chmod

        只有文件的拥有者和root才可以改变文件的权限

2.chown

3.chgrp

4.umask:查看或修改文件掩码

新建文件夹默认权限=0666 
新建目录默认权限=0777 
但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask 

PS:说明:将现有的存取权限去掉权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。

5.file

辨识文件类型。

删除&粘滞位

        一个文件能否被删除,并不取决于文件本身的权限,而是取决于文件所处的目录,是否有w权限 

这样引发了一个问题:

在“我”的目录下有root用户创建的文件

chmod来取消other的权限后,的的确确没有权限查看等权限了

但是,文件所处目录是属于“我”的,我可以把这个我没有权限的文件删除:

 这就是一个巨大的bud。于是,Linux系统就想,让每个用户互相独立,需要多用户协同的情况,就在根目录下的单独一个文件操作:/tmp

注意,这里other权限全部放开

如你所见:

 这样,多用户共享一个目录。

但是other还是有权限删除你的文件的。

于是,引入粘滞位

chmod u+t

进一步限定权限:

对于目录里的文件,只有Root和文件拥有者,以及目录拥有者可以删除,这就是粘滞位。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值