分页: 7/45 第一页 上页 2 3 4 5 6 7 8 9 10 11 下页 最后页 [ 显示模式: 摘要 | 列表 ]
光盘下载:
http://download.novell.com/Download?buildid=1HYSkGYIYow~
http://download.novell.com/Download?buildid=MDhnIu6tHOk~

参考文档:
http://hsirkel.net/linux/create-sles9-dvd.txt

插播:

关于novell的下载,需要注册用户后方可以下载。并且是需要http用户认证的。可以用wget用以下命令来下载。
wget -b --http-user=user --http-pass=password 'url-1' 'url-2' 'url-3'


具体目录结构如下:

ha01:/source/suse904_x86-64 # tree -L 2 ./
./
|-- SLES9
|   `-- CD1                         ------ from Novell SLES-9-x86-64-RC5-CD1.iso
|-- CORE9
|   |-- CD1                         ------ from Novell SLES-9-x86-64-RC5-CD2.iso                                            
|   |-- CD2                         ------ from Novell SLES-9-x86-64-RC5-CD3.iso
|   `-- CD3                         ------ from Novell SLES-9-x86-64-RC5-CD4.iso
|-- SP4
|   |-- CD1                         ------ from Novell SLES-9-SP4-CD-x86_64-GM-CD1.iso
|   `-- CD2                         ------ from Novell SLES-9-SP4-CD-x86_64-GM-CD2.iso
|-- boot                            ------ from SLES-9-x86-64-RC5-CD1.iso , in ./SLES9/CD1/boot
|   |-- directory.yast
|   |-- loader
|   |-- rescue
|   `-- root                        
|-- content -> SLES9/CD1/content                    ------- file : soft link
|-- control.xml -> SLES9/CD1/control.xml            ------- file : soft link
|-- driverupdate -> SP4/CD1/driverupdate            ------- file : soft link
|-- linux -> SP4/CD1/linux/                         ------- dir  : soft link
|-- media.1 -> SLES9/CD1/media.1                    ------- dir  : soft link
`-- yast                                            ------- create this dir
    |-- instorder                                   ------- create this file
    `-- order                                       ------- create this file

14 directories, 8 files
ha01:/source/suse904_x86-64 # cat yast/instorder              ------- the content
/SP4/CD1
/SLES9/CD1
/CORE9/CD1
ha01:/source/suse904_x86-64 # cat yast/order                  ------- the content      
/SP4/CD1        /SP4/CD1
/SLES9/CD1      /SLES9/CD1
/CORE9/CD1      /CORE9/CD1


PXE选择的linux、initrd

ha01:/tftpboot/sles9_64 # tree ./
./
|-- initrd                              ------ from  SLES-9-SP4-CD-x86_64-GM-CD1.iso , in SP4/CD1/boot/loader/
`-- linux                               ------ from  SLES-9-SP4-CD-x86_64-GM-CD1.iso , in SP4/CD1/boot/loader/

0 directories, 2 files

这是我自己搭配尝试的一个结果:在安装源里面boot的目录一定要用sles9原盘里面的boot目录;且PXE启动的linux、initrd一定要用SP4里面第一张盘里面的才会成功。

-----后经过测试,制作DVD成功。


补记:

ha01:/source/suse # cp -rf ../suse904/* ./
cp: 不会创建指向目录 “./SP4/CD1/suse/i586” 的硬链接 “./SP4/CD1/x86_64/update/SUSE-CORE/9/rpm/i586”
cp: 不会创建指向目录 “./SP4/CD1/suse/noarch” 的硬链接 “./SP4/CD1/x86_64/update/SUSE-CORE/9/rpm/noarch”
cp: 不会创建指向目录 “./SP4/CD1/suse/x86_64” 的硬链接 “./SP4/CD1/x86_64/update/SUSE-CORE/9/rpm/x86_64”
cp: 不会创建指向目录 “./SP4/CD2/suse/i586” 的硬链接 “./SP4/CD2/x86_64/update/SUSE-CORE/9/rpm/i586”
cp: 不会创建指向目录 “./SP4/CD2/suse/noarch” 的硬链接 “./SP4/CD2/x86_64/update/SUSE-CORE/9/rpm/noarch”
cp: 不会创建指向目录 “./SP4/CD2/suse/x86_64” 的硬链接 “./SP4/CD2/x86_64/update/SUSE-CORE/9/rpm/x86_64”

当我将上面的目录结构刻录成DVD,复制到其他主机制作成安装源之后,发现并没有出现sles9-x86-sp3的安装源的错误。我的意思是,复制的时候会有上面的提示,但是你不用理会它,在x86_64的sp4网络安装中,并不会有任何影响,不会再出现找不到安装包的现象了。


后记,补充添加 for victor  2009/3/12  
点击在新窗口中浏览此图片
如上,出现这个错误的原因就是关于/tftpboot里面内核和镜像的选取,我这个错误出现的原因是,我选取自SLES-9-x86-64-RC5-CD1.iso,当我选自补丁包SLES-9-SP4-CD-x86_64-GM-CD1.iso就一切正常了。而i386中,最好做一下试验。这个不行,就试试另外一个。很邪门的事情。其实也不邪门,肯定是做发行版这些大哥们弄错了。
后来证实i386也一样。


2009/3/25 日补充说明
注意事项:
1:boot目录来源自SLES-9-x86-64-RC5-CD1.iso,也就是原盘的CD1里面的boot
2:boot/loader/linux和boot/lodaer/initrd这两个文件来自SLES-9-SP4-CD-x86_64-GM-CD1.iso里面。拷贝后替换掉boot目下的这两个文件。就可以制作成功了。



引用

linux:~ # mkdir -p /tmp/makedvd/sles90464
linux:~ # cd /tmp/makedvd/sles90464
linux:/tmp/makedvd/sles90464 # mkdir  -p SLES9/CD1 CORE9/{CD1,CD2,CD3} SP4/{CD1,CD2} yast
linux:/tmp/makedvd/sles90464 # ./imount.sh
mount /winshare/SLES-9-x86-64-RC5-CD1.iso  /tmp/makedvd/sles90464/SLES9/CD1 -o loop
mount /winshare/SLES-9-x86-64-RC5-CD2.iso  /tmp/makedvd/sles90464/CORE9/CD1 -o loop
mount /winshare/SLES-9-x86-64-RC5-CD3.iso  /tmp/makedvd/sles90464/CORE9/CD2 -o loop
mount /winshare/SLES-9-x86-64-RC5-CD4.iso  /tmp/makedvd/sles90464/CORE9/CD3 -o loop
mount /winshare/SLES-9-SP4-CD-x86_64-GM-CD1.iso /tmp/makedvd/sles90464/SP4/CD1 -o loop
mount /winshare/SLES-9-SP4-CD-x86_64-GM-CD2.iso /tmp/makedvd/sles90464/SP4/CD2 -o loop

linux:/tmp/makedvd/sles90464 # ln -s SLES9/CD1/content content
linux:/tmp/makedvd/sles90464 # ln -s SLES9/CD1/control.xml control.xml
linux:/tmp/makedvd/sles90464 # ln -s SLES9/CD1/media.1 media.1
linux:/tmp/makedvd/sles90464 # ln -s SP4/CD1/driverupdate  driverupdate
linux:/tmp/makedvd/sles90464 # ln -s SP4/CD1/linux/ linux
linux:/tmp/makedvd/sles90464 # cat  > yast/instorder << !
> /SP4/CD1
> /SLES9/CD1
> /CORE9/CD1
> !
linux:/tmp/makedvd/sles90464 # cat > yast/order << !
> /SP4/CD1        /SP4/CD1
> /SLES9/CD1      /SLES9/CD1
> /CORE9/CD1      /CORE9/CD1
> !
linux:/tmp/makedvd/sles90464 # cp -R SLES9/CD1/boot/ ./

下面仅针对SLES9 SP4 x86_64的做法,后证实i386也一样
linux:/tmp/makedvd/sles90464 # cp SP4/CD1/boot/loader/linux boot/loader/
linux:/tmp/makedvd/sles90464 # cp SP4/CD1/boot/loader/initrd boot/loader/

linux:/tmp/makedvd/sles90464 # mkisofs -v -v -J -r -V "SLES9 SP4 X86_64 by kookliu" -b boot/loader/isolinux.bin \
-c boot/boot.catalog -no-emul-boot -boot-load-size 4 \
-boot-info-table -hide-rr-moved -o ../SLES9.SP4.X86_64.iso .



客户端网络安装源写法,本地目录写法也一样。需要注意的是本地安装源不要用DVD的形式,否则会提示你插入光盘。这个问题一直没有解决掉。
引用

nfs://192.168.65.100/source/sles90464//SP4/CD1                            
nfs://192.168.65.100/source/sles90464//SLES9/CD1  
nfs://192.168.65.100/source/sles90464//CORE9/CD1  



20100607:补充后记:
不是脚本,权当是操作记录吧。如果您下好了光盘,将其放在一个工作目录里面。将下面的行程一个脚本。就会在这个目录里面自动创建一个DVD。仅限于SLES 9 sp4 X86_64.

使用方法:弄一个工作目录,将所有光盘放到这个目录里面,然后写一个脚本,将下面贴进去,编辑一下工作目录这个变量。然后执行就可以了。


CURWORK=/home/linuxiso/sles9

WORKDIR=$CURWORK/sles90464

mkdir -p $WORKDIR
cd $WORKDIR
mkdir  -p SLES9/CD1 CORE9/{CD1,CD2,CD3} SP4/{CD1,CD2} yast

mount ../SLES-9-x86_64-RC5-CD1.iso  ./SLES9/CD1 -o loop
mount ../SLES-9-x86_64-RC5-CD2.iso  ./CORE9/CD1 -o loop
mount ../SLES-9-x86_64-RC5-CD3.iso  ./CORE9/CD2 -o loop
mount ../SLES-9-x86_64-RC5-CD4.iso  ./CORE9/CD3 -o loop
mount ../SLES-9-SP4-CD-x86_64-GM-CD1.iso ./SP4/CD1 -o loop
mount ../SLES-9-SP4-CD-x86_64-GM-CD2.iso ./SP4/CD2 -o loop

ln -s SLES9/CD1/content content
ln -s SLES9/CD1/control.xml control.xml
ln -s SLES9/CD1/media.1 media.1
ln -s SP4/CD1/driverupdate  driverupdate
ln -s SP4/CD1/linux/ linux

cat  > yast/instorder << !
/SP4/CD1
/SLES9/CD1
/CORE9/CD1
!

cat > yast/order << !
/SP4/CD1        /SP4/CD1
/SLES9/CD1      /SLES9/CD1
/CORE9/CD1      /CORE9/CD1
!

cp -R SLES9/CD1/boot/ ./
cp SP4/CD1/boot/loader/linux boot/loader/
cp SP4/CD1/boot/loader/initrd boot/loader/


mkisofs -v -v -J -r -V "SLES9 SP4 X86_64 by kookliu" -b boot/loader/isolinux.bin -c boot/boot.catalog -no-emul-boot -boot-load-size 4 -boot-info-table -hide-rr-moved -o ../SLES9.SP4.X86_64.iso .



再补充 For X86的。

CURWORK=/home/linuxiso/sles9

WORKDIR=$CURWORK/sles904

mkdir -p $WORKDIR
cd $WORKDIR
mkdir  -p SLES9/CD1 CORE9/{CD1,CD2,CD3} SP4/{CD1,CD2} yast

mount ../SLES-9-i386-RC5-CD1.iso  ./SLES9/CD1 -o loop
mount ../SLES-9-i386-RC5-CD2.iso  ./CORE9/CD1 -o loop
mount ../SLES-9-i386-RC5-CD3.iso  ./CORE9/CD2 -o loop
mount ../SLES-9-i386-RC5-CD4.iso  ./CORE9/CD3 -o loop
mount ../SLES-9-SP4-CD-i386-GM-CD1.iso ./SP4/CD1 -o loop
mount ../SLES-9-SP4-CD-i386-GM-CD2.iso ./SP4/CD2 -o loop

ln -s SLES9/CD1/content content
ln -s SLES9/CD1/control.xml control.xml
ln -s SLES9/CD1/media.1 media.1
ln -s SP4/CD1/driverupdate  driverupdate
ln -s SP4/CD1/linux/ linux

cat  > yast/instorder << !
/SP4/CD1
/SLES9/CD1
/CORE9/CD1
!

cat > yast/order << !
/SP4/CD1        /SP4/CD1
/SLES9/CD1      /SLES9/CD1
/CORE9/CD1      /CORE9/CD1
!

cp -R SLES9/CD1/boot/ ./
cp SP4/CD1/boot/loader/linux boot/loader/
cp SP4/CD1/boot/loader/initrd boot/loader/


mkisofs -v -v -J -r -V "SLES9 SP4 i386 by kookliu" -b boot/loader/isolinux.bin -c boot/boot.catalog -no-emul-boot -boot-load-size 4 -boot-info-table -hide-rr-moved -o ../SLES9.SP4.i386.iso .
Tags: , , , , , ,
文档:http://linux.dell.com/files/whitepapers/nic-enum-whitepaper-v3.pdf


Linux Enumeration of NICs
Version 3

By Robert Hentosh <robert_hentosh@dell.com> and Matt Domsch <Matt_Domsch@dell.com>
January 2007
Abstract

Linux naming of the hardware network interfaces may not align with BIOS and chassis
labeling of the Ethernet ports.  This is seen on Dell PowerEdge 1950, 1955, 2900, and
2950 servers when using a Linux 2.6 kernel-based product such as Red Hat Enterprise
Linux 4, and Novell/SuSE Linux Enterprise Server 9 and 10.  Solutions to align the Linux
name with the expected name are presented.
  

Introduction


System administrators may expect the onboard network ports labeled Gb1, Gb2, etc... on a system to be
assigned interface names eth0, eth1, etc... respectively. This would be one possible naming convention for
network interfaces; however no industry standards currently exist to ensure such a convention. The method
used in Linux to determine the number associated with a network port (i.e. eth0, eth1, eth2…) is complex
and changed with the 2.6 and newer kernels.

The naming disconnect can be observed at two different times:
1.  Install Time - OS Installation when network booting (e.g. using a PXE installation procedure);  
2.  System Runtime –  Following OS installation

Dell engineers have developed workarounds for Red Hat Enterprise Linux 4 (RHEL4), and Novell/SuSE
Linux Enterprise Server (SLES) 9 and 10 for each of the above scenarios.

While the naming disconnect directly affects Dell PowerEdge 1950, 1955, 2900, and 2950 servers running
Linux 2.6 kernels (eg. RHEL4,  RHEL5 beta, SLES9, SLES10), this behavior is not unique to Dell systems.  
The workarounds and solutions presented here work on Dell systems, and may work on additional systems.

The naming disconnect issues are not observed on Dell servers when using 2.4 kernel based distributions
such as RHEL2.1, RHEL3, Red Hat Linux 7.2 and 7.3, or SLES8.

Background


How Linux assigns network interface names

The default name for Ethernet interfaces is based upon how Linux initializes them during device discovery.
As Linux finds the network devices it will start numbering them starting with 0 and increasing sequentially.
Device discovery is dependent on the device driver load order, PCI bus topology and the device driver code.

On RHEL4, the device driver load order is determined by the /etc/modprobe.conf file.  Device drivers
assigned lower interface numbers in that file are loaded first.  When Linux loads a single device driver it will
initialize and find all devices supported by that single driver first.  
On SLES, device drivers are loaded based on the PCI bus topology as discovered by the kernel.  The PCI
bus topology is composed of buses, bridges and devices. PCI devices must be connected to a PCI bus.  
The PCI buses are connected by PCI bridges to either other buses or to the system. The topology of the
system can be viewed as a tree. Using this analogy, the devices are leaves, the system is the trunk, buses
are branches and bridges exist where branches meet each other or the trunk. Searching for PCI devices in a
system is accomplished by "walking the tree".  The method of walking the tree was modified in the 2.6 and
later kernels, thus changing the order in which devices are found.

And last, each device driver will search the PCI tree for all the devices it supports. Some drivers have a list
of different devices it will support and search the tree for each device in the list. Other drivers will scan the
tree and, for each device, see if it is in its list of supported devices. This will also change order of how
devices are found and thus its interface name.

Changes in system configuration will also result in a different enumeration order. If a new network card is
inserted into a PCI slot, its new position could be between two previous network devices.  This may result in
the new card taking over the name of a previous card in the system.
  
The root cause of NIC enumeration mismatches is that there is currently no industry standard to enable the
OS to determine the physical labeling of Ethernet ports on the motherboard.


Workarounds

Workarounds have been identified for both install time and runtime NIC enumeration issues.
Install Time

At install time, the network interface used to download the OS kernel and initial ramdisk from the PXE server
may not be the default interface (i.e., eth0) used by the OS installer to download the rest of the OS image.  
This leads to the installer trying to use the “wrong” interface to finish the download, often leading to a failed
installation.

RHEL and SLES installers have long had the ability to be told which interface to use to download the rest of
the image.  On systems where the installer’s default interface isn’t the “right” interface, you can use these
kernel command line options to resolve it:

•  For RHEL4 Update 3 and higher, and in RHEL5 beta, when using a PXE server, the NIC used for
the initial PXE download can be used for the rest of the OS installation as well.  In your PXE server’s
configuration files, use these options:
   IPAPPEND 2
   APPEND ksdevice=bootif
The OS installer then uses the same interface, regardless of its name, to finish the download.
Note: your PXE server must use syslinux-2.07 or higher.  RHEL3 provides syslinux-2.06 which does
not have the IPAPPEND 2 option.  RHEL4 and higher, SLES9 and higher have a sufficient version
of syslinux.
•  RHEL 4 Gold through Update 2, pass on the kernel command line:
  ksdevice=eth1
This causes the installer to use eth1 instead of the default eth0.  RHEL has the additional option:
  ksdevice=link
This causes the installer to use the first network device it finds that has “link” – i.e. is plugged into a
network switch.  
•  For SLES 9 or 10, pass on the kernel command line:   netdevice=eth1
This causes the installer to use eth1 instead of the default eth0.

Of course, instead of the above, one could disable or remove all but one NIC in the system, such that there
is only one NIC which the kernel will name eth0.
System Runtime

name_eths

Dell developed a program, name_eths, which reduces the complexity of the solutions presented here by
automatically implementing the specific mechanisms outlined for each OS version.  We strongly recommend
you use name_eths to accomplish these tasks.  You can find the program at
http://linux.dell.com/files/name_eths/.

Name_eths must be run once, and run again if network cards are added to or removed from the system.

Name_eths presently can configure network device names on RHEL3, 4, and 5 (beta), Fedora Core 6 and
earlier, SLES9, and SLES10.  For other Linux distributions, use one of the manual workarounds below.

Manual workarounds

A system administrator can use the Ethernet hardware address (MAC address) of a network device to
assign a specific network interface name to a network port.  Each Ethernet device has a unique hardware
address associated with it. MAC addresses are normally hexadecimal numbers written in the form
“XX:XX:XX:XX:XX:XX”.

Red Hat Enterprise Linux 3 and 4 contain configuration files /etc/sysconfig/network-
scripts/ifcfg-<network interface name>.  These files contain a line, HWADDR=, which specifies
the hardware address of each port.  This line can be modified, or added, if missing, to assign a specific
network interface name to a specific network port.  The name_eths program will do this for you.

SLES9 uses the configuration file in /etc/sysconfig/network/ifcfg-eth-id-<mac address> for each Ethernet
port.  Each file may contain a PERSISTENT_NAME= line which specifies the name to be given to the device.  
One difficulty with this is that, for SLES9 releases up to and including Service Pack 3, one cannot assign
names to swap “eth0” and “eth1”.  Instead, you must rename both devices into another name space, e.g.
“eth-external” and “eth-internal”.  By modifying a few of the startup scripts, this restriction can be lifted and
you can use “eth0” and “eth1” as expected. The name_eths program provides these updated scripts and
will modify the config files for you.

SuSE Linux Enterprise Server 10 uses the configuration files in /etc/udev/rules.d/ subdirectory to
associate a hardware address with a Linux Ethernet device name.  A configuration line in the file, 30-
net_persistent_names.rules, can be modified, or added, if missing, to assign a specific network
interface name to a network hardware address associated to a specific network port. Below is an example
line:  

SUBSYSTEM=="net", ACTION=="add", SYSFS{address}=="00:02:b3:5b:75:f3",
IMPORT="/lib/udev/rename_netiface %k eth0"


The name_eths program will do this for you.

Read /usr/share/doc/packages/sysconfig/README.Persistent_Interface_Names for more
information.  
An administrator can prevent network devices from being renamed when new Ethernet cards are added to a
system by using the above methods. It will also allow the administrator to reconfigure the Linux device
names to coincide with the names physically labeled on the machine.


Identifying the network interface’s port

The ethtool command can be used to discover which physical NIC port on a server (either embedded NIC
or PCI-e/PCI-X NIC adapter cards) is currently associated with which Linux network device name. Run the
command:

ethtool –p eth0

to cause the port for the indicated network interface device (in this example, eth0) to be identified in some
manner. This typically results in the blinking of one or more of the LEDs associated with that Ethernet port.

Short-Term Solution

The Linux kernel starting with kernel 2.6.19-rc3 and higher has code to recognize the affected Dell
PowerEdge systems and automatically renumbers the PCI devices (and thus the network ports) in
ascending PCI domain/bus/device/function order (breadth-first sort).  A new kernel command line parameter,
pci=bfsort forces breadth-first device sorting on any system, and pci=nobfsort disables breadth-first device
sorting on any system.  This same fix is included in the Red Hat Enterprise Linux 4 Update 5 kernel.

Long-Term Industry Standard Solution

At present there is no formal method by which BIOS may communicate to the operating system the names
of the devices as it knows them.  This leads to the above outlined naming disconnects and provided
workarounds.  Dell, through our participation in standards bodies such as the DMTF SMBIOS Working
Group the ACPI Forum, is working towards a formal documented solution to this issue.  Once adopted into
the  standard and implemented in both BIOS and operating system code,  it is expected that a uniform and
widely accepted solution will be provided to the industry.

X3755安装回忆

[| 不指定 2008/11/18 22:47]
Host:IBM X3755 8877
HBA: QLE2460 * 2
TP NET: eth0 eth1 bnx2 bcm5708
FC NET: eth2 eth3 tg3 bcm5703
Storage: DS8000

about sdd url:
http://www-01.ibm.com/support/docview.wss?rs=540&context=ST52G7&dc=D430&uid=ssg1S4000107&loc=en_US&cs=utf-8&lang=en
ftp://ftp.software.ibm.com/storage/subsystem/linux/1.6.3.0-7/IBMsdd-1.6.3.0-7.i686.sles9.rpm
ftp://ftp.software.ibm.com/storage/subsystem/UG/1.7--2.4/SDD_1.7--2.4_User_Guide_English_version.pdf

about qlogic url:
http://support.qlogic.com/support/oem_product_detail.asp?p_id=934&oemid=284&oemname=QLE2460

other url:
http://www.novell.com/coolsolutions/appnote/19386.html
http://space.itpub.net/1384/viewspace-342931


回顾安装过程:
操作系统安装本身没有什么好说的。一些定制的需求也比较简单。下面说一下具体遇到的问题。
1: bondig遇到问题
在用ifcfg-bond0做完bonding没有任何问题的。但是安装HBA卡重启后,发现tg3模块组成的发生问题。对于同层网络可以链接。
但是路由上层的主机无法正常访问到链路。后发现,可以通过修改/etc/sysconfig/kernel来实现。
如下:MODULES_LOADED_ON_BOOT="bnx2 tg3",之所以bnx2,tg3是为了先加载eth0,eth1的模块,避免混乱。
2:HBA的安装问题
系统本身的HBA所带的qla2xxx无法正常识别,会造成存储在开机的时候卡死在那里。所以正确的安装方法是,拔掉光纤线。
然后,安装官网的驱动。安装驱动完成后,再插入光纤线就可以启动了。这个自己已经写了文档处理了。
3:Multipath的问题
正确识别了/dev/sd[b-n]的sd设备后,需要将这个两条链路的设备映射成一个设备。应用的是IBMsdd软件。设备名字为/dev/vpath[a-n]
这样就可以对于/dev/vpath[a-n]进行操作了。另外发现一个问题。有时候,忘记处理4的时候,vg出问题。需要执行
vgcfgrestore vgname
vgchange -ay vgname

4:LVM的问题
由于对于多路径需要做成相应的PV/VG/LV,发现了一些问题,首先是LVM对于可以成为PV设备的识别问题。是通过/etc/lvm/lvm.conf里面来过滤实现的。而通过pvscan,便会更新/etc/lvm/.cache的文件内容就是过滤后支持的可以作为pv的设备。所以在pvcreate执行前,首先要修改/etc/lvm/lvm.conf进而再执行pvscan来更新/etc/lvm/.cache的这个文件,然后就可以正常的创建pvcreate来处理了。另外一件重要的事情。就是重启之后lv不可见。后来重新仔细看文档,sdd这个启动进程需要改变启动级别,加/etc/init.d/boot.d里面并且要早于boot.lvm之前来运行。详细请参考sdd的手册。另需注意的地方,不要按照文档在start函数的首尾改变mount -o ro,remount /参数这个设定。取消这个操作既可。否则系统会卡死在开机的过程中。

事实上那个是必须加的。mount指令。
by kook | 分类: SuSE | 评论(0) | 引用(0) | 阅读(112)

如何在 SLES 下配置 Bonding

[| 不指定 2008/11/18 22:34]
转自: http://blog.chinaunix.net/u/5724/showart_217582.html

Novell TID: 3929220


注意:本文档结尾除含有免责条款。


软件环境
Novell SUSE Linux Enterprise Server 9
Novell SUSE Linux Enterprise Server 10


需求
你想要把几个物理网卡虚拟成一个逻辑上的网卡。 这篇文章并非针对 bonding 所有选项和特性的详细介绍,而是关于如何在 SLES 上配置 bonding 的简单介绍。关于 bonding 的更多资料请参阅内核文件 /usr/src/linux/Documentation/networking/bonding.txt 或访问 bonding 项目的主页。


配置方法
注意:开始配置之前,请参阅下面的 additional notes 小节里的配置前需了解的信息。

在这里我们假设如下的配置脚本,共有两块网卡,它们会被绑定成一块逻辑网卡,这块逻辑网卡工作在 mode=1 (主-从) 方式。目前,YaST2 无法配置 bonding 设备,
因此,我们必须手工编辑 YaST2 所创建的配置文件来生成所需的配置文件。在将来也许会有 YaST2 模块协助我们创建 bonding 相关的配置。

1- 使用 YaST2 配置物理网络设备,配置设备使用DHCP,这样可以少输入一些内容。

2- 编辑已创建的配置文件 /etc/sysconfig/network/ifcfg-eth-id-xx:xx:xx:xx:xx:xx, 并作如下修改:
       BOOTPROTO='none'
       STARTMODE='off'
    留意这些配置文件里的 pci-ids .  pci-ids 在配置文件里的表现形式为:
       _nm_name+'bus-pci-0000:06:08.1'

3- 为绑定设备在 /etc/sysconfig/network 下创建新的配置文件。将配置文件命名为 ifcfg-bond0。此配置文件应依据实际的用户环境作出相应修改。以下仅是一个例子:
       BOOTPROTO='static'
       BROADCAST='192.168.1.255'
       IPADDR='192.168.1.1'
       NETMASK='255.255.255.0'
       NETWORK='192.168.1.0'
       STARTMODE='onboot'
       BONDING_MASTER='yes'    ###Note: the line BONDING_MASTER='yes' indicates that the device is a bonding master device.
       BONDING_MODULE_OPTS='mode=1 miimon=100 use_carrier=0'
       BONDING_SLAVE0='bus-pci-0000:06:08.1'
       BONDING_SLAVE1='bus-pci-0000:06:09.1'

BONDING_MODULE_OPTS 是本实例的 bonding 模块参数。可在此传递绑定类型,链路监控等参数。上面的例子里使用 MII 链路检测方法。其它检测方法包括:
       netif_carrier 方法
       BONDING_MODULE_OPTS='miimon=100 mode=1 use_carrier=1'

       ARP monitoring 方法
       BONDING_MODULE_OPTS='arp_interval=2500 arp_ip_target=192.168.1.1 mode=1'

为每个从设备准备一个 BONDING_SLAVEn='slave_device' 变量赋值。 'slave_device' 既可为接口名,如: 'eth0',也可为网络设备描述符。 设备名很容易使用,但是这个名字由于是逻辑名因此并非持久命名。它会因网络驱动的加载顺序而改变。设备描述符 'bus-pci-0000:06:08.1' 指向特定的物理网络设备,除非设备在总线上的位置发生变化(在机器里更换插槽)否则是不会因驱动加载顺序而改变的。


4- 重启网络服务。
       rcnetwork restart


检查配置是否生效,执行如下命令:

1- 打开终端,执行命令监控系统日志文件:
       tail -f /var/log/messages

2- 打开另外一个终端,ping 绑定接口的 ip 地址:
       ping 192.168.1.1

3- 拔掉工作在主模式下的网卡接口的网线

如果配置正确,你会看到 ping 会继续,无论哪个接口处于连接状态。在日志里,会有一个接口链路断掉,另外一个接口被设为主设备的消息。重复插拔网线(也测试另外一根网线)观察日志信息以了解发生的状态转化。



需注意的方面
additional notes
为避免错误发生,建议所有的网卡用相同驱动来驱动。如果使用不同驱动,请考虑如下条件:

    * 共有三个驱动相关的选项可用于监测网卡链路状态:MII 链路状态检测,驱动中的 netif_carrier 寄存器和 ARP 监控。

注意使用所有驱动都支持的同种链路监测手段,如果实际情况下不具备这种条件,唯一的解决方案是使用另外的网卡替换现有的网卡。

要想了解所使用的驱动支持哪种监测方法,请参照以下步骤:
MII 链路状态可以由工具 mii-tool 或 ethtool 的输出来判断。

驱动对 netif_carrier 和 ARP 监控方式的支持需要通过访问源代码才能了解。因此需要安装内核源代码。
    * 想了解驱动是否支持 netif_carrier,在驱动源代码里搜索关键字:grep netif_carrier $driver_name.c
    * 想了解驱动是否支持 ARP 监控方式,驱动必须支持 last_rx 或 trans_start 两个寄存器之一。在驱动源代码里搜索关键字:grep "last_rx\&#124;trans_start" $driver_name.c

在确认过这些信息之后才能开始配置工作。

Linux 绑定驱动提供将多个网络接口绑定聚合成为一个逻辑绑定设备的方法。逻辑绑定设备的行为依赖于其工作模式。简单来讲,可供选择的工作模式包括主-从模式和负载均衡模式。此外,链路完整性检测方法同时应该指明。

绑定可以作哪些工作?通过绑定,可以主要做以下两件工作:
    * 将两个或多个网络设备聚合并在虚拟设备上实现负载均衡。有多种均衡算法可对网络流量进行负载均衡。
    * 配置两个或多个网络设备当设备失效时在设备间进行切换 (主-从)。

绑定设备从用户的角度来看,与其它常规的网络设备并无区别。例如,可以:

    * 在绑定设备上设置 802.1q VLANs。
    * sniff 网络通信。
    * 等等...

绑定无法胜任哪些任务?绑定在工作时基于对失效链路的检测,如果无法检测出所有出现的网络失效。例如,如下情况发生,绑定将无法执行正常的功能:

    * 链路检测无法正常工作。
    * 网卡驱动有 bug 或停止工作。
    * 交换机功能在链路出问题的情况下错误的报告链路状态正常。
    * 所使用的服务 out of order。
    * 路由存在问题。

有时会遇到系统重启之后,不是所有的网络接口都被激活的情况。为避免这种情况发生,在重启的过程中,需要在启动初期即加载所需的模块。如下的手段可用于此种目的:

   1. 编辑文件 /etc/sysconfig/kernel 并添加行:MODULES_LOADED_ON_BOOT="$driver_name"。
   2. 重启服务器并用 lspci 和 ifconfig 命令检查所有网络设备的状态。
   3. 如果这种方法不工作,编辑 /etc/sysconfig/kernel 文件并删除第一步插入的行。修改包含 INITRD_MODULES 语句的行; 添加 driver_name 到此变量赋值中。 如下为此行的例子:INITRD_MODULES="cdrom scsi_mod ide-cd ehci-hcd reiserfs driver_name".
   4. 调用 mkinitrd 命令。
   5. 重启机器并作检查。

另外一种方法是延迟网络接口的激活时间,一直等到模块被正确加载:

   1. 编辑 /etc/sysconfig/network/config 文件并修改变量 WAIT_FOR_INTERFACES 为需要延迟的时间(单位为秒)。要延迟3秒,输入:WAIT_FOR_INTERFACES="3"。
   2. 重启服务器检查延迟是否生效。

文档
文档 ID:    3929220
创建日期:    2006-09-12 13:26:45.0
修改日期:    2006-09-12 13:25:34.0
适用Novell产品:    SUSE Linux Enterprise Server

转自:http://blog.chinaunix.net/u/5724/showart_34505.html

保持服务器的高可用性接的高可用性是企业级IT 环境的重要因素。其中最重要的一点是服务器网络连环境的重要因素。其中最重要的一点是服务器网络连接的高可用性。网卡(NIC)绑定技术有助于保证高可用性特性并提供其它优势以提高网络性能。


   我们在这介绍的Linux双网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网 卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作。其实这项技术在Sun和Cisco中早已存在,被称为Trunking和 Etherchannel技术,在Linux的2.4.x的内核中也采用这这种技术,被称为bonding。bonding技术的最早应用是在集群—— beowulf上,为了提高集群节点间的数据传输而设计的。下面我们讨论一下bonding的原理,什么是bonding需要从网卡的混杂 (promisc)模式说起。我们知道,在正常情况下,网卡只接收目的硬件地址(MACAddress)是自身Mac的以太网帧,对于别的数据帧都滤掉, 以减轻驱动程序的负担。但是网卡也支持另外一种被称为混杂promisc的模式,可以接收网络上所有的帧,比如说tcpdump,就是运行在个模式下, bonding也运行在这个模式下,而且修改了驱动程序中的mac地址,将两块网卡的Mac地址改成相同,可以接收特定mac的数据帧。然后把相应的数据 帧传送给bond驱动程序处理。

说了半天理论,其实配置很简单:
绑定的前提条件:芯片组型号相同,而且网卡应该具备自己独立的BIOS芯片


SUSE LINUX Enterprise Server 9下的配置步骤


1. 编辑虚拟网络接口配置文件,指定网卡IP

[sles9:/etc/sysconfig/network]# cp /etc/sysconfig/network/ifcfg.template ifcfg-bond0
[sles9:/etc/sysconfig/network]# vi /etc/sysconfig/network/ifcfg-bond0


2. #vi ifcfg-bond0

  #将STARTMODE设置为'onboot'
  STARTMODE='onboot'
#将BOOTPROTO设置为'static'
  BOOTPROTO='static'
#设置IPADDR
  IPADDR=172.31.0.13
#设置子网掩码
  NETMASK=255.255.252.0
#设置广播地址
  BROADCAST=172.31.3.255

    

  这里要主意,不要在单个网卡的配置文件中指定IP地址设定信息如:地址、子网掩码或网卡ID。将上述信息指定到虚拟(bonding)配置文件ifcfg-bond?中即可。
   将IPADDR,NETMASK,BROADCAST的设置从网卡配置文件 /etc/sysconfig/network/ifcfg-eth-id-xx:xx:xx:xx:xx:xx 中删除掉,其中 xx:xx:xx:xx:xx:xx 是要配置bonding 的网卡的 MAC 地址。将BOOTPROTO设置为'static',STARTMODE设置为'onboot'。


3. 编辑/etc/modprobe.conf文件,加入如下内容,系统在加载bonding模块时,使用文件里指定的参数:

alias bond0 bonding
options bond0 miimon=100 mode=1
#options bond0 arp_interval=100 arp_ip_target=xxx.xxx.xxx.xxx mode=1

# if have multi bonding interface, un comment next two lines
#alias bond1 bonding
#options bond1 miimon=100 mode=1
##options bond0 arp_interval=100 arp_ip_target=xxx.xxx.xxx.xxx mode=1  

  说明:miimon是用来进行链路监测的。比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线 路;mode的值表示工作模式,他共有0,1,2,3四种模式,常用的为0,1两种。bonding可以通过两种机制进行链路监控,miimon需要驱动 支持,arp_interval/arp_ip_target不需要驱动支持,arp_interval指定arp检查的时间间隔, arp_ip_target是要反向查询arp的ip地址列表,最多16个,以逗号分隔,例如:arp_interval=100 arp_ip_target=192.168.100.5,192.168.100.6,表示每100毫秒作一次arp检查,如果 192.168.100.5和192.168.100.6的arp检查的结果都失败了,则链路状态为断开,bonding的active interface作出切换。
mode=0表示load balancing(round-robin)为负载均衡方式,两块网卡都工作。
mode=1表示fault-tolerance(active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份。
bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用



4 # vi /etc/rc.d/boot.local
加入下面几行
# probe ethernet card kernel module first
/sbin/modprobe e1000

# probe first bonding kernel module
/sbin/insmod bonding miimon=100 mode=1
#/sbin/insmod bonding arp_inerval=100 arp_ip_target=192.168.100.5,192.168.100.6

#if have multi bonding interface, uncomment next line
#/sbin/insmod bonding -o bond1 miimon=100 mode=1

这里我们假设用户只有两块Intel e1000 网卡,首先加载网卡的驱动e1000,如果是其他的网卡使用不同的驱动,然后加载bonding驱动。
实际上在这个阶段需要作的操作是首先按照网卡的逻辑顺序加载网卡驱动,然后在所有网卡的驱动都按所需的顺序成功加载之后再用合适的参数加载bonding驱动。
例如:在逻辑上的 eth0 eth1 为 Intel e1000,eth2 eth3 为 BCM5700,
这种情况下/etc/rc.d/boot.local :

# probe first, second ethernet card kernel module
/sbin/modprobe e1000

# probe third, fourth ethernet card kernel module
/sbin/modprobe bcm5700

# probe first bonding kernel module
/sbin/insmod bonding miimon=100 mode=1
#/sbin/insmod bonding arp_interval=100 arp_ip_target=192.168.100.5,192.168.100.6 mode=1

#if have multi bonding interface, uncomment next line
#/sbin/insmod bonding -o bond1 miimon=100 mode=1

对于链路状态的监控,除了用miimon参数外,还可以用arp_interval/arp_ip_target参数来监控
arp_interval用于配置arp检查的时间间隔,arp_ip_target用于配置在作arp检查时,使用的ip地址,
可以有多个ip地址,用逗号分隔。例如:arp_interval=100 arp_ip_target=10.0.0.1,10.0.0.2

5 添加配置文件 /etc/sysconfig/bonding.conf 和 系统V启动脚本 /etc/init.d/bonding
配置文件 /etc/sysconfig/bonding.conf内容:
declare -a BOND_INTERFACES
declare -a BOND_ARGS
# BOND_INTERFACES: array of bonding interfaces
BOND_INTERFACE=(bond0 bond1)
# BOND_ARGS: array of slaves on each bonding interfaces
BOND_ARGS=("eth0 eth1" "eth2 eth3")

由于粘贴上来的代码包含大括号,我不知道如何让大括号显示出来,所以贴在opensuse.org上了
启动脚本 /etc/init.d/bonding 内容参见网址:
http://www.opensuse.org/User_talk:Juwang


6. 编译 ifenslave 工具
可以通过安装iputils软件包安装ifenslave命令。
此外,
ifenslave util's source code was in kernel source packages, if your system do not install it please install kernel-source package first.

# cd /usr/src/linux/Documentation/networking
# gcc -Wall -Wstrict-prototypes -O -I/usr/src/linux/include ifenslave.c -o ifenslave
# cp ifenslave /sbin/ifenslave


7. 为 bonding 创建系统V 启动脚本链接
# chkconfig -a bonding

  到这时已经配置完毕, 重新启动网络服务。

# /etc/rc.d/boot.local
# /etc/rc.d/network restart
# /etc/rc.d/bonding start


 下面我们讨论以下mode分别为0,1时的情况
 mode=1工作在主备模式下,这时eth1作为备份网卡是noarp的

  [root]#ifconfig验证网卡的配置信息
 bond0 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
  inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
  UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:18495 errors:0 dropped:0 overruns:0 frame:0
  TX packets:480 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:0
 RX bytes:1587253 (1.5 Mb) TX bytes:89642 (87.5 Kb)

 eth0 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
  inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
  UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
  RX packets:9572 errors:0 dropped:0 overruns:0 frame:0
TX packets:480 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1000
  RX bytes:833514 (813.9 Kb) TX bytes:89642 (87.5 Kb)
  Interrupt:11

 eth1 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
  inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
  UP BROADCAST RUNNING NOARP SLAVE MULTICAST MTU:1500 Metric:1
  RX packets:8923 errors:0 dropped:0 overruns:0 frame:0
  TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1000
  RX bytes:753739 (736.0 Kb) TX bytes:0 (0.0 b)
  Interrupt:15   

 

 那也就是说在主备模式下,当一个网络接口失效时(例如主交换机掉电等),不会出现网络中断,系统会按照cat /etc/rc.d/boot.local 里指定网卡的顺序工作,机器仍能对外服务,起到了失效保护的功能。

 在mode=0负载均衡工作模式下,能在提供带宽的负载均衡的同时提供失效保护,我们来看一下网卡的配置信息


  [root]# ifconfig
 bond0 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
  inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
  UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
  RX packets:2817 errors:0 dropped:0 overruns:0 frame:0
  TX packets:95 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:0
 RX bytes:226957 (221.6 Kb) TX bytes:15266 (14.9Kb)

 eth0 Link encap:Ethernet HWaddr00:0E:7F:25:D9:8B
  inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
  UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
  RX packets:1406 errors:0 dropped:0 overruns:0 frame:0
  TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1000
 RX bytes:113967 (111.2 Kb) TX bytes:7268 (7.0 Kb)
  Interrupt:11


 eth1 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
  inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
  UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
  RX packets:1411 errors:0 dropped:0 overruns:0 frame:0
  TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1000
RX bytes:112990 (110.3 Kb) TX bytes:7998 (7.8 Kb)
  Interrupt:15  


  在这种情况下出现一块网卡失效,仅仅会是服务器出口带宽下降,也不会影响网络使用。
  通过查看bond0的工作状态查询能详细的掌握bonding的工作状态

  [sles9:~]# cat /proc/net/bond0/info
bonding.c:v2.2.14 (June 30, 2003)
  Bonding Mode: load balancing (round-robin)
  MII Status: up
  MII Polling Interval (ms): 100
  Up Delay (ms): 0
  Down Delay (ms): 0
  Multicast Mode: all slaves

  Slave Interface: eth1
  MII Status: up
  Link Failure Count: 0
  Permanent HW addr: 00:0e:7f:25:d9:8a

  Slave Interface: eth0
  MII Status: up
  Link Failure Count: 0
  Permanent HW addr: 00:0e:7f:25:d9:8b   



SUSE LINUX Enterprise Server 8下的配置步骤

配置步骤与 SLES9 类似,下面只列出区别的地方
(1) SLES8 下内核模块参数的配置是在 /etc/modules.conf
3. 编辑 /etc/modules.conf 文件,加入如下内容,以使系统在启动网络服务时加载bonding模块,对外虚拟网络接口设备为bond0:
alias bond0 bonding
options bond0 miimon=100 mode=1
#options bond0 arp_interval=100 arp_ip_target=xxx.xxx.xxx.xxx,xxx.xxx.xxx.xxx mode=1

(2) SLES8 下的网卡配置文件缺省命名不是 ifcfg-eth-id-xx.xx.xx.xx.xx.xx,而是
将IPADDR,NETMASK,BROADCAST的设置从网卡配置文件
/etc/sysconfig/network/ifcfg-ethn中删除掉,但保留 BOOTPROTO 为static,STARTMODE 为onboot,其中ethn 是逻辑上要加入 bonding 配置的网卡的逻辑设备名。
by kook | 分类: SuSE | 评论(0) | 引用(0) | 阅读(870)

无线查看工具

[| 不指定 2008/11/12 20:38]
曾经找了很久,那些所谓的功能强大的软件。没有一个好用的。
今天心血来潮去xdown了一下。找到了我中意的软件。

CLI版本:WirelessNetConsole V1.00
http://www.xdowns.com/soft/1/16/2008/Soft_47832.html

GUI版本:WirelessNetView V1.11
http://www.xdowns.com/soft/1/3/2008/Soft_42046.html

使用这个软件的原因很简单。一般的无线网卡管理软件不一定显示所要的网络的认证类型的,这个就是可以帮助你判断你所看到的网络是用的哪种认证方式,是WEP还是WPA。
分页: 7/45 第一页 上页 2 3 4 5 6 7 8 9 10 11 下页 最后页 [ 显示模式: 摘要 | 列表 ]