顯示文章

這裡允許您檢視這個會員的所有文章。請注意, 您只能看見您有權限閱讀的文章。


主題 - 特級大肉腳

頁: [1]
1
肉腳版 / 肉腳回來了
« 於: 2018-06-25 17:54 »
好多年都忘記這裡了。
這裡看起來超冷清的,只能回來灌個水。
但偏偏自己是肉腳,不知道怎樣灌水。
不曉得是否有大大願意教我?

2
各位大師好,本肉腳最近工作上遇到一個瓶頸。
任務是給產品的兩個ethernet port切成兩個vlan interface: lan跟wan。
用的Switch是QCA8337,CPU端是QCA9558(mips)。

CPU接到Switch只有一條路通向Switch port0(eth0),ethernet port1接Switch port 1,ethernet port2接Switch port2。
現在是將QCA8337切成兩個group:
1.WAN(eth0.2): port 0(tag)、port 1(untag)
2.LAN(eth0.1):port 0(tag)、port 2,3,4,5(untag)

現在問題是VLAN看起來切開了,任何一個ether port接上網路線,都能ping通。做了這樣的實驗確認:
兩個vlan interface都設成dhcp,然後重啟系統,看哪個interface抓到ip。結果看起來都正常。

但接下來就到一個怪問題,當兩個interface各設成不同網域ip要連接不同外網時,如果單插一路網路是能通的。
第二個ether port一接上網路線,兩邊網路一起斷掉。當斷掉時,用tcpdump抓封包(抓eth0)也跟著抓不到了。
就在這邊線索斷了,想不出是什麼原因,在沒有方向的情況下,看QCA8337或9558的程式碼也看不出個所以然來。
所以希望各位大師能給本肉腳一個trace的方向,肉腳感激不盡。

3
請問一下各位大師
肉腳想要將兩個interface的Multicast封包進行傳送,不曉得Linux現有的iptables是否就能辦到?

外部裝置發送Multicast封包 --> Lan interface --> Wan interface --> 別台機器

肉腳目前卡在Lan -> Wan這邊不知道要怎麼設定,是否要加裝其他像是proxy的軟體?
或是直接用iptables就能處理了呢?

感謝。

4
肉腳最近有一個任務,要讓底下的網路能連通:

PC1(192.168.1.A)                                                 PC2(192.168.1.B)
           |                                                                                |
     ethernet                                                                  ethernet
           |                                                                                |
Device A eth0(192.168.1.1)                               Device B eth0(192.168.1.2)
           |                                                                                |
Device A eth1(10.0.0.1)   -------Wireless-------- Device B eth1(10.0.0.2)


原本計畫是用Device eth0跟eth1直接bridge起來就可以解決的,但是wireless interface就是加不進去。
(顯示操作不被許可)
後來退而求其次,改用iptables作NAT。但是目前的設定,只能從192.168.1.A ping到10.0.0.2。
ping不到192.168.1.2,猜測是在Device A時判斷是192.168.1.0網段又被丟回eth0。
但實在想不出解法。這是肉腳目前的設定:
iptables -P FORWARD ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.0.0/24 -j MASQUERADE

希望各位大師能幫幫忙,謝謝。

5
肉腳版 / Linux跟Solaris的RS232設定差異問題
« 於: 2013-01-07 18:45 »
各位大師好,
本肉腳最近在寫console操作的程式,但是有發現到同樣一段code在Linux跟Solaris上執行顯示的完全不一樣。
肉腳先用這裡的sample code做測試:
http://www.vr.ncue.edu.tw/esa/EmbeddedSystemProgramming2010/ch06.htm

發現讀取跟寫入資料是正常,但是將此code拿到Solaris上後發現噴出的都是亂碼。
想嘗試從網路上找相關差異性的文件,卻幾乎找不到。
有檢查過相對應的DEVICE名稱跟BAUDRATE值,這部份有確認改正確。

這兩支程式範例code,Solaris跟Linux只有改這兩行,其他code都沒有動到:
#define BAUDRATE B57600
#define MODEMDEVICE "/dev/cua/0"

有實際用cat /dev/cua/0去讀值去,從反應確認是這個裝置沒錯。
也有試著設定/etc/remote,可以從tip看到正常的console畫面。
所以想請問一下各位大師,是否有相關說明文件或注意事項?
謝謝。

6
肉腳版 / [肉腳求救]如何架設DHCP Server?
« 於: 2012-03-19 01:27 »
肉腳最近要架設一個帶有附加選單的DHCP Server,需要的選單是125(Vendor-Identifying Vendor-Specific)。
使用的是ISC DHCP Server 4.2版,但是看man page或是網路上的mailing list,都還是看不懂怎麼使用。

肉腳有從man page查出vendor specific最可能的選單:vivso,但說明說後面要跟一個字串。
於是肉腳在dhcpd.conf內試加了兩個選單:
option vendor-encapsulated-options "freebsd 8.2";
option vivso "openbsd 5";

但是用wireshark實際在抓封包時,就只看的到選單43,看不到125。網路上也看到有人是加hex字串的,
但肉腳不知道他們是怎麼把純文字轉成hex的,不曉得這是不是vivso無法辨識一般文字而無法輸出?

肉腳也感覺不出vendor-encapsulated-options(option 43)跟vivso(option 125)的差別。
希望各位大師能幫肉腳解惑。謝謝。

7
最近本肉腳剛學會用一點ffmpeg,就順手寫了一支視窗程式來方便執行它。
這個年頭自己寫視窗程式比網路上花力氣找GUI還來的簡單啊......
如果大家有興趣玩玩看的話,希望可以順便把你還有哪些需求,
或是執行遇到哪些問題回報給肉腳,肉腳再繼續修改並擴充它,
謝謝。
目前還在研究ffmpeg如果做影片轉檔,所以影片檔的設定參數還沒加上。
(本程式碼歡迎自由散佈、修改等,使用沒有限制)

程式說明,最上面的選項是找到ffmpeg的位置後按確定,
它會執行ffmpeg -formats的動作檢查支援哪些格式,
之後輸出格式的部份就有選項可選了。
選擇完輸入輸出目錄,按下轉檔鍵就會將整個目錄的音檔轉過去。

目前已知狀況:
1.遇到異常檔名(含怪字元),程式會執行終止,還在研究怎麼過濾中。
2.輸入資料夾中含有非ffmpeg能處理的檔案,也會讓程式執行到那裡時終止。

從終端機中執行這隻程式,比較能看出ffmpeg運作到哪邊時,發生異常。
有時候Tk彈出的錯誤訊息視窗,多半是Tcl/Tk部份的程式問題,而不容易看到
ffmpeg的錯誤訊息。因為ffmpeg是外部呼叫的程式。
=========================================================

#!/usr/bin/wish8.5
###########################前置宣告########################
set ftype1 {
{{全部}         {*}}
}

proc scancodec { ffcmd } {
set clist [split [exec -ignorestderr $ffcmd -formats] "\n"]
set ll [llength $clist]
for {set i 0} {$i<$ll} {incr i} {
set line [lindex $clist $i]
set line1 [lindex $line 0]
if {$line1=="E" || $line1=="DE"} {lappend oclist $line}
}
set ocl [llength $oclist]
for {set i 0} {$i<$ocl} {incr i} {
lappend ::ocf [lindex [lindex $oclist $i] 1]
}
.area2.op3 configure -values $::ocf -state normal
}

proc conv {ffcmd ab ar sel inpdir outdir} {
set ::probmx 0
set ::count 0
set par "-ar"
if {$ar==""} { set par "" }
set fls [split [exec ls $inpdir] "\n"]
set ll [llength $fls]
set ::probmx $ll
.area4.prob configure -maximum $::probmx
for {set i 0} {$i<$ll} {incr i} {
set infile [lindex $fls $i]
######檢查檔名異常######
set llf [string length $infile]
set c ""
set infile1 ""
for {set j 0} {$j<$llf} {incr j} {
set c [string index $infile $j]
if {$c==" " || $c=="\[" || $c=="\]" } {
set c "_"
#append infile1 "_"
}
append infile1 $c

}
if {[string match $infile $infile1]==0} {
file rename $inpdir/$infile $inpdir/$infile1
set infile $infile1
}
########################

set outfile [lindex [split $infile "."] 0]
eval "exec -ignorestderr $ffcmd -ab $ab $par $ar \
 -i $inpdir/$infile -f $sel $outdir/$outfile.$sel"
incr ::count
update
after 1000
}
}

set ab 192k
set ::ocf ""
set ::probmx 0
set ::count 0

###########################主程式##########################
if { [file exists /tmp/ffcmd]==1 } {
set f [open /tmp/ffcmd r]
set ffcmd [lindex [split [read $f] "\n"] 0]
close $f
}
label .findff -text "轉檔指令位置:(注意:目前只支援ffmpeg)"
label .ffpar -text "ffmpeg參數設定:(留空白則使用預設)"
frame .area1 -relief flat
frame .area2 -relief flat
frame .area3 -relief flat
frame .area4 -relief flat
button .conv -text "開始轉檔" -command {
conv $ffcmd $ab $ar $sel $inpdir $outdir
}
button .exit -text "離開" -command { exit }
pack .findff .area1 .ffpar .area2 .area3 .area4 .conv .exit -side top -fill x

entry .area1.ffpath -textvariable ffcmd
button .area1.bw -text "瀏覽" -command {
set ffcmd [tk_getOpenFile -title "轉檔程式的位置" -filetypes $ftype1]
}
button .area1.ok1 -text "確定" -command {
scancodec $ffcmd
set f [open /tmp/ffcmd w+]
puts $f $ffcmd
close $f
}
pack .area1.ffpath .area1.bw .area1.ok1 -side left

label .area2.opl1 -text "音頻碼率"
entry .area2.op1 -textvariable ab
label .area2.opl2 -text "音頻採樣率"
entry .area2.op2 -textvariable ar
label .area2.opl3 -text "輸出格式"
ttk::combobox .area2.op3 -values $::ocf -textvariable sel -state disabled
grid .area2.opl1 -column 1 -row 1
grid .area2.op1 -column 2 -row 1
grid .area2.opl2 -column 1 -row 2
grid .area2.op2 -column 2 -row 2
grid .area2.opl3 -column 1 -row 3
grid .area2.op3 -column 2 -row 3

label .area3.inpl -text "來源音檔目錄"
entry .area3.inp -textvariable inpdir
button .area3.inpbw -text "瀏覽" -command {
set inpdir [tk_chooseDirectory -title "來源目錄" -initialdir [pwd] ]
}
label .area3.outl -text "輸出音檔目錄"
entry .area3.out -textvariable outdir
button .area3.outbw -text "瀏覽" -command {
set outdir [tk_chooseDirectory -title "輸出目錄" -initialdir [pwd] ]
if {[file exists $outdir]==0} { file mkdir $outdir}
}
grid .area3.inpl -column 1 -row 1
grid .area3.inp -column 2 -row 1
grid .area3.inpbw -column 3 -row 1
grid .area3.outl -column 1 -row 2
grid .area3.out -column 2 -row 2
grid .area3.outbw -column 3 -row 2

label .area4.prol -text "處理進度:"
ttk::progressbar .area4.prob -orient horizontal \
 -maximum $::probmx -variable ::count
pack .area4.prol .area4.prob -side top -fill x

8
肉腳版 / [肉腳求救]點對點連線的問題
« 於: 2011-06-07 18:15 »
本肉腳在用Solaris上網時,遇到某些類型的網路就很頭痛。
例如vpn、ADSL等,通常這些連線在ifconfig -a時看到如下:

tun0或sppp0:.......
       A IP   ->    B  IP

按造網路上得步驟,通常肉腳只能到達抓到IP位址與routing table這部份。
netstat -rn也看不出異樣。網路上的文件也是教到抓到IP後他們就能網了。
route add default通常是自己會抓到B IP,但是ping A IP時ping的到,ping B IP就會顯示類似這樣
sendto : network is unreachable
...

之前好像有看到討論,似乎有跟/etc/resolv.conf的設定有關,但是更進一步討論的文件,
卻是找不到,所以只能上來向各位大師求助了。
謝謝。

9
肉腳版 / [肉腳分享]SNMP偵測主機資訊程式
« 於: 2011-01-11 17:00 »
這是肉腳在學習分析snmpwalk所產生的大量資料,邊try資料邊寫支程式把它們撈出來。
因為網路上非常少人有寫介紹這些資料意涵的文件,於是肉腳只好自己目測。
因為Linux跟Unix吐出資料還是有差,所以部份有價值的資料並沒有寫入程式去撈。
(例如Unix/BSD連底下裝什麼套件都看的到,雖然snmpd偵測出來的資料有些會誤判
(例如FAT32檔案系統空間用量很怪),但能夠偵測出這麼多東西已經夠恐怖了。)
並且比對三種作業系統的樣本:Solaris 10、FreeBSD 7.2、Debian 5,
扣除掉部份系統會產生的異常結構資料,才寫出來一部分。
肉腳對於這些資料還在學習階段,如果程式有寫錯也希望各位大師多多指點。
謝謝......
============================================================================
#!/usr/bin/tclsh8.5
puts "請輸入要偵測的主機IP"
gets stdin IP
set resultat [exec snmpwalk -v 2c -c public $IP]
set splitre [split $resultat '\n']
set lrres [llength $splitre]
puts "SNMP擷取總資料量:$lrres 筆"
set f [open tmp w+]
set cpun 0
set nonhd 0

for { set i 0 } { $i<$lrres } {incr i } {
  set line [lindex $splitre $i]
  puts $f $line

#0.清除奇怪資料
  if {[lindex $line 0]=="HOST-RESOURCES-MIB::hrSystemInitialLoadDevice.0"} {
  #這行的引號很討厭會斷兩行,讓程式判斷錯誤。
  incr i 3
  set line [lindex $splitre $i]
  #puts $line
  }
#1.測試系統
  if { [lindex $line 0]=="SNMPv2-MIB::sysDescr.0" } {
  set sys [lindex $line 3]
  set kernel [lindex $line 5]
  set sysname [lindex $line 4]
  puts "作業系統:$sys $kernel"
  puts "主機名稱:$sysname"
  }
#2.網路介面
  if { [string range $line 0 14]=="IF-MIB::ifDescr" } {
  lappend netin [lindex $line 3]
  }
  if { [string range $line 0 20]=="IF-MIB::ifPhysAddress" } {
  lappend macaddr [lindex $line 3]
  }
  if { [string range $line 0 19]=="IF-MIB::ifOperStatus" } {
  lappend instat [lindex $line 3]
  }
  if { [string range $line 0 21]=="IP-MIB::ipAdEntIfIndex" } {
  set linaddr [lindex $line 0]
  set indexaddr [lindex $line 3]
  set inaddr [string range $linaddr 23 end]
  lappend laddr "$indexaddr $inaddr"
  }
  if { [string range $line 0 17]=="IF-MIB::ifInOctets" } {
  set inoct [lindex $line 3]
  lappend inoctmb [format %.2f [expr $inoct/1024.0/1024.0]]
  }
  if { [string range $line 0 18]=="IF-MIB::ifOutOctets" } {
  set outoct [lindex $line 3]
  lappend outoctmb [format %.2f [expr $outoct/1024.0/1024.0]]
  }
  if { [string range $line 0 28]=="TCP-MIB::tcpConnState.0.0.0.0" } {
    if {[lindex $line 3]=="listen(2)"} {
    lappend listenp [lindex [split [string range [lindex $line 0] 30 end] . ] 0]
    }
  }
#3.處理器
  if { [string range $line end-16 end]=="hrDeviceProcessor" } {
  incr cpun
  lappend node_cpu [string range [lindex $line 0] 33 end]
  }
  if { [string range $line 0 32]=="HOST-RESOURCES-MIB::hrDeviceDescr" } {
  foreach var $node_cpu {
    if {[string range [lindex $line 0] 34 end]==$var} {
      lappend cputype [lrange $line 3 end]
      }
    }
  }

#3.系統資源
  if { [string range $line 0 33]=="HOST-RESOURCES-MIB::hrFSMountPoint" } {
  lappend mountp1 [lindex $line 3]
  }
  if {[string range [lindex $line 0] 0 27]=="HOST-RESOURCES-MIB::hrFSType"} {
  set orifs [lindex $line 3]
  if {[string range $orifs 24 end]=="FSSys5FS"} { lappend fstype "UFS" }
  if {[string range $orifs 24 end]=="FSNFS"} { lappend fstype "NFS" }
  if {[string range $orifs 24 end]=="FSFat"} { lappend fstype "FAT(Windows)" }
  if {[string range $orifs 24 end]=="FSLinuxExt2"} { lappend fstype "Ext2(Linux)" }
  if {[string range $orifs 24 end]=="FSOther"} { lappend fstype "unknown/devfs" }
  }
  if { [string range $line 0 31]=="HOST-RESOURCES-MIB::hrMemorySize" } {
  set memsize [lindex $line 3]
  lappend memsizem [expr $memsize/1024]
  }
  if { [string range $line 0 32]=="HOST-RESOURCES-MIB::hrStorageSize" } {
  lappend node_storsize [string range [lindex $line 0] 34 end]
  set storsize [lindex $line 3]
  lappend storsizemb [expr $storsize/1024 ]
  }
  if { [string range $line 0 33]=="HOST-RESOURCES-MIB::hrStorageDescr" } {
      lappend node_mount [string range [lindex $line 0] 35 end]
      lappend mountp [lindex $line 3]
  }
  if { [string range $line 0 32]=="HOST-RESOURCES-MIB::hrStorageUsed" } {
  lappend node_storuse [string range [lindex $line 0] 34 end]
  set storuse [lindex $line 3]
  lappend storusemb [expr $storuse/1024]
  }

}
set stori [llength $node_storsize]
set storj [llength $node_storuse]
for { set i 0 } {$i<$stori} {incr i} {
  set stor1 [lindex $storsizemb $i]
  set stor3 [lindex $mountp $i]
  set index_stor1 [lindex $node_storsize $i]
  for {set j 0} {$j<$storj } { incr j} {
  set stor2 [lindex $storusemb $j]
  set index_stor2 [lindex $node_storuse $j]
  if { $index_stor1==$index_stor2 } {
    lappend storage "$stor3 $stor1 $stor2"
    }
  }
}
set addr [lsort -index 0 $laddr]

puts "網路介面:(裝置: IP位址  MAC位址)"
set lnet [llength $netin]
for { set i 0 } { $i<$lnet } {incr i} {
set netin1 [lindex $netin $i]
set macaddr1 [lindex $macaddr $i]
set addr1 [lindex $addr $i]
puts "$netin1: $addr1 $macaddr1"
}

puts "連線狀態:$instat"
puts "網路總下載流量:$inoctmb"
puts "網路總上傳流量:$outoctmb"
puts "Listen Port:$listenp"
puts "處理器數目:$cpun"
puts "CPU類型:"
set lcputype [llength $cputype]
for {set i 0} {$i<$lcputype} { incr i} {
puts [lindex $cputype $i]
}
puts "磁碟空間用量:(全部/已使用)"
set lstorage [llength $storage]
for { set i 0 } { $i<$lstorage } { incr i} {
set storage1 [lindex $storage $i]
puts "$storage1 MB "
}

puts "檔案系統:"
set lfstype [llength $fstype]
for {set i 0} { $i<$lfstype } {incr i} {
set fstype1 [lindex $fstype $i]
set mountp11 [lindex $mountp1 $i]
puts "$fstype1 $mountp11"
}

10
這是一隻肉腳寫著玩的簡單資料庫儲存格式轉換工具,目前寫了InnoDB、MyISAM。
執行這隻程式時,只要輸入MySQL資料庫主機的IP、帳號、密碼。
按下確定鈕,就會連上該資料庫主機,並顯示底下有哪些資料庫。
選一個資料庫,按要轉換的格式鈕,該資料庫就會全轉過去。
(如果是遠端主機,Client端IP位址的帳號權限要開才能連上)
需求延伸模組:mysqltcl
========================================================
#!/usr/bin/wish8.5
package require mysqltcl
frame .a -relief flat
frame .b -relief flat
frame .c -relief flat
pack .a .b .c -side top
set ip localhost
set user root
set passwd ""
set mytable ""
label .a.a -text "請輸入連結的主機:"
entry .a.b -textvariable ip
label .a.c -text "帳號:"
entry .a.d -textvariable user
label .a.e -text "密碼:"
entry .a.f -textvariable passwd
button .a.g -text "確定" -command {
destroy .b.a
listbox .b.a -yscrollcommand ".b.b set"
pack .b.a .b.b -side right -fill y
set myid [::mysql::connect -host $ip -user $user -password $passwd ]
set mytable [::mysql::info $myid databases]
eval .b.a insert end $mytable
}
pack .a.a .a.b .a.c .a.d .a.e .a.f .a.g -side top
listbox .b.a -yscrollcommand ".b.b set"
scrollbar .b.b -command ".b.a yview"
pack .b.a .b.b -side left -fill y
button .c.a -text "轉成Innodb" -command {
set re [selection get]
::mysql::use $myid $re
set convtable [::mysql::info $myid tables]
set max [llength $convtable]
toplevel .d
ttk::progressbar .d.a -orient horizontal -maximum $max -variable i
button .d.b -text "完成" -state disabled -command { destroy .d }
pack .d.a .d.b -side top
for { set i 0 } {$i<$max } { incr i} {
set tabb [lindex $convtable $i]
::mysql::sel $myid "alter table $tabb engine=innodb"
update
if { $i==[expr $max-1] } { .d.b configure -state active }
}
}
button .c.b -text "轉成MyISAM" -command {
set re [selection get]
::mysql::use $myid $re
set convtable [::mysql::info $myid tables]
set max [llength $convtable]
toplevel .d
ttk::progressbar .d.a -orient horizontal -maximum $max -variable i
button .d.b -text "完成" -state disabled -command { destroy .d }
pack .d.a .d.b -side top
for { set i 0 } {$i<$max } { incr i} {
set tabb [lindex $convtable $i]
::mysql::sel $myid "alter table $tabb engine=myisam"
update
if { $i==[expr $max-1] } { .d.b configure -state active }
}

}
pack .c.a .c.b -side left -fill x

11
肉腳版 / [肉腳求救]freeradius與samba的結合
« 於: 2010-12-23 15:24 »
各位大師抱歉,本肉腳又遭遇到瓶頸了,這次肉腳是實做samba server,samba的帳戶是透過另一台freeradius機器來驗證。
目前的狀況是samba架的起來,freeradius2也架起來了,使用radtest指令測試users檔案裡面的帳號也通過了。
但是接下來如何將它們結合起來,肉腳就想不出來。
目前是在smb.conf中passwd server = 127.0.0.1:1812       (目前還在同一台機器上測試)  並且security = server
至於freeradius的設定檔只有新增了一個驗證網域和users檔案的新帳號。(驗證機制沒有動)
在/etc/nsswitch.conf中的passwd:欄位files後面加winbind(肉腳亂猜的)

接者在其他台同網域機器用smbclient到該台主機,輸入freeradius帳號後顯示:session setup failed: NT_STATUS_LOGIN_FAILURE
而server端是用radiusd -X啟動,當smbclient登入時,顯示訊息沒變動,沒有跳出之前radtest會產生的連接驗證訊息。
目前肉腳被卡在這裡,不曉得下一步該怎麼做。希望各位大師指點,謝謝。

12
本肉腳最近需要寫一支tcl程式,最後輸出的格式要能夠排版然後列印,目前選用pdf4tcl:http://pdf4tcl.berlios.de/
本來是打算輸出成PDF檔案比較方便列印,但是現在遇到一個很大的問題。
現在情況是不管使用預設字型或是指定X Fonts輸出後,用adobe reader看中文字都會變亂碼:

直接使用系統預設:
pdf物件名 setFont  16  Helvetica,Courier...
pdf物件名 text "這是什麼" -x 0 -y 12

指定系統字型:
::pdf4tcl::loadBaseTrueTypeFont Times "/usr/openwin/lib/X11/fonts/TrueType/fireflysung.ttf"
::pdf4tcl::createFont Times utf-8     # 這邊不論用utf-8,big5,cp950,unicode選項都呈現亂碼
pdf物件名 setFont  16  Times
pdf物件名 text "這是什麼" -x 0 -y 12

這個問題卡了肉腳很久,但是網路上似乎沒有中文方面的討論,輸入英文則是顯示正常的。
所以只能向各位大師請教,謝謝。
或是如果不用pdf4tcl,是否還有其他方案(html或是其他)來方便列印含有tk物件的方法?

13
肉腳版 / [求救]NIS老是能夠登入
« 於: 2010-12-07 14:47 »
本肉腳目前有兩台NIS Server,系統都是BSD,有開啟ypserv和ypbind。(啟動ypbind主要是能夠直接在這部機器測試)
一台Master、另一台Slave,目前已經可以用NIS帳號登入。但是現在遇到的問題是設定了netgroup後,還是一直可以登入。

假設本肉腳的NIS domainename設定為:a1,本肉腳是使用者m3
nis_adm1 (,m1,a1) (,m2,a1)  (,m3,a1)
nis_adm2 (,m1,a1) (,m2,a1)

本肉腳用vipw在測試的Client端的/etc/master.passwd的尾端加入:
+@nis_adm2:::::::::
+:::::::::/sbin/nologin
這兩行不論我上下對調位置、兩行都註解掉、只保留+@nis_adm2、只用-@nis_adm1等組合,肉腳一直能夠登入。
已確定測試這台沒有放肉腳帳號,肉腳的id是NIS的帳號。ypcat -k netgroup也看得到定義的資訊。
在/etc/nsswitch.conf中是寫入這些資訊:
group: nis compat
group_compat: nis
hosts: files dns
networks: files
passwd: files nis
passwd_compat: nis
shells: files
services: compat
services_compat: nis
protocols: files
rpc: nis files
netgroup: nis

因此本肉腳一直想不通發生了什麼事,希望各位大師指教,謝謝。

14
這一次的社群大會我們很榮幸的邀請到兩位講者(Jim Grisanzio & Eric Li), Jim 來自於 Sun Japan 分公司, 一直以來都是 OpenSolaris.org 社群中的核心人物, 這次他將與我們分享一下 OpenSolaris.org 社群的前世今生以及對未來的規劃; Eric 是 Sun Taiwan 相當資深的技術經理, 他應該是在台灣這邊使用 OpenSolaris 當作日常 desktop 最有歷史也是將之應用地最淋漓盡致的人, 所以這次很榮幸的請他撥空來這邊跟我們分享一下 "Good Uses on OpenSolaris Desktop"。

會中我們還會發送 OpenSolaris 2009.06 的 LiveCD,您可以攜帶自己的筆電或隨身碟(2GB+)來馬上體驗或安裝。

此次聚會的詳細資訊如下:

    * 主題: OpenSolaris.org 社群介紹與演示最創新的 OS

    * 時間: 8 月 14 日 6:30pm – 9pm

    * 地點: 台灣昇陽電腦 (台北市信義區松高路11號11樓)

    * 點心: 將提供點心與飲料

    * 議程:

    * # 6:30pm – 7:00pm: 報到與享用點心
    * # 7:00pm – 8:00pm: "Contributing to the OpenSolaris Project" by Jim Grisanzio
    * # 8:00pm – 9:00pm: "Good Uses on OpenSolaris Desktop" by Eric Li

    * 講者的部落格:

    * # Jim Grisanzio (http://blogs.sun.com/jimgris/)
    * # Eric Li (http://blog.xuite.net/evereasy/solarpower)

    * 專業能力: 此次聚會不限任何專業能力的人都能參加,只要您對開放原始碼的軟體有興趣與熱情,我們都很歡迎您的蒞臨。

注意: 如欲參加者,請於 8 月 13 日前寄一封郵件到 ug-twosug@opensolaris.org,郵件主旨請註明[參加 OpenSolaris 愛用者社群大會],郵件內文請註明您的公司與大名! 請立即報名,座位有限!

請與會者到達後於一樓觸控螢幕處通知我們以領取通行證,刷卡通過右邊的關卡後直接上 11 樓。

15
肉腳版 / [消息]OpenSolaris 2009.06釋出
« 於: 2009-06-03 02:04 »
下載地址:
http://www.opensolaris.com/get/index.jsp
如果各位跟我一樣是肉腳,那就更適合用Solaris系統。
Windows,Mac真的操作難度太高了.....

16
原文出處:http://opensolaris.org/os/project/twosug/events/

這一次社群大會的主旨除了向與會者介紹 OpenSolaris 這個全新的發行版本外,我們還會發送 OpenSolaris 2008.11 的 LiveCD,您可以攜帶自己的筆電或隨身碟(2GB+)來馬上體驗或安裝,我們於會中還會向各位介紹 OpenSolaris 的全新特色以及多重開機需注意的地方。

此次聚會的詳細資訊如下:

* 主題: What's New in OpenSolaris 2008.11

* 時間: 5 月 11 日 6pm – 8:30pm

* 地點: 昇陽電腦教育訓練中心 (台北市民生東路三段71號4樓)

* 點心: 將提供點心與飲料

* 專業能力: 此次聚會不限任何專業能力的人都能參加,只要您對開放原始碼的軟體有興趣與熱情,我們都很歡迎您的蒞臨。

注意: 如欲參加者,請於 5 月 8 日前寄一封郵件到 ug-twosug@opensolaris.org,郵件主旨請註明[參加 OpenSolaris 愛用者社群大會],郵件內文請註明您的大名! 請立即報名,座位有限!

請與會者到達後於一樓警衛處登記,然後直接上 4 樓。


We will introduce all the new features of OpenSolaris 2008.11 release during this meeting. We will also talk about different ways of multi-boot your OpenSolaris OS and what needs to be aware of when multi-booting. We will distribute oso0811 LiveCDs for you to get a hands-on experience of this evolutionary OS and answer all questions you may have. If you want to have a bootable LiveUSB of osol0811, please remember to bring USB stick with you (2GB+).

The meeting details are as follows:

* Topic: What's new in OpenSolaris 2008.11

* Date/Time: May 11th, 2009 6pm-8:30pm

* Location: Sun Taiwan Training Center (4F, No 71 Sec 3 Mingsheng E Road, Taipei)

* Refreshments: Light food and drinks will be provided

* Experience: All levels of experience are welcome. If you are enthusiastic with open source software, we are more than happy to see you here.

Attention: Please RSVP to ug-twosug@opensolaris.org before May 8th. Looking forward to meeting you! Seats are limited, please RSVP NOW!

Note: All attendees please register at downstairs security and come directly to 4th Floor.

17
本肉腳一直很羨慕OpenSolaris上有許多很新的版本軟體。但是Solaris 10(SXDE)上面,
仍保有很多好用的東西,所以一直想嘗試找到SUNWipkg這個套件,
但是網路上找不到下載處......

後來有看了這個網頁:
http://blogs.sun.com/kronox/entry/ips_on_solaris_10
案造他的步驟,一直到"How to use"結束就沒辦法進行下一步了.....
安裝過程第八步,沒有產生SUNWipkg跟SUNWpython-cherrypy這兩個套件。
但是How to use的啟動服務都有成功。
之後在/var/pkg/repo/catalog下產生了attrs這個檔案。下一步就不知道要如何進行了.....
懇請各位大師指教......  謝謝.....

頁: [1]