What does chmod -u do?












3















By accident I ran chmod -u filename and it removed all of the permissions I had on filename.



The man page does not reference a -u option. Experimenting I was able to conclude that it removes not all permissions, but just read and execute access, leaving write access intact.



So what does this do exactly?





My conclusion above is wrong, I now think that what it does is remove the permissions that the owner has, from all categories.





I think the behavior is analogous to a=u, only it is - instead of = and a can be dropped just as it can with, for instance, a+x.










share|improve this question









New contributor




y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • +1 for asking a basic question that is not in the man page.

    – jww
    2 hours ago






  • 1





    "The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo" (GNU chmod man page); POSIX is fairly obscure, but defines a "permcopy" production for the same effect.

    – Michael Homer
    2 hours ago













  • @MichaelHomer It doesn't say what it does.

    – y_wc
    2 hours ago











  • @y_wc "Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)."

    – Michael Homer
    2 hours ago













  • Yes, I read that. I don't see that it mentions what it does. It says that I can specify one of those letters. Specifying, for instance u, I'll be specifying the permissions granted to the user who owns the file. But it doesn't say what it does. What does specify even mean?

    – y_wc
    2 hours ago
















3















By accident I ran chmod -u filename and it removed all of the permissions I had on filename.



The man page does not reference a -u option. Experimenting I was able to conclude that it removes not all permissions, but just read and execute access, leaving write access intact.



So what does this do exactly?





My conclusion above is wrong, I now think that what it does is remove the permissions that the owner has, from all categories.





I think the behavior is analogous to a=u, only it is - instead of = and a can be dropped just as it can with, for instance, a+x.










share|improve this question









New contributor




y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • +1 for asking a basic question that is not in the man page.

    – jww
    2 hours ago






  • 1





    "The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo" (GNU chmod man page); POSIX is fairly obscure, but defines a "permcopy" production for the same effect.

    – Michael Homer
    2 hours ago













  • @MichaelHomer It doesn't say what it does.

    – y_wc
    2 hours ago











  • @y_wc "Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)."

    – Michael Homer
    2 hours ago













  • Yes, I read that. I don't see that it mentions what it does. It says that I can specify one of those letters. Specifying, for instance u, I'll be specifying the permissions granted to the user who owns the file. But it doesn't say what it does. What does specify even mean?

    – y_wc
    2 hours ago














3












3








3








By accident I ran chmod -u filename and it removed all of the permissions I had on filename.



The man page does not reference a -u option. Experimenting I was able to conclude that it removes not all permissions, but just read and execute access, leaving write access intact.



So what does this do exactly?





My conclusion above is wrong, I now think that what it does is remove the permissions that the owner has, from all categories.





I think the behavior is analogous to a=u, only it is - instead of = and a can be dropped just as it can with, for instance, a+x.










share|improve this question









New contributor




y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.












By accident I ran chmod -u filename and it removed all of the permissions I had on filename.



The man page does not reference a -u option. Experimenting I was able to conclude that it removes not all permissions, but just read and execute access, leaving write access intact.



So what does this do exactly?





My conclusion above is wrong, I now think that what it does is remove the permissions that the owner has, from all categories.





I think the behavior is analogous to a=u, only it is - instead of = and a can be dropped just as it can with, for instance, a+x.







chmod






share|improve this question









New contributor




y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited 2 hours ago







y_wc













New contributor




y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 2 hours ago









y_wcy_wc

425




425




New contributor




y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






y_wc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.













  • +1 for asking a basic question that is not in the man page.

    – jww
    2 hours ago






  • 1





    "The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo" (GNU chmod man page); POSIX is fairly obscure, but defines a "permcopy" production for the same effect.

    – Michael Homer
    2 hours ago













  • @MichaelHomer It doesn't say what it does.

    – y_wc
    2 hours ago











  • @y_wc "Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)."

    – Michael Homer
    2 hours ago













  • Yes, I read that. I don't see that it mentions what it does. It says that I can specify one of those letters. Specifying, for instance u, I'll be specifying the permissions granted to the user who owns the file. But it doesn't say what it does. What does specify even mean?

    – y_wc
    2 hours ago



















  • +1 for asking a basic question that is not in the man page.

    – jww
    2 hours ago






  • 1





    "The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo" (GNU chmod man page); POSIX is fairly obscure, but defines a "permcopy" production for the same effect.

    – Michael Homer
    2 hours ago













  • @MichaelHomer It doesn't say what it does.

    – y_wc
    2 hours ago











  • @y_wc "Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)."

    – Michael Homer
    2 hours ago













  • Yes, I read that. I don't see that it mentions what it does. It says that I can specify one of those letters. Specifying, for instance u, I'll be specifying the permissions granted to the user who owns the file. But it doesn't say what it does. What does specify even mean?

    – y_wc
    2 hours ago

















+1 for asking a basic question that is not in the man page.

– jww
2 hours ago





+1 for asking a basic question that is not in the man page.

– jww
2 hours ago




1




1





"The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo" (GNU chmod man page); POSIX is fairly obscure, but defines a "permcopy" production for the same effect.

– Michael Homer
2 hours ago







"The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo" (GNU chmod man page); POSIX is fairly obscure, but defines a "permcopy" production for the same effect.

– Michael Homer
2 hours ago















@MichaelHomer It doesn't say what it does.

– y_wc
2 hours ago





@MichaelHomer It doesn't say what it does.

– y_wc
2 hours ago













@y_wc "Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)."

– Michael Homer
2 hours ago







@y_wc "Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)."

– Michael Homer
2 hours ago















Yes, I read that. I don't see that it mentions what it does. It says that I can specify one of those letters. Specifying, for instance u, I'll be specifying the permissions granted to the user who owns the file. But it doesn't say what it does. What does specify even mean?

– y_wc
2 hours ago





Yes, I read that. I don't see that it mentions what it does. It says that I can specify one of those letters. Specifying, for instance u, I'll be specifying the permissions granted to the user who owns the file. But it doesn't say what it does. What does specify even mean?

– y_wc
2 hours ago










2 Answers
2






active

oldest

votes


















4














This is not an option, but a standard (but uncommon) way of specifying the permissions. It means to remove (-) the permissions associated with the file owner (u), for all users (no preceding u, g, or o). This is documented in the man page.



GNU chmod's man page documents this as:




The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo




and later




Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)




So -u means to remove (-) whatever permissions are currently enabled for the owner (u) for everybody (equivalently to a-u, except honouring the current umask). While that's not often going to be very useful, the analogous chmod +u will sometimes be, to copy the permissions from the owner to others when operating recursively, for example.





It's also documented in POSIX, but more obscurely defined: the permission specification is broadly who[+-=]perms (or a number), and the effect of those are further specified:




The permcopy symbols u, g, and o shall represent the current permissions associated with the user, group, and other parts of the file mode bits, respectively. For the remainder of this section, perm refers to the non-terminals perm and permcopy in the grammar.




and then




-



...
If who is not specified, the file mode bits represented by perm for the owner, group, and other permissions, except for those with corresponding bits in the file mode creation mask of the invoking process, shall be cleared.







share|improve this answer


























  • Thanks, Michael. The POSIX documentation is convincing. The GNU however... Please see this comment of mine. I don't see how what comes after "So" follows from what's before. perms can be u, that I got. Yes, u specifies the permissions or the owner. But how does it follow that -u removes the permissions of the owner (modulus umask) from all users?

    – y_wc
    2 hours ago











  • Because that's what - always does: it removes the specified permissions from the specified class of users. -u is exactly analogous to -w or (closer) to ugo-u.

    – Michael Homer
    2 hours ago











  • I was about to say I didn't come here to discuss documentation and that I was happy to just understand what's going on, but the docs just clicked. Thanks.

    – y_wc
    2 hours ago











  • Could I trouble you with another chmod documentation question? Let me know if you think this deserves a seperate question. "and = causes them to be added and causes unmentioned bits to be removed except that a directory's unmentioned set user and group ID bits are not affected. " This, to me, is saying that, given a directory whose owner has only write access, chmod u=rx directory will leave the owner's permissions as rwx. But that's not what happens, instead they become the expected r-x. Am I misinterpreting someting?

    – y_wc
    2 hours ago











  • It's saying that the setuid/setgid (s) bits are left alone if you don't mention them, and anything else you didn't specify is removed.

    – Michael Homer
    2 hours ago



















0














The answer is little bit similar to https://unix.stackexchange.com/a/429424/255251.



chmod -u file_name


doesn't removes all permission, but it consider umask value.



umask
0022
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file
chmod -u file
chmod: file: new permissions are ----w--w-, not ---------
ls -l file
-----w--w- 1 user user 4 Feb 25 15:17 file


Now change umask value



umask 777
chmod 777 file
chmod -u file
chmod: file: new permissions are rwxrwxrwx, not ---------
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file





share|improve this answer



















  • 1





    Instructive, good to know and very useful, but I think this isn't really the issue, although it is very much related. Thanks.

    – y_wc
    2 hours ago











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});






y_wc is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f508104%2fwhat-does-chmod-u-do%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









4














This is not an option, but a standard (but uncommon) way of specifying the permissions. It means to remove (-) the permissions associated with the file owner (u), for all users (no preceding u, g, or o). This is documented in the man page.



GNU chmod's man page documents this as:




The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo




and later




Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)




So -u means to remove (-) whatever permissions are currently enabled for the owner (u) for everybody (equivalently to a-u, except honouring the current umask). While that's not often going to be very useful, the analogous chmod +u will sometimes be, to copy the permissions from the owner to others when operating recursively, for example.





It's also documented in POSIX, but more obscurely defined: the permission specification is broadly who[+-=]perms (or a number), and the effect of those are further specified:




The permcopy symbols u, g, and o shall represent the current permissions associated with the user, group, and other parts of the file mode bits, respectively. For the remainder of this section, perm refers to the non-terminals perm and permcopy in the grammar.




and then




-



...
If who is not specified, the file mode bits represented by perm for the owner, group, and other permissions, except for those with corresponding bits in the file mode creation mask of the invoking process, shall be cleared.







share|improve this answer


























  • Thanks, Michael. The POSIX documentation is convincing. The GNU however... Please see this comment of mine. I don't see how what comes after "So" follows from what's before. perms can be u, that I got. Yes, u specifies the permissions or the owner. But how does it follow that -u removes the permissions of the owner (modulus umask) from all users?

    – y_wc
    2 hours ago











  • Because that's what - always does: it removes the specified permissions from the specified class of users. -u is exactly analogous to -w or (closer) to ugo-u.

    – Michael Homer
    2 hours ago











  • I was about to say I didn't come here to discuss documentation and that I was happy to just understand what's going on, but the docs just clicked. Thanks.

    – y_wc
    2 hours ago











  • Could I trouble you with another chmod documentation question? Let me know if you think this deserves a seperate question. "and = causes them to be added and causes unmentioned bits to be removed except that a directory's unmentioned set user and group ID bits are not affected. " This, to me, is saying that, given a directory whose owner has only write access, chmod u=rx directory will leave the owner's permissions as rwx. But that's not what happens, instead they become the expected r-x. Am I misinterpreting someting?

    – y_wc
    2 hours ago











  • It's saying that the setuid/setgid (s) bits are left alone if you don't mention them, and anything else you didn't specify is removed.

    – Michael Homer
    2 hours ago
















4














This is not an option, but a standard (but uncommon) way of specifying the permissions. It means to remove (-) the permissions associated with the file owner (u), for all users (no preceding u, g, or o). This is documented in the man page.



GNU chmod's man page documents this as:




The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo




and later




Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)




So -u means to remove (-) whatever permissions are currently enabled for the owner (u) for everybody (equivalently to a-u, except honouring the current umask). While that's not often going to be very useful, the analogous chmod +u will sometimes be, to copy the permissions from the owner to others when operating recursively, for example.





It's also documented in POSIX, but more obscurely defined: the permission specification is broadly who[+-=]perms (or a number), and the effect of those are further specified:




The permcopy symbols u, g, and o shall represent the current permissions associated with the user, group, and other parts of the file mode bits, respectively. For the remainder of this section, perm refers to the non-terminals perm and permcopy in the grammar.




and then




-



...
If who is not specified, the file mode bits represented by perm for the owner, group, and other permissions, except for those with corresponding bits in the file mode creation mask of the invoking process, shall be cleared.







share|improve this answer


























  • Thanks, Michael. The POSIX documentation is convincing. The GNU however... Please see this comment of mine. I don't see how what comes after "So" follows from what's before. perms can be u, that I got. Yes, u specifies the permissions or the owner. But how does it follow that -u removes the permissions of the owner (modulus umask) from all users?

    – y_wc
    2 hours ago











  • Because that's what - always does: it removes the specified permissions from the specified class of users. -u is exactly analogous to -w or (closer) to ugo-u.

    – Michael Homer
    2 hours ago











  • I was about to say I didn't come here to discuss documentation and that I was happy to just understand what's going on, but the docs just clicked. Thanks.

    – y_wc
    2 hours ago











  • Could I trouble you with another chmod documentation question? Let me know if you think this deserves a seperate question. "and = causes them to be added and causes unmentioned bits to be removed except that a directory's unmentioned set user and group ID bits are not affected. " This, to me, is saying that, given a directory whose owner has only write access, chmod u=rx directory will leave the owner's permissions as rwx. But that's not what happens, instead they become the expected r-x. Am I misinterpreting someting?

    – y_wc
    2 hours ago











  • It's saying that the setuid/setgid (s) bits are left alone if you don't mention them, and anything else you didn't specify is removed.

    – Michael Homer
    2 hours ago














4












4








4







This is not an option, but a standard (but uncommon) way of specifying the permissions. It means to remove (-) the permissions associated with the file owner (u), for all users (no preceding u, g, or o). This is documented in the man page.



GNU chmod's man page documents this as:




The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo




and later




Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)




So -u means to remove (-) whatever permissions are currently enabled for the owner (u) for everybody (equivalently to a-u, except honouring the current umask). While that's not often going to be very useful, the analogous chmod +u will sometimes be, to copy the permissions from the owner to others when operating recursively, for example.





It's also documented in POSIX, but more obscurely defined: the permission specification is broadly who[+-=]perms (or a number), and the effect of those are further specified:




The permcopy symbols u, g, and o shall represent the current permissions associated with the user, group, and other parts of the file mode bits, respectively. For the remainder of this section, perm refers to the non-terminals perm and permcopy in the grammar.




and then




-



...
If who is not specified, the file mode bits represented by perm for the owner, group, and other permissions, except for those with corresponding bits in the file mode creation mask of the invoking process, shall be cleared.







share|improve this answer















This is not an option, but a standard (but uncommon) way of specifying the permissions. It means to remove (-) the permissions associated with the file owner (u), for all users (no preceding u, g, or o). This is documented in the man page.



GNU chmod's man page documents this as:




The format of a symbolic mode is [ugoa...][[-+=][perms...]...], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo




and later




Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file's group (g), and the permissions granted to users that are in neither of the two preceding categories (o)




So -u means to remove (-) whatever permissions are currently enabled for the owner (u) for everybody (equivalently to a-u, except honouring the current umask). While that's not often going to be very useful, the analogous chmod +u will sometimes be, to copy the permissions from the owner to others when operating recursively, for example.





It's also documented in POSIX, but more obscurely defined: the permission specification is broadly who[+-=]perms (or a number), and the effect of those are further specified:




The permcopy symbols u, g, and o shall represent the current permissions associated with the user, group, and other parts of the file mode bits, respectively. For the remainder of this section, perm refers to the non-terminals perm and permcopy in the grammar.




and then




-



...
If who is not specified, the file mode bits represented by perm for the owner, group, and other permissions, except for those with corresponding bits in the file mode creation mask of the invoking process, shall be cleared.








share|improve this answer














share|improve this answer



share|improve this answer








edited 2 hours ago

























answered 2 hours ago









Michael HomerMichael Homer

50.1k8137175




50.1k8137175













  • Thanks, Michael. The POSIX documentation is convincing. The GNU however... Please see this comment of mine. I don't see how what comes after "So" follows from what's before. perms can be u, that I got. Yes, u specifies the permissions or the owner. But how does it follow that -u removes the permissions of the owner (modulus umask) from all users?

    – y_wc
    2 hours ago











  • Because that's what - always does: it removes the specified permissions from the specified class of users. -u is exactly analogous to -w or (closer) to ugo-u.

    – Michael Homer
    2 hours ago











  • I was about to say I didn't come here to discuss documentation and that I was happy to just understand what's going on, but the docs just clicked. Thanks.

    – y_wc
    2 hours ago











  • Could I trouble you with another chmod documentation question? Let me know if you think this deserves a seperate question. "and = causes them to be added and causes unmentioned bits to be removed except that a directory's unmentioned set user and group ID bits are not affected. " This, to me, is saying that, given a directory whose owner has only write access, chmod u=rx directory will leave the owner's permissions as rwx. But that's not what happens, instead they become the expected r-x. Am I misinterpreting someting?

    – y_wc
    2 hours ago











  • It's saying that the setuid/setgid (s) bits are left alone if you don't mention them, and anything else you didn't specify is removed.

    – Michael Homer
    2 hours ago



















  • Thanks, Michael. The POSIX documentation is convincing. The GNU however... Please see this comment of mine. I don't see how what comes after "So" follows from what's before. perms can be u, that I got. Yes, u specifies the permissions or the owner. But how does it follow that -u removes the permissions of the owner (modulus umask) from all users?

    – y_wc
    2 hours ago











  • Because that's what - always does: it removes the specified permissions from the specified class of users. -u is exactly analogous to -w or (closer) to ugo-u.

    – Michael Homer
    2 hours ago











  • I was about to say I didn't come here to discuss documentation and that I was happy to just understand what's going on, but the docs just clicked. Thanks.

    – y_wc
    2 hours ago











  • Could I trouble you with another chmod documentation question? Let me know if you think this deserves a seperate question. "and = causes them to be added and causes unmentioned bits to be removed except that a directory's unmentioned set user and group ID bits are not affected. " This, to me, is saying that, given a directory whose owner has only write access, chmod u=rx directory will leave the owner's permissions as rwx. But that's not what happens, instead they become the expected r-x. Am I misinterpreting someting?

    – y_wc
    2 hours ago











  • It's saying that the setuid/setgid (s) bits are left alone if you don't mention them, and anything else you didn't specify is removed.

    – Michael Homer
    2 hours ago

















Thanks, Michael. The POSIX documentation is convincing. The GNU however... Please see this comment of mine. I don't see how what comes after "So" follows from what's before. perms can be u, that I got. Yes, u specifies the permissions or the owner. But how does it follow that -u removes the permissions of the owner (modulus umask) from all users?

– y_wc
2 hours ago





Thanks, Michael. The POSIX documentation is convincing. The GNU however... Please see this comment of mine. I don't see how what comes after "So" follows from what's before. perms can be u, that I got. Yes, u specifies the permissions or the owner. But how does it follow that -u removes the permissions of the owner (modulus umask) from all users?

– y_wc
2 hours ago













Because that's what - always does: it removes the specified permissions from the specified class of users. -u is exactly analogous to -w or (closer) to ugo-u.

– Michael Homer
2 hours ago





Because that's what - always does: it removes the specified permissions from the specified class of users. -u is exactly analogous to -w or (closer) to ugo-u.

– Michael Homer
2 hours ago













I was about to say I didn't come here to discuss documentation and that I was happy to just understand what's going on, but the docs just clicked. Thanks.

– y_wc
2 hours ago





I was about to say I didn't come here to discuss documentation and that I was happy to just understand what's going on, but the docs just clicked. Thanks.

– y_wc
2 hours ago













Could I trouble you with another chmod documentation question? Let me know if you think this deserves a seperate question. "and = causes them to be added and causes unmentioned bits to be removed except that a directory's unmentioned set user and group ID bits are not affected. " This, to me, is saying that, given a directory whose owner has only write access, chmod u=rx directory will leave the owner's permissions as rwx. But that's not what happens, instead they become the expected r-x. Am I misinterpreting someting?

– y_wc
2 hours ago





Could I trouble you with another chmod documentation question? Let me know if you think this deserves a seperate question. "and = causes them to be added and causes unmentioned bits to be removed except that a directory's unmentioned set user and group ID bits are not affected. " This, to me, is saying that, given a directory whose owner has only write access, chmod u=rx directory will leave the owner's permissions as rwx. But that's not what happens, instead they become the expected r-x. Am I misinterpreting someting?

– y_wc
2 hours ago













It's saying that the setuid/setgid (s) bits are left alone if you don't mention them, and anything else you didn't specify is removed.

– Michael Homer
2 hours ago





It's saying that the setuid/setgid (s) bits are left alone if you don't mention them, and anything else you didn't specify is removed.

– Michael Homer
2 hours ago













0














The answer is little bit similar to https://unix.stackexchange.com/a/429424/255251.



chmod -u file_name


doesn't removes all permission, but it consider umask value.



umask
0022
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file
chmod -u file
chmod: file: new permissions are ----w--w-, not ---------
ls -l file
-----w--w- 1 user user 4 Feb 25 15:17 file


Now change umask value



umask 777
chmod 777 file
chmod -u file
chmod: file: new permissions are rwxrwxrwx, not ---------
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file





share|improve this answer



















  • 1





    Instructive, good to know and very useful, but I think this isn't really the issue, although it is very much related. Thanks.

    – y_wc
    2 hours ago
















0














The answer is little bit similar to https://unix.stackexchange.com/a/429424/255251.



chmod -u file_name


doesn't removes all permission, but it consider umask value.



umask
0022
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file
chmod -u file
chmod: file: new permissions are ----w--w-, not ---------
ls -l file
-----w--w- 1 user user 4 Feb 25 15:17 file


Now change umask value



umask 777
chmod 777 file
chmod -u file
chmod: file: new permissions are rwxrwxrwx, not ---------
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file





share|improve this answer



















  • 1





    Instructive, good to know and very useful, but I think this isn't really the issue, although it is very much related. Thanks.

    – y_wc
    2 hours ago














0












0








0







The answer is little bit similar to https://unix.stackexchange.com/a/429424/255251.



chmod -u file_name


doesn't removes all permission, but it consider umask value.



umask
0022
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file
chmod -u file
chmod: file: new permissions are ----w--w-, not ---------
ls -l file
-----w--w- 1 user user 4 Feb 25 15:17 file


Now change umask value



umask 777
chmod 777 file
chmod -u file
chmod: file: new permissions are rwxrwxrwx, not ---------
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file





share|improve this answer













The answer is little bit similar to https://unix.stackexchange.com/a/429424/255251.



chmod -u file_name


doesn't removes all permission, but it consider umask value.



umask
0022
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file
chmod -u file
chmod: file: new permissions are ----w--w-, not ---------
ls -l file
-----w--w- 1 user user 4 Feb 25 15:17 file


Now change umask value



umask 777
chmod 777 file
chmod -u file
chmod: file: new permissions are rwxrwxrwx, not ---------
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file






share|improve this answer












share|improve this answer



share|improve this answer










answered 2 hours ago









Prvt_YadvPrvt_Yadv

2,88031227




2,88031227








  • 1





    Instructive, good to know and very useful, but I think this isn't really the issue, although it is very much related. Thanks.

    – y_wc
    2 hours ago














  • 1





    Instructive, good to know and very useful, but I think this isn't really the issue, although it is very much related. Thanks.

    – y_wc
    2 hours ago








1




1





Instructive, good to know and very useful, but I think this isn't really the issue, although it is very much related. Thanks.

– y_wc
2 hours ago





Instructive, good to know and very useful, but I think this isn't really the issue, although it is very much related. Thanks.

– y_wc
2 hours ago










y_wc is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















y_wc is a new contributor. Be nice, and check out our Code of Conduct.













y_wc is a new contributor. Be nice, and check out our Code of Conduct.












y_wc is a new contributor. Be nice, and check out our Code of Conduct.
















Thanks for contributing an answer to Unix & Linux Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f508104%2fwhat-does-chmod-u-do%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

flock() on closed filehandle LOCK_FILE at /usr/bin/apt-mirror

Mangá

Eduardo VII do Reino Unido