открытый () консоль для дескрипторов файлов по умолчанию

Поместите это в свой squid.conf

httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
# acl lan src 192.168.1.1 192.168.2.0/24 # configure this for your lan settings
http_access allow localhost
http_access allow lan

и удостоверьтесь, что Вы имеете, устанавливают iptables на Вашем сервере сквида.

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

Поскольку больше узнает ПРАКТИЧЕСКОЕ РУКОВОДСТВО по http://tldp.org/HOWTO/TransparentProxy.html

3
14.01.2020, 21:48
2 ответа

Этот фрагмент кода открывается /dev/console. Получающийся дескриптор файла является дескриптором файла с самым низким номером, который не уже открыт. Если то число равняется самое большее 2, цикл выполняется снова. Если то число равняется 3 или выше, дескриптор закрывается и остановки цикла.

Когда цикл закончится, дескрипторы файлов от 0 до 2 (stdin, stdout и stderr), как гарантируют, будут открыты. Или они были открыты прежде и могут быть подключены к любому файлу, или они были просто открыты, и они подключены с /dev/console.

Выбор /dev/console является странным. Я ожидал бы /dev/tty, который всегда является терминалом управления, связанным с группой процесса обработки вызовов. Это - один из нескольких файлов, которых стандарт POSIX требует для существования. /dev/console системная консоль, которая является, куда сообщения системного журнала, отправленные в консоль, идут; для оболочки не полезно заботиться об этом.

1
27.01.2020, 21:32

Это интересно для цикла. 'open ()' возвращает файловые дескрипторы с наименьшим числом. Например, текущий fd равен 10, что показывает, что 0,1... и 9 были открыты ранее. Он закрывает один дополнительный дескриптор файла для только что открытой консоли.

0
27.01.2020, 21:32

Теги

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