Sponsored Content
Top Forums Shell Programming and Scripting How to check if a file is not readable by anyone except the owner? Post 302417179 by bharath.gct on Wednesday 28th of April 2010 08:17:30 PM
Old 04-28-2010
How to check if a file is not readable by anyone except the owner?

All,

I have a script where I get a filename as input and do some processing with the file that I got as input.

Requirement:
Now I have a requirement where I need to check the following:

Quote:
1. Whether the file is created by the $USER (who is running this script) AND
2. The file has permissions set in such a way that only the $USER will have read permissions to that passed file AND
3. All others (group/world) should NOT have ANY permissions.
If either of this goes wrong, the script should pop out a warning message.

I tried searching the internet but did not get an answer. Any help is appreciated.

Below is the sample code:

Code:
#! /bin/ksh

echo "Enter the File : \c"
read filename

if [ -f $filename ]; then
  Check the owner AND Permissions of the file ----> Need to code this!!!
  if [ permissions are OK ]; then ----> i.e. permissions is as mentioned above
    do processing
  else
    echo "ERROR"
  fi
fi

 

10 More Discussions You Might Find Interesting

1. Solaris

Owner of file gets 'not owner' error for chgrp

Hi Folks, I know that changing users and groups is pretty basic admin, but this one has got me stumped. When I try to change the group of a file for which I am the owner for, it still gives me a 'Not owner' error. For example, when I am logged in as 'webadmin', I have the following file: ... (4 Replies)
Discussion started by: brizrobbo
4 Replies

2. Shell Programming and Scripting

Shell script that would check if the CD-rom is readable

Hi, I was wondering if there's a command in Linux that would check to see if a CD is inserted into CD-rom. I am developing a shell script that would copy a file from CD rom. For this, I have to first verify if the CD has been inserted or not. Can anyone help me? Thanks, Sundeep (1 Reply)
Discussion started by: eamani_sun
1 Replies

3. HP-UX

file in malibox is readable format?

Hi, Files coming to mailbox are in readable format? Is there any special command to read these files. suppose i have sent a file like this megh$mailx -s "mesg" xyz@server.domain<file1.dat can xyz directly read the file from his mailbox? (1 Reply)
Discussion started by: megh
1 Replies

4. SuSE

Regarding Readable check for all the files in the folder

Currently we are doing the migration to unix to linux. I am facing the new problem kganeshb@its04489:~/scripts $ ls -l | more total 340 -rw-r----- 1 kganeshb users 9038 Oct 22 13:23 109_db.txt -rw-rw---- 1 dlc users 1413 Oct 10 17:40 1.txt -rw-rw---- 1 kganeshb users 45 Jan 28 13:46 a... (2 Replies)
Discussion started by: kingganesh04
2 Replies

5. UNIX for Advanced & Expert Users

How UNIX admin set up this? how files of 744 of other owner can be removed by another owner?

Hi all, We have some files are under 744 permissions and the the owner is say owner1 and group1. Now we have another user owner2 of group2, owner2 can remove files of the owner1 and the permission of those files are 744, unix admin told us he did some config at his side so we can do that. ... (14 Replies)
Discussion started by: TheGunMan
14 Replies

6. Shell Programming and Scripting

check whether file is readable or not in ksh

i want to check the readability of a file inside the script. when i use if then echo the file "$sourcef" is not readable else echo something fi i am getting the error : f: unknown test operator when i tried to check the availability with if i was... (3 Replies)
Discussion started by: gotam
3 Replies

7. Shell Programming and Scripting

check if file is readable by others

hi all, in ksh script how do i detect if a file is readable by others ?? thanks. (6 Replies)
Discussion started by: cesarNZ
6 Replies

8. Programming

writing to file is not readable by user

In the following code segment I write to some file using , but this write is not readable by me when i open the file. any helps would be thankful. #include<stdio.h> #include<stdlib.h> #include<unistd.h> #include<sys/types.h> #include<sys/stat.h> #include<errno.h> #include<fcntl.h>... (6 Replies)
Discussion started by: saman_glorious
6 Replies

9. Solaris

Privileges : modify dir/file owner by other that's not owner

i need to do the following operations in solaris 10: 1.change owner and group owner for files which are not owned by the current user and user group 2.to can delete files in the /tmp directory which are not of the current user 3. allow to a standard user the deletion of files in the /tmp... (1 Reply)
Discussion started by: sirmark
1 Replies

10. UNIX for Dummies Questions & Answers

How do I make this file readable/printable?

When I do the file I get ELF 32-bit MSB executable SPARC Version 1, dynamically linked, not stripped I am almost 100% sure I was able to print a readable version of this file in the past but I cannot remember how. Is it possible to convert this file into something that can be read and or... (3 Replies)
Discussion started by: fsanchez
3 Replies
getfacl(1)							   User Commands							getfacl(1)

NAME
getfacl - display discretionary file information SYNOPSIS
getfacl [-ad] file... DESCRIPTION
For each argument that is a regular file, special file, or named pipe, the getfacl utility displays the owner, the group, and the Access Control List (ACL). For each directory argument, getfacl displays the owner, the group, and the ACL and/or the default ACL. Only directo- ries contain default ACLs. The getfacl utility may be executed on a file system that does not support ACLs. It reports the ACL based on the base permission bits. With no options specified, getfacl displays the filename, the file owner, the file group owner, and both the ACL and the default ACL, if it exists. OPTIONS
The following options are supported: -a Displays the filename, the file owner, the file group owner, and the ACL of the file. -d Displays the filename, the file owner, the file group owner, and the default ACL of the file, if it exists. OPERANDS
The following operands are supported: file The path name of a regular file, special file, or named pipe. OUTPUT
The format for ACL output is as follows: # file: filename # owner: uid # group: gid user::perm user:uid:perm group::perm group:gid:perm mask:perm other:perm default:user::perm default:user:uid:perm default:group::perm default:group:gid:perm default:mask:perm default:other:perm When multiple files are specified on the command line, a blank line separates the ACLs for each file. The ACL entries are displayed in the order in which they are evaluated when an access check is performed. The default ACL entries that may exist on a directory have no effect on access checks. The first three lines display the filename, the file owner, and the file group owner. Notice that when only the -d option is specified and the file has no default ACL, only these three lines are displayed. The user entry without a user ID indicates the permissions that are granted to the file owner. One or more additional user entries indi- cate the permissions that are granted to the specified users. The group entry without a group ID indicates the permissions that are granted to the file group owner. One or more additional group entries indicate the permissions that are granted to the specified groups. The mask entry indicates the ACL mask permissions. These are the maximum permissions allowed to any user entries except the file owner, and to any group entries, including the file group owner. These permissions restrict the permissions specified in other entries. The other entry indicates the permissions that are granted to others. The default entries may exist only for directories. These entries indicate the default entries that are added to a file created within the directory. The uid is a login name or a user ID if there is no entry for the uid in the system password file, /etc/passwd. The gid is a group name or a group ID if there is no entry for the gid in the system group file, /etc/group. The perm is a three character string composed of the let- ters representing the separate discretionary access rights: r (read), w (write), x (execute/search), or the place holder character -. The perm is displayed in the following order: rwx. If a permission is not granted by an ACL entry, the place holder character appears. If you use the chmod(1) command to change the file group owner permissions on a file with ACL entries, both the file group owner permis- sions and the ACL mask are changed to the new permissions. Be aware that the new ACL mask permissions may change the effective permissions for additional users and groups who have ACL entries on the file. In order to indicate that the ACL mask restricts an ACL entry, getfacl displays an additional tab character, pound sign (#), and the actual permissions granted, following the entry. EXAMPLES
Example 1: Displaying file information Given file foo, with an ACL six entries long, the command host% getfacl foo would print: # file: foo # owner: shea # group: staff user::rwx user:spy:--- user:mookie:r-- group::r-- mask::rw- other::--- Example 2: Displaying information after chmod command Continue with the above example, after chmod 700 foo was issued: host% getfacl foo would print: # file: foo # owner: shea # group: staff user::rwx user:spy:--- user:mookie:r-- #effective:--- group::--- mask::--- other::--- Example 3: Displaying information when ACL contains default entries Given directory doo, with an ACL containing default entries, the command host% getfacl -d doo would print: # file: doo # owner: shea # group: staff default:user::rwx default:user:spy:--- default:user:mookie:r-- default:group::r-- default:mask::--- default:other::--- FILES
/etc/passwd system password file /etc/group group file ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ |Interface Stability |Evolving | +-----------------------------+-----------------------------+ SEE ALSO
chmod(1), ls(1), setfacl(1), acl(2), aclsort(3SEC), group(4), passwd(4), attributes(5) NOTES
The output from getfacl is in the correct format for input to the setfacl -f command. If the output from getfacl is redirected to a file, the file may be used as input to setfacl. In this way, a user may easily assign one file's ACL to another file. SunOS 5.10 5 Nov 1994 getfacl(1)
All times are GMT -4. The time now is 12:50 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy