1. 图文并茂解释开源许可证 GPL、BSD、MIT、Mozilla、Apache和LGPL的区别?
2. 安装各发行版系统的安装(centos, rockylinux, ubuntu, 等) 【任选1个】
3. Linux中总结,① 如何通过一个简短的关键字 【man -k man -k process 】,例如process 获取相关的命令。② 通过命令的描述,选择一个命令,获取命令的man文档。【 man top】 ③ 解读man文档,man分几个部分?man每个部分的解释,特别是语法部分。<>, [] ...等各代表什么含义。④ 根据语法部分 简要的写几个操作。
4. 切换到/etc/目录,列出fstab文件的详细信息,详细解决fstab一行,每个或每几个字符的详细含义。 【cd /etc; ls -l /etc/fstab】
5. 简要说明FHS结构。
6. 用自己的理解总结 文件管理,用户管理,组用户,权限管理相关的命令。文件: 【touch/rm/rmdir/cat/head/less/more】。用户及组:user/group 【useradd/userdel/usermode; groupadd/groupdel/groupmod; chsh/...】。权限 【chmod/chown/setfacl】
目录
一、开源许可
-
1.GPL
-
2.BSD
- 3.MIT
- 4.Mozilla
- 5.Apache
- 6.LGPL
- 7.总结
- 二、rockyLinux&Centos/.的安装
-
三、Linux中总结
- 1.通过关键字获取命令
- 1.1 man -k
- 1.2 man -k process
- 2.man文档
- 2.1 man文档说明
- 2.2 <>,[],..等各代表什么含义
- 2.3 语法范例
- 3.fstab文件的详细信息
- 4.简要说明FHS结构
- 5.文件管理
- 5.1 touch命令
- 5.2 rm命令
- 5.3 rmdir命令
- 5.4 cat命令
- 5.5 head命令
- 5.6 less命令
- 5.7 more命令
- 6.用户管理
- 6.1 useradd
- 6.2 userdel
- 6.3 usermode
- 7.组用户
- 7.1 groupadd
- 7.2 groupdel
- 7.3 groupmod
- 7.4 chsh
- 8.权限管理
- 8.1 chmod
- 8.2 chown
- 8.3 setfacl
- 8.2 chown
- 8.1 chmod
- 8.权限管理
- 7.4 chsh
- 7.3 groupmod
- 7.2 groupdel
- 7.1 groupadd
- 7.组用户
- 6.3 usermode
- 6.2 userdel
- 6.1 useradd
- 6.用户管理
- 5.7 more命令
- 5.6 less命令
- 5.5 head命令
- 5.4 cat命令
- 5.3 rmdir命令
- 5.2 rm命令
- 5.1 touch命令
- 5.文件管理
- 4.简要说明FHS结构
- 3.fstab文件的详细信息
- 2.3 语法范例
- 2.2 <>,[],..等各代表什么含义
- 2.1 man文档说明
- 2.man文档
- 1.2 man -k process
- 1.1 man -k
- 1.通过关键字获取命令
-
- 6.LGPL
- 5.Apache
- 4.Mozilla
- 3.MIT
开源许可
1.GPL
GNU 通用公共许可协议(GNU General Public License,缩写GUN GPL 或 GPL),GPL 的出发点是代码的开源免费使用和引用、修改、衍生代码的开源免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售;GPL 赋予和保证了开源项目开发者广泛的权利。基本上,它允许用户合法复制,分发和修改软件
协议特点:
- 当 GPL 协议的软件与其他协议的软件相组合、或者GPL的衍生产品,必须按照 GPL 的条款分发(新增代码必须采用相同许可证)
- GPL 协议的软件可以用于盈利
- 保证软件源代码开源的情况下,可自由修改并发布 GPL 协议的软件
使用者:
- 自由运行:无时间地点限制的运行软件
- 自由修改:可以删除和添加功能
- 自由复制:你可以复制软件到任何地方,并且没有数量限制
- 自由分发:在任何地方发布你想要的软件
2.BSD
LGPL(宽松公共许可证):不要求使用与部分代码相同的 License,LGPL 比较适合连接到非 GPL 或者非开源文件的库文件
- 商业软件可以使用,但不能修改 LGPL 协议的代码
- 对源码修改之处,不需要提供说明文档
3.MIT
MIT 是和 BSD 一样宽范的许可协议,作者只想保留版权,而无任何其他了限制,也就是说,你必须在你的发行版里包含原许可协议的声明,无论你是以二进制发布的还是以源代码发布的
- 你可以使用,复制和修改软件
- 你可以免费使用软件或出售
- 只有一点限制:所有应用必须包含版权声明和许可声明
- 可以用开源代码的作者/机构名字和原来产品的名字做市场推广
4 .Mozilla
Mozilla 协议允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者,这种授权维护了商业软件的利益,它要求修改后的软件版权需要无偿共享给源软件发起者。这样,围绕该软件的所有代码的版权都集中在发起开发人的手中。但 MPL 是允许修改,无偿使用的。MPL 软件对链接没有要求
-
维护了商业软件的利益
-
修改后的代码版权归软件的发起者所有
- 允许修改,无偿使用
- 对源码修改之处,必须提供说明文档
5.Apache
该协议和 BSD 类似,鼓励代码共享和尊重原作者的著作权,允许代码修改、再发布(作为开源或商业软件)
- 如果你修改了代码,需要在被修改的文件中放置版权说明
- 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明
- 使用者可以在需要的时候修改代码来满足需要,并作为开源或商业产品发布/销售
6.LGPL
LGPL(宽松公共许可证):不要求使用与部分代码相同的 License,LGPL 比较适合连接到非 GPL 或者非开源文件的库文件
- 商业软件可以使用,但不能修改 LGPL 协议的代码
- 对源码修改之处,不需要提供说明文档
7.总结
宽松:MIT > BSD > Apache > LGPL > Mozilla > GPL
rockyLinux&Centos/.的安装
1.新建虚拟机,选自定义安装
2.选择稍后安装操作系统。
3.选择Linux,版本选择CentOS 8 64位,然后点击下一步
4.主机名改自己想要的名称,位置最好选择空间大的磁盘。
5.处理器数量连个就够了,看个人选择。
6.运行内存的2G也差不多可以运行,如果觉得不够可以再加。
7.网络类型选NAT
桥接网络:虚拟机通过 VMnet0 虚拟交换机实现与物理机在同一个局域网中,虚拟机与物理机能够互相 ping 通,物理机能上网,虚拟机也能上网
NAT 模式:物理机和 VMnet8 虚拟网络中的 NAT(网络地址转换)网关共享同一个 IP,只要物理机能上网,虚拟机也能上网
仅主机模式:该模式下只有物理机能够上网,虚拟机无法上网,但是物理机和虚拟机之间能够互 ping
8.这三个步骤直接默认选择
9.磁盘大小也随个人情况定,这边我只给20G,不要勾选立即分配所有磁盘空间。
将虚拟磁盘合并为单个文件:提高了磁盘的读写性能,不便移动将虚拟磁盘。
拆分位多个文件:能够更加轻松的在计算机之间移动虚拟机,更加便携,降低了大容量磁盘的性能
10.创建完成后点击编辑虚拟机设置
11.点击CD/DVD这里然后使用准备好的镜像
12.打开虚拟机后,该页面第一个是直接装系统,第二个个是自检后再装系统,第三个是修复故障,如果不想浪费时间就选第一个
13.这一步是语言选择,建议选英语。然后点击下一步
14.选时区
15.软件选择最小安装
16.网络与主机名的配置
17.用户和密码的设置
Root Password:设置 Root 账户密码
User Creation:创建普通用户
18.点击Begin installation开始安装
19.点击Reboot System完成安装
Linux中总结
1.通过关键字获取命令
1.1 man -k
1.2 man -k process
2.man文档
2.1 man文档说明
标题 | 含义 |
NAME | 名称及简要说明 |
SYNOPSIS | 用法格式说明 |
DESCRIPTION | 详细说明 |
OPTIONS | 选项说明 |
AUTHOR | 作者 |
BUGS | bug信息 |
EXAMPLES | 使用示例 |
SEE ALSO | 其他帮助参考 |
FILES | 相关文件 |
COPYRIGHT | 版本信息 |
2.2 <>,[],..等各代表什么含义
[]:中括号表示可选内容
<>:尖括号表示必选内容
a|b:表示二选一
{}:大括号表示分组
...:表示同一内容可出现多次
2.3 语法范例
查看date命令的man文档
3.fstab文件的详细信息
4.简要说明FHS结构
- 文件和目录被组织成一个单根倒置树结构
- 文件系统从根目录下开始,用“/”表示
- 根文件系统(rootfs):root filesystem
- 标准Linux文件系统(如:ext4),文件名称大小写敏感,例如:MAIL, Mail, mail, mAiL
- 以 . 开头的文件为隐藏文件
- 路径分隔的 /
- 文件名最长 255 个字节
- 包括路径在内文件名称最长 4095 个字节
- 目录类型
- 蓝色:目录
- 绿色:可执行文件
- 红色:压缩文件
- 浅蓝色:链接文件
- 灰色:其他文件
-
除了斜杠和 NULL,所有字符都有效,但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用
-
每个文件都有两类相关数据:
- 元数据:metadata,即属性
- 数据:data,即文件内容
5.文件管理
5.1 touch命令
该命令用于修改文件或目录的时间属性,包括访问时间和修改时间,若文件不存在,系统会建立一个新文件。
5.2 rm命令
该命令为删除命令,属于危险命令,在工作过程中要慎重使用该命令。
5.3 rmdir命令
该命令也是删除命令,不过特点是删除空目录,非空目录不可删。
5.4 cat命令
该命令通常用来查看文件内容。
5.5 head命令
该命令可查看文件的前多少行,此外也支持管道,用于显示管道符前的命令前面指定行的输出结果
5.6 less命令
该命令是对文件或其他输出进行分页显示的工具。
5.7 more命令
该命令和cat的功能一样查看文件,不同的是more按页来查看文件内容。
6.用户管理
6.1 useradd
useradd是创建用户,格式是: useradd 选项 用户名
选项: -u:指定新用户的UID -g:指定新用户主组的名称或ID -c:用户的注释信息 -d:以指定的路径(不存在)为用户家目录 -s:指定用户的默认shell程序,可用列表在/etc/shells文件中 -G:为用户指定附加组,组须事先存在 -N:不创建私用组做主组,使用users组做主组(不创建同名的组) -r:创建系统用户 -m:创建家目录,用于系统用户 -M:不创建家目录,用于非系统用户 -p:指定加密的密码
6.2 userdel
userdel是删除用户
选项:
-f, --force:强制删除 -r, --remove:删除用户家目录和邮箱
6.3 usermode
usermode是修改用户账号
7.组用户
7.1 groupadd
groupadd是创建组命令,格式:groupadd 选项 组名
选项:
-g:指定用户组ID -r:创建系统组
7.2 groupdel
groupdel是删除组命令,格式:groupdel 选项 组名
选项:
-f, --force:强制删除,即使是用户的主组也强制删除组,但会导致无主组的用户不可用无法登录
7.3 groupmod
groupmod是修改组命令,格式:groupmod 选项 组名
选项:
-n:新的组名称 -g:新的GID
7.4 chsh
chsh命令是用来更换登录系统时使用的shell,如果命令行上没有指定的shell,chsh将提示输入一个shell。
8.权限管理
8.1 chmod
chmod是修改文件权
#说明 用户:u(所有者),g(所属组),o(其他),a(所有) 修改:+(添加权限),-(减少权限),=(分配权限) 权限:r(读),w(写),x(执行),X(为目录下的文件分配执行权限),NULL(所有权限) 数字法:4(读),2(写),1(执行) chmod 777 a.txt # 开放所有权限 chmod u+rw,g+rx,o+wx a.txt # 所有者添加可读可写权限,所属组添加可读可执行权限,其他人添加可写可执行权限 chmod u-w,g-wx,o-x a.txt # 设置a.txt文件权限为所有者减少写权限,所属组减少写、执行权限,其他人减少执行权限 chmod a=rwx a.txt # 设置a.txt文件权限所有人有可读可写可执行权限 chmod u=x,g=x a.txt # 设置a.txt文件权限为所有者可执行,所属组可执行
限
8.2 chown
chown是设置文件属组,属主。格式:chown 选项 user[:group]文件
选项:
-c:显示更改的部分的信息
-f:忽略错误信息
-h:修复符号链接
-v:显示详细处理信息
-R:处理指定目录以及其子目录下的所有文件
-help:显示辅助说明
8.3 setfacl
setfacl命令是设置文件访问控制列表。格式:setfacl [-bkndRLP] {-m|-M|-x|...} file ...
选项
-m, --modify-acl 更改文件的访问控制列表
-M, --modify-file=file 从文件读取访问控制列表条目更改
-X, --remove=acl 根据文件中访问控制列表移除条目
-X, --remove-file=file 从文件读取访问控制列表条目并删除
-b, --remove-all 删除所有扩展访问控制列表条目
-k, --remove-default 移除默认访问控制列表- - set=acl设定替换当前的文件访问控制列表
--set-file=file 从文件中读取访问控制列表条目设定- -mask重新计算有效权限掩码
-n, --no-mask 不重新计算有效权限掩码
-d, --default 应用到默认访问控制列表的操作
-R, --recursive 递归操作子目录
-L, --logical 依照系统逻辑,跟随符号链接
-P, --physical 依照自然逻辑,不跟随符号链接
--restore=file 恢复访问控制列表,和"getfacl -R"作用相反--test 测试模式,并不真正修改访问控制列表属性
-V, --version 显示版本并退出
-h, --help 显示本帮助信息