目录
lecture 1
GPL协议(GNU Public License)
软件开源协议,出发点为:
access source code / copy / modify / redistribute
代码的开源 / 免费使用和引用 / 修改 / 衍生代码的开源
但是不允许修改后和衍生的代码作为闭源的商业软件发布和销售(意思就是要开源和免费的)
其他的开源协议
BSD / Apache / LGPL / MIT
修改源码后可以闭源:BSD / Apache / MIT
Linux发行版
老师课上还提到:Bluepoint / Mandrake / Gentoo /
POSIX标准
POSIX标准意在期望获得源代码的软件的可移植性,即完成 同一功能,不同内核提供的系统调用是不同的,兼容POSIX标准的操作系统可以提供相同的API来解决这个问题。
相关文件
-/etc/passwd
用户登录时的文件,系统用户配置文件,存储了系统中所有用户的基本信息并且所有用户都可以对它操作。相关字段:
用户名:密码:UID(用户ID):GID(组ID):描述性信息:主目录:默认Shell
#主目录:也就是用户登录后有操作权限的访问目录,通常称为用户的主目录。
eg:root 超级管理员账户的主目录为 /root,普通用户的主目录为 /home/yourIDname
#默认shell:Shell 就是 Linux 的命令解释器。
通常情况下,Linux 系统默认使用的命令解释器是 bash(/bin/bash)
-/etc/shadow
/etc/shadow文件是/etc/passwd 的影子文件,这个文件并不由/etc/passwd 而产生的,这两个文件是应该是对应互补的。shadow内容包括用户及被加密的密码以及其它/etc/passwd 不能包括的信息,比如用户的有效期限等。这个文件只有root权限
用户名:加密密码:最后一次修改时间:最小修改时间间隔:密码有效期:
密码需要变更前的警告天数:密码过期后的宽限时间:账号失效时间:保留字段
lecture 2
shell(命令解释器)
Linux shell 是从登录开始运行并且解释输入的命令的程序。
Bash是最流行的shell。
shell自启动脚本:
- /etc/profile 系统启动文件 ,设置的变量为全局变量
- ~/.profile shell启动文件,每次用户登录时自动执行
- ~/.bashrc shell启动文件,设置的变量只对当前用户有用 #执行顺序:1->2->3
- /etc/passwd 记录用户资源信息
- ~/.logout shell退出时执行
环境变量Environment variables
可以看环境变量的命令:
-echo 写shell脚本时,输出文本 / 查看某个变量 eg:echo $PATH
-env 显示环境变量
-set 显示环境变量/设置shell执行方式
常见的环境变量:
-$PATH 命令路径
关于路径,路径有三种表示方法:1.从根目录(绝对路径,表示/) 2.从当前工作目录(相对路径) 3.从用户主目录(相对路径)
-$HOME 登录目录,主文件夹
-$PS1 命令提示command prompt
#命令提示:
s193066@GOJ:~$ echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$
\h 主机名
\u 用户名
\w 当前工作目录
\$ 命令提示符
-$LANG 语言
改变环境变量
运用export命令
- 临时改变:在终端输入export命令 eg:export PATH=$PATH:.
- 永久改变:修改profile文件 eg: 1.vi /etc/profile 2.export PATH="$PATH:xxx"