Linux简单操作权限和相关工具

Linux简单操作权限:

linux是一个多用户操作系统,可以同时登录多个用户,各自操作各自的,互不影响,这时候就会出现一些问题,比如一个人把另一个代码删除或者修改了,因此系统需要进行权限的控制和设置。

系统操作权限:

主要将用户分为俩大类:root管理员用户和普通用户,普通用户在系统上的操作是受限制的:比如安装或卸载软件,修改系统时间......

在这些基础上,就存在一些指令:su   切换用户      useradd    添加用户     userdel   删除用户        passwd    设置用户密码

创建一个用户:

如果是普通用户,则没有权限创建新用户,只有转换为root管理员才可以新建用户。如果不切换root用户,依旧可以进行创建删除用户应该怎么办?这时候就有一个新的指令sudo,它的作用是给普通用户当前的操作进行临时提权。

举例:

普通用户对/root,即根目录下的root目录的内容没有访问权限,但加入sudo就可以对其进行访问。

文件操作权限:

系统将文件访问的用户分为了3类:

u 文件所有者:默认都是文件的创建者,文件的访问控制权限都是由文件所有者进行控制的

g 文件所属组:某一类用户可以对文件进行某些操作

o 其他用户:除了文件所有者和文件所属组,其余都称为其他用户

系统对用户能够对文件的操作分为三类:

r 可读:用户可以查看文件内容(对于目录来说,就是是否可以查看目录中文件的信息)

w 可写:用户可以修改文件的内容(对于目录来说,就是是否可以在目录中创建和删除文件)

x 可执行:可以执行这个文件(对于目录来说,就是是否可以进入这个目录)

举个例子:

 对于a目录来说,文件所有者可以进行读写执行操作,对于文件所属组成员来说,可以进行读写执行操作,对于其他用户来说,可以进行读和执行操作

当然,如果权限用字符形式存储,比较耗费磁盘空间,因为其至少要占9个比特位。因此我们可以用二进制的比特位进行存储,比如

rwxr-xr--        ------->         111 101 100           ------->742

权限的相关指令:

01umsak

umask:查看或者设置文件的创建权限掩码,掩码影响了文件创建出来后的默认权限,默认权限是掩码取反(仅限于命令行终端使用命令创建)对于touch命令默认给定权限为666,unmask掩码默认权限为002

 我们可以看到,默认umask值为002,所以创建出a文件的权限应为其取反,即775,又因为touch默认给定权限为666(110 110 110),默认都没有可执行权限,所以775(111 111 101)应变为(110 110 100)即664,所以最后权限为rw-rw-r--

其实实际计算权限的方法是:创建文件时给定的默认权限与默认掩码取反的值进行相与

用touch创建一个文件b.txt,touch默认权限为666(110 110 110),umask默认掩码被修改为033,取反为744(111 100 100),相与之后最终结果为 644,即rwxr--r--

02 chmod

chmod:修改一个已存在的文件的权限      格式:chmod [augo] [+-] [rwx]

也可以通过8进制数字直接修改:chmod 777 文件名

 对b.txt进行修改,首先o+x,对其他用户加入执行操作,然后o-r删除其他用户的可读操作

03 chown和chgrp

chown:修改文件所有者                    chgrp:修改文件所属者

 

 对a.txt的所有者和所属者进行修改,刚开始a.txt所有者和所属者分别为ap ap,修改后为dev dev(注意:普通用户不能修改所有者和所属者,所以要进行sudo提权操作)

沾滞位:用户在同一个目录下,可以创建文件,删除自己的文件,但不能删除别人文件(1.只针对其他用户    2.不能删除别人文件)

 对于dev用户和ap用户来说,他们都可以打开/home/temp目录,并且都在次目录底下创建了自己的文件 

但是对于dev用户来说,它可以将ap用户的文件删除,当然,ap用户也可以删除dev用户的文件,这就显得很不合理, 所以对于这个问题就可以用沾滞位来解决

用法:chmod o+t  文件名

我们将temp的普通用户中的权限改为rwt,这样其他用户就无法删除我们的文件

 

 Linux简单工具

常用工具:yum  yim  gcc/g++  makefile  git

yum:软件包管理工具(在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序. 但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安 装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装. 软件包和软件包管理器, 就好比 "App" "应用商店" 这样的关系.yum(Yellow dog Updater, Modifified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat, Centos等发行版上.

查看软件包:yum list |grep lrzsz         yum search lrzsz

安装软件包:yum install lrzsz

卸载软件包:yum remove lrzsz

lrzsz工具:这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件. 安装完毕之后可以通过拖拽的方式将文件上传过去

在安装完lrzsz 之后,我们可以使用以下命令:

sz ap.c     将Linux上的文件传到主机

 它会弹出来这样一个界面,我们可以选择要保存的位置

rz             将主机上的文件传到Linux

 

我们可以选择电脑上的文件,然后传送到Linux上面

 vim:编辑器(类似于windows底下的文本文档)特点:只能用键盘操作

vim的操作模式:一共有12种操作模式,其中有三种是必用模式

普通模式:vim打开文件后的默认模式,通过命令进行文本操作

插入模式:数据插入,即编写文档内容

底层模式:文件的保存和退出

模式切换:   vim   文件名  (打开文件,如果没有改文件,则自动创建)

普通模式插入到插入模式:i(进入插入模式,光标在原来位置)

o(进入插入模式,光标在下一行的起始位置)

a(进入插入模式,光标向后移动一个位置)

I(进入插入模式,光标在起始位置)

O(进入插入模式,光标在上一行的起始位置)

A(进入插入模式,光标在此行的末尾位置)

插入模式切换到普通模式:esc

普通模式切换到底层模式::(英文冒号)

底行模式的操作:w---保存          q-----退出          wq------保存并退出(w必须在q前面)          q!------不保存强制退出

普通模式下的操作:

移动光标:hjkl---左下上右      ctrl+f/b-----上下翻页         gg/G------文档首行和尾行

内容操作:yy------复制光标所在行         p------粘贴

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值