第一周
第一题 图文并茂解释开源许可证 GPL、BSD、MIT、Mozilla、Apache和LGPL的区别?
GPL许可证
含义:允许任何人观看、修改,并散播程序软件里的原始程序码,条件是如果你要发布修改后的版本就要连源代码一起公布,不允许修改后和衍生的代码做为闭源的商业软件发布和销售。Linux就是采用了GPL协议,这也就是为什么我们能用免费的各种linux,包括商业公司的linux和linux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。
BSD许可证
含义:允许任何人观看、修改,并散播程序软件里的原始程序码,条件是如果你要发布修改后的版本就要连源代码一起公布,不允许修改后和衍生的代码做为闭源的商业软件发布和销售。Linux就是采用了GPL协议,这也就是为什么我们能用免费的各种linux,包括商业公司的linux和linux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。
但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件
-
如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。
-
如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。
-
不可以用开源代码的作者、机构名字和原来产品的名字做市场推广
BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。
Apache许可证
含义:著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)同时与BSD类似,需要满足以下调整
1、如果你修改了代码,需要再被修改的文件中说明。
2、在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
3、如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。
4、你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
LGPL许可证
LGPL 允许以动态链接使用开源库。采用LGPL的代码,一般情况下它本身就是一个第三方库(LGPL最早的名字就是Library GPL),这时候开发人员仅仅用到了它的功能,而没有对库本身进行任何修改,那么开发人员也不必公布自己的商业源代码。但是如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须开源,并且采用LGPL协议。
Mozilla许可证
Mozilla公共许可证(英语:Mozilla Public License,简称MPL) 允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者。要求所有再发布者都得有一个专门的文件就对源代码程序修改的时间和修改的方式有描述。允许一个企业在自己已有的源代码库上加一个
MIT许可证(
MIT是和BSD一样宽范的许可协议。你必须在你的发行版里包含原许可协议的声明,无论你是以二进制发布的还是以源代码发布的。作者只想保留版权,而无任何其他了限制,较BSD协议宽松。
总结:
严格程度:MIT->BSD->Apache->LGPL->Mozilla->GPL
第二题Rocky系统的安装
第一步:首先下载好系统的iso镜像,在https://dl.rockylinux.org/vault/rocky/8.5/BaseOS/x86_64/iso/连接进行Rocky8.5的下载
第二步:开始安装系统安装Rocky Linux 8.5
有两个选项
第一个:直接安装Rocky Linux8.5
第二个:检查并安装Rocky linux8.5
接下来是选择语音
接下来是安装向导
本地化:(键盘、语言支持以及时间和日期)
软件:(安装源和软件选择)
系统:(安装目标、KDUMP、网络和主机名以及安全配置文件)
用户设置:(创建Root用户和密码)
然后就点击Begin installation ,等待安装完重启系统就安装完成了
第三题 Linux中总结
1)如何通过一个简短的关键字 【man -k man -k process 】,例如process 获取相关的命令。
man -k process
2)通过命令的描述,选择一个命令,获取命令的man文档。【 man top】
3)解读man文档,man分几个部分
不同类型的帮助称为不同的“章节”,统称为Linux手册,man 1 man
- 1:用户命令
- 2:系统调用
- 3:C库调用
- 4:设备文件及特殊文件
- 5:配置文件格式
- 6:游戏
- 7:杂项
- 8:管理类的命令
- 9:Linux 内核API
第四题切换到/etc/目录,列出fstab文件的详细信息,详细解决fstab一行,每个或每几个字符的详细含义。 【cd /etc; ls -l /etc/fstab】
第五题简要说明FHS结构。
/boot:系统启动引导文件存放目录
/bin:存放所有用户使用的基本命令
/sbin:存放管理类的基本命令
/lib:存放系统启动时程序依赖的基本共享库以及内核模块文件
/etc:配置文件目录
/home:普通用户家目录
/root:管理员用户家目录
/media:便携式移动设备挂载点
/mnt:临时文件系统挂载点
/dev:设备文件及特殊文件存储位置
/opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件存储位置
第六题总结文件管理,用户管理,组用户,权限管理相关的命令
文件: 【touch/rm/rmdir/cat/head/less/more】
touch 创建文件
rm 删除文件
rm -r 递归删除目录中所有内容
cat 查看文件内容
head 查看文件前几行内容
less 查看大型文件,可以上下翻页,也可以键盘上下键逐行滚动内容
more 查看大型文件,可以上下翻页
用户及组:user/group 【useradd/userdel/usermod; groupadd/groupdel/groupmod】
useradd 创建用户
userdel 删除用户
usermod 修改用户属性
groupadd 创建组
groupdel 删除组
groupmod 修改组属性
权限 【chmod/chown/setfacl】
chmod 修改文件或目录读写权限
chown 修改文件或目录所有者
setfacl 设置ACL权限
标签:文件,第一周,代码,修改,BSD,源代码,man From: https://www.cnblogs.com/LKzzZ/p/17519484.html