第一周作业-2022-5-30

报全程班和单就业的小伙伴,本周建议学习内容:
第四天:              
计算机基础和Linux安装      
1、计算机基础
2、服务器硬件组成  
3、操作系统相关技术和Unix历史  
4、Linux各种版本的安装
第五天:      
计算机基础和帮助
1、Linux远程连接和基本操作
2、Linux的终端和运行命令
3、Linux命令格式
4、Linux常用命令
5、ASCII和Unicode编码及各种符号用法
6、Linux查看帮助用法
7、Linux的目录结构和文件类型
第六天:
文件管理和IO重定向
1、文件路径和文件访问
2、文件通配符
3、文件管理命令
4、文件的删除和节点表结构
5、硬链接和软链接及重定向
6、重定向和管道
7、用户和组管理初步
完成作业:
1. 图文并茂解释开源协定的区别?
2. 安装centos ubuntu系统.
3. 通过计算机基础和帮助的学习,完成学习ifconfig命令的使用。
4. 总结linux FHS结构。

===================================

问题1、开源软件遵循的协定有这些: GPL、BSD、MIT、Mozilla、Apache和LGPL。就自己的理解,说出他们之间的区别和特性。

1)GPL :  GNU General Public License
自由软件基金会: Free Software Foundation
允许用户任意复制、传递、修改及再发布
基于自由软件修改再次发布的软件,仍需遵守 GPL。
GPL协议和BSD, Apache Licence等鼓励代码重用的许可很不一样。GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售。这也就是为什么我们能用免费的各种linux,包括商业公司的linux和linux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。
2)LGPL :  Lesser General Public License LGPL 相对于 GPL 较为宽松,允许不公开全部源代码。
LGPL允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并发布和销售。
因此LGPL协议的开源代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础,通过修改和衍生的方式做二次开发的商业软件采用。
3) BSD  是"Berkeley Software Distribution"的缩写,意思是"伯克利软件发行版"。

是一个给于使用者很大自由的协议。可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。 当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:

  • 1. 如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。
  • 2. 如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。
  • 3. 不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。

BSD代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。

4)MIT  MIT源自麻省理工学院(Massachusetts Institute of Technology, MIT),又称X11协议。与BSD类似,但是比BSD协议更加宽松,是目前最少限制的协议。这个协议唯一的条件就是在修改后的代码或者发行包包含原作者的许可信息。适用商业软件。使用MIT的软件项目有:jquery、Node.js。

5)Mozilla  MPL (Mozilla Public License 1.1) MPL协议允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者。这种授权维护了商业软件的利益,它要求基于这种软件的修改无偿贡献版权给该软件。这样,围绕该软件的所有代码的版权都集中在发起开发人的手中。但MPL是允许修改,无偿使用得。MPL软件对链接没有要求。

6)Apache 

Apache License(Apache许可证),是Apache软件基金会发布的一个自由软件许可证。

Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和最终原作者的著作权,同样允许源代码修改和再发布。但是也需要遵循以下条件:

  • 需要给代码的用户一份Apache Licence。
  • 如果修改了代码,需要在被修改的文件中说明。
  • 在衍生的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
  • 如果在发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但是不可以表现为对Apache Licence构成更改。
  • Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足并作为开源或商业产品发布/销售。

使用这个协议的好处是:

  • 永久权利 一旦被授权,永久拥有。

  • 全球范围的权利 在一个国家获得授权,适用于所有国家。假如你在美国,许可是从印度授权的,也没有问题。

  • 授权免费 无版税, 前期、后期均无任何费用。

  • 授权无排他性 任何人都可以获得授权

  • 授权不可撤消 一旦获得授权,没有任何人可以取消。比如,你基于该产品代码开发了衍生产品,你不用担心会在某一天被禁止使用该代码

第一周作业-2022-5-30_第1张图片

第一周作业-2022-5-30_第2张图片

问题3. 通过计算机基础和帮助的学习,完成学习ifconfig命令的使用。

最小化安装的centos系统,没有ifconfig命令,需要先安装net-tools-2.0-0.25.20131004git.el7.x86_64。

[root@node1 ~]# yum provides ifconfig
Loaded plugins: fastestmirror
Repository cr is listed more than once in the configuration
Repository fasttrack is listed more than once in the configuration
Loading mirror speeds from cached hostfile
extras/7/x86_64/filelists_db                                          | 277 kB  00:00:00     
mysql-connectors-community/x86_64/filelists_db                        |  35 kB  00:00:00     
mysql-tools-community/x86_64/filelists_db                             | 325 kB  00:00:00     
mysql80-community/x86_64/filelists_db                                 | 1.9 MB  00:00:00     
updates/7/x86_64/filelists_db                                         | 8.7 MB  00:00:01     
net-tools-2.0-0.25.20131004git.el7.x86_64 : Basic networking tools
Repo        : @base
Matched from:
Filename    : /usr/sbin/ifconfig

在linux中我们可以使用ifconfig命令查看网卡配置与网络状态等信息,好比我们在windows中查看网络配置信息ipconfig命令一样。

ifconfig [interface]

interface是可选项,不加此选项则显示系统中所有网卡的信息。如果添加此选项,则显示指定网卡的信息。

[root@node2 ~]#ifconfig
ens33: flags=4163  mtu 1500
        inet 192.168.126.12  netmask 255.255.255.0  broadcast 192.168.126.255
        inet6 fe80::20c:29ff:fed7:a24c  prefixlen 64  scopeid 0x20
        ether 00:0c:29:d7:a2:4c  txqueuelen 1000  (Ethernet)
        RX packets 1183  bytes 100770 (98.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 197  bytes 22103 (21.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

如上所示,使用ifconfig命令获取到的主要信息有:

1、主机被检测到的网卡有ens33,UP表示“接口已启用”,RUNNING表示“接口在工作中”,BROADCAST表示“主机支持广播”,MULTICAST表示“主机支持多播”,mtu 1500表示“最大传输单元 1500字节”

inet 192.168.126.12  netmask 255.255.255.0  broadcast 192.168.126.255

解释:inet :网卡的IP地址;netmask :网络掩码;broadcast :广播地址。

ether 00:0c:29:d7:a2:4c  txqueuelen 1000  (Ethernet)

解释:连接类型:Ethernet (以太网)或者HWaddr (此网卡的硬件mac地址);txqueuelen (网卡设置的传送队列长度)

RX packets 1183  bytes 100770 (98.4 KiB)
RX errors 0  dropped 0  overruns 0  frame 0

解释:接收时,正确的数据包数1183;接收的数据量(98.4 KiB);

 接收时,产生错误的数据包数为0,丢弃的数据包数为0;overruns 表示接收时,由于速度过快而丢失的数据包数为0;RX frame 表示接收时,发生frame错误而丢失的数据包数为0。

ifconfig不仅可以查看网卡配置与网络状态,还可以进行网络配置,常见用法如下:

第一周作业-2022-5-30_第3张图片

注意:用ifconfig命令配置的网卡信息,在网卡重启或者机器重启后,所做的配置就不存在了。如果需要网络配置永久生效,需要修改相应的配置文件。

使用find命令过滤即可找到对应的网卡配置文件:

[root@node2 ~]#find /etc/ -name *ens33*
/etc/sysconfig/network-scripts/ifcfg-ens33


4. 总结linux FHS结构。

linux的文件系统分层结构FileSystem Hierarchy Standdard(简称FHS)。

定义了在Linux系统中的目录结构和目录内容,即让用户了解到已安装软件通常放置哪个目录下。类似于Windows操作系统中C盘的文件目录,FHS采用树形结构组织文件,定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理和矛盾处理。

文件系统目录结构:

第一周作业-2022-5-30_第4张图片

文件和目录被组织成一个单根倒置树结构

文件系统从根目录下开始,用“/”表示;

常见文件系统的目录功能:

/boot:存放内核文件(vmlinuz)、引导加载器(bootloader, grub)等引导文件都存放于此目录
/bin :所有用户使用的基本命令, OS 启动即会用到的程序
/sbin :管理类的基本命令, OS 启动即会用到的程序
/lib :启动时程序依赖的基本共享库文件,以及内核模块文件 (/lib/modules)
/lib64 :专用于 x86_64 系统上的辅助共享库文件存放位置
/etc :配置文件目录
/home/USERNAME :普通用户家目录
/root :管理员的家目录
/media :便携式移动设备挂载点
/mnt :临时文件系统挂载点
/dev :设备文件及特殊文件存储位置
b: block device ,随机访问
c: character device ,线性访问
/opt :第三方应用程序的安装位置
/tmp :临时文件存储位置

你可能感兴趣的:(linux,ubuntu,运维)