week1

week 1

1. 图文并茂解释开源许可证 GPL、BSD、MIT、Mozilla、Apache和LGPL的区别?
2. 安装各发行版系统的安装(centos, rockylinux, ubuntu, 等)
3. Linux中总结,1)如何通过一个简短的关键字,例如process 获取相关的命令。2)通过命令的描述,选择一个命令,获取命令的man文档。3)解读man文档,man分几个部分?man每个部分的解释,特别是语法部分。<>, [] ...等各代表什么含义。4)根据语法部分 简要的写几个操作。
4. 切换到/etc/目录,列出fstab文件的详细信息,详细解决fstab一行,每个或每几个字符的详细含义。
5. 简要说明FHS结构。
6. 用自己的理解总结 文件管理,用户管理,组用户,权限管理相关的命令。

1.图文并茂解释开源许可证 GPL、BSD、MIT、Mozilla、Apache和LGPL的区别?

image-20220731203307888

较流行的两种许可证:MIT和apache

GPL:GPL软件的使用者有权力得到软件的代码,只要使用了GPL,在发布(redistribution)时,整个项目也必须是GPL的,即主程序和静态链接的库(linux的.a和Windows的.lib)必须是GPL的,动态链接库(Linux的.so,Windows的.dll)必须是GPL兼容的。

BSD、apache 2.0:相对GPL/LGPL的开放源代码,BSD,Apache 2.0就宽松许多——商业软件可以任意的使用BSD,Apache 2.0发布的软件代码,而不需要开放源代码,只需要提及代码的原出处就可以了。BSD和Apache 2.0提及的方式稍有不同,具体可以参考协议的详细内容。它们是GPL兼容的

LGPL:LGPL定义为,在以LGPL发布的库的基础上开发新的库的时候,新的库必须以LGPL发布,但是如果仅仅是动态链接,那么则不受任何限制。这样商业软件就可以随意的使用LGPL的库了。因此,LGPL也具有传染性,但限制在其基础上开发的库上,而并不限制使用它的程序本身——它的传染性远小于GPL。

MIT:特此免费授予任何获得本软件副本和相关文档文件(下称“软件”)的人不受限制地处置该软件的权利,包括不受限制地使用、复制、修改、合并、发布、分发、转授许可和/或出售该软件副本,以及再授权被配发了本软件的人如上的权利

Mozilla:Mozilla公共许可证(英语:Mozilla Public License,简称MPL)是个自由、开源、详细的软件许可证,由Mozilla基金会开发并维护。该协议融合了BSD许可证和GNU通用公共许可协议的特性,追求平衡专有软件和开源软件开发者之间的顾虑。

Apache许可证:Apache 2.0许可证是ASF(Apache Software Foundation,Apache软件基金会)在2004年发布的,以帮助ASF实现其目标:“通过开源软件开发协作,提供可靠且长久不衰的软件产品”。ASF出品的软件一般都采用Apache 2.0许可证。当然,非ASF的项目也可以使用,Apache许可证设计出来是供所有人使用的。

2.安装各发行版系统的安装(centos, rockylinux, ubuntu, 等)

Cent OS 7:是一个企业级别的Linux发行版,生产中最为常见的版本,发布于2014年。

内核版本:Linux master 3.10.0-957.el7.x86_64,发行版本:CentOS Linux release 7.6.1810 (Core)

rockylinux:Rocky Linux是CentOS的一个分支,它位于Red Hat Enterprise Linux或RHEL的下游。与CentOS一样,它提供了一个稳定的Linux版本,非常适合服务器。已经可以成为Cent OS 8版本及以上的替代品

内核版本:Linux rocky 4.18.0-372.9.1.el8.x86_64,发行版本:Rocky Linux release 8.6 (Green Obsidian)

ubuntu:基于Debian的发行版,已经成为常见的Linux服务器版本。Ubuntu 是各种公有云上最受欢迎的操作系统,这是因为 Ubuntu 与各⼤云运营商密切合作,针对云服务商的基础架构优化内核和系统,加快安全更新速度,并最⼤限度降低⽤⼾默认需要的⽹络或存储成本。

内核版本:Linux ubuntu 5.4.0-113-generic,发行版本:Ubuntu 20.04.4 LTS

3.Linux中总结

1)如何通过一个简短的关键字,例如process 获取相关的命令。

man process
process --help
process -h(内部命令)

2)通过命令的描述,选择一个命令,获取命令的man文档。

man ls

3)解读man文档,man分几个部分?man每个部分的解释,特别是语法部分。<>, [] ...等各代表什么含义。

NAME    命令的名称
SYNOPSIS  命令的格式
[]          可选内容
<>      必选内容
a|b      二选一
...       同一内容可出现多次
DESCRIOTION  命令的描述
OPTIONS        命令的参数
EXAMPLES      命令举例
AUTHOR       命令作者
REPORTING BUGS  命令的BUG修改情况
SEE ALSO      

4)根据语法部分 简要的写几个操作。

ls -a:列出当前目录下所有文件
ls -l:显示更加完全的信息,格式

4.切换到/etc/目录,列出fstab文件的详细信息,详细解决fstab一行,每个或每几个字符的详细含义。

#
# /etc/fstab
# Created by anaconda on Fri Feb 18 20:42:44 2022
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=69faa10e-7a46-47af-88f2-55b65be6d82d /                       xfs     defaults        0 0
UUID=9ade9f73-8ffb-41b8-8a49-eef1512e07a7 /boot                   xfs     defaults        0 0
#UUID=862b50f1-d9ca-45e9-8540-5bbe6c2b4f04 swap                    swap    defaults        0 0
UUID=7b96d0e5-dae5-4538-a9ab-aebe08a26cec /root/mount                    ext4    defaults        0 2

######################
UUID:磁盘分区唯一识别码
/:分区挂载点
xfs:分区文件系统类型,可通过df -Th查看
default:默认的挂载参数
dump:是否做备份,一般为0
pass:fsck需要检查分区的顺序,一般来说根目录为0,优先级为最高,其他分区(数据盘)一般设置为2

5.简要说明FHS结构。

FHS :文件系统层级结构,Linux常见的目录

/:根目录,所有的目录、文件、设备都在/之下,根分区挂载在根目录下
/bin 可执行文件,其实/bin是/usr/bin的软链接,一般的可执行文件都放在/usr/bin中
/boot 系统启动相关的文件,内核文件等
/dev 设备文件目录,外部设备
/etc 配置文件,系统配置文件例如/etc/profile,网卡配置文件等,包括很多yum安装的服务例如httpd,nginx的主目录也在/etc下
/home 家目录,创建用户所在的目录
/lib library,库文件和内核模块文件,这个目录是用来存放系统动态连接共享库的。
/mnt 挂载点目录,通常挂载其他文件系统,挂载其他分区
/root root用户的家目录,在生产环境中不允许用root用户登录
/run 进程相关的数据
/sbin 系统管理员命令
/srv 系统服务相关数据 系统启动服务时候可以访问的数据库目录
/tmp temp,临时文件目录
/usr 系统核心所在目录,系统资源所在,结构和/目录类似
/var 可以理解为vary的缩写,/var下有/var/log 这是用来存放系统日志的目录。
/proc 用于存放进程相关数据,一个进程号pid就是一个目录

6.用自己的理解总结 文件管理,用户管理,组用户,权限管理相关的命令

Linux本身就由文件组成,一切皆文件

##文件管理
添加文件、编辑文件、删除文件、移动修改文件

##用户管理
用户分为:系统用户(uid:1-999),服务用户(1000+)
useradd:添加用户
userdel:删除用户
id user:查看用户信息,所属组信息
whoami:查看用户信息
passwd user:修改密码
su root/su user:切换用户,需要输入密码

##组用户
一组有相同权限的用户
groupadd:创建组
groupdel:删除组

##权限管理相关,查看文件的属性,各个属主,属组,others对文件的权限
[root@master ~]#ll 1.sh
-rwxr-xr-x 1 root root 75 Jun  6 21:27 1.sh

chmod:修改文件的所属主、属组、其他人权限
rwx:读写执行权限,对应421
chmod u+x 1.sh:修改1.sh文件属主有x可执行权限,变为可执行文件

chown:修改文件属主
##修改文件的属主
useradd nginx
chown nginx 1.sh
[root@master ~]#ll
total 7168
-rwxr-xr-x   1 nginx  root        75 Jun  6 21:27 1.sh

chgrp:修改文件属组
##修改dns配置的所属组
chgrp named /var/named/catyer.cn.zone
[root@master ~]#ll /var/named/catyer.cn.zone 
-rw-r----- 1 root named 435 Jul 23 08:54 /var/named/catyer.cn.zone
posted @ 2022-08-23 23:22  Catyer  阅读(51)  评论(0)    收藏  举报