【Linux】_笔记之操作系统介绍、用户与组、ACL、权限、进程与线程、

Linux介绍

互联网有两大基石:网络+OS(OS:operating system,操作系统(计算机管理控制程序,保证计算机能够正常运行的系统软件)
操作系统

个人:Windows7/8/10、Android、iOS 图形化为主、傻瓜式操作。面向普通用户。
服务器:window server(传统行业),Redhat(Linux)/centos/Unix(金融、电信行业)

现实:互联网企业的服务器用的OS就是Linux
早期,程序直接运行在硬件之上,因为不同的CPU,app相对应的也要重写。有了操作系统后,app一次书写,到处使用。

结构

app(指令+数据)

操作系统(OS的内核)

硬件

真正的操作系统:内核+app。内核:Linux Windows。生态:操作系统、内核

第一个真正意义上的OS:Unix。(贝尔实验室(at&t)刚开发时,开源。后面收费。)。
发行版本:BSD(苹果MACOS基于此编写的) systemV。(代码重写,功能一样)

Windows:商业性质的软件,闭源+收费

GNU计划:创建完全自由的操作系统。保证GNU软件自由的使用、复制、修改、发布。其所有软件均含GPL。GNU通用公共许可证(GPL):在禁止其他人添加任何限制的情况下,授权所有权利给任何人的协议条款。1983.9.27理查德发起——至1990,除操作系统外,其他软件已完成——1991完成(林纳斯发布Linux操作系统内核,操作系统被命名为GNU/Linux,简称Linux)

组合:内核 +软件,一个操作系统发行版本。

Linux发行版本:红帽→RHEL/fedora /centos/ 企业级,用于服务器

debian→ubuntu/deepin 图形化为主,用于PC
slackware→SUSE/openSUSE(社区版)
“→”表示基于…的二次开发

RHEL,法律层面不可免费使用,版权问题。现实可以用。

去IOE:IBM,小型机、软硬件一体的 Oracle,数据库 EMC,存储

替代: x86服务器+Linux MySQL,postgresql ceph

现状:仅互联网行业实现了。金融、电信行业还没完全实现。

用开源的好处:自主可控。
红帽版本6、 7(保留了6的方法,为了兼容)、8(摒弃了6 的方法)
centos安装:物理机安装、虚拟机安装,光盘,镜像安装

Linux不靠扩展名区分文件类型 靠权限区分
Linux特点:一切内容皆文件Windows的程序不能直接在Linux中安装、执行

压缩包:.gz .bz2 .tar.bz2 .tgz
二进制文件:.rpm
网页文件:.html .php
脚本文件:.sh
配置文件:.conf

用户、组、权限、ACL

本地owner—>ACL USER—>ACL GROUP—>本地group—>other
一般建议:1,不要动本地身份,要设置权限,直接添加ACL。2,即使当前只有一个用户需要某种权限,也要将它放到一个组内,然后给这个组赋权。方便以后新增用户的权限添加,只需要将新用户添加到这个组就可以了。
冲突问题:1,如果一个用户属于两个不同组,而这两个组在ACL中,赋予不同权限。这时,这个用户的权限以最低权限为准。
继承:1,身份,SGID(和ACL没关系,只会继承本地组身份)。2,身份及权限,默认ACL
注意:1,设置了默认ACL之后,之前创建的对象,是不会自动继承的,需要手工修改,或者在设置默认ACL的时候,-R递归设置

https://mirrors.tuna.tsinghua.edu.cn/centos-vault/8.2.2004/isos/x86_64/CentOS-8.2.2004-x86_64-dvd1.iso
https://mirrors.tuna.tsinghua.edu.cn/centos-vault/8.2.2004/isos/x86_64/CentOS-8.2.2004-x86_64-minimal.iso

linux进程:1,内核。2,树形结构。3,进程间有父子关系,如果父挂了,子也挂了。4,从RHEL7开始,根进程为:systemd,如果systemd挂了,用户空间就垮了,相当于整个系统就挂了。
进程运行方式:1,前台,占用终端。2,后台,不占用终端

合理使用内存:
1,把没用的内存空间拿来做缓存(buffer/cache)

swap,交接空间,拿磁盘空间扩展内存用的,但是,一旦使用到Swap空间,系统会很慢

回顾:1,3A:认证、授权,审计。2,认证(身份验证):账号(身份)+密码(验证)

指纹(身份+验证)
虹膜
验证:密码(门禁)、刷卡(身份+验证)

linux作身份验证:1,身份验证的交互程序:login。 2,完成身份验证:PAM
为什么需要PAM: 1,通用,方便程序的开发。
2,身份验证的方式很多:1)本地身份验证(passwd,shadow),大环境中,不适合。2)集中身份验证(ldap+kerberos,AD,freeIPA)
流程:

1,login程序提供一个交互接口
2,用户输入账号,密码
3,login将用户输入的账号,密码,交由PAM去做验证
4,PAM验证成功,返回给login
5,login接下来,打开用户信息中记录的shell程序

授权:

1, sudo,分root的权限,重中之重(为了考试)
2,基本授权:RWX
特殊权限:SUID,SGID,STICKY
特殊属性:i,a,root也要遵守,但是root可以修改属性。
3,ACL,解决身份不够用的问题

进程:

1,什么是进程?运行中的程序(指令+数据的一个文件,加载到内存)
CPU从内存中读取指令和数据,进行计算处理
内核以树形结构来管理进程,为进程分配唯一标识:PID

用户空间需要一个控制进程的工具,来对内核发指令(信号):kill,对什么进程(pid)干什么事(信号)
kill 信号 PID
killall

用户空间的第一个进程:

1,RHEL6及之前:init,一个程序只干一件事
2,RHEL7开始:systemd,一个程序可以干很多事
3,RHEL7为了兼容老用户的习惯,所以,RHEL7还保留了RHEL6的一些管理方法,但是,不建议使用了,从RHEL8开始,完全抛弃

例子:
1,RHEL6之前的工具:service…
2,RHEL7开始使用的工具:systemctl…

程序:
1,一个程序只干一件小事,把它干好
2,一个程序干很多件事

配置文件:

1,一般情况下,程序安装的包会自带
2,如果是自己写的一个程序(脚本),要作为守护进程,就要自己手工写一个systemd的配置文件

rc.local:

1,默认没有执行权限
2,rc-local这个单元文件不完整
3,rc-local默认没有开机自启

[root@localhost ~]# systemctl isolate graphical.target :查看当前默认的开机启动界面
[root@localhost ~]# systemctl get-default :配置默认开机启动字符界面

graphical.target
[root@localhost ~]# systemctl set-default multi-user.target

加密
实际应用中,两者要结合使用:1,使用非对称加密,传输对称密码。2,数据的加解密,使用对称加密。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值