HW - Odm: Odm (Object Data Manager)
HW - Odm: Odm (Object Data Manager)
HW - Odm: Odm (Object Data Manager)
-------------------------
- Objects (odmshow):
Each object class consists of objects. Each object is one record in an object
class.
-------------------------
- CuDv (Customized Device): It contains entries for all device instances defined in
the system. (A defined device has been created by the define method, but an actual
device no necessarily should be attached to the system)
- CuDvDr (Customized Device Driver): It stores the major and minor numbers of
devices. (Some programs use these special files to access a certain device.)
- Config_Rules: There is one ODM object class which the cfgmgr uses to determine
the correct sequence when configuring devices.
-------------------------
3 places of SWVPD:
4 classes of SWVPD:
- inventory: contains information about the files associated with the program
(odmget -q lpp_id=264 inventory)
-------------------------
Object Classes:
2. A device can be defined by either the cfgmgr (if the device is detectable), or
by the mkdev command. Both commands use the define method to generate an instance
in ODM class CuDv. The configure method is used to load a specific device driver
and to generate an entry in the /dev directory.
3. At this point, you only have default attribute values in PdAt, which means for a
terminal you could not log in (default is disable) and the terminal type is dumb.
If you change the attributes, for example, log in to enable and term to ibm3151,
you get objects describing the nondefault values in CuAt.
-------------------------
The lsdev command actually gets its information from the PdDv and CuDv files.
The lsattr command actually queries the PdAt and CuAt files.
-------------------------
Operators:
= equal
!= not equal
> greater
>= greater than or equal to
< less than
<= less than or equal to
like similar to; finds path names in character string data
? odmget -q "name like hdisk?" CuDv
* odmget -q "name like hdisk*" CuDv
some examples:
odmget -q name=hdisk0 CuDv
odmget -q "name=hdisk0 and attribute=pvid" CuAt
odmget -q "lpp_name=bos.rte.filesystem and fix=52" product
-------------------------
getlvodm -j <hdisk> get the vgid for the hdisk from the odm
getlvodm -t <vgid> get the vg name for the vgid from the odm
getlvodm -v <vgname> get the vgid for the vg name from the odm
getlvodm -p <hdisk> get the pvid for the hdisk from the odm
getlvodm -g <pvid> get the hdisk for the pvid from the odm
-------------------------
I wanted to increase queue_depth value in PdAt, but to avoid any odm manipulation
used chdef command:
chdef -a attribute=value -c <Class> -s <subclass> -t <type>
-------------------------
-------------------------
PdAt:
uniquetype = "tape/vscsi/ost"
attribute = "block_size"
deflt = "512"
values = "0-2147483648,1"
width = ""
type = "R"
generic = "DU"
rep = "nr"
nls_index = 2
-before adding the new object, the old object must be deleted otherwise we would
have 2 objects:
odmdelete -q"uniquetype=tape/vscsi/ost and attribute=block_size" -o
PdAt
(if we have 2 objects with the same type, the 1st one will be used)
2. odmchange command
(It does the same as the delete and the add operations, but all in one step)
-------------------------
------------------
cd /etc/objrepos
grep -l paging00 * <--lists the name of the files (once) which
contain matching line
------------------
lppchk -v shows problems with a fileset and you don't want to (or can't) remove it:
devices.common.IBM.iscsi.rte 5.2.0.0 (not installed; requisite fileset)
1. save ODM
tar -cvf /tmp/odm.tar /etc/objrepos /usr/lib/objrepos
2. check lpp_id
odmget -q name=devices.common.IBM.iscsi.rte lpp
output will show lpp_id:
...
lpp_id = 355
5. (if needed) reinstall base fileset with force flag (then update)
installp -aF -d /home/bb/bb1 all
or
------------------
Plan: Clean up from ODM the failed updated fileset, then update again.)
1. lppchk -v shows:
bos.rte.printers 5.3.10.1 (BROKEN)
3. backing up ODM:
tar -cvf /tmp/odm.etc.tar /etc/objrepos
tar -cvf /tmp/odm.usr.lib.tar /usr/lib/objrepos
7. final check to identify the corect entry what we need to delete (mod=10)
odmget -q "lpp_name=bos.rte.printers and mod=10" product <--mod=10 is the
updated version
odmget -q "lpp_name=bos.rte.printers and mod=8" product <--mod=8 is the base
version
------------------
Edit /tmp/pdatreserve_policy:
PdAt:
uniquetype = "disk/fcp/Hitachi"
attribute = "reserve_policy"
deflt = "no_reserve"
values = "no_reserve,single_path,PR_exclusive,PR_shared"
width = ""
type = "R"
generic = "DU"
rep = "sl"
nls_index = 96
------------------
Major/Minor numbers from ODM:
CuDvDr:
resoure="devno"
value1="15"
value2="2"
value3="lp1"