这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » 【一点一滴学嵌入式Linux】第四课 用户及进程管理

共43条 1/5 1 2 3 4 5 ›| 跳转至

【一点一滴学嵌入式Linux】第四课 用户及进程管理

专家
2013-05-19 18:36:51     打赏

用户及进程管理是多任务多用户中经常遇到的问题

本节课的内容分为用户的管理,包括用户的切换、创建、删除、密码修改和用户信息的修改等

文件权限的操作以及进程的管理等

 

 第四课 用户及进程管理.pdf

 

 

PPT课件下载4-Linux进程管理.rar




关键词: 一点一滴     嵌入式     Linux     第四     用户     进程         

专家
2013-05-19 18:37:25     打赏
2楼

此为不完整版,是没有图片解释的,带图片的请下载PDF格式文档

【写在读之前】

1、  黑色加粗的为命令,不可拼读错误;

2、  -->解释箭头

3、  所有括号内的内容为补充说明或单词补全,可不输入

4、  所有标记红色“”为有图示的例子

5、  颜色一样、连在一起的且中间有空格的几个单词,是一个命令或一个完整说明

6、  其它颜色为可以区分设置,没有特殊含义;

7、  实际命令的空格间隔很小,为了加以区别以便让人更清楚地区分,空格一般输入不止一个;

8、  暂时不理解的名词可讨论或网络搜索;

9、  由于水平有限,难免出错或过于繁琐,今后会逐步完善,望指正~

第四课 用户及进程管理

一、用户管理

1、配置文件

         /etc/passwd            -->    保存用户信息

:查看用户信息,cat  /etc/passwd

shangziyun:x:500:500::/home/shangziyun:/bin/bash

         用户名:密码:uid:gid:用户描述:用户主目录:用户的登陆shell

        

         /etc/shadow            -->    保存密码信息(MD5加密)

         /etc/group               -->    保存组的信息

2、如何查看用户身份

  who                        -->    查看当前哪些用户在线

  whoami                -->  查看自己是谁,查看的是euid(有效用户id)

  who am i             -->  查看自己是谁,查看的是uid(用户真实id)

  id                             -->    查看自己的uid,gid

 

3、如何切换用户(慎用,不懂的命令不要敲

         su                      -->    切换到root用户,和 su root相同

         su root        -->    切换到root用户,仍然使用切换前的用户环境配置

         su - root                   -->    切换到root用户,并且使用root用户的环境配置

        

4、如何添加用户 即在/etc/passwd/etc/shadow/etc/group文件中添加一条记录

         useradd           -->    实际添加的路径为/usr/sbin/useradd

         useradd Tony

没有添加前

添加后,多了一个用户Tony

5、如何改密码(即修改/etc/shadow文件的内容

         passwd    修改当前用户的密码

         passwd Tony 修改Tony用户的密码

:修改Tony的密码(密码是不回显的作者设置为111,提示太短,但还是继续输入第二次)

6、如何删除用户(即在/etc/passwd/etc/shadow/etc/group中删除一条记录

         userdel

         userdel -r                 -->    删除用户的同时,删除主目录

:删除用户Tonyroot用户才能操作

删除前

删除后

7、修改用户信息(修改/etc/passwd/etc/group中的某条记录的内容

         usermod

8、组的操作(用法与用户的操作相似):

         添加组:groupadd

         修改组:groupmod

         删除组:groupdel

9、修改文件的属主和属组

         chown sramedu:sramedu test1            -->    test1的所有者修改为sramedu,并且将属组修改为sramedu

         chown -R sramedu:sramedu code                  -->    code目录及内容的属主修改为sramedu,属组修改为sramedu

         //chgrp不做介绍,自己查阅相关资料

二、文件的权限操作

1、如何查看文件的权限

         ls –l                    

         rwxrx-r--                              -->权限类型

2、权限的分类

         r                                             -->    可读

         w                                           -->    可写

         x                                            -->    可执行

3、权限的分组

         u(属主)

         g(属组)

         o(其他)

4、如何修改权限

         chmod

         方式一:u,g,o,a               +,-,=

                   chmod u+x,g-x,o+r filename

                   chmod a+x filename

                   chmod u=rwx filename

:添加或减少权限,前后对比

         方式二:八进制方式

                   chmod 777 filename

                   chmod 644 filename

        

111 111 111

rwx rwx rwx

                  000 000 000    

         :将上次修改过的权限再改回来(当前权限为567,原权限为775

三、进程管理

1、什么是进程

         简言之就是进行中的程序

2、如何查看进程

         1ps指令

            ps                          -->    查看当前用户当前终端下的进程

            ps u                      -->    查看当前用户所有终端下的进程

                   ps au                 -->    查看所有用户所有终端下的进程

                   ps aux               --> 查看所有用户所有进程(包括没有控制终端的进程)

         2pstree

                   以树桩结构显示进程

                   init是所有进程的父进程

         3top

                   类似于winodws的任务管理器

:我们在终端下运行作者编写的小程序(每间隔3秒在终端上显示test!)

程序如下:

#include

int main(void)

{

        for(;;)

        {

                printf("test!\n");

                sleep(3);

        }

                return 0;

}

gcc编译生成a.out的可执行文件

步骤为:

a.       在某一文件夹下建立一个test.c文件并用vi编辑器打开    

b.       编写上述程序,保存并退出

c.       运行gcctest.c文件编译(通过作者的方法安装的redhat都具有gcc编译器),执行

gcc  test.c ,生成a.out可执行文件

d.       直接运行该可执行文件(a.out),命令:./a.out (之后每隔3秒,终端上显示test,使用ctrl^c可终止程序,ctrl^z挂起程序

e.       后台再打开一个终端,利用查看进程指令查看进程,如:ps u

可看到进程a.out

        

3、如何杀死进程

         kill                               -->    进程idPID,如:进程a.outid11769

         kill -9                          -->    进程id     ==>  保证杀死任何指定的进程

         pkill  pname          -->    用进程名杀死进程

:将进程a.out杀死

利用id杀死进程

        

利用进程名杀死进程

4、进程的前后台切换

         1)如何让一个进程后台运行

                   ./a.out &

                   即使在后台运行,输出也会输出到当前终端

         2)如何查看后台运行的进程

                   jobs(可以看到作业号)

         3)如何将一个后台进程切换到前台执行

                   fg  %作业号

    4)如何将一个前台进程切换到后台执行步骤:

                a.      ctrl^z                       -->    挂起(暂停)

                b.      jobs                      -->    查看作业号

                c.      bg  %作业号

5、计划任务

         crontab -e        调用VIM编辑器编写计划任务

         crontab -l         查看当前用户的计划任务

         crontab -r        删除计划任务

         编写计划任务的格式:

         分钟         小时                 星期         shell指令/shell脚本/可执行文件

         每个时间域可以使用 * 代表通配

         每个时间域可以使用 -, 比如“星期域”的1-5代表 1-5

         每个时间域可以使用 ',' 比如“星期域”的1,5代表 1和周5  1-2,4-5   12,周45

         每个时间域可以使用 */n 代表 n个单位.  分钟域的 */2 代表 每两分钟

例:使用crontab指令设置服务器周1-5每天晚上11:00关机(注:关机指令为powoff)

格式为:

0  23  *  *  1-5  powoff


助工
2013-05-19 18:51:10     打赏
3楼
还是那句话 支持! 80号来支持

菜鸟
2013-05-19 20:00:54     打赏
4楼
113号来支持一下。刚回来,希望能赶上

工程师
2013-05-19 20:15:45     打赏
5楼

使用数字来代表各个权限的对照:

r4

w2

x1

 


菜鸟
2013-05-19 20:17:28     打赏
6楼

下载pdf, ppt需要分。 先去赚分了

 


菜鸟
2013-05-19 20:35:08     打赏
7楼
又有新东西可以学了

专家
2013-05-19 22:16:01     打赏
8楼

对,和8421码很像,以后会用到很多这样的例子


工程师
2013-05-20 08:47:55     打赏
9楼
通过学习现在才知道su -这命令,通过创建用户明白了su和su-的区别,

菜鸟
2013-05-20 08:52:11     打赏
10楼
班长辛苦了,不好好学习,就对不起您!

共43条 1/5 1 2 3 4 5 ›| 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]