用户管理
su
执行权限:所有用户
功能描述:切换用户,比如,获得更高权限,执行管理员的命令,切换为普通用户,限制权限和操作
例如:su root
注意:普通用户切换为管理员,需要密码,反之不需要
useradd
执行权限:root用户
功能描述:切换用户,以获得更高权限,执行管理员的命令
常用选项:
-g:将该新用户增加到该用户组中,如果没有该选项,则根据用户名创建一个新组,并将该用户加入该组
例如:useradd -g student jason
passwd
执行权限:所有用户
功能描述:修改用户密码
例如:
passwd 回车 ;修改自己的密码,接下来需要输入密码两遍
su root
passwd jason ;管理员修改jason的密码,接下来需要输入密码两遍
usermod
执行权限:root用户
功能描述:修改用户所属用户组
常用选项:
-g:将该用户修改到另外一个组中
-G:将该用户增加到到其它多个附加组中
例如:
usermod -g student -G teacher, root ben ;将ben用户主组设为student,附加组设为teacher和root组
userdel
执行权限:root用户
功能描述:删除某普通用户
常用选项:
-f 强制删除用户账号,即使用户已经登录;也会删除用户的主目录
-r 用户主目录中的文件将被一同删除
例如:
su root
userdel -r ben ;管理员删除ben用户以及其用户主目录及其邮箱缓存
groupadd
执行权限:root用户
功能描述:增加一个新用户组
例如:
su root
groupadd student ;管理员创建一个名为student的用户组
groupdel
执行权限:root用户
功能描述:删除某用户组
注意选项:
该组必须用户已空,才能删除
例如:
su root
groupdel student ;管理员删除名为student的空用户组
权限管理
ugo基本权限
一个文件对应的权限对象为三种,分别为所有者user、所属组group、其他人other
每个对象可拥有的权限为三种读 r 、 写 w 、 执行 x
权限数字分别对应为 r —— 4 w——2 x——1
这样设计可以使三种权限任意组合也不会重复
chmod
执行权限:所有用户
功能描述:修改某些用户对文件的访问权限
注意事项:所有者和管理员可以修改
常用选项:
-R 递归修改子目录和文件的所有者
例如:
chmod g+rwx a.txt ;修改当前目录下a.txt文件的权限:所属组可以读、写、执行
chgrp
执行权限:root用户
功能描述:修改文件关联的用户组
常用选项:-R 递归修改子目录和文件的所属组
例如:
chgrp ben a.txt;修改当前目录下a.txt的所属用户组为ben组
chown
执行权限:所有用户
功能描述:修改文件的所有者
注意事项:所有者和管理员可以修改
常用选项:-R 递归修改子目录和文件的所有者
例如:
chown ben a.txt;把a.txt文件的所有者修改为ben用户
嵌入式编译器
GCC(GNU Complier Collection)是Linux下最常用的符合ANSI C标准的编译系统,能够编译C,C++, Object C等语言编写的程序。
- GCC 可以为x86,ARM,MIPS等不同体系结构的硬件平台编译程序。
- GCC 可以编译C,C++, Pascal, Java等数十种高级语言。
常用编译选项:
-E 对源文件进行预编译
-S 对源文件进行编译
-c 对源文件过行汇编
-o file 输出目标文件file,不指定时输出的为默认文件a.out
-W 屏蔽所有的警告信息
-Wall 显示所有的警告信息
-Werror 出现任何错误就停止编译
-g 产生调试信息,把调试信息加入可执行文件中
-O1 对目标文件进行性能优化
-O2 在O1的基础上进一步优化,提高目标文件的运行性能
-O3 在O2的基础上进一步优化,支持函数集成优化
-static 使用静态链接
-llibrary 接library函数库文件