…или шаблонизировать оригинальный файл и напичкать его инклюдами. Или можно обнаружить, что у вас достаточно свежая система, чтобы вместо дописывания в файл можно было бы просто положить нужное в /etc/{fstab,sudoers,sysctl,modprobe,да-что-угодно}.d.
Без контекста, в общем, посоветовать можно что угодно.
А в каком это дистрибутиве работает /etc/fstab.d и почему?
Вот здесь основное обсуждение этой фичи, и в конце решили не поддерживать это ни в libmount, ни в systemd, потому что /etc/fstab — это не просто какой-то там конфиг-файлик, это ABI. Хотя было бы очень круто, если бы /etc/fstab.d работал, но когда придумывали fstab, никто не задумывался о тех задачах, для которых каталог был бы удобнее.
Не знаю, я не пользователь fstab.d, я лишь заметил в своё время, что директория появляется после инсталляции, например, Debian 7.8 или Ubuntu 14.04. Причём, как оказывается, появляется она уже давно, вводя кучу людей в заблуждение.
Ну, тут ответ простой: sources.list.d, тем более что он поддерживается уже почти 10 лет.
А на будущее общий ответ таков: ставьте задачу иначе. Смысл ваших действий ведь не в том, чтобы бездумно лепить какие-то там строчечки в конец, а гарантировать, что они там есть, что они там в единственном экземпляре¹ и что действия, связанные с изменением конфига (apt-get update тот же), будут воспроизведены только после, собственно, их изменения (см. handlers). А в остальном — см. выше.
____ ¹ если только, конечно, не стоит какая-нибудь откровенно странная задача вида «дописать время запуска плейбука в отдельный лог» — тогда можно хоть shell module использовать.
То есть именно с удаленного хоста на локальный (откуда запускаешь Ansible)? Для копирования есть модуль fetch, а так хоть через регистр. Ну или притащить файл локально а дальше любым способом, которым ты добавляешь строчки в файл на удаленном хосте с использованием delegate_to: localhost и run_once: true по необходимости.
Файл, который находится на моем компьютере (где ansible), нужно присоединить в конец файла, который находится на сервере. Я написал хост и клиент, потому что сервер виртуальный, соответственно, мой комп - хост, а виртуалка - клиент. Если я не путаюсь в терминологии.