一、 描述计算机的组成及其功能
计算机主机包括:运算器,控制器,存储器,输入设备,输出设备
1、运算器:功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。
2、控制器:运算器的功能是对数据进行各种算术运算和逻辑运算,即对从控制器取来的数据进行加工处理。
3、存储器:存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。
4、输入设备:输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。
5、输出设备:输出设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输出。
二、 Linux的发行版本
Linux的发行版本可以大体分为两类:
① 一类是商业公司维护的发行版本(以Redhat(RHEL)为代表)
② 一类是社区组织维护的发行版本(以Debian为代表)
Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise Linux,收费版本)、Fedora(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆版本,免费)。这个版本的特点就是使用人群数量大,资料非常多,而且网上的一般Linux教程都是以Redhat为例来讲解的。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用,但是Fedora的稳定性较差,最好只用于桌面应用。
Debian,或者称Debian系列,包括Debian和Ubuntu等。Debian是社区类Linux的典范,是迄今为止最遵循GNU规范的Linux系统。Debian最具特色的是apt-get /dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发行方式中,APT应该是最好的了。Debian的资料也很丰富,有很多支持的社区,有问题求教也有地方可去。
Gentoo,伟大的Gentoo是Linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点,这也是Gentoo被称为最完美的Linux发行版本的原因之一。Gentoo拥有媲美FreeBSD的广受美誉的ports系统——Portage包管理系统。不同于APT和YUM等二进制文件分发的包管理系统,Portage是基于源代码分发的,必须编译后才能运行,对于大型软件而言比较慢,不过正因为所有软件都是在本地机器编译的,在经过各种定制的编译参数优化后,能将机器的硬件性能发挥到极致。Gentoo是所有Linux发行版本里安装最复杂的,但是又是安装完成后最便于管理的版本,也是在相同硬件环境下运行最快的版本。
FreeBSD,需要强调的是:FreeBSD并不是一个Linux系统!但FreeBSD与Linux的用户群有相当一部分是重合的,二者支持的硬件环境也比较一致,所采用的软件也比较类似。FreeBSD采用Ports包管理系统,与Gentoo类似,基于源代码分发,必须在本地机器编后后才能运行,但是Ports系统没有Portage系统使用简便,使用起来稍微复杂一些。FreeBSD的最大特点就是稳定和高效,是作为服务器操作系统的最佳选择,但对硬件的支持没有Linux完备,所以并不适合作为桌面系统。
三、Linux哲学思想
1、一切皆文件;
2、单一目的的小程序;
3、组合小程序完成复杂任务;
4、文本文件保存配置信息;
5、尽量避免捕获用户接口;
6、提供机制,而非策略。
四、linux系统上命令的使用格式
[root@redhat6 ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:B5:6A:B1
inet addr:192.168.1.6 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feb5:6ab1/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2551972 errors:0 dropped:0 overruns:0 frame:0
TX packets:13904 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:194300672 (185.2 MiB) TX bytes:1456897 (1.3 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1596 errors:0 dropped:0 overruns:0 frame:0
TX packets:1596 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:241656 (235.9 KiB) TX bytes:241656 (235.9 KiB)
[root@redhat6 ~]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0C:29:B5:6A:B1
inet addr:192.168.1.6 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feb5:6ab1/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2552032 errors:0 dropped:0 overruns:0 frame:0
TX packets:13944 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:194305928 (185.3 MiB) TX bytes:1461965 (1.3 MiB)
[root@redhat6 ~]# ifconfig eth0 up
[root@redhat6 ~]# ifconfig eth0 down
[root@redhat6 ~]# ifconfig eth0 192.168.1.10
[root@redhat6 ~]# ifconfig eth0 192.168.1.10 netmask 255.255.255.0
[root@redhat6 ~]# echo "hello world"
hello world
[root@redhat6 ~]# echo -n "hello world"
hello world[root@redhat6 ~]#
[root@redhat6 ~]# echo -e 'hello\t world'
hello world
[root@redhat6 ~]# echo -e 'hello\n world'
hello
world
[root@redhat6 ~]# pwd
/root
[root@redhat6 ~]# export
declare -x CLASSPATH=".:/usr/java/jre1.7.0_67/jre/lib/rt.jar:/usr/java/jre1.7.0_67/lib/dt.jar:/usr/java/jre1.7.0_67/lib/tools.jar"
declare -x CVS_RSH="ssh"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="redhat6"
declare -x JAVA_HOME="/usr/java/jre1.7.0_67"
declare -x LANG="en_US.UTF-8"
declare -x LESSOPEN="|/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.tbz=01;31:*.tbz2=01;31:*.bz=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD
declare -x PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/java/jre1.7.0_67/bin:/root/bin"
declare -x PWD="/root"
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_CLIENT="192.168.1.4 56041 22"
declare -x SSH_CONNECTION="192.168.1.4 56041 192.168.1.5 22"
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="xterm"
declare -x USER="root"
[root@redhat6 ~]# tty
/dev/pts/0
[root@redhat6 ~]# shutdown –help
Usage: shutdown [OPTION]… TIME [MESSAGE]
Bring the system down.
Options:
-r reboot after shutdown
-h halt or power off after shutdown
-H halt after shutdown (implies -h)
-P power off after shutdown (implies -h)
-c cancel a running shutdown
-k only send warnings, don't shutdown
-q, –quiet reduce output to errors only
-v, –verbose increase output to include informational messages
–help display this help and exit
–version output version information and exit
hwclock -s 系统时钟变更为硬件时钟
hwclock -w 硬件时钟变更为系统时钟
date +%D 当前日期
+%F 当前日期
+%Y 年份(四位数)
+%y 年份(两位数)
+%M 分钟
+%m 月份
五、在linux系统上获取命令的帮助信息,并描述man文档章节的划分方式
1、内部命令:
# help COMMAND
2、外部命令:
(1) # COMMAND –help
# COMMAND -h
(2) 使用手册(manual)
# man COMMAND
(3) 信息页
# info COMMAN
Man命令
代号 |
代表內容 |
1 |
使用者可以操作的指令或可执行档 |
2 |
系统核心可呼叫的函数与工具等 |
3 |
一些常用的函数(function)与函式库(library) |
4 |
装置档案的说明 |
5 |
设定档或者是某些档案的格式 |
6 |
游戏(games) |
7 |
惯例与协定等,例如 Linux 标准档案系统、 网络协定、ASCII code 等等的说明内容 |
8 |
系统管理员可用的管理指令 |
9 |
跟 kernel 有关的文件 |
1. Executable programs or shell commands
2. System calls (functions provided by the kernel)
3. Library calls (functions within program libraries)
4. Special files (usually found in /dev)
5. File formats and conventions eg /etc/passwd
6. Games
7. Miscellaneous (including macro packages and conven-tions), e.g. man(7), groff(7)
8. System administration commands (usually only for root)
9. Kernel routines [Non standard]
代号 |
内容说明 |
NAME |
简短的指令、资料名称说明 |
SYNOPSIS |
简短的指令下达语法(syntax)简介 |
DESCRIPTION |
较为完整的说明,这部分最好仔细看看! |
OPTIONS |
针对 SYNOPSIS 部分中,有列举的所有可用的参数说明 |
COMMANDS |
当这个程序(软件)在执行的时候,可以在此程序(软件)中下达的指令 |
FILES |
这个程序或资料所使用或参考或连结到的某些档案 |
SEE ALSO |
可以参考的,跟这个指令或资料有相关的其他说明! |
EXAMPLE |
一些可以参考的范例 |
BUGS |
是否有相关的臭虫! |
在man page中才可以使用
按键 |
进行工作 |
空白键 |
向下翻一页 |
[Page Down] |
向下翻一页 |
[Page Up] |
向上翻一页 |
[Home] |
去到第一页 |
[End] |
去到最后一页 |
/string |
向『下』搜寻 string 这个字符串,如果要搜寻 vbird 的话,就输入 /vbird |
?string |
向『上』搜寻 string 这个字符串 |
n, N |
利用 / 或 ? 来搜寻字符串时,可以用 n 来继续下一个搜寻 (不论是 / 或 ?) ,可以利用 N 来进行『反向』搜寻。举例来说,我以 /vbird 搜寻 vbird 字符串, 那么可以 n 继续往下查询,用 N 往上查询。若以 ?vbird 向上查询 vbird 字符串, 那我可以用 n 继续『向上』查询,用 N 反向查询。 |
q |
结束这次的 man page |
六、Linux发行版的基础目录名称命名法则及功用规定
/bin 二进制可执行命令
/dev 设备特殊文件
/etc 系统管理和配置文件
/etc/rc.d 启动的配置文件和脚本
/home 用户主目录的基点,比如用户user的主目、录就是/home/user,可以用~user表示
/lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件
/sbin 系统管理命令,这里存放的是系统管理员使用的管理程序
/tmp 公用的临时文件存储点
/root 系统管理员的主目录(呵呵,特权阶级)
/mnt 系统提供这个目录是让用户临时挂载其他的文件系统。
/lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里
/proc 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/var 某些大文件的溢出区,比方说各种服务的日志文件
/usr 最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含:
/usr/X11R6 存放X window的目录
/usr/bin 众多的应用程序
/usr/sbin 超级用户的一些管理程序
/usr/doc linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib 常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里
/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的库
原创文章,作者:Lionel,如若转载,请注明出处:http://www.178linux.com/23410
评论列表(1条)
写的很好,排版还可以在漂亮一点,加油