用户管理
(一) 用户基本知识
1.文件信息
ls -l
drwxrwxrwx filename
(1)访问权限
mode : rwx rwx rwx r:read w:write x:execute
user group other
缩写 : (u) (g) (o)
(2) 文件类型
- : 普通文件
b : 块特殊文件,如硬盘和CDROM设备
c : 字符文件设备或称“raw”设备文件
l : 符号连接
p : 管道或流,用于进程通讯
d : 目录
2.缺省权限
创建文件和目录时,系统自动设置一定的权限.缺省权限由用户mask码控制
$umask &显示用户umask码
umask 设置 文件
目录
022 新文件属主有读权和修改权 用户组和其他用户有读权和修改权
用户组和其他用户只有读权
可用umask maskvalue 改变缺省权限
3.系统安全文件
/etc/passwd 用户注册表
/etc/shadow 加密口令
/etc/group 用户组
/etc/default/login 访问控制
说明:
passwd文件是为系统中的用户授予和认证访问权限的第一个文件,其项目使用’:’ 分割.
login_name:passwd_field:UID:GID:comment:home_directory:default_shell
login_name 用户唯一登录名 comment 注释(finger使用)
passwd_field 加密口令安全标记 home_directory 用户注册家目录
UID 用户号 default_shell 命令解释器
GID 用户缺省唯一组号 默认:sh,csh,ksh
shadow 文件管理用户加密口令,该文件只对超级用户有读权限
login_name:encrypted_pass:last_change:min:max:warn:inactive:expire:reserved
login_name 用户名(同passwd) max 口令有效最大天数
encrypted_pass 13字符长加密口令 warn 口令到期前多少天警告
last_change 上次更改日期(from1970.1.1) inactive 被禁止登录前,帐号不活跃天数
min 最小间隔天数 expire 用户禁止登录绝对日期(通常空白)
group文件用于将计算机系统的用户分组
groupname:passwd:gid:user-list
groupname 唯一组名 gid 为操作系统提供的代表组名的唯一标识号
passwd 组加密后的口令 user-list 用逗号分割的所有可访问该组的用户清单
理解UID和GID
系统中的每一个用户名都被赋予了一个UID(User Identification Number
用户标识号),这些
号在0-60000之间,系统使用UID将一个用户名和操作系统对该用户的标识等同起来,
建立用户时,必须保证UID唯一。
GID(Group Identification
Number,组标识号)遵循与UID一样的格式,范围0-60000,
每个用户至少属于一组,并且可以属于多组。
(二)相关命令
1.chmod 改变文档或目录之属性
命令格式:chmod [-R] mode name
( name 可为档名或目录名;mode可为 3 个 8 位元之数字,或利用ls -l命令,列出文档或目录之读、写、执行允许权之文字缩写.)
例子 :
%chmod 755 dir1 将目录dir1,设定成任何使用者,皆有读取及执行之权利,
但只有拥有者可做修改.
%chmod 700 file1
将文档file1,设定只有拥有者可以读、写和执行.
%chmod u+x file2
将文档file2,增加拥有者可以执行之权利.
%chmod g+x file3
将文档file3,增加群组使用者可执行之权利.
%chmod o-r file4
将文档file4,除去其它使用者可读取之权利.
%chmod a-r file4
将文档file4,除去所有使用者可读取之权利.
2.chown 改变文档或目录之拥有权
命令格式:chown [-R] username name ( name 可为档名或目录名.)
例子 :
%chown user file1 将文档 file1 之拥有权,改为使用者 user 所有.
%chown -R user dir1 将目录 dir1,及其下所有文档和子目录之拥有权,
改为使用者 user 所有.
3.chgrp 改变文档或目录之群组拥有权
命令格式:chgrp [-R] groupname name ( name 可为档名或目录名 )
例子 :
%chgrp vlsi file1
将文档 file1 之群组拥有权,改为 vlsi 群组.
%chgrp -R image dir1
将目录dir1,及其下所有文档和子目录,改为 image 群组.
4.touch 改变文档或目录之最後修改时间
命令格式:touch name ( name 可为文档或目录名称.)
5.who 查看系统注册用户
6.id 查看当前用户用户号和组号
7.passwd 修改用户口令
命令格式:passwd username
无用户参数修改本用户口令,用户口令必须至少6个字符长,最大8个字符,口令中
至少两个字母字符及一个数字字符
8.su 转换用户
命令格式: su [-] username
无用户参数为转换到超级用户
- :执行新用户环境设置
su –c root dbshut
(三)shell特点
1. s olaris三类shell
- Bourne(缺省shell)
- C
- Korn
Shell 基本特点
特点 Bourne C Korn
别名机制 No Yes Yes
增强的cd(CDPATH)功能 Yes Yes Yes
历史列表 No Yes Yes
作业控制 No Yes Yes
防止文件被覆盖 No Yes Yes
忽略Control_D No Yes Yes
2. B shell
(1) 变量设置
实例: 终端类型:TERM=vt100;export TERM
语言环境:LANG=C;export LANG
执行路径:PATH=$PATH:/usr/bin:. ; export PATH
显示终端:DISPLAY=host:0.0;export DISPLAY
(2) 环境文件
.profile
3. C shell
(1) 变量设置
set 定义变量
setenv 定义环境变量(环境变量与变量不同之处在于环境变量可以影响子进程)
例子: 终端类型:setenv TERM=vt100
提示符: set prompt=”I love unix>;”
路径变量:set path=($path /usr/bin .)
显示终端:setenv DISPLAY host:0.0
共享库: setenv LD_LIBRARAY_PATH
/usr/dt/lib:/usr/openwin/lib
(2) 环境文件
.login .cshrc
(3) 脚本语言
事例1: 更换后缀
foreach file (*.ab)
set base=`basename $file .ab`
mv $file $base.cd
end
事例2:简单循环
@ cnt = 1
echo I will count from 1 to 100
echo and pause at every ten numbers for
confiumation to continue
echo -n Press an key to start:
#显示数据后不回车
set key = $< #接受输入字符
while ($cnt < 101)
echo This is $cnt
if (`exp $cnt % 10` == 0
) then
echo –n “continue or
not(Y/N)”
set key = $<
if ($key == ‘n’) exit
endif
@ cnt += 1 # 变量cnt 加
1
end
echo DONE
4. dtterm
.dtprofile 通用桌面环境设置选项
(四) 创建,删除用户帐户
1. 图形化管理工具
admintool
2. 字符型用户管理
useradd ,usermod