2012年2月1日 星期三

solaris 支援的三種檔案類型
1.disk-based  
        ufs:unix傳統文件格式,solaris默認。
        hsfs:用於CD-ROM的只讀文件系统。
        pcfs:Windows/DOS中的FAT32文件系统。
        udfs:DVD文件系统。
2.distribute(分散式)
        nfs
3.pseudo(虛擬文件系統)
       Tmpfs:暫時的文件系統,使用本機記憶體。
       Swapfs:交換文件系统。
       Fdfs:文件描述符文件系统。
       Procfs:程序使用的文件系統,保留在記憶體中,/proc目錄。
       Mntfs:已掛載文件系统。
       Objfs:核心文件系统。
       Devfs:設備文件系统,使用/devices目录。

2012年1月31日 星期二

第三張:磁碟管理

Logical device names = c#t#d#s#  :在/dev/dsk中
Physical device names = /devices/pci@1f,0/pci@1,1/ide@3/dad@0,0:a :在/devices下
Instance Names =sdn or dadn
/etc/path_to_inst file =開機有偵測到的設備皆會出現在此
prtconf = 系統記憶體容量
format = 查看硬碟參數及其物理位址或邏輯設備名
-------------------------------------------------------------------------------

# format
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c0t0d0 <ST38410A cyl 16706 alt 2 hd 16 sec 63>
/pci@1f,0/pci@1,1/ide@3/dad@0,0
1. c1t3d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/pci@1f,0/pci@1/scsi@1/sd@3,0
-------------------------------------------------------------------------------
重新抓取硬體資訊兩個方法1.touch /reconfigure檔,關機,裝上設備,開機。
                                                   (如未設定/reconfigure,也可以在ok下以 boot -r開機)
                                                 2. devfsadm

2012年1月18日 星期三

./profile及/etc/profile

/etc/profile 為系統預設的環境設定檔
./profile 為使用者自己的環境設定
./profile內設定會覆蓋/etc/profile
剛建立的使用者./profile是從/etc/skel/local.profile複製而來
如果新user家目錄下沒有./profile,可以用cp local.profile ./profile 套用自己的設定檔

2012年1月11日 星期三

solaris 10 新增使ˋ者 解決無法建家目錄

在solaris中 如果要在/home下建立家目錄,可能會碰到failed to make directory 的問題,主要原因為早期NIS會保留/home這個目錄給client端 user auto mount 用,會把autofs 給鎖住,所以要先將autofs停掉才能新增使用者以及建立家目錄。
以下為停止用法
#svcs autofs   //查看autofs狀態
#svcadm disable autofs 

編輯 /etc/auto_master 把 /home 那行 mark 掉 
編輯 /etc/auto_home 把 +auto_home 拿掉 


不過現在主要做法為以下方法
useradd -g 你的群組 -d /export/home/test -m test
-m

2012年1月10日 星期二

當一個菜鳥碰到solaris想上網..

上班的第三天,老闆丟了一台老舊的sun機器來給我摸摸,灌好軟體後想要連到網路,碰到了一點點小問題,以下為注意事項:

1.      裝完網卡在ok mode boot –r 重建device tree
2.      進入command cat /etc/path_to_inst 查看網卡的邏輯名(:eri)
3.      /etc下建立一個 hostname.eri0
4.      ifconfig eri0 plumb啟動介面
5.      靜態ip配置 ifconfig eri0 192.168.1.1 netmask 255.255.255.0
6.      記得ifconfig up
7.      dhcp發送 /etc touch dhcp.eri0
                   ifconfig eri0 dhcp 取得ip

跟網路相關的文件
1.hosts
2.hostname.xxx
3.netmasks
4.default route

solaris10 學習手冊第八章心得


第八章 執行BootPROM 命令
目標
l   認識BootPROM基本知識
l   基本的BootPROM 指令
l   辨認系統開機裝置
l   創建和刪除自定義設備別名
l   shell中查看及修改NVRAM
l   中斷未回應的系統
一.  BOOT基本介紹
所有的Sun系統有初始化Boot PROM韌體,提供基本的
硬件測試和啟動前之初始化設定。Boot PROM也可讓您從其他的設備來啟動。此外,有一個使用者界面,提供了幾個重要的功能。

昇陽的Boot PROM 採標準設定存取通用設備的驅動程式。
系統需要它們的驅動程式來存取及控制匯流排來確保正常啟動設備。

所有的OpenBoot 架構允許第三方所發行的板子,識別自身及其上插件的驅動程式。在系統偵測硬體階段,OpenBoot要求每個設備識別其類型和提供它的插件驅動程式。

二.  OpenBoot架構標準
IEEE 1275所制定以下功能
l   測試及初始化系統硬體
l   偵測系統硬體設定
l   啟動OS
l   提供使用者操作介面用來設定、測試及除錯
l   允許使用第三方設備

三.  啟動PROM
每個昇陽SPARC系統含有一個Boot PROM晶片。此1MB大小的晶片位於與CPU鄉同的板子上。較舊型號的Boot PROM晶片可以抽換,3.x版以後的固定於主機板上。
Ultra 工作站使用可重新編寫的Boot PROM稱為Flash PROM(FPROM)。透過軟體允許載入新的啟動程式,而不用更換硬體晶片。
桌上型系統有寫入保護的跳線,在你寫入前必須移開。預設為寫入保護。
※注意※很多系統的跳線裝在訊框緩衝區或可拆的卡下方,小心移除替換。
Boot PROM韌體被稱為monitor程式。
Boot PROM控制系統在oskernel載入之前。
初始 PROM還提供了用戶使用者界面和硬體公用程式指令,被稱為第四命令集。
命令包括開機命令,診斷命令和命令修改默認配置。
※注意※Boot PRO不運作於Solaris OS的文件系統或文件。
主要是處理硬件設備。
 操作系統依賴韌體,但韌體是獨立的操作系統。
   使用下列指令查看系統中OpenBootPROM版本
   #/usr/platform/`uname –m`/sbin/prtdiag –v
   Or
   #prtconf -V
四.  系統設定資訊
其他餘昇陽系統中重要元素,包括:
l   乙太網卡 MAC address 8:0:20:5d:6f:9e
l   系統主機名稱 805d6f9e
l   使用者更改預設值後的參數
使用者參數被稱為NVRAM變數或EEPROM參數。允許管理員改變開機設備或電源開機自我安全檢測(POST)選項等等。
下列三項中,不同的機器有不同的儲存組件
l   NVRAM晶片
l   SEEPROM 晶片
l   SCC
NVRAM 晶片
較舊的機器有可拆除的,但一般而言它被固定在主機板上,除此之外包含一個離電池來提供電壓儲存設定的資訊及時間
SEEPROM 晶片
通常固定於主機板上,不需要額外電池來儲存設定。
SCC
可移除的裝置卡來儲存設定

當系統開機時,會運行開機自我檢測程序,此程序存放在boot PROM被用來測試硬體的最基本功能
通過POST後,韌體接掌控制權,並執行以下初始化序列:
l   偵測記憶體而後CPU
l   偵測匯流排裝置,載入設備驅動程式,建立設備樹。
l   安裝console
Boot PROM初始化完系統後,符號出現在命令列。
系統檢測存於boot PROM NVRAM內的參數,決定是否或如何啟動系統。
其中一項POST測試有無連接鍵盤及停止鍵是否按下。
停止鍵在鍵盤左側。當電源啟動時,按下停止鍵配合其他鍵,可以選擇不同的OpenBoot PROM模式。
以下為Stop-key組合:
Stop-key + D :  切換至診斷模式,此模式對硬體做更嚴謹的POST診斷,
OpenBoot PROM變數diag-switch 設為 true
Stop-key + N :  NVRAM參數設為預設。當鍵盤上燈閃爍即設定完成可放開繼續啟動程序。不正確的NVRAM參數設定可能導致啟動失敗。
                                例如,當flash PROM下載時,電源中斷,則NVRAM內容不可用。如果啟動失敗了,懷疑是NVRAM不正確,參數可以輕易的喚回預設值。
Stop-key + A : 中止正在運行的程序,回到OpenBoot PROM命令列模式下,ok等待命令輸入。

※注意※Stop + A組合鍵是回到ok下的方法之一,但不建議這麼做,有可能導致文件系統
            崩潰,很難復原
       禁用Stop + A組合鍵,防止他人誤用造成系統崩潰,編輯/etc/default/kbd將內部參數
         KEYBOARD_ABORT=disable的符號取消掉,儲存後執行kbd -i,完成後該組合鍵將只
         允許在啟動階段中使用。
         當然你也可以改變組合鍵配置,參閱kbd手冊。
      顯示POST經由序列阜
                      身為管理員,你可以藉由終端機透過序列阜來擷取大量的POST資訊。
                      開機時POST檢查鍵盤,如無,則將資訊導向序列阜A輸出。
                      確定你的線連到序列阜A正確。

五.  基本的Boot PROM指令
ok下表示Solaris OS尚未運行
banner
顯示開機資訊
boot
啟動系統
help
顯示幫助目錄
printenv
顯示所有參數的當前值與預設值
setenv
NVRAM的值設為指定
reset-all
重設整個系統
set-defaults
將所有參數回復原廠
sitfting text
顯示含有text的第四指令集
.registers
顯示暫存器內容
probe-scsi
檢測匯流排上的scsi設備
probe-scsi-all
檢測所有的匯流排上scsi設備
probe-ide
檢測匯流排上的ide設備
probe-fcal-all
檢測所有的光纖設備
show-devs
顯示完整的設備樹
devalias
顯示當前設備的別名
nvalias
建立新的設備別名
nvunalias
移除設備別名
show-disks
顯示並允許disk路徑使用nvalias
sync
手動刷新記憶體和同步文件系統
test
在指定設備上運行自我檢測

boot指令:boot -s 進入單人模式。
                     boot cdrom –s 從光碟進入單人模式。
                     boot –a 進入交互模式,如在執行期間有需替代的檔案。
                     boot –r 重新檢查設備後啟動,在/dev/devices新增新的設備名,並更新path_ti_inst
                            文件。
                     Boot –v 輸出更詳細資訊到控制列,可搭配其他選項。
Help 指令:就是幫忙嘛,單獨使用列出可幫助列表。
printenv 指令:列出所有的NVRAM的參數(如參數為布林值則後方需加?)                               
                        可顯示單一參數及其值如printenv auto-boot?
Setenv 指令:更改指定的參數值如 setenv auto-boot? False
Reset-all 指令:清除所有緩衝區及暫存器,會模擬電源重開,在3.x或更高版本上,欲使用probe
                        檢測主機,需先做清空的動作。
set-defaults 指令:將參數回復原廠設定,接上單一參數可指定回復,如set-defaults diag-level
Probe 指令: 顯示連接到系統的外部設備,如硬碟,磁帶和cdrom等。當你不確定你的probe
                       令語法時,可用sifting查找如sifting probe
                       最常用的有:probe –scsi-all probe –ide
※注意※如果你版本在3.x或更高運行probe指令可能會出現以下警告訊息This command may hang the system if a Stop-A or halt command has been
executed. Please type reset-all to reset the system before executing this
command.
Do you wish to continue? (y/n) n
如果有部分solaris OS載入至memory內,當系統被中止時,運行probe
指令可能導致系統被掛起,為了避免系統被掛起,運行以下指令:
1.       setenv auto-boot? False
2.       reset-all
3.       .registers(顯示所有暫存器為0表示未被掛起,如非0probe命令有可能被掛起)
           probe-scsi 指令:識別連接到主版上SCSI控制器的周邊裝置,如磁盤,磁帶或CD_ROM 
           標位址。
           Probe-scsi-all 指令: 識別連接到版上SCSI控制器及獨立的SBus or PCI SCSI 控制器 的周邊裝置。
           Probe-ide 指令: probe-scsi 指令:識別連接到主版上IDE控制器的內部裝置,如磁盤,CD-ROM
           辨識開機裝置
                     SUN硬體使用樹的概念,組織設備樹來連結系統。
                     OpenBoot 韌體在POST期間收集硬體資訊建立設備樹。
                     此設備樹被載入記憶體中,被kernal用在啟動程序中,辨識所有裝置的設定。
                     使用boot –r 可以將solaris OS的設備樹與OpenBoot PROM(OBP)設備樹同步,意思是偵測到新
                     增硬體,更新OS內的設備樹。
                     devalias 指令 : 確認目前系統設備的別名。
                     左邊為別名,右邊為物理地址。
                     預設別名置於韌體內,更加容易被記憶和使用。
                     預設啟動裝置為磁碟,可透過NVRAM中的boot-device參數來設定。
                     Boot指令 :以默認裝置啟動系統
           創建與刪除自定義的設備別名
                     NVRAM中的一部分,稱為 NVRAMRC包含的暫存器用來保存自定義參數,也
                     預留空間用於存儲新設備別名。
                     預設外部設備沒有建立別名。
                     NVRAMRCnvalias,nvunalias,use-nvramrc等指令影響。
                     外部設備設定別名透過命令:nvalias aliasname device_path
                     Nvaliasdevalias aliasname device_path儲存至NVRAMRC中。
                     透過show-disks來查詢設備位址,並使用crtl + y來複製路徑。
                     ※注意※當複製貼上設備附近後如/pci@1f,0/pci@1,1/ide@3/disk
                     面需要補上目標號碼及邏輯單元號碼如disk@0,0,如果啟動區不是在切片
                     0須將切片字母補上如disk@0,0:a
                     刪除設備別名:nvunalias alisname(此命令不用reset-all,即可及時刪除)
                     Lab:新增一個磁碟別名為mydisk,切換成他開機。然後刪除他喚回原本設定
1.        show-disks
2.        找到開機磁碟號碼按crtl + y (複製/pci@1f,0/ide@d/disk)
3.        加上目標號碼及單元號碼=>/pci@1f,0/ide@d/disk/disk@0,0
4.        更改別名nvalias mydisk /pci@1f,0/ide@d/disk/disk@0,0
5.        更改開機設備setenv boot-disks mydisk(不知道環境變數可用printenv查看)
6.        Boot
7.        改回來
8.        Nvunalias mydisk
9.        查看原始參數printenv
10.     Setenv boot-device disk
11.     Reset-all
           OS查看及修改NVRAM
           eeprom:列出所有nvram
           更改boot-device用法:eeprom boot-device=disk2
           更改auto-boot? 用法:eeprom auto-boot?=true
           終止未回應系統:
           當系統凍結或鍵盤沒有回應時,中斷系統。當你中斷時,所有的程序中止,系統只會處理
           OBP動作,並禁止刷新記憶體或同步檔案系統
           中止方法:
           1.嘗試使用遠端登入,找到並殺死有問題的程序
           2.嘗試溫柔的重開系統
           3.使用STOP+A鍵,跳回ok mode(如是ASCII 終端系統,按break)
           4.手動使用OBP文件系統同步指令sync(此動作會同步所有文件系,執行crash dump
              memory統,然後重開機)
           : crash dump 當系統出現重大故障時,將記憶體內資料轉存入硬碟內作分析