Если вы выполняете приложение, которое необходимо - скажем, 5 минут до конца, например, задача копирования - оболочка заблокирована во время работы программы, все 5 минут. Работа копирования затем находится в так называемой группе процессов на переднем плане, указанной +
в PS
. Возможно, вам придется выполнить еще одну работу в течение этого 5 минут, но оболочка заблокирована.
С другой стороны, когда вы выполняете задание копирования в фоновом режиме ( Цель исходных целей CP и
) Вы выполняете работу на заднем плане, не блокируя текущую оболочку. Вы можете продолжить с другими вещами. Вы можете вернуть процесс обратно на передний план с FG
, если хотите.
Мне не совсем понятно, находятся ли эти правила iptables
на вашем клиенте или на вашем сервере. Ваше утверждение "оно не работает, когда я пытаюсь к нему подключиться" совсем не помогает. Пожалуйста, обновите свой вопрос, чтобы прояснить эти вопросы.
Если эти правила находятся на вашем сервере, вы не можете подключиться к ним откуда-либо, потому что вы не определили никаких правил, которые бы это разрешали.
Если это на вашем клиенте , то причина, по которой оно не работает, заключается в том, что вы не разрешили входящее соединение, связанное с данными. Запомните, что это от tcp/21 на сервере до произвольный высокий порт на вашем клиенте. Ваше правило iptables
INPUT ожидает входящего сеанса - tcp/21.
Эти правила из devops-blog.net должны работать для исходящего клиента:
-A INPUT -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
-A INPUT -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p tcp --sport 1024: --dport 1024: -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp --sport 1024: --dport 1024: -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT