in this unix book that i have, it says:
the statement:
filedes = open(pathname, O_CREAT, mode);
is actually
filedes = open(pathname, O_CREAT, (~mask)&mode); /* ~ is the negation symbol */
like it's doing some type of masking.
for example,
fd =... (1 Reply)
I changed the umask in /etc/security/user to 027.
I changed the umask in /etc/profile to 027.
My current shell is ksh.
My .profile doesn't make any changes to umask or call other scripts that change umask.
Running AIX 5.3
I still get a umask of 022 instead of the expected 027. I have no... (1 Reply)
hai guys ,
i am having problem in getting the knowledge about umask.
actually when i am putting command as umask some value is coming like 0022 by defalut.
we can change its value also.
but the main thing is thye file permisiion actually depends upon umask.how is it depends upon umask i want to... (6 Replies)
Due to urgent requirement to resolve some permission issues , I wish
to set solaris 8 server so that any file written is on 777 .
I guess need to set umask , how to set it ?? (7 Replies)
I need to set a umask of 022 for my ssh sessions, or within my profile.
I have set the umask in both bash_profile and bashrc.
and when i run umask i get 0022 but when i create a file i get,
# touch test.txt
# ls -l test.txt
-rw------- 1 root root 0 Apr 26 12:25 test.txt
it seems like... (1 Reply)
Hi,
Please, let me know how the umask is working? As per my understanding is aprt from subtracting from 666/777, logical gate operation is performing.
Ex: If I set uname 011, it gave the permission like 666 for file. Request you to explain which gate's operation performed.
$uname 011... (4 Replies)
Hi, all!
Is it possible to use umask and to set the file permission level as 775?
I know I can add chmod into my scripts but I just want to explore the umask option.
Thanks! (1 Reply)
Hi guys,
I want all new files and directories created, or copy file give this permisson "rwxrwx---", with chmod i do this with octal value "770". If i execute "umask 770" the permissons is not the same with new or copy file. How can i configure this command? I do not understand the "man... (1 Reply)
Discussion started by: Xedrox
1 Replies
LEARN ABOUT BSD
mkdir
MKDIR(2) System Calls Manual MKDIR(2)NAME
mkdir - make a directory file
SYNOPSIS
mkdir(path, mode)
char *path;
int mode;
DESCRIPTION
Mkdir creates a new directory file with name path. The mode of the new file is initialized from mode. (The protection part of the mode is
modified by the process's mode mask; see umask(2)).
The directory's owner ID is set to the process's effective user ID. The directory's group ID is set to that of the parent directory in
which it is created.
The low-order 9 bits of mode are modified by the process's file mode creation mask: all bits set in the process's file mode creation mask
are cleared. See umask(2).
RETURN VALUE
A 0 return value indicates success. A -1 return value indicates an error, and an error code is stored in errno.
ERRORS
Mkdir will fail and no directory will be created if:
[ENOTDIR] A component of the path prefix is not a directory.
[EINVAL] The pathname contains a character with the high-order bit set.
[ENAMETOOLONG] A component of a pathname exceeded 255 characters, or an entire path name exceeded 1023 characters.
[ENOENT] A component of the path prefix does not exist.
[EACCES] Search permission is denied for a component of the path prefix.
[ELOOP] Too many symbolic links were encountered in translating the pathname.
[EPERM] The path argument contains a byte with the high-order bit set.
[EROFS] The named file resides on a read-only file system.
[EEXIST] The named file exists.
[ENOSPC] The directory in which the entry for the new directory is being placed cannot be extended because there is no space left on
the file system containing the directory.
[ENOSPC] The new directory cannot be created because there there is no space left on the file system that will contain the directory.
[ENOSPC] There are no free inodes on the file system on which the directory is being created.
[EDQUOT] The directory in which the entry for the new directory is being placed cannot be extended because the user's quota of disk
blocks on the file system containing the directory has been exhausted.
[EDQUOT] The new directory cannot be created because the user's quota of disk blocks on the file system that will contain the direc-
tory has been exhausted.
[EDQUOT] The user's quota of inodes on the file system on which the directory is being created has been exhausted.
[EIO] An I/O error occurred while making the directory entry or allocating the inode.
[EIO] An I/O error occurred while reading from or writing to the file system.
[EFAULT] Path points outside the process's allocated address space.
SEE ALSO chmod(2), stat(2), umask(2)4.2 Berkeley Distribution August 26, 1985 MKDIR(2)