Kit Ho
Kit Ho

Reputation: 26958

Same file content but different md5sum value?

I found a weird problem. The common-account.puppet are not read properly by pam The common-account.written can be read properly by pam.

However their text are the same, using meld and vimdiff

md5sum  common-account.puppet common-account.written
7e80513f6dc8f7604ec36dbf6248780d  common-account.puppet
47425f79f81d38eadbadb0c3de89aafc  common-account.written

I am not sure what is difference between two. Any command to show more diff log?

kithokit@15:46:58 ~ $ md5sum common-account.puppet common-account.written 
7e80513f6dc8f7604ec36dbf6248780d  common-account.puppet
47425f79f81d38eadbadb0c3de89aafc  common-account.written
kithokit@15:47:08 ~ $ diff common-account.puppet common-account.written
1,29c1,29
< #
< # /etc/pam.d/common-account - authorization settings common to all services
< #
< # This file is included from other service-specific PAM config files,
< # and should contain a list of the authorization modules that define
< # the central access policy for use on the system.  The default is to
< # only deny service to users whose accounts are expired in /etc/shadow.
< #
< # As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
< # To take advantage of this, it is recommended that you configure any
< # local modules either before or after the default block, and use
< # pam-auth-update to manage selection of other modules.  See
< # pam-auth-update(8) for details.
< #
< 
< # here are the per-package modules (the "Primary" block)
< account sufficient    pam_winbind.so
< account required     pam_unix.so
< 
< #account    [success=2 new_authtok_reqd=done default=ignore]    pam_unix.so 
< #account    [success=1 new_authtok_reqd=done default=ignore]    pam_winbind.so 
< # here's the fallback if no module succeeds
< #account    requisite            pam_deny.so
< # prime the stack with a positive return value if there isn't one already;
< # this avoids us returning an error just because nothing sets a success code
< # since the modules above will each just jump around
< #account    required            pam_permit.so
< # and here are more per-package modules (the "Additional" block)
< # end of pam-auth-update config
---
> #
> # /etc/pam.d/common-account - authorization settings common to all services
> #
> # This file is included from other service-specific PAM config files,
> # and should contain a list of the authorization modules that define
> # the central access policy for use on the system.  The default is to
> # only deny service to users whose accounts are expired in /etc/shadow.
> #
> # As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
> # To take advantage of this, it is recommended that you configure any
> # local modules either before or after the default block, and use
> # pam-auth-update to manage selection of other modules.  See
> # pam-auth-update(8) for details.
> #
> 
> # here are the per-package modules (the "Primary" block)
> account sufficient    pam_winbind.so
> account required     pam_unix.so
> 
> #account    [success=2 new_authtok_reqd=done default=ignore]    pam_unix.so 
> #account    [success=1 new_authtok_reqd=done default=ignore]    pam_winbind.so 
> # here's the fallback if no module succeeds
> #account    requisite            pam_deny.so
> # prime the stack with a positive return value if there isn't one already;
> # this avoids us returning an error just because nothing sets a success code
> # since the modules above will each just jump around
> #account    required            pam_permit.so
> # and here are more per-package modules (the "Additional" block)
> # end of pam-auth-update config

Thanks if you can help

Upvotes: 0

Views: 377

Answers (1)

phihag
phihag

Reputation: 287755

The files look the same, but 7e80513f6dc8f7604ec36dbf6248780d is the file with Windows EOL characters, whereas 47425f79f81d38eadbadb0c3de89aafc is the same file with Unix EOL.

we can use

vim -b <filename> 

to show if there is ^M character for that file.

If yes, remove it manually or exec

dos2unix <filename>

Upvotes: 2

Related Questions