# file-ownership

## Introduction

Linux files and directories always belong to a user and group. That is what we call ownership.\
If this can be boring to new users, remember that this is a huge part of what makes Linux as secure as it is.

## Check current ownership

### Check ownership in the current directory:

`ls -l`

Example output:

```
ultimatebyte@game:~$ ls -l
total 32
drwxr-xr-x 5 ultimatebyte ultimatebyte 4096 Jan 29 22:26 lgsm
drwxr-xr-x 5 ultimatebyte ultimatebyte 4096 Jan 29 22:23 log
drwxr-xr-x 4 ultimatebyte ultimatebyte 4096 Jan 29 22:26 serverfiles
drwxr-xr-x 8 ultimatebyte ultimatebyte 4096 Jan 29 22:26 Steam
drwxr-xr-x 5 ultimatebyte ultimatebyte 4096 Jan 29 22:24 steamcmd
-rwxr-x--- 1 ultimatebyte ultimatebyte 5691 Jan 30 01:14 twserver
```

Syntax of the output is:

* `d` for directory or `-` for file
* user, then group, then others permissions
* number specifies the number of links or directories inside of a directory
* The user that owns the file, or directory
* The group that file or directory belongs to
* The size in bytes
* The date of last modification
* The name of the file

### Check ownership from all files and hidden files of any directory

`ls -al /path/to/file/or/dir`

Sample output:

```
ultimatebyte@game:~$ ls -al /home/ultimatebyte
total 132
drwxr-xr-x 11 ultimatebyte ultimatebyte  4096 Feb  2 07:36 . # Ownership from the current given dir
drwxr-xr-x 22 root         root          4096 Feb  2 07:36 .. # Ownership from the parent dir
-rw-------  1 ultimatebyte ultimatebyte 49744 Feb 12 03:04 .bash_history
-rw-r--r--  1 ultimatebyte ultimatebyte   220 Apr 15  2016 .bash_logout
-rw-r--r--  1 ultimatebyte ultimatebyte  3515 Apr 15  2016 .bashrc
drwxr-xr-x  4 ultimatebyte ultimatebyte  4096 Jan 15 23:26 .config
drwxr-xr-x  5 ultimatebyte ultimatebyte  4096 Jan 29 22:26 lgsm
drwxr-xr-x  3 ultimatebyte ultimatebyte  4096 Jan 14 18:10 .local
drwxr-xr-x  5 ultimatebyte ultimatebyte  4096 Jan 29 22:23 log
-rw-------  1 ultimatebyte ultimatebyte  1005 Jan 30 01:14 .nano_history
-rw-r--r--  1 ultimatebyte ultimatebyte   675 Apr 15  2016 .profile
-rw-r--r--  1 ultimatebyte ultimatebyte    66 Sep  1 17:43 .selected_editor
drwxr-xr-x  4 ultimatebyte ultimatebyte  4096 Jan 29 22:26 serverfiles
drwxr-xr-x  3 ultimatebyte ultimatebyte  4096 Jan 15 01:40 .steam
drwxr-xr-x  8 ultimatebyte ultimatebyte  4096 Jan 29 22:26 Steam
drwxr-xr-x  5 ultimatebyte ultimatebyte  4096 Jan 29 22:24 steamcmd
-rwxr-x---  1 ultimatebyte ultimatebyte  5691 Jan 30 01:14 twserver
-rw-r--r--  1 ultimatebyte ultimatebyte    29 Jan 30 02:17 .tw-server.lock
```

## All these commands require elevated privileges!

## Change owner

Change owner from files or directories

### Command

`chown`

As usual, `chown --help` will provide you with all available arguments

#### Single file syntax

`chown newowner /path/to/file/or/directory`

#### Recursive syntax (include sub files and directories)

`chown -R newowner /path/to/directory`

#### Example

`chown -R myuser /home/myuser`

## Group ownership

Change group ownership on files or directories

### Command

`chgrp`

As usual, `chgrp --help` will provide you with all available arguments

### Single file syntax

`chgrp newgroup /path/to/dir/or/file`

### Recursive syntax (include sub files and directories)

`chgrp -R newgroup /path/to/dir/`

## User and group ownership

Change user and/or ownership for files and directories at the same time

### Command

`chown`

As usual, `chown --help` will provide you with all available arguments

### Single file command

`chown user:group /path/to/dir/or/file`

### Recursive

`chown -R user:group /path/to/dir`

#### Example:

chown -R myuser:myuser /home/myuser


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.linuxgsm.com/linux/file-ownership.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
