fchmod - Linux


fchmod is a command-line tool used to change the file permissions of multiple files or directories simultaneously. It’s commonly used by system administrators and users to grant specific permissions to files or directories based on their requirements.


fchmod [options] mode files...


  • options are optional flags that modify the behavior of the command.
  • mode specifies the new file permissions using either numeric or symbolic notation.
  • files are the target files or directories whose permissions need to be changed.


| Option | Description | Default |
| -R, –recursive | Recursively changes permissions for files and directories within the specified path | False |
| -f, –force | Suppresses error messages and forces changes even if some files fail to have their permissions changed | False |
| -c, –changes | Lists only the files whose permissions were actually changed | False |
| -v, –verbose | Prints detailed output for all processed files and directories | False |


1. Change permissions to 755 for all files in the current directory:

fchmod 755 *

2. Set read and execute permissions for all users for the file "myfile":

fchmod uo+rx myfile

3. Recursively change all files in the directory "dir1" to read-only for the owner:

fchmod -R o-rw dir1

Common Issues

  • Permission denied: Ensure you have sufficient permissions to modify the files or directories.
  • Invalid mode: Check if the specified permissions mode is valid and in the correct format.
  • File is missing: Ensure the specified file or directory exists.


fchmod can be combined with other commands, such as find or xargs, for more advanced tasks. For example, to change the permissions of all files named "log.txt" to 644:

find . -name "log.txt" -exec fchmod 644 {} \;

Related Commands

  • chmod: Changes file permissions for a single file or directory.
  • chown: Changes the file’s owner.
  • chgrp: Changes the file’s group.

Linux chmod Command Manual