您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 第十四周实验用户和组的管理及常用命令的使用方法
第十四周实验新建用户和组、常用命令的使用方法一、实验目的1)掌握用户和组的创建,并查看用户和组的相关信息2)掌握shell常用命令的使用方法二、实验设备与环境1)装有UbuntuLinux系统的PC机或虚拟机三、实验内容(一)用户账户用户的账号信息是由/etc/passwd和/etc/shadow文件共同维护。可通过cat查看相关信息。后者查看需加sudo。(passwd文件保存的是用户的基本信息,shadow文件保存的是用户密码及权限信息,通过数字及字母的形式表达,如需具体含义,请用passwd+shadow作为关键词百度,会有相关信息出来)命令:$cat/etc/passwd假如不是超级管理员用户,在查看shadow文件时需加sudo$sudocat/etc/shadow*sudo表示的是以管理员的身份运行该命令1、使用useradd命令增加用户:useradd[-uuid][-ggroup][-dhome_dir][-sshell]username-uuid用于指定新增用户的用户ID,-ggroup用于指定一个现有用户组的用户组id或用户组名。-dhome_dir用于指定新增用户的主目录,-sshell用于指定命令解释程序shell的完整路径名。例子:useradddnn–u1005–groot–d/home/dnn说明:dnn为用户名;-u1005表示用户ID,尽量1000以上;-groot为设置为管理员组;–d/home/dnn表示用户目录路径;假如是非超级管理员用户,前面需加sudo;2、删除用户:userdel[-r]login-r意味着同时从系统中删除用户的主目录,包括其中的文件和子目录。3、修改密码:passwdusername实验操作:1).通过useradd命令新建以自己姓名开头字母为名称的普通用户,如:李小明,则用户名为:lxm.要求新建的用户所属root组,并查看用户的用户Id和shell类型。注意:切换命令为:su[用户名],如,sudnn。2).用chomod命令(参看chomod命令解释)修改root用户下的test.c(自行创建)文件的权限为700,然后试用上述新建用户访问test文件;重新再修改权限为750,然后试用上述新建用户访问test文件。对比上述两种操作结果。(如果用数字形式设置权限还不可访问,可通过字母形式设置,具体设置方法请查看chomod命令解释.TXT文件。)切换到新建用户后的命令提示符会变成只有一个$符号(一般命令提示符为“用户名@计算机名用户主目录$”,主要是在终端新建用户没有创建对应的配置文件,使得命令解释提示符为空,可通过echo$PS1命令进行查看。如需修改,可用linux+PS1百度,会出来对应资料。另:PS1为环境变量,在下面稍有介绍。(二)环境变量:输入printenv命令,查看当前linux的环境变量;输入echo$HOME等命令,查看环境变量的值;shell环境变量是所有shell程序都会接受的参数。shell程序运行时,都会接收一组变量,这组变量就是环境变量。常用的环境变量:名称描述PATH命令搜索路径,以冒号为分隔符.注意与DOS下不同的是,当前目录不在系统路径里HOME用户home目录的路径名,是cd命令的默认参数COLUMNS定义了命令编辑模式下可使用命令行的长度EDITOR默认的行编辑器VISUAL默认的可视编辑器FCEDIT命令fc使用的编辑器HISTFILE命令历史文件HISTSIZE命令历史文件中最多可包含的命令条数HISTFILESIZE命令历史文件中包含的最大行数IFS定义SHELL使用的分隔符LOGNAME用户登录名MAIL指向一个需要SHELL监视其修改时间的文件.当该文件修改后,SHELL将发消息Youhavamail给用户MAILCHECKSHELL检查MAIL文件的周期,单位是秒MAILPATH功能与MAIL类似.但可以用一组文件,以冒号分隔,每个文件后可跟一个问号和一条发向用户的消息SHELLSHELL的路径名TERM终端类型TMOUTSHELL自动退出的时间,单位为秒,若设为0则禁止SHELL自动退出PROMPT_COMMAND指定在主命令提示符前应执行的命令PS1主命令提示符PS2二级命令提示符,命令执行过程中要求输入数据时用PS3select的命令提示符PS4调试命令提示符MANPATH寻找手册页的路径,以冒号分隔LD_LIBRARY_PATH寻找库的路径,以冒号分隔(三)重定向输入输出:输入ls–l命令观察得出的结果。再在shell中输入:#lsls.out(按Enter)#catls.out观察得出的结果。请在shell中输入下列几行命令:#echo“Todayis”date.out#datedate.out#catdate.out看得到的结果是什么?与直接运行#date有什么不同?使用标记表示输出结果采用添加的方式,将结果附加在文件date.out后面,而不是简单的将原有文件重新覆盖的方式。注:键盘的快捷方式保存历史命令,可用↑和↓调出相应命令ctrl-c停止命令(四)进程1)、使用“&”启动后台进程使用“&”就装一个进程放到后台去进行。在shell提示符后面输入命令后,加上一个“&”就可以了。使用“&”来使程序在后台进行,适合于以下一些程序:该程序运行途中不需要用户的干预。将test1.c放在root目录下,在shell中输入:#gcc–oaaatest1.c#./aaa(发现要等好久才能得到结果)再运行一次:#./aaaresult.out&再输入:#ps(查看进程情况),jobs查看后台进程。当aaa运算完毕之后,可以通过resoult.out查看结果从上面的例子要了解后台进程的概念与运行情况。2)nohup命令如果希望你的进程在退出系统后还能执行,可以使用nohup命令如:#nohuptar-cf/dev/tape/home&logout退出后再重新登录的话,使用‘Ps'命令可以看到进程还在执行。(注意,要想把命令真正放到后台运行,nohup必须与&操作同时使用)3)ps命令ps命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是可以通过执行该命令得到的。ps[选项]∶-e显示所有进程。-f全格式。-h不显示标题。-l长格式。-w宽输出。-a显示终端上的所有进程,包括其他用户的进程。-r只显示正在运行的进程。-x显示没有控制终端的进程。最常用的三个参数是u、a、x.要求:运用不同的参数显视当前的进程情况(五)kill命令kill命令是通过向进程发送指定的信号来结束进程的。如果没有指定发送信号,那么默认值为TERM信号。TERM信号将终止所有不能捕获该信号的进程。至于那些可以捕获该信号的进程可能就需要使用kill(9)信号了,该信号是不能被捕捉的。kill命令的语法格式很简单,大致有以下两种方式∶1.kill[-s信号|-p][-a]进程号2.kill-l[信号]中断进程通常是使用:Ctrl+c组合键KillPID(Ctrl+Z将当前运行的程序放入到后台去运行。这也是另一种启动后去进程的方法)强制结束kill–9PID(kill–9可以杀死一个进程的所有子进程,不要轻易使用kill-9)
本文标题:第十四周实验用户和组的管理及常用命令的使用方法
链接地址:https://www.777doc.com/doc-2164695 .html