12.系统设定工具与硬件侦测
/etc/sysconfig/authconfig ----管理账号的验证方式
/etc/passwd /etc/shadow ----预设情况下的账号验证方式依赖的本地文件
/etc/sysconfig/iptables ----针对网卡的防火墙设定
/etc/x11/xorg.conf ----x视窗的配置文件
/var/log/xorg.0.log ----x视窗的日志文件
/etc/resolv.conf ----DNS IP设定
/etc/sysconfig/clock ----时区设定
/usr/share/zoneinfo ----时区信息
/usr/share/cups/model/ ----PPD(postscript printer description)驱动程序档放置的位置
/etc/cups/printers.conf ----打印机的设定值
/etc/cups/cupsd.conf ----cups的主要配置文件,包括作为服务器用途的设定
/etc/cups/ppd/*.ppd ----打印机的驱动程序(PPD)
/etc/udev/rules.d ----udev建立装置档案的规则
1. CentOS的系统设定工具:setup
注意:默认支持的有CentOS,Fedora,Red Hat系统的RHEL,远程使用系统的话建议切换为英文语系
# setup ----进入各项系统设定的主菜单,【tab】切换选项,【Quit】取消,【Run Tool】执行选项,【1-0】【1-1 主选菜单的基本功能】
1.1使用者身份验证设定
Authentication configuration 用户身份验证设定选项,将对/etc/sysconfig/authconfig作出修改
注意:一般情况下我们使用的是/etc/passwd和/etc/shadow的账号密码机制,使用MD5加密
案例一:不使用本地主机/etc/passwd提供的账号如何登入系统(使用账号管理服务器)
第一步:在服务器端设定好账户
第二步:在每部主机中设定NIS或LDAP协议功能指定查询账号的方向【1-2】
1.2网络设定项目(手动设定IP与自动取得)
1.2.1linux单机客户端获得获得网络连接参数的方式:
1.手动设定(学术网络服务器、公司内部的特定座机等)# vim /etc/resolv.conf ----DNS IP设定IP、netmask(子网掩码)、gateway(网关)、DNS主机(域名解析服务器)的IP(例如168.95.1.1)注:只有手动设定需要进行DNS IP的设定
nameserver 168.95.1.1
/etc/init.d/network restart ----重启网络
2.DHCP自动获取(常见于IP分享器的后端)3.透过ADSL宽带拔接(系统会产生一个替代调制解调器的网络接口)# adsl-setup ----进行ADSL设定# adsl-start ----启动ADSL拔接
1.2.2网络卡(常见以太网卡ethN)
# setup ----选择Network Configration,该程序会到/etc/sysconfig/network-scripts/目录下将文件名为ifcfg的档案捉出来显示
1.3防火墙设定
Firewall configration 防火墙设定,/etc/sysconfig/iptables
基本的防火墙设定案例:
第一步:打开设定界面
# setup ----打开系统设定界面
第二步: Firewall configration
1.security level设定为Enable
2.SELinux设定为Enforcing(permissive/disabled)
第三步:自定义防火墙抵挡项目
1.Trusted Devices:注意对外的网卡不要勾选,不然外部网域也可以连接到主机
2.MESQUERDE Devices:如果要启动IP分享器的功能,对外的网卡就要启动这一项
3.Allowing incoming(对各个网络服务的抵挡设置):取消ssh的勾选,因为ssh很容易远程攻击
1.4键盘形式设定,/etc/sysconfig/keyboard
第一步:打开设定界面
# setup ----打开系统设定界面
第二步:Keyboard configration
1.5系统服务的启动与否设置
ntsysv 系统服务设定
1.6系统时钟的时钟设定,配置文件:/etc/sysconfig/clock,时区信息:/usr/share/zoneinfo
第一步:打开设定界面
# setup ----打开系统设定界面
第二步:Timezone configration
1.7x窗口接口分辨率的设定,/etc/x11/xorg.conf,x的日志文件/var/log/xorg.0.log
第一步:打开设定界面
# setup ----打开系统设定界面
第二步:X configration
2. 利用CUPS设定Linux打印机
注意:旧式打印机需要25针串行端口及BIOS的支持,因此需要进入BIOS将对打印机的支持改为/EPP/SPP
http://www.linucfoundation.org/en/OpenPrinting ----到该网站查看linux对某种品牌某种型号的打印机的支持情况
2.1Linux的打印组件(打印作业、队列、服务与打印机)
2.1.1硬件支持度
http://www.linucfoundation.org/en/OpenPrinting ----到该网站查看linux对某种品牌某种型号的打印机的支持情况
2.1.2打印组件【1-3】
1.打印作业:openoffice内建的程序或者lpr这类指令产生的打印动作就是打印的job,会进入排队等待打印服务的状态
2.打印队列:以打印机的名字命名
3.打印服务(CUPS,LPRng):将打印作业的数据转换成打印机认识的格式(PostScript,GhostScript)交给打印机输出的服务
/usr/share/cups/model/ ----PPD(postscript printer description)驱动程序档放置的位置
http://www.linuxprinting.org/download/PPD/ ----下载所有PPD文档
2.2CUPS支持的联网模式
1.socket(port 9100或35):浏览器输入socket://host-printer:9100/进行数据的传输与打印
2.LPD(liner printer daemon):利用串行端口达成打印需求(比如LRPng使用的就是这种联机方式)
3.IPP(internet printer protocol,port 631):CUPS预设使用这种协议来传送数据,在浏览器输入http:/printer_ip:631或者ipp://printer_ip/printername,这是目前比较流行的联网方式
4.SMB(server message block):smb://user:passwd@host/printer
补充:(通过线材连接主机)
1.25针平行串行端口(parallel):/dev/lp[0-2]
2.usb接口:usb:/dev/usb/lp0
2.3以WEB接口控管网络打印机
# /etc/init.d/cups start ----使用web接口管理网络打印机前启动cups
案例一:在局域网内将网络打印机交给其他用户管理(打印机地址:192.168.201.253,本机ip为192.168.201.250)
确认打印机存在且支持cups认识的相关协议
# ping -c 3 192.168.201.253 ----确定打印机的ip是否正确
# nmap 192.168.201.253 ----使用nmap测试打印机有没有出现打印相关的服务接口,注意nmap是个扫描主机端口的黑客软件
查询linux主机是否启动cups服务
# netstat -tlunp | grep 631 ----查看cups使用的端口(cupsd)
浏览器:http://localhost:631,进行基本的添加管理设置 ----【1-4】
Device URL:socket://192.168.201.253:9100 ----使用socket的方式联机
选择型号或者提供PPD 驱动程序文档(下载或者在/usr/share/cups/model/下查找)
设定完毕回到界面Add printer,输入密码,进入CUPS的进站画面
2.4以WEB接口控管USB本机打印机(设置简单很多)
注意:linux支持即插即用的装置(PnP)
# ll /dev/usb/lp0 ----cups捉到usb打印机后这个档案会被自动建立起来
# lsusb ----列出所有usb设备
Manage printers ----CentOS提供HAL机制处理PnP装置,使用HAL提供的装置名
Add Printer ----新增一个打印机
2.5将Linux本机打印机开注意放成为网络打印机
注意:可以通过加装打印服务器使USB打印机开放成为网络打印机,不过这个方法要多花钱
透过浏览器接口处理->Adminnistration【1-5】
ipp://192.168.201.250/printers/打印机队列名称 ----其它客户端计算机可以通过这个URL进行联机
2.6手动设定打印机
注意:如果没有web接口进行设置,使用终端修改配置文件,由于涉及应急干联机,建议使用web接口
/etc/cups/printers.conf ----打印机的设定值
/etc/cups/cupsd.conf ----cups的主要配置文件,包括作为服务器用途的设定
/etc/cups/ppd/*.ppd ----打印机的驱动程序(PPDP配置文件)
1.下载合适的PPD驱动程序定义当档
# ll /usr/share/cups/model/ ----后续指令回到该文件夹下徐娜找驱动程序定义档,因此要将下载好的PPD下载到这个位置
2.启动cups以及打印机
# /etc/init.d/cups restart ----重启cups服务
# netstart -tlunp | grep 631 ----cups启动的网络服务器端口
# namp 192.168.201.253 ----确定打印机启动的服务有哪些(网络联机方式为:socket://192.168.201.253:9100)
3.使用lpadmin进行打印机的建立与删除
lpadmin 打印机的建立与删除【1-6】
# lpstat ----列出所有本机上已经存在的打印机
# lpadmin -x 【打印机名】
# lpadmin -p hp_p2015 -v socket://192.168.201.253:9100 -m postscript.ppd.gz -E ----打印队列名(自定义),装置相关位置,PPD定义文档,可接受的打印队列
# lpadmin -d hp_p2015 ----设置为默认打印机
# cat /etc/cups/printers.conf ---上面的命令对这个配置文件进行了修改
# ll /etc/cups/ppd ----该文件夹下有cups捉过来的对应刚刚建立的打印队列的ppd文件
4.打印机状态的观察
lpstat 打印机状态观察指令【1-7】
# lpstat -a ----列出目前系统上所有的打印机队列与接收工作与否的情形
# lpstat -t ----列出目前打印系统的状态,不只包括打印及本身的状态【1-8】
5.利用lpr与lp来进行打印作业
lpr 打印指令【1-10】
# lpr -P hp_p2015 /etc/passwd ----指定hp_p2015 将/etc/passwd这个档案打印出来
# ll /root | lpr -P hp_p2015 ----将数据流重导向至hp_p2015 进行打印 ,设置了默认打印机的话,-P选项不是必须的
lp 同样是打印指令【1-9】
# lp -d hp_p2015 -n 2 /etc/issue ----/etc/issue使用hp_p2015 打印两份
6.打印作业的观察与删除
lpq 观察打印队列的状态【1-11】
# lpq -a ----显示目前队列中所有打印工作的情况
# lpq -l -P hp_p2015 ----更详细的方式显示打印作业
lprm 取消打印作业【1-12】
# lprm 11 ----将使用lpq看到的第11号打印作业取消
# lpq -a ----查看11号job还有没有
7.一个案例:在linux上安装usb打印机(Samsung的ML-1210)
第一步:下载PPD定义档Samsung-ML-1210-gdi.ppd到/usr/share/cups/model/下
第二步:加入打印机
# lpadmin -p samsung -v usb:/dev/usb/lp0 -m Samsung-ML-1210-gdi.ppd -E
第三步:打印测试
# lpr -P samsung /etc/passwd
注:如果显示Printer not connected;...,使用lpstat查看是否正确设置好了
3. 硬件数据搜集与驱动,及lm_sensors
3.1硬件信息的搜集与分析:lspci,lsusb,iostat...
核心侦测到的各项硬件装置:/proc/*和/sys/*fdisk 查看磁盘分割表(八)hdparm 观察硬盘信息以及读写速度(十七)dmesg 观察核心运作过程当中产生的各项讯息记录(十七)vmstat 分析系统目前的状态(十七)lspci 列出pc系统上的PCI接口装置(主板和周边的装置)【1-13】lsusb 列出目前系统上面各个usb端口的状态与连接usb的装置【1-14】iostat 实时列出整个cpu与接口设备的io状态【1-16】# lspci ----查看系统内的pci装置(目前的硬件配备# lspci -s 00:0e.0 -vv ----详细查看,其中-s后面跟的字串应对照/usr/share/hwdata/pci.ids解释(id号与厂商号对照),其实这个指令获得的数据来自/proc/bus/pci/目录下的档案# lsusb ----列出主机各个usb接口的状态【1-15】# iostat ----显示目前cpu与磁盘存储状态【1-17】# iostat -d 2 3 ----每秒真测一测共侦测三次【1-18】
3.2驱动USB装置
3.2.1 USB的芯片版本:ODCI,UHCI,EHCI
# lsmod | grep hci ----查看主机加载的usb模块
# modinfo ehci_hcd ----特别看一下ehci模块(usb2.0)的详细信息
3.2.2启动usb的随身碟或快闪碟
注意:usb使用scsi接口(/dev/sd[a-p]),因此主机需要支持scsi装置,出除了加载uhci模块外还需要usb-storage模块(系统会主动侦测加载)
# flsk -l ----观察是否被挂载
3.2.3启动usb打印机
注意:系统应该会主动帮我们建立装置文件名,除非系统没那么做,否则下面的动作就是多余的
# mkdir -p /dev/usb ----尝试建立/dev/usb/lp1
# mknod /dev/usb/lp1 c 180 1 ----usb的主要/次要装置代号180/[0-15]
# chown root:lp /dev/usb/lp1 ----修改为属于root组的lp账号
# chmod 660 /dev/usb/lp1 ----修改权限
# ls -l /dev/usb/lp1 ----查看这个档案设置得怎么样
3.3使用lm_sensors取得温度、电压等信息:sensors-detect,sensors
3.3.1侦测主板的型号
注意:
1.lm_sensors依据主板的型号带入相关的模块,在侦测其温度电压,因此我们需要确定lm_sensors是否支持主机主板
2.即使顺利加载了模块,lm_sensors仍有可能捉错信息,这是需要手动调校/etc/sensors.conf(参考BIOS侦测的信息)
sensors_detect 主板芯片组侦测程序,会主动建立参数配置文件/etc/sysconfig/lm_sensors
# snesors-detect ----进行侦测
# vi /etc/modprobe.conf ----将刚刚侦测到的模块写入这个档案
alias char-major-89 i2c-dev
# vi /etc/rc.d/rc.local ----编辑使开机时自动加载该模块,从而以后可以直接使用lm_sensors指令
#I2C adapter drivers
modprobe i2c-sis630
modprobe i2c-isa
#I2C chip drivers
modprobe eeprom
modprobe it87
sleep 2s
/usr/bin/sensors -s
# chkconfig --list lm_sensors ----确定这个指令是否开机启动,确定后可以重启了,上面的编辑就会生效
3.4udev与hal简介
udev:用户层级软件,允许用户自行处理/dev底下的装置,解决一般用户需要增加硬件的问题,在/etc/rc.d/rc/rc.sysinit中启动
hal(hardware abstraction layer):硬件抽象层,将目前所有的硬件进行快照,配合udev进行新的装置的建置,在/etc/init.d/haldaemon中启动
# pstree -p | egrep '(udevd|hal)' ----捉出含有udel或者hal字串的正在运行的程序(检查这两个服务是否已经启动)
3.4.1自定义装置名称进行装置建立
案例一:将/dev/sda1(系统默认自动给u盘取名)取名为/dev/myusb
1.先在规则目录内新增一个档案 ,档名设置为99-myusb.rules
# cd /etc/udev/rules.d/
# vim 99-myusb.rules
KERNEL=="sda1";NAME="myusb" ----核心分析到的档名;取代前者的自定义装置名(档名前的/dev不需要写入)
2.插入一支u盘,检查看看
# ll /dev/sda* /dev/myusb ----/dev/myusb取代了/dev/sda1(如果系统磁盘类型是SATA,我们应该去取代/dev/sdb1)
# mount /dev/myusb /mnt ----挂载U盘
案例二:将上面对系统做出的修改删除
1.卸载装置
# umount /dev/myusb ----卸载u盘
2.拔除U盘,并将规则文件删除
# rm /etc/udev/rules.d/99-myusb.rules
3.再插入随身碟看看档名有没有恢复
# ll /dev/sda*
4.重点回顾【1-19】
5.本章习题【1-20,21】
6.参考数据与延伸阅读