找回密码
 马上注册

扫一扫,访问微社区

搜索
热搜: mestrenova
查看: 1866|回复: 0

20%的SOLARIS知识解决80%的问题

[复制链接]
发表于 2006-12-1 18:13:37 | 显示全部楼层 |阅读模式

Rolf Kersten
德国Sun微系统股份有限公司
版本历史
日期 版本 简介
2002年05月25日 V1.8e 第一个英语发布版
2002年06月12日 V1.9e 第一次反馈(感谢Dnaiel Schmidberger!)
2002年07月19日 V1.10e 添加iostat章节
2002年09月04日 V1.11e Matt Ruetz的修订版
2002年12月05日 V1.12e 经过修正和增加的版本
2003年01月17日 V1.13e 被Halvard Halvorsen(www.sundot.com)和Sven Fink修正和附加的版本
2003年04月11日 V1.14e Sven和Andreas Fatum关于shell编译器和环境变量章节更多地说明

简介
  这篇文档包含了你用solaris和Sun平台工作时所需要的最重要的20%的技术。它能处理你所遇到的80%的问题。
  这篇文档并不打算覆盖Solaris处理环境的细节,也不会包含常见问题解答(相关的书和链接将在附录中给出)。这本书将用来为刚成为Solaris系统管理员的新手或没有每天管理Solaris系统基础的人提供一种怎样收集这种信息的服务。这篇文章关注的方向是用来做技术开发的图形工作站,也将对希望为建立一套用来演示或作为基准的Sun系统的人有所帮助。
  两点提醒:
  · 永远记住在记录日志中记录下你对系统的每一次改动
  · 清楚的在头脑中记住这篇文档包含能让系统不可用的系统级的程序。除非你对它的破坏性做了仔细的分析,否则不要在正在使用的系统上执行这些程序。
  
  1 系统启动和测试
  1.1 OK提示符
  每套SUN都有一个Boot-PROM模式,可以在启动操作系统之前访问,也可以在运行的时候访问,可以用STOP+A进入,如果没有STOP键(PC),可以用ctrl+break.。一旦进入Boot-PROM模式,会出现OK提示符。如果操作系统运行时候出现,可以用go继续。
  1.2 控制台测试
  Boot-PROM模式可以用直接连接的键盘和显示器,也可以用终端。
  如果系统启动时候没有检测到键盘,输入输出自动转到第1个串口(/dev/ttya,A),可以连接一个终端或者另一计算机(通过交叉串口线)到这个端口。
  如果另外的计算机是SUN工作站,可以使用tip hardwire来查看启动控制台。Tip命令输入之后,所有的启动信息会出现在相应的终端窗口里面,如果被观察的机器用了STOP+A,必须使用Strg-]把tip改成telnet模式,然后输入一个BREAK:telnet>send brk
  1.3 重新启动SUN工作站
  重新启动之前,工作站需要进入一个合适的状态,可以使用下面及格命令退出:
  # init 5
  # init 6
  # init 0
  SUN工作站在重新启动之前,会以一定的方式关闭系统,下面是几种可选择的方法:
  最好、最干净的方法:
  - # init 5 关闭所有进程,然后系统自动关掉电源。
  - #init 6,关闭所有进程,然后系统自动从新启动。
  - #init 0,关闭所有进程,然后系统自动回到OK状态。
  在这3种情况下,在系统关闭之前执行/etc/rc0.d下面的K*脚本,这可以用于关闭数据库,或者关闭WEB服务器的进程ID文件等。
  如果没有合适的shell窗口,可以使用远程登录来执行上面的命令。远程也不可以,可以使用下面的方法:
  - STOP-A
  - OK sync 同步文件系统,中断OS,然后重启。
  注意:需要察看随之产生的保存在/var/crash/下面的内核转储文件。
  如果碰到STOP-A也不能使用的情况,必须关闭计算机电源,在打开电源。
  1.4 系统的测试
  启动系统,在执行到内存测试的时候,按下STOP-A。
  下面的段落只描述很重要的命令。
  详细的描述可以在下面的书中《Hardware Diagnostics for Sun TM Systems: A Toolkit for System Adminis-trators》(Infodoc Number 23476 on http://sunsolve.sun.com)。
  1.4.1 Banner(标识)
  Banner显示下列信息:
  . CPU的数量、类型和频率
  . 内存
  . MAC地址和主机地址(主机号)
  . 控制台显示卡类型
  . Sun-Globe: Creator 3D
  . Sun with face: Elite 3D
  . Self-describing Logo: PGX, Raptor GFX (=PGX32), Expert3D(lite) XVR-500, XVR-1000 etc.
  1.4.2检测
  probe-scsi-all列出内置和外置的所有SCSI设备。对于IDE硬盘,使用:probe-ide-all.
  1.4.3 测试所有
  test-all.运行所有的自检,可以检测象网线是否正常等情况。
  1.4.4 printenv and devalias
  devalias列出所有别名,printenv列出所有变量。例如boot-device变量,定义了计算机启动的路径,一般情况下是disk,disk是一个指向特定设备的别名。
  1.4.5禁止网卡错误信息
  当网卡在没连接网线启动的时候,"Interface: No link"会出现多次,可以在OK下面设置
  setenv tpe_link test false 来禁止这个报错信息。
  
  2 管理硬盘
  2.1 逻辑设备名
  所有的硬盘都有一个共同的命名方案,该方案包括一下四个部分:
  c 控制器号
  t 目标号,对于SCSU设备,就是对应的SCSI地址。
  d 驱动号或者是RAID设备的LUN 号(一个地址,多个硬盘)
  S 分区号(见下一段)
  这些逻辑设备的以连接方式放在/dev/dsk和/dev/rdsk目录里面,并指向物理设备名。但这些物理设备仅在改变启动设备时用到,一般的命令都以逻辑设备为参数。
  例如:
  c0t0d0s0 通常是工作站的第1硬盘,c0t1d0s0 是第2个 c0t6d0s0 是内部光驱(SCSI地址是6)
  在OK提示下输入 boot –r可以更新/dev/dsk and /dev/rdsk目录里面的内容,devfsadm也可以。
  Solaris8以前的需要用drvconfig;disks;devlinks3个命令来完成,刷新之后,probe-scsi-all所看到的设备的逻辑连接也就能看见了。
  2.2 分区
  下面是一个两个硬盘的工作站用format命令看到的内容
  c0t0d0
  c0t1d0
  这里显示的是硬盘,不是分区或扇区,format的目的就是产生和管理分区,一个硬盘最多可以优个分区,用format-print可以查看。如果使用缺省安装,Solaris安装工具就会把系统盘分成slices: / (root) /usr /var 和 /export/home。Solaris 8操作系统缺省安装产生3个分区,大约1G的根区,SWAP区(根据内存容量确定大小),剩余空间给/export/home.
  对于工作站来说,这个缺省分区不是最优化的,分区的容量不能在数据不丢失的情况下扩充。在分区空间用尽的情况下,必须使用符号连接。对于服务器来说,得保留一个分区给/var目录,
  这样的话,保存在/var/tmp里面的记录和大文件就不会影响到根区,避免系统产生问题。
  建议工作站这样分区
  slice 0: / root-Partition, incl. /usr, /var, /opt plus
  /export/home
  slice 1: swap 交换区,和物理内存一样大
  slice 2: backup 不要改变这个分区!!代表整个硬盘
  slice 7: sds 用于Solstice DiskSuite(TM) metadata的小分区
  为了使用Solstice Disksuite logical volume manager (SDS),建议保留30M,用于拷贝"state replica databases".可以参阅后面的使用SDS镜像启动盘
  从Solaris 8 02/02开始,会自动安装Live Upgrade。使用Live Upgrade,可以在系统正在运行的时候拷贝当前根的环境。例如可以测试新的操作系统而不用改变正在运行的系统。为了产生这个预备启动环境(ABS),必须留出足够的空间,现在的硬盘空间足够大,可以使用下面分区:
  slice 0: / root-partition, incl. /usr, /var, /opt
  slice 1: swap swap-Partition, as large as physical memory
  slice 2: backup Do not change this partition!
  It is always the size of the whole disk
  slice 3: /export OS-independent data, home-directories
  slice 4: , to be used as ABE with Live Upgrade
  ( about 150% of the expected size of / )
  slice 7: sds A small space reserved for Disksuite metadata
  2.3 Crashdumps
  从Solaris 7开始,缺省情况下crashdump写到交换区上,这也是为什么交换区为什么和内存一样大的原因之一。下次启动的时候,从交换区中读取这个文件,压缩之后写到var/crash/里面,用于以后的分析。因此/var(如果没有单独分出/var或者是/区)不能太小。
  如果一个系统用了几个G的空间作为dump设备,启动时会由于上面提到的拷贝操作,花上很长时间。这时候,最好利用dumpadm定义一个dump分区,从这个指定分区拷贝的操作会在后台运行。注意经常检查和清除/var/crash/,保证有足够的空间用于其他的crashdumps.
  2.4 Example
  假如有一台E450系统并且有一个已经配置好的启动盘,但你不知道两件事情:(1)盘插哪里(系统又20个槽,必须装到安装系统时硬盘所在的槽里才能启动),(2)忘了超级用户口令。把 盘插到一个任意槽里,按下面的步骤:
  第1步 插入一个启动光盘(SOLARIS 安装盘)STOP+A,然后 boot cdrom –s。如果用外置光驱,就需要probe-scsi-all列出光驱位置,然后boot <光驱路径> -s。系统起来之后,就有了一个不需要口令的超级用户窗口。
  第2步 开始mount硬盘。首先用devfsadm重新建立设备,在/dev/dsk下面会有8个新文件。接下来使用format-print-partition确认盘已经装好,并找出来哪个分区是root分区,通常都是0区 。假设盘插到2槽,format会识别到c1t2d0(SCSI ID是2,第1个控制器),c1t2d0s0就是root分区,因此应该ount这个盘,fsck –Y /dev/rdsk/c1t2d0s0;mldir /tmp/disk;mount /dev/dsk/c1t2d0s0 /tmp/disk
  第3步 首先清楚/tmp/etc/shadow里面的root后面的加密内容清空,然后查看/tmp/etc/vfstab里面看看该盘是不是第2槽的,如果是,/应该mount在/dev/dsk/c1t2d0s0,如果不是,就把硬盘插到相应的槽里面。
  第4步 假设在/tmp/etc/vfstab里面看到的是/dev/dsk/c1t2d0s0,这说明在原来的系统里面启动盘就是第2槽,一般,E450会从第1槽启动(c1t0d0s0)。在/dev/dsk里面找到并记下来c1t0d0s0指向的物理设备文件名。
  第5步 reboot,STOP+A,输入:boot <物理设备文件名>。
  第6步 定义别名, nvalias my disk <物理设备文件名>,这样就可以输入boot mydisk就可以启动了。定义setenv boot-device mydisk,系统就会自动从mydisk启动了。
  2.5 Removable Devices
  2.5.1 Volume Management(卷管理)可移动设备又卷管理器来负责,卷管理器检测CD-ROM并自动挂接到/cdrom/cdrom0下面。一些手工操作会造成卷管理器错误,比如使用曲别针打开光驱,而不是使用eject cdrom命令。只这时候需要手工重起卷管理器.
/etc/init.d/volmgt stop
/etc/init.d/volmgt start
2.5.2 软驱
插入软盘(UNIX或DOS格式)必须使用volcheck才能使用卷管理器管理软驱。如果volcheck成功,软驱会出现在/floppy/floppy0下面,使用eject floppy而不手工取出软盘。
2.5.3 CD-ROM
CDROM不需要volcheck,开机就会被检测到,并挂接在/cdrom/cdrom0下面,没有shell或命令使用/cdrom路径时可以使用eject cdrom弹出光驱,fuser –c /cdrom/cdrom列出所有和光驱有关的进程ID或命令,fuser –k可以快速杀掉相关进程。
如果没有卷管理器,使用下面的方法管理CDROM(假设SCSI地址是6):
- mkdir /tmp/cdrom
- mount -F hsfs /dev/dsk/c0t6d0s0 /tmp/cdrom
- (Work with CD mounted on /tmp/cdrom)
- umount /tmp/cdrom
- eject /dev/dsk/c0t6d0s0
2.5.4 CD-R 和 CD-RW
CDRW,是一个与solaris 8 捆绑的工具,用来烧制CD-R或者CD-RW介质。这个工具也可以烧制用命令mkisofs从solaris文件系统和目录中创建的ISO镜象文件

[此贴子已经被作者于2006-12-1 18:14:39编辑过]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

Archiver|手机版|中国核磁共振论坛

GMT+8, 2024-11-26 16:04

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表