ディレクトリのファイルサイズ制限を設定するにはどうすればよいですか?


8

特定の理由でアプリケーションとユーザーが使用するディレクトリをシステム上に持っていますが、そのサイズが2GBを超えないようにしたくありません。ある制限を設定しない方法があります。ファイルサイズがそれを超えたり、将来的に設定することにした他の量を超えたりすることを許可しますか?

サイズ制限を超えると、最後の変更が取り消され(操作を停止し、ファイルの半分がコピーされてそこに残されているかどうかを気にしないようにするオプションがあるはずです)、警告が表示されます。ユーザー。

Ubuntu GNOME 16.10とGNOME 3.22を実行しています。



@JacobVlijm:今のところ、muruの回答を受け入れますが、より優れた回答を提供できる場合は、代わりにその回答を受け入れます。

回答:


19

ext4の通常のファイルシステムクォータは、ディレクトリごとではなく、ユーザーごとまたはグループごとです。ZFSは、ZFSボリュームから固定サイズのファイルシステムを作成することにより、ディレクトリクォータをソート設定できます。ただし、簡単なトリックは、2GBのファイルを作成し、その上にファイルシステムを作成して、目的のフォルダーにマウントすることです。

$ touch 2gbarea
$ truncate -s 2G 2gbarea
$ mke2fs -t ext4 -F 2gbarea
mke2fs 1.43.3 (04-Sep-2016)
Discarding device blocks: done                            
Creating filesystem with 524288 4k blocks and 131072 inodes
Filesystem UUID: bf1b2ee8-a7df-4a57-9d05-a8b60323e2bf
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done 

$ sudo mount 2gbarea up    
$ df -h up
Filesystem      Size  Used Avail Use% Mounted on
/dev/loop0      2.0G  6.0M  1.8G   1% /home/muru/up

いずれにしても、ファイルシステムクォータ(またはこのような方法)は、ユーザーが望むほどユーザーフレンドリーではありません。この方法は一方向の柔軟性があり、オンラインでサイズを増やすことができますが、減らすことは困難です。

コマンド:

  • touchtouch 2gbareaという名前の空のファイルを作成します2gbarea
  • truncatetruncateはファイルのサイズ変更に使用されます(この場合、現在空の2gbareaファイルをを使用して2 GB にサイズ変更します-s 2G)。
  • mke2fsmke2fsext2 / 3/4ファイルシステム(この場合はext4)を作成します。
  • mount 指定されたディレクトリにファイルシステムをマウントします。
  • df ファイルシステムの使用状況をリストするために使用されます。

1
新しい人はコマンドに混乱するかもしれません。その目的を説明/リンクする必要がありますか?
Rohitt Vashishtha 2016年

@RohittVashishthaいいですか?
muru、

クォータに達したときに小さなポップアップ警告メッセージを表示させる方法はありますか?

@ParanoidPanda「それ」って?ファイルブラウザーは、スペースがなくなったときに文句を言うと思います。
muru 2016年

@muru:主に、この場所に書き込むのはファイルブラウザではないと思います。他の特定のアプリケーションである可能性が高いです。そのフォルダーを「監視」して、その容量に達すると、ユーザーに警告するためのグラフィカルな警告がポップアップするようにする方法はありませんか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.