《linux系统常用指令-用户及权限管理.ppt》由会员分享,可在线阅读,更多相关《linux系统常用指令-用户及权限管理.ppt(15页珍藏版)》请在三一办公上搜索。
1、Linux嵌入式编程,Linux基础操作,查询UID及GID id 主要参数:id-agu用户名 无参数 在没有加任何参数的情况下,查询的是当前操作 用户的用户名,UID,GID和所处的主用户组和附属 用户组-a 显示所有信息-g 只显示组ID号-u 只显示用户ID例:id id root id-ag root,用户及权限管理指令,一、用户和组的查询指令,Linux嵌入式编程,Linux基础操作,查询用户信息 finger 主要参数 finger-ls参数选项 用户名 作用:用户名(也被称为登录名Login)、真实名字(NAME)、在哪个终端登录(Tty)、写状态、空闲时间(Idle)、登录时
2、间(Login Time)、办公地点、办公电话等 无参数 默认以短格-s 来输出登录本机的所有用户信息-l 采用长格式-s 显示短格式例:finger finger-l或finger-s finger-s root,用户及权限管理指令,一、用户和组的查询指令,Linux嵌入式编程,Linux基础操作,查询登录主机用户 whoami:显示自身用户名称 w:显示目前登录用户信息 who:显示目前登陆的所有用户信息通过文件查看用户和群组 cat/etc/group|grep root:显示结果:root:x:1001:root,group_name 表示root这个组有两个用户root,group_
3、name cat/etc/passwd|grep root 显示结果 root:x:0:0:root:/root:/bin/bash,用户及权限管理指令,一、用户和组的查询指令,Linux嵌入式编程,Linux基础操作,添加用户组 groupadd 常用参数 groupadd-g gid-o-r-f groupname-g gid 除非使用-o参数不然该值必须是唯一,不可相同。数值不 可为负。-o 允许设置相同组id的群组-r 建立系统组例:groupadd javasky groupadd-g 666 google 设置GID为666的用户组,GID小于500的通常是留给系统账号使用,用户及
4、权限管理,二、群组管理指令,Linux嵌入式编程,Linux基础操作,修改用户组 groupmod 常用参数 groupmod-g gid-o-n group_name group-g gid 指定id-o 允许设置相同组id的群组-n group_name 修改用户组名为group_name例:groupmod-n google javasky groupmod g 600 javasky删除群组 groupdel 常用参数 groupdel 例:groupdel javasky,用户及权限管理,二、群组管理指令,Linux嵌入式编程,Linux基础操作,添加用户 useradd 常用参数
5、useradd-u uid-o-g group-G group,.-d home-s shell-c comment-e expire-p passwd name-c comment 新帐号 password 档的说明栏。-d home_dir 新帐号每次登入时所使用的home_dir。并当成登入 时目录名称。-e expire_date 帐号终止日期。日期的指定格式为MM/DD/YY。-g initial_group group名称或以数字来做为用户登入起始用户组。用户组名须为现有存在的名称。用户组数字也须为 现有存在的用户组。预设的用户组数字为1。-s shell 用户登入后使用的shel
6、l名称。预设为不填写,这样 系统会帮你指定预设的登入shell。-u uid uid用户的ID值。必须为唯一的ID值-G groups 归属组群,组名用逗号隔开,用户及权限管理,三、用户管理指令,Linux嵌入式编程,Linux基础操作,在建立用户时,可用如下方法查看:查看用户路径方法 ls-ld/opt/longcpu/查看用户信息方法 more/etc/passwd|grep longcpu finger longcpu id longcpu(1)例 建一用户longcpu,不使用任何参数 useradd longcpu(2)例 添加一个新用户longcpu,标注用户全名ChinaCpu;
7、useradd-c ChinaCpu longcpu,用户及权限管理,三、用户管理指令,Linux嵌入式编程,Linux基础操作,(3)例:自定义用户的家目录、SHELL类型、所归属的用户组等;useradd-c ChinaCpu-d/opt/longcpu-G linuxsir,root,beinan-s/bin/tcsh longcpu(4)例:添加了一个帐号,并且设置其帐号有效期,一旦过了这个日期,便停止其登录;useradd-e 11/04/2005 cooler more/etc/passwd|grep cooler finger cooler id cooler,用户及权限管理,三
8、、用户管理指令,Linux嵌入式编程,Linux基础操作,修改用户 usermod修改用户账号 主要参数 usermod必要参数选择参数用户账户-m 建立用户的根目录-s 指定shell-c 加上备注-d 指定根目录-e 指定有效期-g 指定用户群-G 指定用户的次群组 例:更改登录目录usermod-d/home/9linux root范例2:改变用户的UIDusermod-u 777 root,用户及权限管理,三、用户管理指令,Linux嵌入式编程,Linux基础操作,删除用户 usermod 主要参数 userdel-r 名称-r 删除用户的同时,也一并把其家目录和文件一同删除例:删除用
9、户bnnb,但不删除其家目录及文件 userdel bnnb例:删除用户lanhaitun,其家目录及文件一并删除 userdel-r lanhaitun,用户及权限管理,三、用户管理指令,Linux嵌入式编程,Linux基础操作,创建或修改用户密码 passwd 主要参数 passwd-dl用户名 无参数 命令后面不接任何参数或用户名,则表示修改当前用户的密码;请看下面的例子;例:修改当前用户密码 passwd例:更改其它用户密码(以root权限来创建或修改密码)passwd javasky例:删除用户密码 passwd-d javasky例:锁定用户beinan不能更改密码 passwd-
10、l beinan,用户及权限管理,三、用户管理指令,Linux嵌入式编程,Linux基础操作,切换用户 su 主要参数 su-mp-c command-USER ARG-m,-p 执行su时不改变环境变量-l 好像是重新登陆一样,工作目录也会改变例:变更帐号为 root 并在执行 ls 指令后退出变回原使用者 su-c ls root例:在root下切换到普通用户 su 用户名例:在普通用户下,进入root或其它用户,输入 su 用户名 su yecy password:注:su-或 su-l切换至root,用户及权限管理,三、用户管理指令,Linux嵌入式编程,Linux基础操作,文件权限
11、在下图中我们可以了解到具体的权限表示:,用户及权限管理,四、权限管理,Linux嵌入式编程,Linux基础操作,常用参数 chmod-cfvR ugoa.+-=rwxX.,.file.u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。+表示增加权限、-表示取消权限、=表示唯一设定权限。r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。-c:若该档案权限确实已经更改,才显示其更改动作-f:若该档案权限无法被更改也不要显示错误讯息-v:显示权限变更的详细资料-R:对目
12、前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)o+rwx,用户及权限管理,四、权限管理,Linux嵌入式编程,Linux基础操作,例:将档案 file1.txt 设为所有人皆可读取:chmod ugo+r file1.txt chmod ug+w,o-w file2.txt chmod a+r file3.txt此外chmod也可以用数字来表示权限,语法为:chmod abc file 其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。r=4,w=2,x=1 若要rwx属性则4+2+1=7;若要rw-属性则4+2=6(去掉执行权限);若要r-x属性则4+1=5(去掉写权限)。例:chmod 777 file chmod 771 file,用户及权限管理,四、权限管理,