Sponsored Content
Full Discussion: Is `mv dir dir2` atomic ?
Top Forums UNIX for Dummies Questions & Answers Is `mv dir dir2` atomic ? Post 302170830 by Perderabo on Tuesday 26th of February 2008 10:42:52 PM
Old 02-26-2008
I'm really only familiar with the HP-UX version, but I'm guessing that Linux version must be similar. HP's mvdir is confined to operating in a filesystem...never between filesystems. To understand it, consider the first unix implemention of it... If you have /parent/A which has a lot of files in it and you move it to /parent/B, the original version would invoke the link system call and link A to B. At this point, both A and B exist and they are just two names to the same directory. Then, as soon as possible, it would unlink A. This would leave just B. The operation took two very quick system calls. This was NOT atomic. Between the system calls, the filesystem was in an illegal state. A and B should not be links to the same directory even for a millisecond. Today, instead of two system calls, we use just one...and rename(). This is absolutely atomic. For all intents and purposes A just morphs into B. A and B must be in the same filesystem, but not necessarily have the same exact parent as I have indicated here.
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

a script to clone a dir tree, & overwrite the dir struct elsewhere?

hi all, i'm looking for a bash or tcsh script that will clone an empty dir tree 'over' another tree ... specifically, i'd like to: (1) specify a src directory (2) list the directory tree/hiearchy beneath that src dir, w/o files -- just the dirs (3) clone that same, empty dir hierarchy to... (2 Replies)
Discussion started by: OpenMacNews
2 Replies

2. Programming

Atomic lock file creation

Hello, I need to implement a locking system in C. My problem is how to make the check if the lock file exist and locking it atomic operation. I want to make something like this: FILE* lock_fname; lock_fname = fopen ( "file.lock", "r"); /*check if file exsists*/ if (lock_fname) { fclose... (7 Replies)
Discussion started by: tsurko
7 Replies

3. UNIX and Linux Applications

CPIO Problem, copy to the root dir / instead of current dir

HI all, I got a CPIO archive that contains a unix filesystem that I try to extract, but it extract to the root dir / unstead of current dir, and happily it detects my file are newer otherwise it would have overwrited my system's file! I tried all these commands cpio -i --make-directories <... (2 Replies)
Discussion started by: nekkro-kvlt
2 Replies

4. Shell Programming and Scripting

A script to find dir, delete files in, and then del dir?

Hello!! I have directories from 2008, with files in them. I want to create a script that will find the directoried from 2008 (example directory: drwxr-xr-x 2 isplan users 1024 Nov 21 2008 FILES_112108), delete the files within those directories and then delete the directories... (3 Replies)
Discussion started by: bigben1220
3 Replies

5. UNIX for Dummies Questions & Answers

How to list all files in dir and sub-dir's recursively along with file size?

I am very new to unix as well as shell scripting. I have to write a script for the following requirement. In have to list all the files in directory and its sub directories along with file path and size of the file Please help me in this regard and many thanks in advance. (3 Replies)
Discussion started by: nmakkena
3 Replies

6. UNIX for Dummies Questions & Answers

system calls and atomic operation

Are system calls atomic operations? Is a system call can be interrupted? (2 Replies)
Discussion started by: vistastar
2 Replies

7. Shell Programming and Scripting

KSH - Find paths of multiple files in CC (dir and sub-dir))

Dear Members, I have a list of xml files like abc.xml.table prq.xml.table ... .. . in a txt file. Now I have to search the file(s) in all directories and sub-directories and print the full path of file in a output txt file. Please help me with the script or command to do so. ... (11 Replies)
Discussion started by: Yoodit
11 Replies

8. Linux

Atomic Operations

Hello I am a newbie in linux. Please tell me what are atomic operations in Linux. IS i++ a atomic oparation?? Please help.. (3 Replies)
Discussion started by: aditya08
3 Replies

9. AIX

Assign read write permission to the user for specific dir and it's sub dir and files in AIX

I have searched this quite a long time but couldn't find the right method for me to use. I need to assign read write permission to the user for specific directories and it's sub directories and files. I do not want to use ACL. I do not want to assign user the same group of that directories too.... (0 Replies)
Discussion started by: blinkingdan
0 Replies
mvdir(1)						      General Commands Manual							  mvdir(1)

NAME
mvdir - Moves (renames) a directory SYNOPSIS
mvdir directory1 directory2 DESCRIPTION
The mvdir command renames directories within a file system. To use mvdir, you must have write permission to directory1 and directory2 and to the parent directories of directory1 and directory2. The directory1 argument must name an existing directory. If directory2 does not exist, directory1 is moved to directory2. If directory2 exists, directory1 becomes a subdirectory of directory2. directory2 cannot be a subdirectory of directory1. Directories cannot be moved across file systems. You can also rename a directory with the mv command. NOTES
This command was made obsolete by the mv command. EXAMPLES
To rename or move a directory to another location, enter: mvdir appendixes manual If manual does not exist, then this renames the directory appendixes to manual. If a directory named manual already exists, this moves appendixes and its contents to manual/appendixes. In other words, appendixes becomes a subdirectory of manual. SEE ALSO
Commands: mkdir(1), mv(1) Functions: rename(2) mvdir(1)
All times are GMT -4. The time now is 10:38 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy