Блокировка прямого доступа к файлам (scp или ftp-подобное поведение) на сервере ssh для некоторых пользователей

Для файлов ls -l fileпоказывает (среди прочего )размер fileв байтах, а du -k fileпоказывает пространство, занимаемое fileна диске (в единицах по 1 КБ. = 1024 байта ). Поскольку дисковое пространство выделяется блоками, размер, указанный в du -k, всегда немного больше, чем размер, указанный в ls -kl(, который совпадает с ls -l, но в единицах 1 КБ ).

Для каталогов ls -ld dirпоказывает (среди прочего )размер списка имен файлов (вместе с количеством атрибутов )файлов и подкаталогов в dir. Это просто список имен файлов, а не содержимое файлов или подкаталогов. Таким образом, этот размер увеличивается, когда вы добавляете файлы в dir(, даже если файлы пусты ), но остается неизменным, когда увеличивается один из файлов в dir.

Однако, когда вы удаляете файлы из dir, пространство из списка не освобождается сразу, а записи для удаленных файлов помечаются как неиспользуемые и позже перерабатываются (, на самом деле это зависит от реализации -, но то, что я описал, в значительной степени является универсальным поведением в наши дни ). Вот почему вы можете не увидеть никаких изменений в выводе ls -ldпри удалении файлов намного позже, если вообще когда-либо.

Наконец, du -ks dirпоказывает (оценку )места на диске, занимаемого всеми файлами в dirвместе со всеми файлами во всех подкаталогах dir, в 1 КБ = 1024 байтовые единицы. Принимая во внимание описание выше, это не имеет никакого отношения к выводу ls -kld dir.

0
10.07.2019, 21:08
2 ответа

Возможно, вы захотите изучить настройку command="whatever"в /etc/ssh/sshd_configдля всех пользователей. Я не проверял это, но использование command="/bin/bash.profile"может дать вам то, что вы хотите.

-1
28.01.2020, 05:04

Параметр конфигурации ForceCommandв sshd_config— это то, что вам нужно. Я рекомендую вам установить ваше приложение там, а не зависеть от поведения .profile.

0
28.01.2020, 05:04

Теги

Похожие вопросы