Bird
Raised Fist0
Linux CLIscripting~10 mins

chown (change ownership) in Linux CLI - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - chown (change ownership)
Start
↓
User runs chown command
↓
System checks if user has permission
↓
Error: Permission denied
→End
Yes↓
System changes file owner and/or group
↓
Command completes successfully
↓
End
The chown command changes the owner and/or group of a file if the user has permission.
Execution Sample
Linux CLI
chown alice file.txt
ls -l file.txt
Change the owner of file.txt to user alice, then list file details to show ownership.
Execution Table
StepCommandActionResultOutput
1chown alice file.txtCheck permissionsUser has permissionNo output
2chown alice file.txtChange owner of file.txt to aliceSuccessNo output
3ls -l file.txtList file detailsShow owner and group-rw-r--r-- 1 alice users 0 Apr 27 12:00 file.txt
4EndNo more commandsProcess complete
💡 Command ends after changing ownership and listing file details.
Variable Tracker
VariableStartAfter chownAfter ls -lFinal
file_owneroriginal_owneralicealicealice
file_grouporiginal_grouporiginal_grouporiginal_grouporiginal_group
Key Moments - 2 Insights
Why does chown sometimes give 'Permission denied'?
Because only the root user can change ownership. See execution_table step 1 where permission is checked.
Does chown change the file group if only owner is specified?
No, if only owner is given, group stays the same. The variable_tracker shows file_group unchanged after chown.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what is the output after running 'chown alice file.txt'?
AError message
BNo output
CFile details
DPermission prompt
💡 Hint
Check execution_table row 1 and 2 output columns.
At which step does the file owner change to alice?
AStep 1
BStep 3
CStep 2
DStep 4
💡 Hint
Look at the Action column in execution_table.
If the user lacks permission, what happens according to the concept_flow?
AError: Permission denied and command stops
BSystem asks for password
COwnership changes anyway
DFile is deleted
💡 Hint
See the No branch after permission check in concept_flow.
Concept Snapshot
chown changes file owner and/or group.
Syntax: chown [owner][:group] filename
Requires root or proper permissions.
No output on success.
Use ls -l to verify ownership.
If permission denied, command fails.
Full Transcript
The chown command changes the owner and optionally the group of a file. When you run chown, the system first checks if you have permission to change ownership. If you do, it changes the owner and/or group silently. If not, it shows a permission denied error. After changing ownership, you can use ls -l to see the new owner and group. Only root or authorized users can change ownership. If you specify only the owner, the group stays the same. This process helps control who can access or modify files on the system.

Practice

(1/5)
1. What does the chown command do in Linux?
easy
A. Deletes a file or directory
B. Changes the owner of a file or directory
C. Changes the permissions of a file or directory
D. Copies a file or directory

Solution

  1. Step 1: Understand the purpose of chown

    The chown command is used to change the ownership of files or directories in Linux.
  2. Step 2: Compare with other commands

    Changing permissions is done with chmod, deleting with rm, and copying with cp. So these are not correct.
  3. Final Answer:

    Changes the owner of a file or directory -> Option B
  4. Quick Check:

    chown changes ownership [OK]
Hint: Remember: chown = change owner [OK]
Common Mistakes:
  • Confusing chown with chmod
  • Thinking chown deletes files
  • Mixing chown with copy commands
2. Which of the following is the correct syntax to change the owner of a file named file.txt to user alice?
easy
A. chown -owner alice file.txt
B. chown file.txt alice
C. chown alice file.txt
D. chown -u alice file.txt

Solution

  1. Step 1: Recall the basic syntax of chown

    The correct syntax is chown USER FILE, so the user comes first, then the file.
  2. Step 2: Check each option

    chown alice file.txt matches the syntax. Options A, B, and C use incorrect order or invalid flags.
  3. Final Answer:

    chown alice file.txt -> Option C
  4. Quick Check:

    Syntax: chown USER FILE [OK]
Hint: User name comes before file name in chown [OK]
Common Mistakes:
  • Swapping user and file order
  • Using invalid flags like -u or -owner
  • Forgetting to specify the user
3. What will be the output of the command ls -l file.txt after running chown bob file.txt assuming file.txt was owned by user alice before?
medium
A. -rw-r--r-- 1 bob users 0 Apr 1 12:00 file.txt
B. -rw-r--r-- 1 alice users 0 Apr 1 12:00 file.txt
C. chown: invalid user: 'bob'
D. Permission denied

Solution

  1. Step 1: Understand what chown bob file.txt does

    This command changes the owner of file.txt to user bob.
  2. Step 2: Predict the ls -l output

    The owner field will show bob instead of alice. Permissions and group remain the same.
  3. Final Answer:

    -rw-r--r-- 1 bob users 0 Apr 1 12:00 file.txt -> Option A
  4. Quick Check:

    Owner changes to bob after chown [OK]
Hint: ls -l shows updated owner after chown [OK]
Common Mistakes:
  • Expecting group to change automatically
  • Thinking ownership stays the same
  • Assuming error if user exists
4. You run chown alice file.txt but get the error: chown: changing ownership of 'file.txt': Operation not permitted. What is the most likely cause?
medium
A. You are not running the command as root or with sudo
B. The file file.txt does not exist
C. The username alice does not exist
D. The file is already owned by alice

Solution

  1. Step 1: Understand permission requirements for chown

    Changing ownership usually requires root privileges or sudo because normal users cannot change file owners.
  2. Step 2: Analyze the error message

    "Operation not permitted" means permission denied, not file missing or user missing.
  3. Final Answer:

    You are not running the command as root or with sudo -> Option A
  4. Quick Check:

    chown needs root privileges [OK]
Hint: Use sudo with chown to avoid permission errors [OK]
Common Mistakes:
  • Ignoring need for root privileges
  • Assuming file or user missing causes this error
  • Trying to chown without sudo
5. You want to change the owner to carol and the group to staff for all files and folders inside /data/project recursively. Which command should you use?
hard
A. chown -r carol:staff /data/project
B. chown carol staff /data/project -R
C. chown carol:staff /data/project
D. chown -R carol:staff /data/project

Solution

  1. Step 1: Understand recursive ownership change

    The -R option applies ownership changes to all files and folders inside the given directory recursively.
  2. Step 2: Check correct syntax for user and group

    Use user:group format to set both owner and group at once.
  3. Step 3: Verify options order and spelling

    chown -R carol:staff /data/project uses -R correctly and the right syntax. chown carol staff /data/project -R has wrong order and missing colon. chown carol:staff /data/project misses recursive flag. chown -r carol:staff /data/project uses lowercase -r which is invalid.
  4. Final Answer:

    chown -R carol:staff /data/project -> Option D
  5. Quick Check:

    Use -R and user:group for recursive ownership [OK]
Hint: Use -R and user:group to change ownership recursively [OK]
Common Mistakes:
  • Forgetting the -R flag for recursion
  • Using lowercase -r instead of -R
  • Separating user and group without colon
  • Placing options after the path
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard