Я бы начал с раздела SHELL GRAMMAR на странице руководства для bash
:
Простые команды
Простая команда представляет собой последовательность необязательных присваивания переменных, за которыми следуют слова, разделенные пробелами, и перенаправления , и завершаются оператором управления .
Таким образом, перенаправление ( &> / dev / null
) выполняется первым, а за ним следует оператор управления ( &
).
Править: И чтобы сделать ответ полным, nohup
является первой частью простой команды . Это не имеет особого значения в bash
.
Точно ваш пример (кроме / dev / null
, который только усложняет его):
jakuje@E6430:/tmp$ rm nohup.out out
jakuje@E6430:/tmp$ nohup sleep 1 & &>out
[1] 10876
nohup: ignoring input and appending output to ‘nohup.out’
[1]+ Done nohup sleep 1
jakuje@E6430:/tmp$ cat nohup.out # empty
jakuje@E6430:/tmp$ cat out # empty
jakuje@E6430:/tmp$ rm nohup.out
jakuje@E6430:/tmp$ nohup sleep 1 &>out &
[1] 10882
[1]+ Done nohup sleep 1 &> out
jakuje@E6430:/tmp$ cat nohup.out # no file
cat: nohup.out: No such file or directory
jakuje@E6430:/tmp$ cat out # output of nohup
nohup: ignoring input
# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
# more /var/log/maillog
Sep 1 17:07:50 izuf6cj2o216xp postfix/sendmail[25307]: fatal: parameter inet_interfaces: no local interface found for ::1
Решил:
vim /etc/postfix/main.cf
#inet_interfaces = localhost
inet_interfaces = all
, затем
service postfix start