一.计算机发展历史及硬件组成部分
计算机发展历史:第一代:(1946-1957)电子管时代,第二代:(1958-1964)晶体管时代,
第三代:(1965-1970)集成电路时代,第四代:(1971以后)大规模集成电路时代。
计算机硬件组成部分:
运算器:执行各种运算和逻辑运算的操作部件。
控制器:制逻辑单元的核心组件。
输出设备:输出计算机的处理结果。
输入设备:把原始数据和处理这些数据的程序通过输入接口输入到计算机的存储器中。
存储器:
内部存储器:用于存放计算机当前正在运行的程序、数据等;内部存储还分为随机存取存储器RAM和只读存储器ROM。
外部存储器:用于存放大量不参加计算机运算和处理的程序,数据等。
高速缓冲存储器:CPU与内存交换数据的缓冲区,是为了解决内存与CPU速度不匹配问题而设计的存储设备
二.服务器硬件组成部分,操作系统以及linux发行版本
服务器Server是计算机的一种,是网络中为客户端计算机提供各种服务高性能的计算机。服务器在网络操作系统的控制下,将硬盘,磁带,打印机等转中网络设备给网络上的客户站点共享,也能为网络用户提供集中计算,信息发布及数据管理等。
服务器按应用功能可分为:Web服务器,数据库服务器,日志服务器,文件服务器等等。
服务器按外形分类:塔式服务器,机架式服务器(高度以U为计算单位,1U=1.75英寸=44.45毫米),刀片式服务器。
服务器硬件组成部分:
cpu英文缩写(central Peocessing Unit),又叫中央处理器,有控制器和运算器组成,cpu主流类型:x86。
主板:(mainboard),系统板(systemboard)或母板(motherboard)是计算机最基本的也是最重要的部件之一。
内存:内存是介于cpu和外部存储之间,cpu对外部存储中程序和数据进行高速运算时存放程序指令,数据和中间结果的空间,物理实质就是一组具备数据输入输出和数据存储功能的高速集成电路。内存是cpu能直接寻址的存储空间,存取速度快。
硬盘:物理存储的介质
电源:支持服务器的电力负载
风扇:散热
显卡:GPU(Graphic processing Unit)图形处理器
Pci:扩展槽
热插拔:又叫热交换技术(HotSwap)允许不关机的状态下更换有故障支持热插拔技术的设备,热插拔一硬盘技术和Raid技术配合可以使服务器在不关机的状态下恢复故障硬盘上的数据,并不影响网络用户对数据的使用。
服务器三大操作系统:windows,linux,Unix(System,BSD)
linux发行版本:slackware,debian,redhat(rhel,CentOS,中标麒麟,fedrea)Archlinux,Gentoo,LFS,Android
DAS(Direct Attached Storage)直接连接存储,存储设备与主机紧密相连。
NAS(Network Attached Storage)网络连接存储,通过局域网在多个文件服务器之间实现了互联,基于文件的协议。
SAN(Storage Area Networks)存储区间网络,利用告诉的光纤网络链接服务器和存储设备,基于SCSI,IP,ATM等多种高级协议,实现存储共享
三、linux哲学原理
一切皆文件,包括硬件也能以文件的形式显示出来。
有众多单一目的的小程序组成,一个程序完成一个功能。
链接一个个小程序,组合起来完成复杂的任务。
避免令人困惑的用户界面。
配置数据存储在文本里。
四、linux基础
管理员用户:# 一个特殊的管理用户,也叫超级用户,对系统损害几乎有无限的能力。
管理员用户全靠uid来判断,uid为0,就是管理员。
[root@English6 ~]# id root uid=0(root) gid=0(root) groups=0(root) 由此可见,root用户uid为0,所以root为管理员用户。
普通用户:$ 权限有限,对系统草成伤害的能力有限。
终端:
物理终端:对应/dev/console 直接接入本机的显示器和键盘设备。
虚拟终端:对应/dev/pts 附加在物理终端上以软件方式虚拟实现的终端。
交互式接口:启动终端后,在终端设备上附加一个交互式应用程序。分为GUI和CLI两种。
查看当前的终端设备:tty
[root@English6 ~]# tty /dev/pts/1
Shell:linux命令解释器,接收用户输入的命令把它送入内核执行;shell也是一种编程语言.
bash shell:linux标准的shell。
显示当前实用的shell:echo $shell
[root@English6 ~]# echo $SHELL /bin/bash
显示当前系统使用所有shell:cat /etc/shells
[root@English6 ~]# cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh
执行命令:输入命令,用回车键发送,在shell程序中找到输入命令所对应的可执行程序或代码,并由其分析提交给内核分配资源将其运行起来。
shell中可执行的命令有两种:
内部命令:shell自带的命令,通过某命令形式提供。
外部命令:当先系统的某文件路径下有对应的可执行程序文件。
区分内部命令还是外部命令:type
[root@English6 ~]# type history history is a shell builtin 显示history是内部命令。 [root@English6 ~]# type date date is /bin/date 显示date是外部命令。
hash:查询外部命令路径结果会缓存在kv存储中,
[root@English6 ~]# hash hits command 0 /bin/date 2 /bin/cat
hash -r:清除缓存
[root@English6 ~]# hash -r [root@English6 ~]# hash hash: hash table empty
命令格式:command[options][arguments]
选项:用于启用或关闭命令的某个或某些功能。
短选项:-c,-l,-h
长选项:–word,–all,
参数:命令的作用对象,比如文件命,用户名等。
五、linux基础命令及应用
ls:列出当前路径下的文件或文件夹。
[root@English6 ~]# ls anaconda-ks.cfg Documents install.log.syslog Public a.out Downloads Music Templates Desktop install.log Pictures Videos
pwd:查看当前目录下的完整路径。
[root@English6 dev]# pwd /dev
cd:cd /dev 进入dev目录,cd进入系统根目录。
[root@English6 ~]# cd /bin [root@English6 bin]# pwd /bin [root@English6 bin]# cd [root@English6 ~]# pwd /root
lscpu:查看cpu信息。
[root@English6 ~]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 2 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 58 Model name: Intel(R) Core(TM) i5-3337U CPU @ 1.80GHz Stepping: 9 CPU MHz: 1795.921 BogoMIPS: 3591.84 Hypervisor vendor: VMware Virtualization type: full L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 3072K NUMA node0 CPU(s): 0,1
lsb_release:查看系统版本发行信息。
[root@English6 ~]# lsb_release LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
lsblk:查看当前硬盘信息。
[root@English6 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 200G 0 disk ├─sda1 8:1 0 200M 0 part /boot ├─sda2 8:2 0 48.8G 0 part / ├─sda3 8:3 0 19.5G 0 part /testdir ├─sda4 8:4 0 1K 0 part └─sda5 8:5 0 3.9G 0 part [SWAP] sr0 11:0 1 3.7G 0 rom /media/CentOS_6.8_Final
free:查看内存信息。
[root@English6 ~]# free total used free shared buffers cached Mem: 1004136 880784 123352 2188 52948 487032 -/+ buffers/cache: 340804 663332 Swap: 4095996 0 4095996
uname:查看内核信息。
[root@English6 ~]# uname Linux
hostname:查看完整的主机名。
[root@English6 ~]# hostname English6.8
ifconfig:查看网络信息。
[root@English6 ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:A0:BF:D3 inet addr:192.168.1.108 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fea0:bfd3/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:31862 errors:0 dropped:0 overruns:0 frame:0 TX packets:13403 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:34253289 (32.6 MiB) TX bytes:1199229 (1.1 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:65536 Metric:1 RX packets:791 errors:0 dropped:0 overruns:0 frame:0 TX packets:791 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:113525 (110.8 KiB) TX bytes:113525 (110.8 KiB)
touch:创建一个空白文件。
cat:查看文本文件。
[root@English6 ~]# touch wang [root@English6 ~]# ls anaconda-ks.cfg Documents install.log.syslog Public wang a.out Downloads Music Templates Desktop install.log Pictures Videos [root@English6 ~]# cat /root/wang [root@English6 ~]# 用cat查看wang这个文件,没显示出wang的值,表示wang是个空白文件。
whoami:当前在哪个用户下登录。
[root@English6 ~]# whoami root
su -:切入管理员用户,su – (用户名)切换到某一用户。
[root@English6 ~]# su - DYW [DYW@English6 ~]$ whoami DYW [DYW@English6 ~]$ su - Password: [root@English6 ~]# whoami root
cal:查看当月的日历。
[root@English6 ~]# cal July 2016 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
date:查看系统时间,
clock:查看硬件时间。 -s以硬件时间为准,调整系统时间;-w以系统时间为准,调整硬件时间;
[root@English6 ~]# date Sun Jul 24 13:07:25 CST 2016 [root@English6 ~]# clock Sun 24 Jul 2016 01:07:32 PM CST -0.504216 seconds
screen部分应用:连接的是同一个机器,用同一个用户 安装screen:rpm -i/光驱/packages/screen
screen -s 新建一个会话
screen -x 连接回话
screen -r 恢复会话
echo:输出,显示字符。
命令格式:echo[-n]字符串,其中选项n表示输出文字后不换行;字符串能加引用,也能不佳引号。用echo命令输出加引号的字符串时,将字符串原样输出;用echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。
echo显示文字:echo[-ne][字符串],echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开,并在最后加上换行号。
$:表示变量
‘’:强引用,
“”:弱引用,
[root@English6 ~]# a=123 [root@English6 ~]# echo "$a" 123 [root@English6 ~]# echo '$' $
“=$():命令引用
[root@English6 ~]# echo "ls" ls [root@English6 ~]# echo 'ls' ls [root@English6 ~]# echo `ls` anaconda-ks.cfg a.out Desktop Documents Downloads install.log install.log.syslog Music Pictures Public Templates Videos wang
-n:不要在最后自动换行。-e:打印转义字符。
[root@English6 ~]# echo -e "7\t8" 7 8 [root@English6 ~]# echo "7\t8" 7\t8
文本输出:
\a发出警告声;
\b删除前一个字符;
\c最后不加上换行符号;
\f换行光标仍旧停留在原来的位置;
\n换行且光标移至行首;
\r光标移至行首,但不换行;
\t插入rab;
\v与\f相同;
\\插入\字符;
\nnn插入nnn(八进制)所代表的ASCII字符。
history:查看你输入的命令历史
[root@English6 ~]# history 1 vi /etc/sysconfig/network-scripts/ifcfg-eth0 2 ls 3 cd 4 pwd 5 cd /dev
登录shell时,会读取命令历史文件中记录的命令 /.bash_history。登录进shell后新执行的命令只会记录在缓存中,这些命令会在用户退出时“追加”在命令历史文件中。
六、如何使用帮助
whatis:查看命令的作用。
[root@English6 ~]# whatis ls ls (1) - list directory contents ls (1p) - list directory contents 查看ls命令的作用。
help:帮助命令。
用type看是不是内部命令
内部命令:help command
man bash
[root@English6 ~]# type cd cd is a shell builtin 表示cd为内部命令。 [root@English6 ~]# help cd cd: cd [-L|-P] [dir] Change the shell working directory. Change the current directory to DIR. The default DIR is the value of the HOME shell variable. ......此处省略
外部命令:command –help
[root@English6 ~]# type date date is hashed (/bin/date) 表示date是外部命令。 [root@English6 ~]# date --help Usage: date [OPTION]... [+FORMAT] or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] Display the current time in the given FORMAT, or set the system date. .......此处省略
man:manual的简写,帮助文档,在/usr/share/man,外部命令可以实用man来查看。
man command
man:命令默认查看最小章节,man 1-9command
1:用户名令
2:系统调用
3:C库调用
4:设备文件及特殊文件
5:配置文件格式
6:游戏
7:杂项
8:管理类的命令
9:linux内核API
原创文章,作者:DYW,如若转载,请注明出处:http://www.178linux.com/25047