Не используйте CIPE. Это удерживалось от использования давным-давно, поскольку это не на самом деле криптографически безопасно. IPSEC является текущим, но это - гигантская боль для получения выполнения.
Используйте OpenVPN, особенно если это - от компьютера к компьютеру (если некоторые клиенты являются, скажем, телефонами, то используйте IPSEC/PPTP, поскольку клиенты OpenVPN не легко доступны на таких устройствах). Вот ПРАКТИЧЕСКОЕ РУКОВОДСТВО:
http://openvpn.net/index.php/open-source/documentation/howto.html
Об/мин для OpenVPN находится в RPMForge. ПРАКТИЧЕСКОЕ РУКОВОДСТВО для установки того репозитория: http://wiki.centos.org/AdditionalResources/Repositories/RPMForge Так, после того как у Вас есть настроенный repo, можно просто работать yum install openvpn
.
Если Вы просто настраиваете единственный клиент, то смотрите на мини-практическое руководство OpenVPN при конфигурировании статических ключей:
http://openvpn.net/index.php/open-source/documentation/miscellaneous/78-static-key-mini-howto.html
Более типичное (и гибкий) конфигурация для OpenVPN должно создать Ваш собственный мини-Центр сертификации. Сервер проверяет клиенты (и клиенты проверяют сервер, для защиты от атак "человек посередине"), использование сертификатов, подписанных этим мало Приблизительно. OpenVPN включает много сценариев для подъема этого набора. Но из Вашего сценария можно, вероятно, обойтись статической key/pre-shared секретной конфигурацией.
Размер каталога (как замечено с ls -ld /var/lib/php/sessions
) может дать признак. Если это является маленьким, нет многих файлов. Если это является большим, там может быть много записей, или в прошлом, возможно, были многие.
Список содержания, пока Вы не делаете stat
отдельные файлы, не должен брать намного намного дольше, чем чтение файла тот же размер.
То, что могло бы произойти, - то, что у Вас есть псевдоним для ls
это делает ls -F
или ls --color
. Те опции вызывают lstat
системный вызов, который будет выполнен на каждом файле для наблюдения, например, если они - файл или каталог.
Вы также захотите удостовериться, что Вы перечисляете точечные файлы и что Вы оставляете список файлов неотсортированным. Для этого, выполненного:
command ls -f /var/lib/php/sessions | wc -l
Если не слишком много имен файлов имеют символы новой строки, которые должны дать Вам хорошую оценку.
$ ls -lhd 1
drwxr-xr-x 2 chazelas chazelas 69M Aug 15 20:02 1/
$ time ls -f 1 | wc -l
3218992
ls -f 1 0.68s user 1.20s system 99% cpu 1.881 total
wc -l 0.00s user 0.18s system 9% cpu 1.880 total
$ time ls -F 1 | wc -l
<still running...>
Можно также вывести количество файлов там путем вычитания количества уникальных файлов в другом месте в файловой системе от количества используемого inodes в выводе df -i
.
Например, если файловая система смонтирована на /var
, с GNU find
:
find /var -xdev -path /var/lib/php/sessions -prune -o \
-printf '%i\n' | sort -u | wc -l
Найти количество файлов не в/var/lib/php/sessions. Если Вы вычитаете это к IUsed
поле в выводе df -i /var
, Вы получите приближение (потому что некоторые специальные inodes не связаны ни с каким каталогом в типичной файловой системе расширения) количества файлов, связанных с /var/lib/php/sessions
это иначе не связано больше нигде (обратите внимание, что/var/lib/php/sessions мог очень хорошо содержать один миллиард записей для того же файла (хорошо на самом деле, максимальное количество ссылок на файл будет намного ниже, чем это в большинстве файловых систем), так, чтобы метод не был надежным).
Обратите внимание, что при чтении содержания каталога должно быть относительно быстрым, удаление файлов может быть крайне медленным.
rm -r
, когда удаление файлов, первые списки содержание каталога, и затем звонит unlink()
для каждого файла. И для каждого файла, система имеет к поиску файл в том огромном каталоге, который, если это не хешируется, может быть очень дорогим.
Я предполагаю, что Вы могли использовать ls -1 /var/lib/php/sessions | wc -l
по SSH
Обратите внимание, что это ls -(one)
и ws -(letter l)
ls
... Можно ли сделать ls /var/lib/php/sessions
?
– Mash
15.08.2013, 20:44
ls
. спасибо
– jordanm
15.08.2013, 20:47
ls -f
– Stéphane Chazelas
15.08.2013, 21:49
В ext2/3/4 можно сделать некоторое приближение на основе размера самого каталога. Это не очень точно, но позволяет образованное предположение без "подсчета".
Каталог запускается на уровне 4 096 байтов по умолчанию. Поскольку это получает больше записей, это увеличивается в размере (но никогда не будет уменьшаться снова). После некоторого тестирования кажется, что каждая запись берет 12 байтов и растет на 4 096, когда это достигает предела. Это означает, что, если размер текущего каталога 16384, Вы имели между 1 024 и 1 365 записями когда-то.
Существует также прием к просмотру файлов в этих каталогах сразу. Когда Вы работаете ls
, весь каталог прочитан и затем отсортирован. Можно отключить использование сортировки ls -1U
.