Sponsored Content
Full Discussion: Directory csum / cksum
Operating Systems AIX Directory csum / cksum Post 302769140 by MichaelFelt on Monday 11th of February 2013 10:08:24 AM
Old 02-11-2013
The reason it does not work on directories is because a very vital part of a directory entry is the first two bytes which is the inode number of an entry.

The first two entries of a directory are named . and ..
So, if either inode numbers are different csum and/or cksum will report generally report different values.
Code:
od -dc /some/directory

read: octalDump -decimalCharacter /some/directory
This will output two lines for each entry in the directory /some/directory
The first line: first number is the inode number; second line (ignore first two values (are inode number in character notation) - remaining bytes are the file/directory name)
Example:
Code:
michael@x054:[/]ls -lid /x /y
17424 drwxr-xr-x 2 pconsole pconsole 256 May 15  2012 /x
20576 drwxr-x--- 2 root     system   256 Feb 11 16:00 /y
michael@x054:[/]od -dc /x    
0000000   17424   11776       0       0       0       0       0       0
          D 020   .  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
0000020       2   11822       0       0       0       0       0       0
         \0 002   .   .  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
0000040
michael@x054:[/]od -dc /y    
0000000   20576   11776       0       0       0       0       0       0
          P   `   .  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
0000020       2   11822       0       0       0       0       0       0
         \0 002   .   .  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
0000040

Hope this helps/explains WHY cksum/csum does not work on directories.
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Anyone know how cksum works?

hello all. I'm not asking about the algorithm - or how it goes about computing the checksum - I'm asking how it views/looks at the files it does the cksum on. For instance: Say you had a directory named "dir_A" And within this directory you had some files. So: dir_A - file1 -... (5 Replies)
Discussion started by: kapolani
5 Replies

2. Shell Programming and Scripting

cksum question

Hi there, I have a query about cksum. I'm running a script on the Unix box and in a script the cksum result differs from when I run it manually. As far as I can see the file is not being changed, is there any other times that the cksum would be different. (4 Replies)
Discussion started by: rjsha1
4 Replies

3. Shell Programming and Scripting

The cksum Problem

Hi, I have a working script, well it works on my machine but when I try it on others the cksum section does not work properly (I know the scripting is not of a high quality but I'm just trying to get it working) Heres the script: #!/bin/sh case $# in 0) echo "usage: enshar filename... (7 Replies)
Discussion started by: Dim-Wit
7 Replies

4. Shell Programming and Scripting

using cksum

hi, I am trying to use the cksum feature in unix. when i make a call to it i get returned something along the lines of: 4603435 14 file3 how do i get the first part of this response only; i.e: 4603435 I'm trying to use at a way without the use of sed and creating temp... (4 Replies)
Discussion started by: leeRoberts2007
4 Replies

5. UNIX for Advanced & Expert Users

Cksum dependencies

Hi, On what factors does the cksum depend. If i build 2 machines exactly the same, then can i get the checksum of 2 compiled files same. Thanks (3 Replies)
Discussion started by: vibhor_agarwali
3 Replies

6. Shell Programming and Scripting

EEPROM CKSUM? what is this?

Hi all, So I have a binary file and I need to generate an expected EEPROM checksum for it. Ideally, I would like to input the file (with the path) and output a computed checksum. Ive been using (cksum file1) with no avail and I was just curious as to whether there is such thing as EEPROM cksum,... (1 Reply)
Discussion started by: TeamUSA
1 Replies

7. UNIX for Advanced & Expert Users

cksum for all files in home directory

I know i can run cksum <filename> . However, how i can run cksum on all the files and directories in the $HOME ?? (SUNOS) (4 Replies)
Discussion started by: moe458
4 Replies

8. UNIX for Dummies Questions & Answers

command to find cksum of all files inside a directory?

I did this: ls -lrRt | grep ^* | cksum * but it is showing cksum of sub-directories. Thanks You Please use code tags when posting data and code samples, thank you. (3 Replies)
Discussion started by: ezee
3 Replies

9. Solaris

Cksum read error for directory - Solaris 10

Hi, I am getting read error when i run cksum </dir> but this command runs successfully for the files and in different server it runs for both files and directories. I am using in both the servers solaris 10 with patch 148888-03. Please suggest... # cksum ravi(directory) 3454912345 0... (3 Replies)
Discussion started by: Navkreddy
3 Replies
Checksum action in tc(8)					       Linux						  Checksum action in tc(8)

NAME
csum - checksum update action SYNOPSIS
tc ... action csum UPDATE UPDATE := TARGET [ UPDATE ] TARGET := { ip4h | icmp | igmp | tcp | udp | udplite | sctp | SWEETS } SWEETS := { and | or | + } DESCRIPTION
The csum action triggers checksum recalculation of specified packet headers. It is commonly used to fix incorrect checksums after the pedit action has modified the packet content. OPTIONS
TARGET Specify which headers to update: IPv4 header (ip4h), ICMP header (icmp), IGMP header (igmp), TCP header (tcp), UDP header (udp), UDPLite header (udplite) or SCTP header (sctp). SWEETS These are merely syntactic sugar and ignored internally. EXAMPLES
The following performs stateless NAT for incoming packets from 192.0.2.100 to new destination 198.51.100.1. Assuming these are UDP packets, both IP and UDP checksums have to be recalculated: # tc qdisc add dev eth0 ingress handle ffff: # tc filter add dev eth0 prio 1 protocol ip parent ffff: u32 match ip src 192.0.2.100/32 flowid :1 action pedit munge ip dst set 198.51.100.1 pipe csum ip and udp SEE ALSO
tc(8), tc-pedit(8) iproute2 11 Jan 2015 Checksum action in tc(8)
All times are GMT -4. The time now is 08:20 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy