QQ在线服务: 风舞残阳风舞残阳 年满19岁年满19岁 小罗小罗 晴天晴天 心雨心雨 叮叮肉叮叮肉 小周小周 小童小童 小破孩小破孩 遥望当年遥望当年

用户导购指南

水货IBM笔记本电脑报价

行货IBM笔记本电脑报价

IBM服务器报价

IBM笔记本电脑配件报价

本周水货IBM笔记本电脑特价

IBM笔记本电脑驱动下载

水货IBM笔记本电脑验机流程

水货IBM笔记本电脑保修政策

IBM笔记本电脑FRU查询

IBM笔记本电脑常见问题

IBM笔记本电脑使用手册

笔记本电脑验机软件

论坛积分使用说明

水货IBM笔记本电脑异地购机流程

笔记本电脑购机经历及现场

贵宾申请入口

贵宾用户FTP入口

查看笔记本配置

水货APPLE苹果笔记本电脑报价

 
发新话题
打印

[linux教程] Linux管理员手册(6)--登录和注销

Linux管理员手册(6)--登录和注销

说明当一个用户登录和注销时发生了什么。较详细地说明后台进程的各种交互、log文件、配置文件等% a+ Z9 e: z5 k) b0 i- b
  通过终端登录
' @* `# R' b: M  ]" K& P8 j  首先,init确认有一个getty程序提供给终端连接(或控制台)。getty侦听终端等候用户告知它要登录(这通常意味着用户必然键入些什么)。当它注意到一个用户,getty输出一个欢迎信息(存在/etc/issue中),并提示用户名,最后运行login程序。login作为一个参数得到用户名,并提示用户输入口令。如果正确,login启动给此用户设置的shell;否则退出并终止进程(可能在再给用户一个机会输入用户名和口令之后)。init注意到进程终止,就给这个终端启动一个新的getty。
/ }( U: ^! [8 n! C* i) x
2 |* W4 N) }/ r! R% P' c( o2 \" z' c  注意唯一的新进程是由init产生的(用fork系统调用);getty和login只是替代进程运行的程序(使用exec系统调用)。
; ^/ |  u1 O. C7 u3 W. d  为注意用户,串行线需要一个单独的程序,因为终端活动时可以(传统上也是)变得复杂。getty也适应连接的速度和其他设置,这对拨号连接特别重要,因为连接和连接的参数可能不同。
' l8 V3 y' p+ B[color=#FFFFFF']
' D/ W7 v7 W* r/ A
7 z+ S1 z% d7 v& Y2 A4 g% R6 y8 T  getty和init有多个版本在使用,各有优缺点。学习你的系统的版本也了解其他版本是个好主意(你可以用LinuxSoftwareMap来找。)如果你没有拨入,可能不必考虑getty,但init仍然很重要。- D! I3 J" E  V5 x3 y7 g- j. z
  通过网络登录
1 W: F  Q; R- K, _: d3 Q  一个网络中的2台计算机通常通过一个物理电缆连接。当他们通过网络通信是,参与通信的每个计算机里的程序通过虚拟连接virtualconnection通信,即一些虚构的电缆。虚拟连接的每端的程序,独占自己的(虚拟)电缆。然而,因为这电缆不是真的,只是虚构的,所有计算机的操作系统可以在同一物理电缆上有多条虚拟连接。这样,只用一条电缆,多个程序可以不必考虑其他通信而相互通信。使用同一电缆使多台计算机是可能的;2台计算机间存在的虚拟连接,其他计算机会忽略他们不参加的连接。
( b; k! u( I5 F! ]/ o[color=#FFFFFF']
' H# F9 V$ W, e4 z! r  ^) O$ `5 L+ Z- G7 P3 m* d, o7 u
  那是一个复杂和抽象的真实描述。但可能足够理解网络登录与普通登录的不同的重要原因。不同计算机上的2个程序要通信时,虚拟连接建立。由于理论上可能从网络上的任何一台计算机登录到任何一台计算机,因此可能有极大数量的潜在的虚拟通讯。因此,为每个潜在的login启动一个getty是不现实的。% d8 U' F( c3 G$ Z: U, x( I! j
  有一个进程inetd(与getty协同)处理所有的网络登录。当它发现一个进来的网络登录(即发现某台其他计算机来的新的虚拟连接),它启动一个新进程来处理那个登录。原来的进程继续侦听新的登录。
* H5 F# Q+ y( [! G" A. x  更复杂的是,网络登录有多个通讯协议。2个最重要的协议是telnet和rlogin。除了登录,还有许多其他虚拟连接可能建立(为FTPGopher、HTTP和其他网络服务)。为要侦听的每种型的连接提供一个进程不是很有效,因此,只用一个侦听器来识别连接的种类,能启动正确的程序来提供服务。这个侦听器叫inetd;更多的信息请见《Linux网络管理指南》。! @9 @9 K- ^+ S- q* s) C
  login干了些什么' s" n1 N8 l  v% m
  login程序负责认证用户(确认用户名和口令相配),并建立串行线,启动shell,建立用户的初始环境
1 ~, R) O  X% ]7 g- l2 O  部分初始化设置是输出文件/etc/motd(每天的短信息)的内容,并检查电子邮件。可以在用户家目录中产生一个叫.hushlogin的文件来是上面所述的失效。
; V" l, H- I9 a% o  如果存在文件/etc/nologin,就不允许登录。这个文件一般由shutdown及其相关的东西产生。login检查这个文件,如果这个文件存在,就拒绝接受登录。如果这个文件确实存在,login就会在退出之前,将它的内容输出到终端。
% t  a* S  R# O  f! m  login将所有失败的登录企图登记在系统log文件中(通过syslog)。它也登记所有的root的登录。这些都对跟踪入侵者有用。
+ l2 z9 X/ d- [, q* y[color=#FFFFFF']
2 U4 j# F* E" F0 d' j/ Z0 d7 n' _9 n  ^6 P) S' N' K
  当前登录着的用户列在/var/run/utmp中。这个文件直到系统下次启动或关机前有效。系统刚启动时它被清空。它列出了每个用户和用户使用的终端(或网络连接),及一些有用的信息。who、w及其他类似的命令查看utmp文件得到都有谁登录着。
, p( K# i7 D/ X; H6 L  W  所有成功的登录记录在/var/log/wtmp中。这个文件将无限制地增大,所以必须有规律的清除,例如有个每周的cron任务来清除它。last命令浏览wtmp文件。
$ q  W$ n3 W2 }, @; ?. u  utmp和wtmp都是二进制格式(见utmp的man页);不幸的是,没有特殊的程序无法查看它们。+ H8 J6 n- n) U3 M- f
  X和xdm! ]1 P! w+ r" `' u
  META:Ximplementsloginsviaxdm;also:xterm-ls6 [  q7 j+ l# d. {5 M) S
  存取控制
8 \+ c5 K3 _' e  [* S[color=#FFFFFF']
' {  N1 \" |$ G3 ?9 N' V
; i0 I7 t3 R2 ^% C- r  用户数据传统上包含在/etc/passwd文件中。有些系统使用影子口令shadowpasswords,并把口令移到/etc/shadow中。许多计算机的场所可以用NIS或其他存储用户数据库的方法共享帐户;它们可能也自动从中心位置复制数据库到所有其他计算机。$ ^) b+ q& ?/ `9 Y3 H4 N4 Q2 c
  用户数据库不仅包含口令,还包括有用户的其他信息,比如其真实姓名、家目录、登录shell等。这其他信息需要公用,使所有人都能读。因此口令是加密保存的。这有缺点,任何人取得加密的口令,可以用不同的加密方法猜试口令,而不用试着真正登录到计算机。影子口令试图用把口令移动到其他文件的办法避免这种情况,只有root能读(口令还是加密保存的)。However,installingshadowpasswordslaterontoasystemthatdidnotsupportthemcanbedifficult.4 Q0 w) ]* f1 H
[color=#FFFFFF']
1 S! T( A, ]2 _1 ?7 |5 h& L: J- Z3 `5 U
- ?; G# k, B" r9 m  不管有没有口令,确认系统中的所有口令是好的是很重要的,即不易猜。crack程序可用于破解口令;任何可以精确地找到的口令都不是好的口令。同时crack可以为入侵者运行,也可由系统管理员运行以避免坏的口令。好的口令也可以被passwd程序强制实现;这样对CPU周期来说很有效,因为破解口令需要许多计算。, n* ^2 u) P( [; ?( |& ]4 \
  用户组数据库保存在/etc/group文件中;有影子口令的系统,是/etc/shadow.group。( q- \; H; P+ \: Z
  root通常不能通过更多的终端或网络登录,只能通过列在/etc/securetty文件中的终端登录。这使得必须能够物理存取这其中的一个终端。当然也可能通过任何终端用任何拥护登录,然后使用su命令变成root。
" H5 X: I& v) ?. n) j[color=#FFFFFF']
+ o0 ~1 i/ L4 R" I( w3 n3 j& u
& w5 i/ {% l9 w3 D* {9 h  Shell启动
9 Q3 V) l$ K+ }, s* U  当一个交互的登录shell启动时,它自动执行一个或更多预定义的文件。不同的shell执行不同的文件;更多的信息见每个shell的文档。' Y4 n# }: \3 l' l% {9 N1 x/ [
  多数shell首先运行一些全局文件,例如,Bourneshell(/bin/sh)和它引出执行的/etc/profile;另外,它们执行用户家目录中的.profile。/etc/profile允许系统管理员建立一个公用的用户环境,特别是建立PATH,以包括本地命令目录。另外,.profile允许用户通过覆盖按照自己的口味客户化环境,如果必要,使用确省环境。
(※本文搜集自:重庆未来科技 http://www.wlkj.net 重庆IBM笔记本电脑、重庆IBM水货笔记本电脑、重庆苹果笔记本电脑、重庆IBM服务器专卖)

TOP

******请登陆论坛查看内容******

(※本文搜集自:重庆未来科技 http://www.wlkj.net 重庆IBM笔记本电脑、重庆IBM水货笔记本电脑、重庆苹果笔记本电脑、重庆IBM服务器专卖)
这是赤果果的灌水呐
What good would wings be
if you couldn't feel wind on your face

TOP

发新话题