Linux环境学习(Day4)

学习任务3:LPI-3 中级管理

Part2 Linux权限模型

Linux中每个文件都是由一个用户和一组用户拥有,这是权限模型的核心!
在这里插入图片描述
上面例子中,/bin/bash/由root拥有,在root组中。Linux权限模型的工作原理是,允许为每个文件系统对象设置三个独立的权限级别-文件所有者,文件组和所有其他用户
字段-rwxr中的-指定文件类型,现在这个意思是常规文件,还有其它情况是:

'd' directory
'l' symbolic link
'c' character special device 
'b' block special device
'p' fifo
's' socket

该字段的其余部分由三个字符三元组组成。第一个三元组rwx表示文件所有者的权限,第二个三元组r-x表示文件的组的权限,第三个三元组r-x表示对所有其他用户的权限:其中,
r = 允许读取(查看文件中的数据)
w = 允许写入(修改文件以及删除)
x = “执行”(运行程序)

whoami
当你忘记你是谁时,Linux提供了找回初心的操作,告诉你你是谁~
在这里插入图片描述
groups
当你忘记你是谁的人的时候,可以帮你找到你的组织,elyer属于很多组,adm,cdrom,sudo...
在这里插入图片描述
更改用户和组的所有权chown chgrp

# chown root /etc/passwd
# chgrp wheel /etc/passwd
# chown root.wheel /etc/passwd //同时设置所有者和组

在这里插入图片描述
递归更改所有权 chown -R
把整个目录所有权进行更改:
在这里插入图片描述
更改文件权限 chmod
先看下这个文件是没有x权限的,
在这里插入图片描述
改完以后是这个样子的,都加上了x权限:
在这里插入图片描述
还可以用-x把权限收回来,biu~没了
在这里插入图片描述
chmod可以影响所有三元组的权限–user,group,others, 一次一般影响1-2个三元组中的对象,u表示三元组中的用户,g表示组,o表示others
下面减去了w权限:
在这里插入图片描述
重置权限
通过使用=运算符,我们可以告诉 chmod我们想要指定的权限,而没有其他权限:
在这里插入图片描述
如果只想重置特定的三元组,则可以在=之前为三元组指定符号名称:
在这里插入图片描述
前面提到的都是用符号模式来对xrw做修改,还有一种数值模式也能做修改:
数值模式
个人认为数值模式比较方便快捷,害,就是简单粗暴

模式	数字
rwx		7
rw-		6
r-x		5
r--		4
-wx		3
-w-		2
--x		1
---		0

举个栗子(好优雅的代码):
在这里插入图片描述
umask
每当创建一个新文件时,Linux都会查询一个称为“ umask”的东西,系统会使用umask值将原始指定的权限减少为更合理和安全的权限,默认是0022,看了下我自己的,是0002,允许其他人读取新文件(如果可以访问它们),但不能修改它们。
在这里插入图片描述
看着有点晕,举个栗子吧:
我目前的umask是0002,首先,我创建一个文件test1,看一下它的权限=775,775怎么来的呢,就是=777-002=775
我再修改一下我的umask值=0077,在创建文件test2,看权限变了=700,怎么来的?700=777-077,也就是说权限会等于777减去umask掩码值
在这里插入图片描述
suid sgid
可以看到,除了root外,其他用户都不能对passwd进行写操作
在这里插入图片描述
当想要普通用户进行写操作时怎么办呢?可以设置它的suid,意思是你也可以运行,但是你不是代表你自己在运行,你在代表它的拥有者,也就是boss在运行这个东西。

$ ls -l /usr/bin/passwd
-rwsr-xr-x    1 root     wheel       17588 Sep 24 00:53 /usr/bin/passwd

里面那个s表示suid和可执行位已经设置好了

sgidsuid差不多意思,注意一点,suid和sgid位与ls -l清单中的x位占据相同的空间。如果还设置了x位,则该位置将显示为s(小写),如果未设置x位,它将显示为S (大写)。

更改suid sgid
设置和删除很简单,

# chmod u+s /usr/bin/myapp
# chmod g-s /home/drobbins

在这里插入图片描述



Part3 Linux账户管理

关于 /etc/passwd
该文件定义了Linux系统上存在的所有用户,查看结果如下:
在这里插入图片描述
这一行就包含了用户的信息,每个字段用:分隔
第一个字段定义用户名(elyer);第二个字段包含x,一般都是密码身份认证信息存在于另一个文件中;第三字段(1000)定义与该特定用户相关联的数字用户标识;第四字段(1000)将该用户与特定组相关联;第五个字段包含此帐户的文字说明-在这种情况下为用户名;第六个字段定义了该用户的主目录;第七个字段指定了用户的默认shell程序
除了常见的elyer用户以外,还可以看到许多不明对象,其实啊,他们是用来增强安全性的系统账户,大部分他们的ID(uid<100),很多都会将/bin/false作为他们的默认shell,这样的话,他们一运行就会退出并显示错误代码,也就不能当作一个账户来登录了。–它们仅供内部使用
在这里插入图片描述
关于 /etc/shadow
这是一个passwd的伴随文件,它只能由root读取,里面包含了账户密码信息等。看一下示例:

drobbins:$1$1234567890123456789012345678901:11664:0:-1:-1:-1:-1:0

每行定义一个特定帐户的密码信息,同样,每个字段用:分隔。第一个字段定义与此shadow条目关联的特定用户帐户。第二个字段包含加密的密码。下表描述了其余字段:

领域3	自1970年1月1日以来修改密码的天数
领域4	允许更改密码之前的天数(“ 0”表示“随时更改”)
领域5	系统将迫使用户更改为新密码的天数(“ -1”代表“永不”)
领域6	密码过期前的天数,将警告用户过期(-1表示“无警告”)
领域7	密码到期后系统自动禁用此帐户的天数(“ -1”表示“永不禁用”)
领域8	此帐户已被禁用的天数(“ -1”表示“已启用”)
领域9	保留以备将来使用

关于 /etc/group
这个东东里定义了Linux系统上所有的组,
在这里插入图片描述
一个字段定义组的名称;第二个字段是残留密码字段,现在仅包含x,第三个字段定义此特定组的ID。第四个字段(在上面的示例中为空)定义了属于该组的任何用户

编辑 /etc/passwd
在这里插入图片描述
以上添加了一个UID为3000testuser用户。我们已经将该用户添加到了一个GID为3000的组中(尚未创建)。或者,我们可以根据需要将此用户分配给用户组的GID 。为了安全起见,用户的主目录设置为/ home / testuser,用户的shell设置为/ bin / false。如果我们要创建一个非测试帐户,则将shell设置为 / bin / bash。继续保存更改并退出。

编辑 /etc/shadow
在这里插入图片描述
复制一行一模一样的,把用户名改成新用户的名字,保存退出

设置密码
在这里插入图片描述
编辑 /etc/group
在这里插入图片描述
添加新用户的组3000

创建主目录
创建完主目录就可以使用新账号了,如果想登录,还是要把默认shell修改为/bin/bash
在这里插入图片描述
下面就去试试修改完能否登录
在这里插入图片描述
ok啦,木有问题啦
还有一些useradd啊之类的命令可以去这里看:Linux用户和用户组管理



Part4 调整用户环境

fortune
发现自己没有安装fortune,正在安装中。。。
在这里插入图片描述
嗯。。。装好了,然后发现这玩意儿就是人生格言集,随机给你一条格言,就跟美国那种餐馆一样,饭后甜点里塞给你一个人生格言小纸条:
在这里插入图片描述

以上图片来源:http://www.ruanyifeng.com/blog/2015/04/fortune.html

在这里插入图片描述

学习任务4:LPI-4 高级管理

Part1 Linux文件系统

块设备
块设备是啥,就是磁盘的抽象接口,用户程序可以使用块设备与磁盘进行交互。该程序可以简单地将磁盘上的存储作为一堆连续的,可随机访问的512字节块进行寻址。
最著名的块设备可能是代表Linux系统中第一个IDE驱动器的块设备:/dev/hda
如果系统使用SCSI驱动器,则第一个硬盘驱动器将是:/dev/sda

理论上来说,可以操作整块磁盘,但是几乎不会这样做,而是分割成小块的更容易管理的块设备,称为分区,使用fdisk的工具来创建分区
用fdisk查看磁盘分区表,注意!!千万不要更改里面的任何内容
输入p显示磁盘当前分区配置:
sda1是主分区,sda2是扩展分区,sda3是交换分区,每个分区都有分区类型:对于将要容纳Linux文件系统的分区,==“ 83”是正确的分区类型,对于Linux交换分区“ 82”==是正确的分区类型
在这里插入图片描述
Fdisk分区
可以创建新分区(n命令),更改写入磁盘(w命令)。

创建文件系统
使用新的块设备之前,需要在上面创建一个新的文件系统。需要使用特定的mksf命令,根据文件系统类型来决定使用什么命令----使用mke2fs/dev/hdc6上创建ext2文件系统:
首先,你需要一块新的未使用的分区块设备。(dbq我没有,我要想办法搞一块出来)参考:磁盘里新建分区再挂载
有点小麻烦,搞不完了,明天见,周五快乐!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值