QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3462|回复: 1
打印 上一主题 下一主题

linux的基本操作(上)

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-4 05:32 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
摘要
  M1 S* v" x' {/ v) R' y讲解如何对这个系统进行基本的操作
- q1 J" q% \6 r! K: ]; V/ JBy Wing, 出处:Linuxaid
! R0 }7 N# N/ O$ I; l* p$ i- E( Q& C7 B# S: \$ H
3 m3 }8 F1 j3 t
<>  经过前面三个专题的学习,我们的linux系统终于能够使用了。下面,就由我来讲解如何对这个系统进行基本的操作。首先的问题,当然是我们如何进入它了:)。</P>7 u) z7 c7 \# ?3 k
<><B>1、用户的登录、注销与关机</B></P>
% Y5 |: M3 K7 P<>  摁下电源开关,屏幕上刷刷闪过一串串启动内容的文字提示,是不是感觉有点兴奋?如果这是你的linux第一次启动,那么在服务启动的一串绿色的"[OK]",突然出现一个红色的false,仔细一看好象是一个叫httpd的服务。不要害怕,这个问题我们在以后的学习中会得到解决。最后,系统显示:</P>4 a/ l& E1 `* t' Y7 z/ M* v6 h
linux login:: z  \2 A7 f; M7 }/ v4 o. k5 z  v$ X7 r; X
<>  作为系统管理员,第一次进入系统当然要以超级用户的身份进入,和NT中Administrators身份对应的linux帐号是root(这也是一般类UNIX系统中常见的系统管理员身份)。在login:后面输入“root”,然后回车,系统提示:</P>
, Z3 ]( h. T. f! [4 a, ^Password:; @4 i# j9 c4 H* P0 A9 \# M- q6 ~
<>  输入当初在安装的时候选择的系统管理员密码。你也许会奇怪,系统为什么不显示“*”号来提示你已经输入,好象什么也没有输入,光标还在原处闪烁。其实,你已经输入了你的密码,之所以采用这种不回显的技术,也是出于安全考虑——减少周围的人知道您密码位数的概率,而降低您密码被很快破解的可能性。按照你心里想的输入密码,然后直接回车,OK,成功登录,系统提示:</P>
6 i8 [% q- m5 r# e; N" s [root@linux /root]#3 j' F- T0 ~! s% B  e( Q$ E0 q
<>  符号“@”前面的自然是你的帐号身份,之后的是主机名,可能根据你的主机的名称不同而不同。/root是你的主目录,它既是你的个人配置文件所在的地方,也是你每次登录后所在的目录,是你受到系统保护的私人领地——当然,前提是只有你自己拥有root权限:)。</P>* q9 d; ^  ^6 j
<>  和NT不同的是,作为多用户多任务操作系统,linux在同一台主机的本地就提供了6个虚拟控制台,分别为tty1至tty6。虚拟控制提供了linux在字符模式下同时运行几个程序的方法,实现了多任务处理。这六个虚拟控制台可以通过组合键Alt+F1,Alt+F2,……,Alt+F6来进行切换。每一个控制台都可以看作一个完全和独立的工作站。系统启动的缺省控制台为tty1。从一个控制台切换到新的虚拟控制台以后,linux也会先显示登录提示符,就象第一次登录一样。在装入另一个命令解释器之前,也会询问用户名和口令。所以,我们可以在不同的控制台以不同的用户身份登录,更方便了用特定的身份执行特定的操作。当用户从一个虚拟控制台切换到一个新的虚拟控制台以后,在原来那个控制台运行的程序将继续运行。</P>
9 e5 v" `' g; X4 `5 ~" F0 p<>  我们可以来做个小小的实验,在第一个登录的控制台(tty1)输入命令ping 127.0.0.1,这时可以看见类似windows下ping本地的输出,紧接着Alt+F2切换到第二个虚拟控制台,登录以后,使用命令ps aux|grep ping(关于这个命令,将在第五个专题的进程管理中详细说明,它的功能是显示运行中的程序中包含ping串的部分),我们可以看见两行输出,一行表示ping在运行中,一行表示你的这个查询在查询的时候也在运行:)。然后我们再用Alt+F1切换到第一个虚拟控制台,可以看见ping命令还在不停的输出——在你离开这一会,它都已经刷了好几屏了,用Ctrl+D来结束它吧。非常清楚,ping命令在我们离开控制台一的时候也并没有被挂起,而一直在执行中。</P>
' `6 }+ B5 K" M% j0 u6 T8 s<>  在同一个控制台中,我们不用先注销也是可以改变我们的系统身份的,这可以用命令su实现。使用方法是:</P>
! k6 v; e5 ^! e, m  ]: U9 ] [root@linux /root]#su username
1 I1 F/ y. @8 u<>  命令行中的username是你给su的参数,例如你想改变自己的身份为bluewind(前提是您已经添加了这个系统用户,操作方法可以参考《搞清linux的用户和组-基础篇》),那么你可以使用su bluewind命令。如果你是从root身份su的话,不用输入password。而从其它身份则系统会提示输入密码的。简单的敲入su不带任何参数的话,缺省的认为你想成为root用户身份。</P>
- K7 ^! X9 ]9 k$ x, }8 f$ L<>  用户退出登录有两种方法,一种是exit命令——这个命令一般的系统都会提供,一种是logout——有些系统如果提供了exit就不再提供这个命令了,例如redhat 7.0。执行的结果是回到上次转换身份前的用户状态。例如,你先用root登录,再su为bluewind,然后你执行exit,就回到了root身份,再执行exit,连root也退出了,回到登录提示符的状态。</P>
8 S' t' C3 H1 ~) f- h) ?0 X9 j<>  通过telnet登录系统和通过本地虚拟控制台登录很相似,只是出于安全性考虑,系统不允许直接用root身份通过telnet登录,你可以先用一个普通身份登录以后再su成root——如果有必要的话。</P>
$ S8 E  _" {7 h6 [* \4 W" @<>  linux提供了三种关掉系统的方式:shutdown、halt和reboot。这三个命令在一般情况下只有系统的超级用户(一般都是指root,但不全是)才可以执行。输入没有参数的shutdown命令,2分钟之后即可关闭系统。在这段时间,linux将提示所有已经登录系统的用户。如果需要设定等待的时间,可以使用如下的选项:</P>
! O3 O8 K7 C$ w: I
$ H% F# O6 f* u; q5 O  M   ○now:立即。( s* O+ ?5 T+ w" c5 R! c  |7 `
   ○+mins:在指定的分钟之后% G( P, @, f4 g, |1 x7 X2 T
   ○hh:ss:在指定的时间。
! T% V2 f  a1 K) A2 J' j' |3 K1 `
# D' Y$ r6 b$ M: `  [$ {" j<>  在关掉系统之前,系统会自动产生一个/etc/nologin文件,用于说明系统即将关闭,用户不能登录进入。在这段时间中,只有系统管理员可以进入。如果你需要获得有关shutdown命令的更详细的帮助,可以使用man shutdown命令。</P>
) ]) P$ z5 {* [5 T/ W) I1 e<>  halt命令相当于shutdown -h now ,表示立刻关机。</P>
, c6 k1 g9 M+ J( o8 \8 x+ [<>  reboot命令相当于shutown -r now ,表示立刻重起。</P>
7 d  W; s$ x8 q' O; [2 I: |<><B>2、Shell的使用</B></P># M$ c. C' R4 {9 i/ h
<>  如果你熟悉DOS的话,你可以用dos中的command.com程序来帮助理解shell。它可以被认为是一种简化的shell。shell是用户和linux之间的接口,用户输入的每个命令都是由shell先解释,然后再传给linux内核的。有些命令是shell内建的,就好象dos的内部命令,例如显示当前工作路径命令pwd就是bash内部的;其它命令如同dos的外部命令是自己单独的程序。</P>
2 I2 ~5 c- @; O  C1 ~<>  shell的另外一个重要特性就是,它自身就是一个解释型程序设计语言。shell程序设计支持在高级语言里能够见到的绝大多数程序控制结构,关于这个,能够单独写一本书^_^。我们还是回到正题,不过我们可以知道,shell命令完全可以完成在dos中象bat程序一样的功能,而且更强、更方便、更随和——随便写一个命令列表的文本文件,指定一个shell执行它或者把它的属性改为可执行后直接运行就可以了。</P>
0 J+ T, k. v8 @; k/ s( w<>  shell在用户成功的登录系统后启动,并始终作为与系统内核交互的手段,直至退出系统。</P>
0 p0 L% P5 s" P0 ]0 @<><B>◆常用的shell</B></P>
$ b+ a/ O- [. J7 W0 y3 l<>  在linux系统里,可以使用多种不同类型的shell。一般来说,在/etc目录下会有个shells文件,该文件是目前系统中可用的shell类型列表。一般包括如下几行:</P>
' D# ^/ n/ ]/ `3 n# f$ u! p% g; F% o+ q# B/ H0 A/ n
/bin/bash
0 a  C3 [: V; I4 N4 B5 L9 l/bin/sh8 x3 o3 E1 c& `3 c+ n: M) S
/bin/ash8 ?$ ~- w( P+ [2 c
/bin/bsh
' e  ?) [% n7 v9 {+ A: k" z/bin/tcsh
8 y2 T' ?9 ]1 V3 _7 h) D! C/bin/csh  d% v, [1 `: N+ ?- |7 ?, @4 J' i

) ?& Y- \6 ]9 @* Y* \% i<>  而最常用的主要是Bourne shell(sh),C shell(csh)和Bourne Again Shell(bash)三种。</P>! N$ {" }3 ^: J+ i: ^" T
<>  sh是UNIX最初使用的shell,并且在每一种UNIX上都可以使用。它在编程方面非常优秀,但和用户的交互却比较逊。</P>+ h( D5 s' ~: z3 Q3 L
<>  csh更多的考虑了界面的友好性,但普遍的认为C Shell的编程接口不如sh。由于它的编程语法和c比较相近,所以它还是被许多C程序员所使用。</P>7 A$ B% z+ J# K$ t" c# W
<>  bash是sh的扩展,并与sh完全兼容,并在吸取c和kon shell的优点的基础上对sh增加了和增强了很多特性。它是大多数linux系统中默认的shell。下面我们将主要介绍bash的简单使用。</P>3 w2 Q$ \% |9 `& ]9 c3 W
<>  bash的环境变量的设置主要是在/etc/profile文件里,每个用户还可以在自己的主目录(刚登录系统后的当前路径)中的.bash_profile文件中定义自己的个人环境变量。注意,以点“.”开头的文件在linux中是隐藏文件,使用ls的-a参数才能看见它们的存在。</P>
  S/ L$ V! t/ K7 C# g9 m<>  我们比较关心的可能是这样的一行</P>! x' u5 y8 x. @. F2 {
PATH="$PATH:/usr/X11R6/bin:/usr/sbin/:./"  ]0 y  ^" R- {3 _; _$ e- Q
<>  通过下边的export语句,这一句就象dos中设置path路径一样,所不同的主要有以下三点:</P>$ m" d6 y% _- P8 @0 S
<>  a、形式上用冒号分隔各个路径单元,不象dos是用分号分隔;</P>" k, W2 ^% X; o/ G# s
<P>  b、内容上可以使用$PATH代替这个赋值等式前的路径设置(注意,linux是区分大小写的);</P>
. ~- e4 l  a$ a$ p5 @<P>  c、效果上这个路径决定了bash查找的绝对范围,不要认为bash会象dos自动先查找当前路径,除非你在PATH中进行了设置。</P>
4 T7 K! k) N% U+ K7 x5 `4 e: g<P>  你可以使用echo $PATH来显示自己的当前PATH设置。</P>1 b/ Q: C% E: K* h
<P>  关于bash更详细的帮助可以通过man bash命令获得。</P>
9 v' l2 n$ C$ Z$ z* E$ _3 ?<P>  修改用户缺省shell设置可以参考《搞清linux的用户和组-基础篇》的有关内容。</P>
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
yunwuya        

0

主题

2

听众

75

积分

升级  73.68%

该用户从未签到

新人进步奖

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-4-20 13:33 , Processed in 0.433960 second(s), 57 queries .

回顶部