- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: Logical Names nesting
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 03:44 AM
тАО06-05-2008 03:44 AM
* I have this system:
OpenVMS V7.3-2 on node SEGRI2 5-JUN-2008 13:24:09.71 Uptime 295 22:36:57
* with (among others) this disk:
$ sh dev DISK$USER_D
Device Device Error Volume Free Trans Mnt
Name Status Count Label Blocks Count Cnt
$1$DGA422: (XXXXXX) Mounted 0 USER_D 22077916 1 1
* and its associated logical name:
$ sh log/ful DISK$USER_D
"DISK$USER_D" [exec] = "$1$DGA422:" [concealed,terminal] (LNM$SYSTEM_TABLE)
* Now, I try to do this (define nested logicals):
$ def/exec/tra DK$1 DISK$USER_D:[USER26.]
$ def/exec/tra DK$2 DK$1:[cep.]
* That's the way they are:
$ sh log dk$%/ful
"DK$1" [exec] = "DISK$USER_D:[USER26.]"
"DK$2" [exec] = "DK$1:[CEP.]"
* But if I try using them, I get errors!:
$ dir DK$2:[000000]
%DIRECT-E-OPENIN, error opening DK$2:[000000] as input
-RMS-F-DIR, error in directory name
* unless I try the first-level nested one:
$ dir DK$1:[000000]
Directory DISK$USER_D:[USER26.][000000]
CEP.DIR;1 PACBD.DIR;1 SD_AXP.DIR;1
Total of 3 files.
-------------------------------------------------------------
* Let's try concealing:
$ def/exec/tra=(concealed) DK$1 DISK$USER_D:[USER26.]
$ def/exec/tra=(concealed) DK$2 DK$1:[cep.]
* That's the way they are:
$ sh log dk$%/ful
"DISK$1" [exec] = "DISK$USER_D:[USER26.]" [concealed]
"DISK$2" [exec] = "DISK$1:[CEP.]" [concealed]
* And just the same results:
$ dir DK$2:[000000]
%DIRECT-E-OPENIN, error opening DK$2:[000000] as input
-RMS-F-DEV, error in device name or inappropriate device type for operation
$ dir DK$1:[000000]
Directory DK$1:[000000]
CEP.DIR;1 PACBD.DIR;1 SD_AXP.DIR;1
Total of 3 files.
-------------------------------------------------------------
Can anyone help me? Thanks in advance!
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 04:01 AM
тАО06-05-2008 04:01 AM
SolutionAccording to the documentation, _CONCEALED DEVICE_ logicals cannot be nested.
In practice, it is (just a little) less strict:
$ Define/trans=conc DISK1 $1$DGA422:
$ Define/trans=conc rooted disk1:[root.]
(assume ROOT.DIR does exist)
$ Dir rooted:[000000]
Directory ROOTED
(etc)
But the definition of the device part of a concealed device can NOT itself contain, directly nor indirectly, a DIRECTORY part.
(much as I have regretted this myself in the past!)
hth
Proost.
Have one on me.
jpe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 04:04 AM
тАО06-05-2008 04:04 AM
Re: Logical Names nesting
When you define a concealed, you have a string .][ in your device definition.
You can have this string only once in a device definition.
So you can't do a concealed of concealed.
If you search on ITRC, you will find a good number of posts on that subject.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 09:26 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 01:34 PM
тАО06-05-2008 01:34 PM
Re: Logical Names nesting
>(much as I have regretted this myself in
>the past!)
Allowing nesting of logical names concealed devices might seem attractive, but it results in an explosion of complexity (consider multiple nestings). Were concealed devices implemented differently, it might have been feasible, but we're stuck with the historical separation of device and directory, which makes nesting a somewhat intractable problem. (the unix file specification model, where there is no distinction between device, directory and file is much more flexible and often easier to deal with, but we're stuck with what we've got)
What makes things worse is, there are some circumstances where nesting apparently "works", but, as documented, it's not guaranteed.
The attachment is a command procedure to define a concealed logical name to a specified directory which resolves all logical names and file specification peculiarities.
Example:
$ @DEFINE_CONCEALED MYLOGIN SYS$LOGIN /JOB
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 11:23 PM
тАО06-05-2008 11:23 PM
Re: Logical Names nesting
First of all: thanks to everyone for their answers.
Second, surely I was not good enough at explaining my needs, maybe -sure!- there's something I don't -still- understand in the "Logical Names World". It was my fault, and I apologize. So I'll try again:
I would like to get something like that (don't mind about the "Directory DISK$U..." header; all I want is the files list!):
$ dir DISK$USER_D:[USER26.CEP]
Directory DISK$USER_D:[USER26.CEP]
USUARI.DIR;1
Total of 1 file.
when I issue:
$ dir DK$2:[000000]
%DIRECT-E-OPENIN, error opening DK$2:[000000] as input
-RMS-F-DIR, error in directory name
That's why I've been trying with concealing and not concealing the logical names involved. I don't care if I get something like:
$ dir DK$2:[000000]
Directory $1$DGA422:[USER26.CEP]
USUARI.DIR;1
Total of 1 file.
My question is: is there a way to get the above result (other than assigning disk$2 to the "full" path)? Please note that I'm trying to use logical names to it's "maximum" extent (I'm moving my old system to a new one, trying to minimize the changes in disk assigning; my new system has bigger disks, so I put a few old ones in just one new -a directory for each old disk).
I hope this clarifies my "problem". Please feel free to ask any further data you may need.
Thank you again
P.S. I've tried also this (DEconcealing physical device logical name):
$ sh log dk$%,DISK$USER_D/ful
(LNM$PROCESS_TABLE) [kernel]
[no protection information]
(LNM$JOB_816601C0) [kernel] [shareable] [Quota=(14232,15000)]
[Protection=(RWCD,RWCD,,)] [Owner=[SYSMGR,SYSTEM]]
(LNM$GROUP_000001) [kernel] [shareable,group]
[Protection=(RWCD,R,R,)] [Owner=[SYSMGR,*]]
(LNM$SYSTEM_TABLE) [kernel] [shareable,system]
[Protection=(RWC,RWC,R,R)] [Owner=[SYSMGR,SYSTEM]]
"DISK$USER_D" [exec] = "$1$DGA422:" [terminal]
"DK$1" [exec] = "DISK$USER_D:[USER26.]"
"DK$2" [exec] = "DK$1:[CEP.]"
(LNM$SYSCLUSTER_TABLE) [kernel] [shareable,system]
[Protection=(RWC,RWC,R,R)] [Owner=[SYSMGR,SYSTEM]]
(DECW$LOGICAL_NAMES) [exec] [shareable]
[Protection=(RWCD,RWCD,R,R)] [Owner=[SYSMGR,SYSTEM]]
SEGRI2> dir DK$2:[000000]
%DIRECT-E-OPENIN, error opening DK$2:[000000] as input
-RMS-F-DIR, error in directory name
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 11:30 PM
тАО06-05-2008 11:30 PM
Re: Logical Names nesting
$ define dk$2 /exec/Sys/translation=concea DISK$USER_D:[USER26.CEP.]
You can't defined concealed logical names using concealed logical names (that's why John provides his DCL routine).
regards Kalle
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 11:45 PM
тАО06-05-2008 11:45 PM
Re: Logical Names nesting
>>>
Please note that I'm trying to use logical names to it's "maximum" extent
<<<
VERY good! More people should do that!
>>>
is there a way to get the above result (other than assigning disk$2 to the "full" path)?
<<<
The way _I_ would tackle this:
In the ONE procedure clusterwide that defines fysical devices, like disks, tapes, ,,,
$ DEFINE /SYSTEM/EXEC DISKnn $1$DGA422: /trans=conc
In the ONE procedure clusterwide that defines all (real & potential) concealed devices
$ DEFINE /system/exec CEP_ROOT DISKnn:[USER26.CEP.]/trans=conc
Note: after these two bootstrap procedures (MOUNT step in between) have been run, _NO_ procedure should EVER reference Fysical devices, NOR disks anymore (BACKUP excepted).
In the initialisition procedure for application CEP:
$ define [/table] [/mode] USUARI CEP_ROOT:[USUARI]
ANY references now should be through either CEP_ROOT or USUARI.
$ DIR CEP_ROOT:[000000]
USUARI.DIR;1
$ DIR USUARI:
CEP_ROOT:[USUARI]
--- Many ways leading to Rome, but this schema has helped me/us tremendously for over 20 years now. It has been deployed in dozens of sites, expecially in the timeframe that I was involved in rolling out turn-key applications.
It also was the basis for our 11-year-uptime cluster.
Success!
Proost.
Have one on me.
jpe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-05-2008 11:48 PM
тАО06-05-2008 11:48 PM
Re: Logical Names nesting
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-06-2008 12:05 AM
тАО06-06-2008 12:05 AM
Re: Logical Names nesting
P.S. The schema you pointed out is the same (good one) we've been using for 19 years, but I don't want the easy way... although maybe that's the only one...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-06-2008 12:55 AM
тАО06-06-2008 12:55 AM
Re: Logical Names nesting
OK, "nested logicals".
As in "each step chaining one directory deeper" -- NO way, see the response by John G
As in: " One logical has a tranlation which is a LNM which has ...
Example:
DISKnn = $1$DGAmmm (concealed, cluster table)
APP_Vx_y_ROOT = DISKnn:[APP_Vx_y.] (conc, cluster)
( x_y present 3 times, with varying x and/or y) (allows for simultanious different versions)
APP_client_DATA_ROOT = DISKpp:[APP_client_DATA.] (conc, cluster table)
(varying clients)
APP_DATA_ROOT = APP_client_DATA_ROOT: (conc, APP_Vx_y_client table )
APP_ROOT = APP_Vx_y_ROOT: (concealed, APP_Vx_y_client table )
Now, any directory LNM can again be defined in de Syetem or Cluster table.
When deploying turm=key systems, we had EACH delivered system, and all patches theroff, on tape. Total about 60 - 70 times our total disk capacity; but when needed any environment could simply be restored to any disk or disks, as long as the total online desire was below online capacity.
Most of our TOP root definitions (containing the version or client ID) were NOT to DISKnn, but to TAPEpppp. Upon restore the definition was made current; after modification the version ID was updated, and that environment moved to tape again.
This was fully operational in the late 1980's, and still when I left there by the end of 1994.
hth
Proost.
Have one on me.
jpe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-06-2008 02:55 AM
тАО06-06-2008 02:55 AM
Re: Logical Names nesting
I've finally "seen the light". It's all about the number of roots ([xxx.]) in a file specification:
node::device:[root.][directory]filename.type;version
We're allowed to use one root only!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-06-2008 04:40 AM
тАО06-06-2008 04:40 AM