学习啦>学习电脑>操作系统>Linux教程>

Linux系统管理

admin分享

Linux属于多用户多任务的操作系统,可让不同的用户从本地登陆。在网络上则允许用户利用telnet、ssh等方式从远程登陆。无论是从本机或远程登陆,用户都必须在该台主机上拥有账号。
  本章会介绍管理员与一般用户帐号以及用户组对系统的管理和操作。
  第一部分 账号管理
  一、系统管理员账号与一般用户账号的差别
  Linux中的账号主要分成两类:系统管理员账号与一般用户账号。系统管理员账号名称为root,具有对系统完全的控制权,可以对系统做任何设置及修改,当然也可以决定哪些用户可以进入系统,并设置所有账号的权限。这两类账号的主要差别如下表:


  二、创建用户账号
  创建用户账号有许多种方法,可以一次创建一个账号,也可以一次建多个账号。
  使用useradd命令创建账号
  在Red HatLinux中执行useradd命令,可创建新的用户帐号:
  [root@free root]# useradd benny ←创建benny账号
  [root@free root]# passwd benny ←设置口令
  Changing password for user benny
  New password: ←输入口令
  Retype new password ←再输入一次
  Passwd:all authentication ←设置成功
  在一个系统中,用户的账号名称必须是唯一的,假若要创建的账号先被他人占用,这会出现用户已存在的信息:
  [root@free root]# useradd benny
  Useradd: user benny exists
  [root@free root]# useradd lambert
  Useradd: user lambert exists
  要解决用户账号的管理问题,需要依靠系统管理员本身。一般说来有3种方法:
  管理员自己根据用户的账号来创建一份数据库,以后在新增用户之前,都可以利用数据库先查询账号存在与否。
  检查/etc目录下的passwd文件,该文件内含本系统所有用户的账号,管理员可确认账号是否已经存在。
  执行finger“账号”命令,查看该账号是否存在。
  三、管理员账号
  安装完Linux之后,系统默认即创建了root账号。此账号为系统管理员,对系统拥有完全的控制权,可对系统做任何设置和修改,所以维护root账号的安全格外重要。
  1.设置root账号的口令
  在安装Linux过程中,即要求安装者为root账号设置口令。管理员可在日后更改甚至取消口令。不过,除非整个Linux系统只有自己使用,否则强烈建议替root账号设置一个不易被破译的口令。
  在x window下面单击主菜单,执行“系统设置/根命令”命令,在图形界面下比较直观与Windows大致雷同。


  图为:在图形界面下设置一般用户账号
  拥有root账号的系统管理员除了设置口令之外,建议先替自己创建一个一般的用户的账号,供日常操作使用,如此可避免因操作失误而影响整个系统。最好等到系统需要维护时,再使用root账号登陆。
  四,只允许root登陆的维护模式
  如果希望这台计算机除了root账号之外,其他账号都不得登陆时,可在/ect目录中执行touch nologin命令,产生一个文件名为nologin的文件,当其他用户要登陆时,系统只要发现此文件存在,就会禁止他们登陆:
  Red HatLinuxrelease 9 (Shrike)
  Kernel 2.4.20-8 on an 686
  free login benny ← 用benny账号登陆
  Password: ← 输入正确的口令
  Login incorrect ← 即使输入正确也会登陆失败
  login ← 重新返回到登陆界面
  这种状态通常用于管理员要维护系统时。若要再度恢复用户登陆,则只要将nologin文件删除即可。
  五,停用与删除用户账号
  当用户毕业、离职、或逾期不缴费时,可以考虑停用或删除用户账号,以避免这些用户继续登陆系统。
  1,停用账号
  将账号停用的意思是暂时不允许用户登陆系统,但仍然保留其数据。可编辑/ect/passwd文件,要把停止使用的账号标注起来:

 cassia:x:502:502::/home/cassia:/bin/bash
  #silent:x:600:100::/home/silent/bin/bash ←在账号最前面加上“#”
  2,删除账号
  当确定用户已不再需要使用本系统,或列为拒绝来往用户时,可以考虑将该账号完全删除。
  1,使用userdel命令或编辑passwd与shadow文件
  使用userdel命令可以很方便地将用户删除,范例如下:
  [root@free root]# userdel –r silent
  加上参数“-r”表示删除账号时,一并将该账号的用户的用户目录及邮件文件都删除。若不加“-r”参数,则只会删除而保留该账号的相关目录。
  当然也可编辑passwd和shadow文件,直接将账号删除,随后删除账号该账号的主目录与邮件目录。
  删除后台执行程序
  为避免用户还有程序遗留在系统中,请执行下列命令检查后台执行的程序,并把在后台中执行的程序删除:
  [root@free root]# ps aux   grep “silent”
  删除计时器
  此外还有一点相当重要,就是要将用户所设置的计时器去掉。在Linux系统中,用户可以自行设置计时器,时间一到就自动执行某些命令。这些计时器所执行的命令,有的可能会影响系统的安全与保密,因此必须特别注意用户所留下来的计时器。执行下列命令检查计时器:
  [root@free root]# crontab –u silent -1
  当发现用户自行设置的计时器还在系统中时,直接执行crontab –u silent –r 命令,便能删除该用户的计时器文件。
  六,创建组
  创建组的方法和创建账号几乎相同,且过程更简单。可执行groupadd命令来创建组。例如要创建GID编号700、名称为staff的组:
  [root@free root]# groupadd –g 700 staff ← 执行命令
  [root@free root]# more/etc/group ← 查看结果
  …
  Lambert:x:501
  Cassia:x:502
  Staff:x:700 ← 加进来了
  参数-g用来指定组标识符,0~499则留给系统使用。若省略此参数,系统会自动指定GID,使用从编号500开始尚未用掉的号码。
  七,删除组
  当不在需要某一个组时,可执行groupdel命令删除组(再删除某个组前,要执行find/-group组名称命令,检查系统中隶属于该组的目录及文件,并利用chown命令改变其所属组):
  [root@free root]#groupdel staff

11672