安装linux 对电脑的配置有什么要求,完全安装要多少空间
312 准备服务器硬件
①CPU
Linux 在Intel 80386, 80486, Pentium, Pentium Pro, Pentium II, Pentium
III ,Celeron ,AMD K6-2 (3DNow),AMD K6-3这几款cpu下能很好的工作,而非Inte
l 的 CPU ,主要包括:Cyrix 6x86,AMD K6,AMD K5,AMD,Cyrix MediaGX chip,WA
RNING出现问题的机会似乎比较多。需要补充的是6x86MX据说在Linux下的表现远好于原
来的6x86。不过,话说回来,你真的穷到要用6x86MX做服务器的程度吗?
一台装配PII以上CPU的Linux在服务量不是非常大时就能很好的工作,如果配备双CPU
那就可以和一台中档的名牌服务器相媲美。Linux对双CPU的支持还算不错,但如果你是
购买的发行版本,那么你在安装后经常需要重新编译内核才能充分发挥双CPU的威力。详
情可以参考第四章。
②主版
Linux支持市面上出售的大多数主板,在选购主板应该考虑是不是支持你的CPU,如果
采用双CPU还考虑买一块兼容的主板。笔者认为在主版的选购时要注意名牌效应,条件允
许一定要买名牌的。
③内存
Linux对内存的品牌没有特殊的限制,只是要求内存最小是 16MB,当然这个数字就我
感觉跟说用32MB内存跑Windows NT差不多。大体上,作为一台服务器,你可以从64MB内
存开始,至于多到多少,反正上限是2GB,现在条子这么便宜,你自己看看你的机器上有
多少个槽就行了。Linux对内存的质量要求比较一般。
④Linux支持的硬盘控制器/硬盘
Linux 支持标准的IDE、EIDE、MFM/RTL控制器。
IDE设备在工作是要占用CPU的处理时间,如果同时有几百个访问,这样占用CPU处理的
时间就急剧增加,系统的负担急剧上升,如果选用SCSI接口卡设备的话就可提高系统的
效率。Linux 并不支持并口的 SCSI 卡,在Linux下兼容的SCSI 列表么……反正我不想
介绍了,你自己去看兼容性列表,目前的Linux内核对BusLogic,AHA之类的大牌SCSI卡
支持还不错,但是肯定不如windows NT那么多。实在不行你可以跟零售商说:“不支持
Linux我可不要啊。”如果你真的预算紧张,那么也可以使用IDE硬盘,不过目前的Linu
x内核似乎对UDMA66不能正确支持,你可能仍然使用标准的DMA-33硬盘。
Linux 也支持磁盘阵列。
⑤网卡
Linux 以其强大的网络功能而著称,选择一块合适的网卡是十分必要的。在选择网卡
是要注意网的性能和兼容性。对于用Linux作为服务器的用户选择一块100M的以太网卡可
在很大程度上提高服务效率。下面就是一些在Linux下能很好工作的网卡:
3Com Etherlink III (3c509 EISA)
3Com 3c59x, 3c900, 3c905 (Not the 3c905B and C, see below) 3c579
Digital DE425, DE434, DE435, DE450, DE500 (uses DE4x5)
Digital 2104x,2114x ``Tulip'' chip cards, SMC DEC21041 , SMC PCI EtherPowe
r (uses Tulip driver)
Intel EEPro100 (PCI),EtherExpress i82557/i82558 PCI Pro/10+。
3Com 3c503, 3c503/16, 3c505, 3Com Etherlink 16 (3c507)
Allied Telesis AT1500 (uses Lance driver), AMD Lance/PCnet, HP J2405A, NE2
100, NE2500
AMD PCnet32 and AMD PCnetPCI
Apricot Xen-II, 680x0 VME (82596 chipset)
Ansel Communications AC3200 EISA
AT&T GIS WaveLAN ISA
Alteon AceNIC Gigabit Ethernet Driver
Allied Telesis AT1700
Aironet Arlan 655
Cabletron E21xx
Crystal LAN CS8900/CS8920
Comtrol Hostess SV11
Compaq Netelligent 10/100 TX PCI UTP, 10 T PCI UTP, Compaq Integrated
NetFlex 3/P, Compaq Netelligent Dual 10/100 TX PCI UTP, Compaq Netelligent I
ntegrated 10/100 TX UTP, Compaq Netelligent 10/100 TX Embedded UTP, Compaq N
etelligent 10 T/2 PCI UTP/Coax, Compaq Netelligent 10/100 TX UTP, Compaq Net
Flex 3/P
100VG-AnyLan Network Adapters, HP J2585B, J2585A, J2970, J2973, J2573,Comp
ex ReadyLink ENET100-VG4 & FreedomLine 100/VG
D-Link DE600, DE620 pocket adapters
D-Link DFE-930-TX PCI 10/100, VIA Rhine PCI Fast Ethernet cards with eithe
r the VIA VT86c100A Rhine-II PC or 3043 Rhine-I
Digital DEPCA & EtherWORKS, DE100, DE101, DE200 Turbo, DE201 Turbo, DE202
Turbo, DE210, DE422
Digi Intl RightSwitch SE-X EISA and PCI
EtherWORKS 3 (DE203, DE204, and DE205)
Fujitsu FMV-181/182/183/184
HP PC-LAN Plus
HP PC-LAN (27245B and 27xxx series)
HP AnyLAN, 10/100VG, PCLAN (J2577, J2573, 27248B, )
Intel EtherExpress 16
Intel EtherExpress i82595 Pro10/10+ (ISA only)
MiCom-Interlan NI5010 ethercard
Mylex LNE390 EISA cards (LNE390A, LNE390B)
NE1000/2000 and compatible ISA cards
NE2000 (PCI), RealTEk RTL-8029, Winbond 89C940, Compex RL2000, KTI ET32P2,
NetVin NV5000SC, Via 82C926, SureCom NE3
NI5210 card (i82586 Ethernet chip), NI6510, ni6510 EtherBlaster
Novell NE3210 EISA Network Adapter
Yellowfin (and Compatibles)
G-NIC
Racal-Interlan ES3210 EISA Network Adapter
RedCreek Communications PCI
RealTek cards using RTL8129 or RTL8139 Fast Ethernet chipsets
Sangoma S502/S508 multi-protocol FR, Sangoma S502A, ES502A, S502E, S503, S
507, S508, S509
SMC Ultra / EtherEZ (ISA, 8k 83c790), SMC 9000 series, SMC 9000 series, SM
C Ultra32 EISA (32K) SMC EtherPower II 9432 PCI (83c170/175 EPIC series),
Tangent ATB-II, Novel NL-10000, Daystar Digital LT-200, Dayna DL2000, Dayn
aTalk PC (HL), COPS LT-95, Farallon PhoneNET PC II & III
Western Digital WD8003, WD8013
Any IBM Token Ring card that does not use DMA
SysKonnect Token Ring ISA/PCI Adapter TR4/16(+) ISA or PCI, TR4/16 PCI, an
d older SK NET TR4/16 ISA cards
IBM PCI tokenring cards based on the Pit/Pit-Phy/Olympic chipset
IBM Tropic chip-set cards
Linux支持的网卡品牌很多,详细的情况可以参考Linux的硬件兼容性列表(/usr/doc
/HOWTO/HARDWARE-HOWTO)。
⑥显示卡
就我看来,服务器的图形界面完全是不必要的,Solaris的那个openlook确实很漂亮,
但是有谁用呢,还不如干脆用M$呢。对于Linux更是如此,你只要弄一块凑合着能上102
4768的4MB显卡就行了,当然前提是Linux的XFree86兼容。我推荐的是Trident 9750和
S3 virge,兼容性绝对没问题。如果你觉得这种东西实在太古老了,呵呵。
Linux大部分操作是通过命令实现的,并不像windows那么直观。linux查看硬件信息也是需要通过linux查看硬件信息命令查询的
系统
# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量
资源
# free -m # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载
磁盘和分区
# mount | column -t # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE # 查看启动时IDE设备检测状况
网络
# ifconfig # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息
进程
# ps -ef # 查看所有进程
# top # 实时显示进程状态
用户
# w # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务
服务
# chkconfig --list # 列出所有系统服务
# chkconfig --list | grep on # 列出所有启动的系统服务
程序
# rpm -qa # 查看所有安装的软件包
其他常用命令整理如下:
查看主板的序列号:dmidecode | grep -i 'serial number'
用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart)
查看CPU信息:cat /proc/cpuinfo [dmesg | grep -i 'cpu'][dmidecode -t processor]
查看内存信息:cat /proc/meminfo [free -m][vmstat]
查看板卡信息:cat /proc/pci
查看显卡/声卡信息:lspci |grep -i 'VGA'[dmesg | grep -i 'VGA']
查看网卡信息:dmesg | grep -i 'eth'[cat /etc/sysconfig/hwconf | grep -i eth][lspci | grep -i 'eth']
查看PCI信息:lspci (相比cat /proc/pci更直观)
查看USB设备:cat /proc/bus/usb/devices
查看键盘和鼠标:cat /proc/bus/input/devices
查看系统硬盘信息和使用情况:fdisk & disk – l & df
查看各设备的中断请求(IRQ):cat /proc/interrupts
查看系统体系结构:uname -a
查看及启动系统的32位或64位内核模式:isalist –v [isainfo –v][isainfo –b]
查看硬件信息,包括bios、cpu、内存等信息:dmidecode
测定当前的显示器刷新频率:/usr/sbin/ffbconfig –rev
查看系统配置:/usr/platform/sun4u/sbin/prtdiag –v
查看当前系统中已经应用的补丁:showrev –p
显示当前的运行级别:who –rH
查看当前的bind版本信息:nslookup –class=chaos –q=txt versionbind
查看硬件信息:dmesg | more
显示外设信息, 如usb,网卡等信息:lspci
查看已加载的驱动:
lsnod
lshw
查看当前处理器的类型和速度(主频):psrinfo -v
打印当前的OBP版本号:prtconf -v
查看硬盘物理信息(vendor, RPM, Capacity):iostat –E
查看磁盘的几何参数和分区信息:prtvtoc /dev/rdsk/c0t0d0s
显示已经使用和未使用的i-node数目:
df –F ufs –o i
isalist –v
对于“/proc”中文件可使用文件查看命令浏览其内容,文件中包含系统特定信息:
主机CPU信息:Cpuinfo
主机DMA通道信息:Dma
文件系统信息:Filesystems
主机中断信息:Interrupts
主机I/O端口号信息:Ioprots
主机内存信息:Meninfo
Linux内存版本信息:Version
备注: proc – process information pseudo-filesystem 进程信息伪装文件系统
LINUX 查看服务器硬件配置命令如下:
系统
# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量
资源
# free -m # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载
磁盘和分区
# mount | column -t # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE # 查看启动时IDE设备检测状况
网络
# ifconfig # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息
进程
# ps -ef # 查看所有进程
# top # 实时显示进程状态
用户
# w # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务
服务
# chkconfig --list # 列出所有系统服务
# chkconfig --list | grep on # 列出所有启动的系统服务
程序
# rpm -qa # 查看所有安装的软件包
其他常用命令整理如下:
查看主板的序列号:dmidecode | grep -i 'serial number'
用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart)
查看CPU信息:cat /proc/cpuinfo [dmesg | grep -i 'cpu'][dmidecode -t processor]
查看内存信息:cat /proc/meminfo [free -m][vmstat]
查看板卡信息:cat /proc/pci
查看显卡/声卡信息:lspci |grep -i 'VGA'[dmesg | grep -i 'VGA']
查看网卡信息:dmesg | grep -i 'eth'[cat /etc/sysconfig/hwconf | grep -i eth][lspci | grep -i 'eth']
查看PCI信息:lspci (相比cat /proc/pci更直观)
查看USB设备:cat /proc/bus/usb/devices
查看键盘和鼠标:cat /proc/bus/input/devices
查看系统硬盘信息和使用情况:fdisk & disk – l & df
查看各设备的中断请求(IRQ):cat /proc/interrupts
查看系统体系结构:uname -a
查看及启动系统的32位或64位内核模式:isalist –v [isainfo –v][isainfo –b]
查看硬件信息,包括bios、cpu、内存等信息:dmidecode
测定当前的显示器刷新频率:/usr/sbin/ffbconfig –rev
查看系统配置:/usr/platform/sun4u/sbin/prtdiag –v
查看当前系统中已经应用的补丁:showrev –p
显示当前的运行级别:who –rH
查看当前的bind版本信息:nslookup –class=chaos –q=txt versionbind
查看硬件信息:dmesg | more
显示外设信息, 如usb,网卡等信息:lspci
查看已加载的驱动:
lsnod
lshw
查看当前处理器的类型和速度(主频):psrinfo -v
打印当前的OBP版本号:prtconf -v
查看硬盘物理信息(vendor, RPM, Capacity):iostat –E
查看磁盘的几何参数和分区信息:prtvtoc /dev/rdsk/c0t0d0s
显示已经使用和未使用的i-node数目:
df –F ufs –o i
isalist –v
对于“/proc”中文件可使用文件查看命令浏览其内容,文件中包含系统特定信息:
主机CPU信息:Cpuinfo
主机DMA通道信息:Dma
文件系统信息:Filesystems
主机中断信息:Interrupts
主机I/O端口号信息:Ioprots
主机内存信息:Meninfo
Linux内存版本信息:Version
备注: proc – process information pseudo-filesystem 进程信息伪装文件系统
Linux 内核设计的理念主要有这几个点:
MutiTask,多任务
SMP,对称多处理
ELF,可执行文件链接格式
Monolithic Kernel,宏内核
MutiTask
MutiTask 的意思是多任务,代表着 Linux 是一个多任务的操作系统。
任务意味着可以有多个任务同时执行,这里的「同时」可以是并发或并行:
对于单核 CPU 时,可以让每个任务执行一小段时间,时间到就切换另外一个任务,从宏观角度看,一段时间内执行了多个任务,这被称为并发。
对于多核 CPU 时,多个任务可以同时被不同核心的 CPU 同时执行,这被称为并行。
SMP
SMP 的意思是对称多处理,代表着每个 CPU 的地位是相等的,对资源的使用权限也是相同的,多个 CPU 共享同一个内存,每个 CPU 都可以访问完整的内存和硬件资源。
这个特点决定了 Linux 操作系统不会有某个 CPU 单独服务应用程序或内核程序,而是每个程序都可以被分配到任意一个 CPU 上被执行。
ELF
ELF 的意思是可执行文件链接格式,它是 Linux 操作系统中可执行文件的存储格式,你可以从下图看到它的结构:
ELF 文件格式
ELF 把文件分成了一个个分段,每一个段都有自己的作用,具体每个段的作用这里我就不详细说明了,感兴趣的同学可以去看《程序员的自我修养——链接、装载和库》这本书。
另外,ELF 文件有两种索引,Program header table 中记录了「运行时」所需的段,而 Section header table 记录了二进制文件中各个「段的首地址」。
那 ELF 文件怎么生成的呢?
我们编写的代码,首先通过「编译器」编译成汇编代码,接着通过「汇编器」变成目标代码,也就是目标文件,最后通过「链接器」把多个目标文件以及调用的各种函数库链接起来,形成一个可执行文件,也就是 ELF 文件。
那 ELF 文件是怎么被执行的呢?
执行 ELF 文件的时候,会通过「装载器」把 ELF 文件装载到内存里,CPU 读取内存中的指令和数据,于是程序就被执行起来了。
Monolithic Kernel
Monolithic Kernel 的意思是宏内核,Linux 内核架构就是宏内核,意味着 Linux 的内核是一个完整的可执行程序,且拥有最高的权限。
宏内核的特征是系统内核的所有模块,比如进程调度、内存管理、文件系统、设备驱动等,都运行在内核态。
不过,Linux 也实现了动态加载内核模块的功能,例如大部分设备驱动是以可加载模块的形式存在的,与内核其他模块解藕,让驱动开发和驱动加载更为方便、灵活。
全球大量数据中心的服务器已经开始向基于Linux Server平台转移。相较windows Server而言,Linux
Server提供了更多优势。包括Google、Twitter、Facebook和Amazon在内的诸多国际互联网巨头,都在基于Linux
Server的服务器上运转他们的服务。Linux服务器具体优势如下:
1、开源
Linux Server相较windows
Server领先的首要原因是完全免费且可用作开源用途。通过开源方式,你可以轻松查看用于创建Linux内核的代码,也可以对代码进行修改和再创作。通过许多编程接口,您甚至可以开发自己的程序并将其添加到Linux操作系统中。还可以对Linux
Server操作系统进行自定义,以满足使用要求,这是windows无法实现的。
2、稳定性
Linux系统一直以其稳定性而闻名,它们可以连续运行多年而不发生任何重大问题。事实上,很多Linux用户都从未在自己的环境中遇到过系统崩溃的情况。相对windows而言,挂起和崩溃完全是一种常态。
尽管windows也可以很好地执行多任务处理,但Linux可以在处理各种任务的同时,仍能提供坚如磐石的性能。
3、安全
Linux由最初的多用户操作系统开发的Unix操作系统发展而来,在安全方面显然比windows更强。与windows作为病毒和恶意软件攻击的首要目标不同,Linux
Server只有管理员或特定用户才有权访问Linux内核,而且Linux服务器不会经常受到攻击,并且被发现的任何漏洞都会在第一时间由大批Linux开发人员修复。
4、硬件
当将Linux Server与windows
Server在硬件方面进行比较时,windows需要经常对硬件进行升级以满足各方面性能需求。而Linux对硬件的需求则很低,也不需要频繁对硬件进行升级更新,并且无论系统架构或处理器如何,都能表现得非常出色。
5、灵活性
Linux是世界上最灵活的操作系统,没有之一,您可以根据需要自定义系统。使用linux,你可以随心所欲地安装GUI界面或仅使用终端管理服务器;使用Linux,您可以选择各种工作和实用程序来管理所有与服务器相关的活动,如:添加用户、管理服务和网络,安装新应用程序以及监控性能等。
6、自由
对Linux而言,您不会被商业供应商强加产品和服务,用户可以自由选择适合需求的产品。正是这种自由使得像Amazon和Google这样的大公司选择了基于Linux的服务器来提供服务。
7、访问开源应用程序
Linux为开源应用程序开辟了一个新的世界,有数以千计的开源应用程序正在等待用户探索,您甚至可以使用特殊界面在Linux服务器上运行windows应用程序。
8、易于变更
与windows Server不同,您可以轻松对Linux Server进行变更,并且无需重启服务器。对于windows
Server而言,要使用微软发布的新功能就得购买下一个版本。
9、社区支持
Linux社区在全球都十分活跃和使用广泛,总有数千名志愿者在线活动以解决其他Linux用户的问题,所以几乎在任何linux论坛上发布的任何问题都会得到即时响应。
CPU:单路或双路,INTEL或AMD均可
主板:超微,泰安,华硕均可
内存:ECC REG DDR3 (我自己用的是现代的)
硬盘:SAS2或同类SCSI硬盘,单用或RAID
电源:足瓦额定高效率电源,或冗余电源
机箱散热:考虑是否托管,散热风墙,静音与否
0条评论