diff --git a/doc/CONFIGURATION.md b/doc/CONFIGURATION.md index 1d81d9213..6690e7c0c 100644 --- a/doc/CONFIGURATION.md +++ b/doc/CONFIGURATION.md @@ -174,11 +174,15 @@ Mountpoint automatically configures reasonable defaults for file system settings ### File modifications and deletions -By default, Mountpoint allows creating new files, and does not allow deleting existing objects or overwriting existing objects. You can adjust these defaults in two ways: -* If you want to allow file deletion, use the `--allow-delete` command-line flag. When you delete a file from your Mountpoint file system with this flag enabled, the corresponding object is immediately deleted from your S3 bucket. -* If you want to forbid all mutating actions on your S3 bucket, use the `--read-only` command-line flag. +By default, Mountpoint allows creating new files but does not allow deleting or overwriting existing objects. -You cannot currently use Mountpoint to overwrite existing objects. However, if you use the `--allow-delete` flag, you can first delete the object and then create it again. +Writes to existing files are allowed if `--allow-overwrite` flag is set at mount time, but only when the `O_TRUNC` flag is used at open time to truncate the existing file. All writes must start from the beginning of the file and must be made sequentially. + +If you want to allow file deletion, use the `--allow-delete` flag at mount time. Delete operations immediately delete the object from S3, even if the file is being read from. + +If you want to forbid all mutating actions on your S3 bucket via Mountpoint, use the `--read-only` command-line flag. + +For more details on the behavior of file operations with Mountpoint, see the [file operations section](https://github.com/awslabs/mountpoint-s3/blob/main/doc/SEMANTICS.md#file-operations) of the semantics documentation for more information. ### S3 storage classes