How to change permissions for files and directories

Using File Manager
Using SSH
Using Cron Jobs


Using File Manager

This option is usually used if you need to change the permissions for a couple of files only. If you need to make changes to a large number of files, SSH and Cron Jobs are preferable.

1. Log into your cPanel, navigate to the Files section and click the File Manager icon:



2. Move the document root for your domain name. We have public_html folder in our case:



3. You will be able to see the current permissions in the right-hand column called Permissions:



4. To make the changes to a certain file/folder, right-click on it and choose Change Permissions. This window will pop up:



5. Set required permissions for each user group and save the changes. It is also possible to use the same button in the File Manager upper-bar menu, Permissions option:



Or simply by double-clicking on the file permissions in the right-hand column:




Using SSH

chmod command is used to change the permission of a file. In order to change the permissions of all files and directories in the folder (public_html in our case), follow these steps:

1. Connect to your cPanel account via SSH. Feel free to use this guide for your reference.

2. Now you need to navigate to public_html using the following command:

cd /home/username/public_html
Make sure that you replace username with the actual cPanel username of yours:



3. Run one of the commands below for changing permissions to 0755 for the folders and 0644 for the files:

find -type f | xargs chmod 644 ; find -type d | xargs chmod 755 ; chmod 750 . -c
or

find ./ -type f -not -perm 644 -not -name ".ftpquota" -exec chmod 644 -c {} \;; find ./ -type d -not -perm 755 -not -group nobody -exec chmod 755 -c {} \;



4. Once done, you will see the list of the files and folders which permissions were corrected:




Using Cron Jobs

In order to change permissions for your files and folder using Cron Jobs tool in cPanel, follow these steps:

1. Log in to your cPanel account > Advanced section > Cron Jobs menu:


2. In Add New Cron Job section set Common Settings parament to Once Per Minute and add one of the following scripts to Command line:

cd /home/username/public_html ; find -type f | xargs chmod 644 ; find -type d | xargs chmod 755 ; chmod 750 . -c
or

cd /home/username/public_html ; find ./ -type f -not -perm 644 -not -name ".ftpquota" -exec chmod 644 -c {} \;; find ./ -type d -not -perm 755 -not -group nobody -exec chmod 755 -c {} \;
Make sure that you replace username with the actual cPanel username of yours:



Hit Add New Cron Job button then.

3. Wait for a couple of minutes till the script makes the corresponding changes. After that remove it using Delete option:



NOTE: According to our Acceptable Use Policy, running cron scripts with intervals of less than 15 minutes is strictly prohibited. Make sure that you remove the script once permissions are updated.


That's it!

              
                      Need any help? Contact our HelpDesk

Comments

We welcome your comments, questions, corrections and additional information relating to this article. Your comments may take some time to appear. Please be aware that off-topic comments will be deleted.

If you need specific help with your account, feel free to contact our Support Team. Thank you.

Need help? We're always here for you.

× Close