Замените строку в файле и перезапишите файл

Только, чтобы быть определенным, проверяют Вас дважды main.cf (/etc/postfix/main.cf на моих дистрибутивах Ubuntu не 100%, уверенных для CentOS), и удостоверяются, что Вы имеете:

smtpd_sasl_auth_enabled = yes
broken_sasl_auth_clients = yes

Я - далеко не эксперт в MTAs, но я, по крайней мере, стал достаточно далеким в заставить мой давать мне AUTH и AUTH= ответы и те две строки - то, что дает Вам те результаты.

На всякий случай Вам любопытно, от того, что я смог подобрать из чтения руководств и такого, smtpd_sasl_auth_enabled = yes строка включает AUTH {mechanisms} строка ответа, говоря совместимым клиентам, что механизмы аутентификации доступны. Удостоверьтесь, что Вы не бросили букву где-нибудь как 'd' в 'smtpd'. broken_sasl_auth_clients = yes должен дать AUTH={mechanisms} ответ, который я только просмотрел ту часть и видел что-то о 'неподдерживаемом', 'клиентах' и 'перспективе', затем закатил мои глаза и бормотал несколько вовлечения метких слов Microsoft.

Теперь для материала STARTTLS, я не могу быть на 100% полезным на этом, потому что я еще не протестировал TLS, так как я все еще работаю над передачей почты на моем сервере. Я получаю почтовый штраф, и курьер аутентифицирует пользователей IMAP, но мой автор Cyrus-SASL приводит SMTP к сбою. Я приложу все усилия здесь и скажу Вам, что знаю настройки, которые я имею для него:

smtpd_tls_cert_file = /etc/postfix/smtpd.cert
smtpd_tls_key_file = /etc/postfix/smtpd.key
smtpd_use_tls = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

smtp_tls_security_level = may

Я боюсь, что все, что я могу сказать Вам о то есть, снова, удостоверяется, что Вы не пропустили букву или '_' при необходимости и проверили и удостоверились, что не прокомментировали установку. Как кто-то, кто спотыкается через postfix/mysql/cyrus-sasl/courier-imap (-ssl)/pam конфигурация и споткнулся через другие конфигурации прежде, я могу сказать Вам, что сделал это больше раз, чем я хочу признаться в.

4
07.08.2014, 02:14
1 ответ
sed -i 's|~/deleted|"$defaultpath"|g' file.sh

Объяснение:

  • -i сообщает sed изменить файл на месте.

  • s | ~ / deleted | "$ defaultpath" | g сообщает sed заменить ~ / deleted на "$ defaultpath" где бы он ни находился находит это.

Дополнительная функция: сохранить ~ / удалено в третьей строке

Вы не просили об этом, но в вашем примере сценария было бы неплохо оставить ~ / deleted без изменений в третьей строке где он используется для определения пути по умолчанию . Чтобы изменить все экземпляры ~ / deleted , кроме экземпляра в третьей строке, используйте:

sed -i -e '3n' -e 's|~/deleted|"$defaultpath"|g' file.sh

Это добавляет единственную команду sed 3n , которая сообщает sed пропустить третью строку.

8
27.01.2020, 20:49

Теги

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