Every Linux user or webmaster should be able to access and modify files at some point. The most common mistake is not having the necessary permits.
A quick Google search will tell you to change the permissions to 777. But what does that mean, and do you really need to set all permissions to 777? Read on to find out.
In this article we have covered the following topics; click on any of the topics to go directly to that part of the article.
Also read : How to delete a directory under Linux?
All Unix systems, including Linux and macOS distributions, have a file management system that determines which user has which level of access to a file.
Essentially, this system consists of two parts: classes and permits. Classes determine which users have access to a particular file, and permissions, as you might guess, have to do with what a particular user can do with that file.
In Linux, there are three classes.
- Owner: This is usually the creator of the file or folder. All files and folders created in your home directory are yours unless otherwise stated.
- Group : It’s just a group of users who have the same rights and privileges.
- Other: Almost everyone.
Similarly, there are three different types of permissions you can grant to a particular user.
- Read: With this permission, the user can access the file and view its contents, but not modify it in any way.
- Writing: Gives the user the right to modify the file. If you get write access to a folder, you can add or delete files.
- Execute: Mainly used for executable files like scripts or pretty much anything you need to run/execute.
By keeping track of these classes and permissions, we can determine who has what access to a particular file.
Normally the owner of the file has all three rights. However, if you do not own the file or folder, you will need to change the ownership or permissions of your group to obtain the desired permissions.
Also read : Mint vs. Ubuntu: Comparison of Linux distributions
All files and directories in Linux have 8-bit entries that control access rights. In its simplest, binary form, it is 000.
The read permission adds 4 bits of data, giving the number 100 in binary format or 4 in decimal format. The write permission adds 2 bits of data, resulting in the number 010 or 2 in decimal format. Similarly, the permission execute adds 1 bit to the data, resulting in the number 001 or 1 in decimal format.
When defining the permissions, we now add up the numbers to get the desired permissions. Here are the different combinations.
- 0: no resolution
- 1: Execute
- 2: write
- 3 : Write and execute
- 4: read
- 5: reading and execution
- 6 : Reading and writing
- 7: read, write and perform
So when you say 777-authorization, the first number is assigned to the file owner, the second number is assigned to the group, and the third number is assigned to the others. So, the 777 permission means that anyone can read, write or execute the file.
Here are some other commonly used file permissions.
- 755 : The owner has all rights, but the group and everyone else can only read and execute. It is usually used by web servers.
- 644 : Only the owner can read or write to the file; all others can only read. No one can run the file.
- 655 : The owner can read and write, but cannot execute the file. Everyone else can read and run the file, but not modify it.
- 777 : This authorization gives everyone full access to the file. If you don’t know what you are doing, it is not recommended to set this permission, as it can be a potential security risk.
Also read : How to use the SCP command to transfer files under Linux?
Setting file permissions in Linux is quite simple. Just use the chmod command followed by the permission number and file path.
chmod 755 /etc/bin/file.txt
When setting permissions for a folder, make sure you put the -r flag before the permission number.
khmod -r 755 /etc/lampp/htdocs
Also read : Bash functions explained
With 777 permissions on a file, anyone with access to your system or server can read, modify, and execute that file. If a 777 file is installed on the web server, an attacker can modify and execute the file to execute malicious code on your system,
As you can imagine, it’s not perfect. If you work with servers, it is recommended to use the 644 permission for files and the 755 permission for directories.
Also read : How can I check the list of Linux users?
The one who writes/cuts/films/owns all the technology, and when he’s not around, switches to virtual machine races. You can contact Yadullah at [email protected], or follow him on Instagram or Twitter.
frequently asked questions
What does chmod 777 do?
Granting 777 permissions to a file or directory means that it can be read, written and executed by all users, which can be a major security risk. … File ownership can be changed with the chown and chmod permissions.
Why is chmod 777 bad?
An unauthorized user can use it to modify files and compromise your system. In a web server scenario, an unauthorized user can modify your website to display malicious content. In other words, you should never set a file’s permissions to 777, as this will give all users on the system full access to the file.
How do I chmod 777?
Setting Permissions for Command Line Files To change these permissions, click a small arrow and select either Read and Write or Read Only. You can also change the permissions using the chmod command in the terminal. In short, chmod 777 means that the file can be read, written and executed by anyone.
chmod 777,chmod 777 recursive,chmod 777 ubuntu,chmod -r 777 stack overflow,chmod 777 mac,chmod 777 windows,Feedback,Privacy settings,How Search works,chmod 777 vs 755,chmod 777 operation not permitted