Sponsored Content
Full Discussion: File permisson doesn't work
Top Forums Shell Programming and Scripting File permisson doesn't work Post 302777285 by alister on Thursday 7th of March 2013 03:00:25 PM
Old 03-07-2013
Quote:
Originally Posted by sangfroid
you are running as a root user, try changing ownership of the file to some other user and then test..
That won't make a difference. As RudiC stated, if the shell is privileged, the read test will always succeed.

---------- Post updated at 03:00 PM ---------- Previous update was at 02:47 PM ----------

This is what lies behind bash's implementation, from lib/sh/eaccess.c:
Code:
  if (current_user.euid == 0)
    {
      /* Root can read or write any file. */
      if ((mode & X_OK) == 0)
	return (0);

      /* Root can execute any file that has any one of the execute
	 bits set. */
      if (st.st_mode & S_IXUGO)
	return (0);
    }

In that code, "mode" is an integral value representing what is being tested (reading = R_OK, writing = W_OK, executable = X_OK, a regular file = F_OK, etc).

Regards,
Alister
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Why doesn't this work?

cat .servers | while read LINE; do ssh jason@$LINE $1 done exit 1 ./command.ksh "ls -l ~jason" Why does this ONLY iterate on the first server in the list? It's not doing the command on all the servers in the list, what am I missing? Thanks! JP (2 Replies)
Discussion started by: jpeery
2 Replies

2. UNIX for Dummies Questions & Answers

Script doesn't work, but commands inside work

Howdie everyone... I have a shell script RemoveFiles.sh Inside this file, it only has two commands as below: rm -f ../../reportToday/temp/* rm -f ../../report/* My problem is that when i execute this script, nothing happened. Files remained unremoved. I don't see any error message as it... (2 Replies)
Discussion started by: cheongww
2 Replies

3. UNIX for Dummies Questions & Answers

my make doesn't work

hi I wrote the following makefile, I have just one problem, when i type make clean I get the message make 'clean' is up to date and any obj file is removed from my folder, what's wrong? Thank you CC = cc all: es.o elaboration.o $(CC) -o es es.o elaboration.o elaboration.o:... (0 Replies)
Discussion started by: Puntino
0 Replies

4. Shell Programming and Scripting

alias doesn't work

Hi I have put alias ll='ls -la' in .profile file but it doesn't work. On hand it works it looks like the .profile file is not beeing read. How to check whitch file is loaded? ,profile? .bash_profile? My system: SunOS mion 5.10 Generic Shell: /bin/pfksh Thanks (2 Replies)
Discussion started by: miojamo
2 Replies

5. Solaris

shutdown -y -i5 -g0 DOESN'T work

hello, The command above seems not working on my solaris 8/9 sparc machines. a. resulted to the ff below when I instead use "shutdown" only. Broadcast Message from root (pts/1) on "hostname" date.. The system "hostname" will be shut down in 30 seconds THE SYSTEM bdosg IS BEING SHUT... (4 Replies)
Discussion started by: lhareigh890
4 Replies

6. Shell Programming and Scripting

directory structure & file permisson comparison

Hi - I want to compare permissions of the directory structure and files beneath it with permissions one week back on same directory structure and files beneath it. if any changes to permissions of any file or directory permissions send an email. I am not sure how to list the permissions of all... (1 Reply)
Discussion started by: oraclermanpt
1 Replies

7. UNIX for Dummies Questions & Answers

Why doesn't this work?

find . -name "05_scripts" -type d -exec mv -f {}/'*.aep\ Logs' {}/.LogFiles \; Returns this failure: mv: rename ./019_0120_WS_WH_gate_insideTEST/05_scripts/*.aep\ Logs to ./019_0120_WS_WH_gate_insideTEST/05_scripts/.LogFiles/*.aep\ Logs: No such file or directory I don't know why it's trying... (4 Replies)
Discussion started by: scribling
4 Replies

8. Shell Programming and Scripting

Ssh remote command doesn't work from script file

I have 10 application servers in a distributed architecture generating their own application logs. Each server has application utility to continuously tail the log. for example following command follows tails and follows new logfiles as they are generated server1$ logutility logtype When I run... (8 Replies)
Discussion started by: indianya
8 Replies

9. Shell Programming and Scripting

FTP xlsx file doesn't work ...contains wierd characters.

Guys, I've a xlsx file containing pivot tables and my job is to FTP it from one Linux terminal to another. I use the script below : ftp -in xxxx > /ftp.log 2>&1 <<EOT user xxx yyyy binary cd <directory> put xxx.xlsx `basename xxx.xlsx` bye EOT After the file is received in the FTP... (2 Replies)
Discussion started by: bhagat.singh-j
2 Replies

10. Shell Programming and Scripting

-ne 0 doesn't work -le does

Hi, I am using korn shell. until ] do echo "\$# = " $# echo "$1" shift done To the above script, I passed 2 parameters and the program control doesn't enter inside "until" loop. If I change it to until ] then it does work. Why numeric comparison is not working with -ne and works... (3 Replies)
Discussion started by: ab_2010
3 Replies
EUIDACCESS(3)						     Linux Programmer's Manual						     EUIDACCESS(3)

NAME
euidaccess, eaccess - check effective user's permissions for a file SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */ #include <unistd.h> int euidaccess(const char *pathname, int mode); int eaccess(const char *pathname, int mode); DESCRIPTION
Like access(2), euidaccess() checks permissions and existence of the file identified by its argument pathname. However, whereas access(2), performs checks using the real user and group identifiers of the process, euidaccess() uses the effective identifiers. mode is a mask consisting of one or more of R_OK, W_OK, X_OK and F_OK, with the same meanings as for access(2). eaccess() is a synonym for euidaccess(), provided for compatibility with some other systems. RETURN VALUE
On success (all requested permissions granted), zero is returned. On error (at least one bit in mode asked for a permission that is denied, or some other error occurred), -1 is returned, and errno is set appropriately. ERRORS
As for access(2). VERSIONS
The eaccess() function was added to glibc in version 2.4. CONFORMING TO
These functions are nonstandard. Some other systems have an eaccess() function. NOTES
Warning: Using this function to check a process's permissions on a file before performing some operation based on that information leads to race conditions: the file permissions may change between the two steps. Generally, it is safer just to attempt the desired operation and handle any permission error that occurs. This function always dereferences symbolic links. If you need to check the permissions on a symbolic link, use faccessat(2) with the flags AT_EACCESS and AT_SYMLINK_NOFOLLOW. SEE ALSO
access(2), chmod(2), chown(2), faccessat(2), open(2), setgid(2), setuid(2), stat(2), credentials(7), path_resolution(7) COLOPHON
This page is part of release 3.53 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. 2010-11-01 EUIDACCESS(3)
All times are GMT -4. The time now is 07:01 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy