- 图文并茂解释开源许可证 GPL、BSD、MIT、Mozilla、Apache和LGPL的区别?
名称中英文缩写如下:
GPL(GNU General Public License)通用性公开许可证
BSD开源协议(original BSD license、FreeBSD license、Original BSD license)
MIT(MIT)
MPL(The Mozilla Public License)Mozilla公共许可证
Apache Licence 2.0(Apache License, Version 2.0、Apache License, Version 1.1、Apache License, Version 1.0)
LGPL(GNU Lesser General Public License)宽松公共许可证
主要区别如下:
- 安装各发行版系统的安装(centos, rockylinux, ubuntu, 等)
系统安装如下图:
3.Linux中总结:
1)如何通过一个简短的关键字,例如process 获取相关的命令。
help可以列出所有的内部命令;whereis 查看外部命令路径
lscpu 查看cpu信息
cat /proc/cpuinfo
2)通过命令的描述,选择一个命令,获取命令的man文档。
3)解读man文档,man分几个部分?man每个部分的解释,特别是语法部分。<>, [] …等各代表什么含义。
不同类型的帮助称为不同的“章节”,统称为Linux手册,man 1 man
1:用户命令
2:系统调用
3:C库调用
4:设备文件及特殊文件
5:配置文件格式
6:游戏
7:杂项
8:管理类的命令
9:Linux 内核API
man 帮助段落说明
NAME 名称及简要说明
SYNOPSIS 用法格式说明
[] 可选内容
<> 必选内容
a|b 二选一
{ } 分组
… 同一内容可出现多次
DESCRIPTION 详细说明
OPTIONS 选项说明
EXAMPLES 示例
FILES 相关文件
AUTHOR 作者
COPYRIGHT 版本信息
REPORTING BUGS bug信息
SEE ALSO 其它帮助参考
4)根据语法部分 简要的写几个操作。
man 2 open
man 3 open
man 7 ascii
man 1 ls
- 切换到/etc/目录,列出fstab文件的详细信息,详细解释fstab一行,每个或每几个字符的详细含义。
cd /etc/
cat fstab
关于每列的信息说明如下:
/dev/mapper/r1-root
–第1列 Device:磁盘设备文件或者该设备的Label或者UUID
/boot
–第2列 Mount point:设备的挂载点
xfs
–第3列 filesystem:磁盘文件系统的格式,包括ext2、ext3、reiserfs、nfs、vfat等
defaults
–第4列 parameters:文件系统的参数
Defaults 同事具有rw,suid,dev,exec,auto,nouser,async等默认参数的设置
Async/sync 设置是否为同步方式运行,默认为async
auto/noauto 当下载mount -a 的命令时,此文件系统是否被主动挂载。默认为auto
rw/ro 是否以以只读或者读写模式挂载
exec/noexec 限制此文件系统内是否能够进行"执行"的操作
user/nouser 是否允许用户使用mount命令挂载
suid/nosuid 是否允许SUID的存在
Usrquota 启动文件系统支持磁盘配额模式
Grpquota 启动文件系统对群组磁盘配额模式的支持
0
第5列 能否被dump备份命令作用:dump是一个用来作为备份的命令。通常这个参数的值为0或者1
0 代表不要做dump备份*
1 代表要每天进行dump的操作
2 代表不定日期的进行dump操作
> 0
第6列 是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整(clean)。
0 不要检验
1 最早检验(一般根目录会选择)
2 1级别检验完成之后进行检验
- 简要说明FHS结构。
FHS:Linux的文件系统分层结构:FHS Filesystem Hierarchy Standard
/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:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件存储位置
/usr: universal shared, read-only data
bin: 保证系统拥有完整功能而提供的应用程序
sbin:
lib:32位使用
lib64:只存在64位系统
include: C程序的头文件(header files)
share:结构化独立的数据,例如doc, man等
local:第三方应用程序的安装位置
bin, sbin, lib, lib64, etc, share
/var: variable data files
cache: 应用程序缓存数据目录
lib: 应用程序状态信息数据
local:专用于为/usr/local下的应用程序存储可变数据
lock: 锁文件
log: 日志目录及文件
opt: 专用于为/opt下的应用程序存储可变数据
run: 运行中的进程相关数据,通常用于存储进程pid文件
spool: 应用程序数据池
tmp: 保存系统两次重启之间产生的临时数据
/proc: 用于输出内核与进程信息相关的虚拟文件系统
/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置
- 用自己的理解总结 文件管理,用户管理,组用户,权限管理相关的命令。
文件管理命令:
pwd 显示完整目录
file 看文件类型
touch 建立新文件或刷新旧文件时间
cp 复制文件或目录
mv移动文件或目录
rename文件重命名
rm 删除文件或目录
mkdir/rmdir 建立/删除目录
用户管理命令:
useradd
useradd -u 123 -g mysql -s /sbin/nologin -d /data/mysql -M mysql
userdel
usermod
id mysql 查看用户id信息
组用户命令:
groupadd
groupadd -g 123 -r mysql
groupdel
groupmod
权限管理命令:
su 身份切换
passwd改密码
chage 改密码
chown修改权限
对文件的权限:
r 可使用文件查看类工具,比如:cat,可以获取其内容
w 可修改其内容,文件的是否被删除和文件的权限无关
x 可以把此文件提请内核启动为一个进程,即可以执行(运行)此文件(此文件的内容必须是可执行)
文件权限常见组合
— 0
r 4
r-x 5
rw 6
rwx 7
对目录的权限:
r 可以使用ls查看此目录中文件名列表,但无法看到文件的属性meta信息,包括inode号,不能查看文件的
内容
w 可在此目录中创建文件,也可删除此目录中的文件,而和此被删除的文件的权限无关
x 可以cd进入此目录,可以使用ls -l file或stat file 查看此目录中指定文件的元数据,当预先知
道文件名称时,也可以查看文件的内容,属于目录的可访问的最小权限
X 分配给目录或有部分x权限的文件的x权限,对无任意x权限的文件则不会分配x权限
目录权限常见组合
- 不能访问目录
r-x 只读目录
rwx 可读也可写目录
chmod 修改文件权限
MODE : who opt permission
who :u,g,o,a
opt: + ,-, =
permission:r,w,x
修改指定一类用户的所有权限
u = g = o = ug = a = u = ,g =
修改指定一类用户某个或某个权限
u + u- g + g- o + o- a + a- + -
-R : 递归修改权限
umask 的值可以用来保留在创建文件权限
非特权用户 umask 默认是 002
root 的 umask 默认是 022