Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Unsure why access time on a directory change isn't changing Post 303037890 by hicksd8 on Thursday 15th of August 2019 05:12:14 PM
Old 08-15-2019
You didn't say which operating system this is but there has to be difference between read and open. If you think about it, if a read updated the access time then all the access times would change when a backup is run which wouldn't be any good if you had to restore the whole lot. However, if an application opens a file then that will update the access time. For example, if you open a file with vi and then immediately quit with :q!, the access time should update because the file has been specifically opened. Additionally, if youvi followed by :w! (even if you haven't changed anything) the file will be written back so the modified date should change.

Now with a directory it is holding the details of its files so if a new file is created the directory is modified. Also, if an application specifically opens a file with that directory in its pathname (and blocks may need to be allocated/deallocated to the file), then the access time should change.

You should be able to verify this on your operating system with a few tests.

Last edited by hicksd8; 08-16-2019 at 05:20 AM..
These 2 Users Gave Thanks to hicksd8 For This Post:
 

8 More Discussions You Might Find Interesting

1. Solaris

help in changing the access level for directories

Hi all, can some one help me in chmod command, and let me know the various combinations for this command. for : eg chmod -R 777 <dir names> this gives all rights to all but i want the specific access levels kindly help me out in this issue. Thank you, lakshmanan (2 Replies)
Discussion started by: lakshmananl
2 Replies

2. Linux

A little unsure of something

If i want to display a banner that says Happy Bday, but I want to put that output banner into a file called bday4me, could I use the command (echo) or (banner -w35) Happy Bday >> bday4me would this command work? Sorry for asking, but i'm at home just now and don't have access to a UNIX... (3 Replies)
Discussion started by: Cisco
3 Replies

3. Shell Programming and Scripting

How to change prompt color when changing path

Hi all, Can you tell me how to change the prompt color (only the path part) when I chnange directory with "cd"? I use the sequence below in ".bashrc" (Solaris 8) to change my prompt colors and I'd like to modify it to change the path color when I cange directory. PSC() { echo -ne "\"; }... (0 Replies)
Discussion started by: majormark
0 Replies

4. Shell Programming and Scripting

Last modified time of the folder is changing when I view the file inside the directory

Hi., Last modified time of the folder is changing when I view the file inside the directory. Here is the test on sample directory. I believe that ls -l commands gives the time detail w.r.t last modified time. Pl. suggest. bash-3.2$ mkdir test bash-3.2$ cd test bash-3.2$ touch myfile.txt... (2 Replies)
Discussion started by: IND123
2 Replies

5. UNIX for Dummies Questions & Answers

File access time does not change on some files

Hey All, I want to get the access time of files in a directory. I used ls -lu on a directory and picked a file that had the access time of Mar 1 and used cat to get the contents of the file. Then I used the ls -lu again and the access time changed on that file. Perfect !! Now if I cat a... (10 Replies)
Discussion started by: vipulgupta0
10 Replies

6. Shell Programming and Scripting

Unsure of sed notation (nu\\t.\*)

This piece of code is in a shell script I'm trying to modify to run on my system. sed s:nu\\t.\*:"nu=0" It's clearly a substitute script which replaces nu\\t.\* with nu = 0. What exactly does nu\\t.\* demarcate though-- I thought it was just the previous nu = xxxxx (which existed and is... (3 Replies)
Discussion started by: czar21
3 Replies

7. Shell Programming and Scripting

Change to directory and search some file in that directory in single command

I am trying to do the following task : export ENV=aaa export ENV_PATH=$(cd /apps | ls | grep $ENV) However, it's not working. What's the way to change to directory and search some file in that directory in single command Please help. (2 Replies)
Discussion started by: saurau
2 Replies

8. Shell Programming and Scripting

Bash looking in different directory for file that isn't referenced in command

When I run the below bash I get the expected output, which is the sum of all matching targets less than 20 in $file1. The filename in the directory is fixed (in bold). for file1 in /home/cmccabe/Desktop/test/panel/reads/16-0000_EPIL70.txt ; do bname=`basename $file1` ... (3 Replies)
Discussion started by: cmccabe
3 Replies
CHROOT(2)						      BSD System Calls Manual							 CHROOT(2)

NAME
chroot -- change root directory LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <unistd.h> int chroot(const char *dirname); DESCRIPTION
The dirname argument is the address of the pathname of a directory, terminated by an ASCII NUL. The chroot() system call causes dirname to become the root directory, that is, the starting point for path searches of pathnames beginning with '/'. In order for a directory to become the root directory a process must have execute (search) access for that directory. It should be noted that chroot() has no effect on the process's current directory. This call is restricted to the super-user. Depending on the setting of the 'kern.chroot_allow_open_directories' sysctl variable, open filedescriptors which reference directories will make the chroot() fail as follows: If 'kern.chroot_allow_open_directories' is set to zero, chroot() will always fail with EPERM if there are any directories open. If 'kern.chroot_allow_open_directories' is set to one (the default), chroot() will fail with EPERM if there are any directories open and the process is already subject to the chroot() system call. Any other value for 'kern.chroot_allow_open_directories' will bypass the check for open directories RETURN VALUES
Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error. ERRORS
The chroot() system call will fail and the root directory will be unchanged if: [ENOTDIR] A component of the path name is not a directory. [EPERM] The effective user ID is not the super-user, or one or more filedescriptors are open directories. [ENAMETOOLONG] A component of a pathname exceeded 255 characters, or an entire path name exceeded 1023 characters. [ENOENT] The named directory does not exist. [EACCES] Search permission is denied for any component of the path name. [ELOOP] Too many symbolic links were encountered in translating the pathname. [EFAULT] The dirname argument points outside the process's allocated address space. [EIO] An I/O error occurred while reading from or writing to the file system. SEE ALSO
chdir(2), jail(2) HISTORY
The chroot() system call appeared in 4.2BSD. It was marked as ``legacy'' in Version 2 of the Single UNIX Specification (``SUSv2''), and was removed in subsequent standards. BUGS
If the process is able to change its working directory to the target directory, but another access control check fails (such as a check for open directories, or a MAC check), it is possible that this system call may return an error, with the working directory of the process left changed. SECURITY CONSIDERATIONS
The system have many hardcoded paths to files where it may load after the process starts. It is generally recommended to drop privileges immediately after a successful chroot call, and restrict write access to a limited subtree of the chroot root, for instance, setup the sand- box so that the sandboxed user will have no write access to any well-known system directories. BSD
January 3, 2012 BSD
All times are GMT -4. The time now is 10:51 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy