What are file permissions in Linux and what does rwx mean?
R, w, and x in Linux file permissions represent read, write and execute permissions respectively. r (read) allows viewing file content or listing directory content; w (write) allows modifying files or adding or deleting files in directory; x (execute) allows running files as programs or entering directories. Permissions are divided into three categories: user (owner), group, and others, and each category can have rwx combinations. Use ls -l to view permissions, the chmod command can modify permissions, and supports symbolic mode and digital mode to set permissions. Common use cases include combinations such as 600, 644, 700, 755, etc. to control access security.

In Linux, file permissions determine who can read, write, or execute a file. Understanding them is key to managing security and access control on your system. The rwx part stands for read, write, and execute — the three basic types of permissions you'll encounter.

What Do r, w, and x Mean?
Each file and directory in Linux has a set of permissions that control access. These are broken down into three categories: user (owner) , group , and others . Each category can have a combination of:
- r (read) – allows viewing the contents of a file or listing the contents of a directory
- w (write) – allows modifying the file or adding/removing files in a directory
- x (execute) – allows running the file as a program or entering a directory
So when you see something like -rwxr-xr-- , it's telling you:

- The owner has full permissions (read, write, execute)
- The group can read and execute
- Others can only read
This is the basic structure and how permissions are displayed in the system.
How to Read Permission Symbols
When you run ls -l , you'll see something like this:

-rw-r--r-- 1 user group 4096 Apr 5 10:00 filename.txt
The first part ( -rw-r--r-- ) shows the permissions. Breaking it down:
- The first character indicates the file type (
-for regular file,dfor directory) - The next 9 characters are in 3 groups of 3:
- First 3: user (owner)
- Second 3: group
- Third 3: others
Each group shows r, w, and x in that order. If a permission is missing, it shows a - .
So -rw-r--r-- means:
- Owner: read and write
- Group: read only
- Others: read only
How to Change File Permissions with chmod
You can change permissions using the chmod command. There are two common ways to use it:
Symbolic mode
This uses letters and symbols to add, remove, or set permissions:
adds a permission-
-removes a permission -
=sets it explicitly
Examples:
-
chmod ux script.sh– adds execute permission for the user -
chmod go-w file.txt– removes write permission for group and others
Numeric (octal) mode
Each permission has a number:
- r = 4
- w = 2
- x = 1
You add them up for each category:
- 7 (4 2 1) = rwx
- 6 (4 2) = rw-
- 5 (4 1) = rx
So to set a file to -rwxr-xr-- , you'd use:
chmod 754 filename
This method is faster once you're used to it, especially when setting full permission sets at once.
Common Permission Use Cases
Some permission settings are used frequently:
- 600 (rw------) – Only the owner can read and write (eg, private config files)
- 644 (rw-r--r--) – Owner can edit, others can only read (standard for web files)
- 700 (rwx------) – Only the owner can do anything (private directories)
- 755 (rwxr-xr-x) – Owner has full access, others can run and see contents (common for scripts and public directories)
Be careful with 777 – it gives full access to everyone, which is a big security risk. Don't use it unless you really know what you're doing.
Basically that's it. Permissions in Linux might look confusing at first, but once you break them down into user/group/others and understand what r, w, and x mean, they become much more manageable.
The above is the detailed content of What are file permissions in Linux and what does rwx mean?. For more information, please follow other related articles on the PHP Chinese website!
Hot AI Tools
Undress AI Tool
Undress images for free
Undresser.AI Undress
AI-powered app for creating realistic nude photos
AI Clothes Remover
Online AI tool for removing clothes from photos.
Clothoff.io
AI clothes remover
Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!
Hot Article
Hot Tools
Notepad++7.3.1
Easy-to-use and free code editor
SublimeText3 Chinese version
Chinese version, very easy to use
Zend Studio 13.0.1
Powerful PHP integrated development environment
Dreamweaver CS6
Visual web development tools
SublimeText3 Mac version
God-level code editing software (SublimeText3)
The Ultimate Guide to High-Performance Gaming on Linux
Aug 03, 2025 am 05:51 AM
ChoosePop!_OS,Ubuntu,NobaraLinux,orArchLinuxforoptimalgamingperformancewithminimaloverhead.2.InstallofficialNVIDIAproprietarydriversforNVIDIAGPUs,ensureup-to-dateMesaandkernelversionsforAMDandIntelGPUs.3.EnabletheperformanceCPUgovernor,usealow-latenc
What are the main pros and cons of Linux vs. Windows?
Aug 03, 2025 am 02:56 AM
Linux is suitable for old hardware, has high security and is customizable, but has weak software compatibility; Windows software is rich and easy to use, but has high resource utilization. 1. In terms of performance, Linux is lightweight and efficient, suitable for old devices; Windows has high hardware requirements. 2. In terms of software, Windows has wider compatibility, especially professional tools and games; Linux needs to use tools to run some software. 3. In terms of security, Linux permission management is stricter and updates are convenient; although Windows is protected, it is still vulnerable to attacks. 4. In terms of difficulty of use, the Linux learning curve is steep; Windows operation is intuitive. Choose according to requirements: choose Linux with performance and security, and choose Windows with compatibility and ease of use.
Understanding RAID Configurations on a Linux Server
Aug 05, 2025 am 11:50 AM
RAIDimprovesstorageperformanceandreliabilityonLinuxserversthroughvariousconfigurations;RAID0offersspeedbutnoredundancy;RAID1providesmirroringforcriticaldatawith50�pacityloss;RAID5supportssingle-drivefailuretoleranceusingparityandrequiresatleastthre
Linux how to enable and disable services at boot
Aug 08, 2025 am 10:23 AM
To manage the startup of Linux services, use the systemctl command. 1. Check the service status: systemctlstatus can check whether the service is running, enabled or disabled. 2. Enable the service startup: sudosystemctlenable, such as sudosystemctlenablenginx. If it is started at the same time, use sudosystemctlenable--nownginx. 3. Disable the service startup: sudosystemctldisable, such as sudosystemctldisablecups. If it is stopped at the same time, use sudosystemctldisabl
Setting up a Development Environment on Linux for Python
Aug 03, 2025 am 12:26 AM
InstallPythonandessentialtoolsusingyourdistribution’spackagemanager,ensuringpython3-venvandpython3-devareincludedforenvironmentisolationandCextensions.2.Alwaysusevirtualenvironmentsbyrunningpython3-mvenvmyproject_envandactivatewithsourcemyproject_env
How to set up a firewall in Linux
Aug 22, 2025 pm 04:41 PM
UsefirewalldoriptablestosecureLinux;firewalldisuser-friendlywithzonesandservices,idealforCentOS/RHEL/Fedora,whileiptablesoffersgranularcontrolforDebian/Ubuntu.Enablefirewalld:sudosystemctlstartfirewalld,allowserviceslikeSSHwith--add-service=ssh,orope
Linux how to list all running processes
Aug 08, 2025 am 06:42 AM
Usepsauxforacompletesnapshotofallrunningprocesses,showingdetailedinformationlikeUSER,PID,CPU,andmemoryusage.2.Usetoporhtopforreal-timemonitoringofprocesseswithdynamicupdates,wherehtopoffersamoreintuitiveinterface.3.UsepgreporpidoftoquicklyfindthePIDs
How to clean up your Linux system
Aug 22, 2025 am 07:42 AM
Removeunusedpackagesanddependencieswithsudoaptautoremove,cleanpackagecacheusingsudoaptcleanorautoclean,andremoveoldkernelsviasudoaptautoremove--purge.2.Clearsystemlogswithsudojournalctl--vacuum-time=7d,deletearchivedlogsin/var/log,andempty/tmpand/var


