{"id":1785,"date":"2025-08-10T05:19:18","date_gmt":"2025-08-10T05:19:18","guid":{"rendered":"https:\/\/linuxjk.cn\/?p=1785"},"modified":"2025-10-03T20:42:11","modified_gmt":"2025-10-03T12:42:11","slug":"ansible%e8%87%aa%e5%8a%a8%e5%8c%96","status":"publish","type":"post","link":"https:\/\/linuxjk.cn\/?p=1785","title":{"rendered":"ansible\u81ea\u52a8\u5316"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"1785\" class=\"elementor elementor-1785\">\n\t\t\t\t<div class=\"elementor-element elementor-element-abd4ed9 e-flex e-con-boxed e-con e-parent\" data-id=\"abd4ed9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fd08baf elementor-widget elementor-widget-text-editor\" data-id=\"fd08baf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><code>ansble\u81ea\u52a8\u5316--\u5168\u6587\u8bb2\u89e3\u53ca\u81ea\u52a8\u90e8\u7f72nfs\uff0crsyncd<\/code><\/p><pre><a href=\"https:\/\/www.bilibili.com\/video\/BV1BQapzZEQt\/\"><strong>\u624b\u673a\u7aef\u53ef\u76f4\u63a5\u64ad\u653e\u4e0b\u65b9\u89c6\u9891\uff0cPC\u7aef\u8bf7\u70b9\u51fb\u64ad\u653e\u6309\u94ae\u6216\u70b9\u6b64\u5904\u67e5\u770b\u539f\u89c6\u9891<\/strong><\/a><\/pre>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-33f46ad elementor-widget elementor-widget-text-editor\" data-id=\"33f46ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"smartideo\">\n                <div class=\"player\">\n                    <iframe src=\"\/\/player.bilibili.com\/player.html?aid=0&bvid=1BQapzZEQt&cid=&page=1\" width=\"100%\" height=\"100%\" frameborder=\"0\" allowfullscreen=\"true\" scrolling=\"no\" loading=\"lazy\" referrerpolicy=\"unsafe-url\"><\/iframe>\n                <\/div><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d620e07 elementor-widget elementor-widget-text-editor\" data-id=\"d620e07\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_88 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u76ee\u5f55<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#_%E5%B8%82%E9%9D%A2%E4%B8%8A%E5%B8%B8%E8%A7%81%E7%9A%84%E6%89%B9%E9%87%8F%E7%AE%A1%E7%90%86%E6%96%B9%E6%A1%88%EF%BC%9A\" >\u00a0\u5e02\u9762\u4e0a\u5e38\u89c1\u7684\u6279\u91cf\u7ba1\u7406\u65b9\u6848\uff1a<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1%E9%83%A8%E7%BD%B2%E4%B8%8E%E4%BD%BF%E7%94%A8\" >1.\u90e8\u7f72\u4e0e\u4f7f\u7528<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#12_%E9%85%8D%E7%BD%AE\" >1.2 \u914d\u7f6e<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_ansible%E5%91%BD%E4%BB%A4%E7%9A%84%E9%85%8D%E7%BD%AE\" >1) ansible\u547d\u4ee4\u7684\u914d\u7f6e<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2%EF%BC%89%E8%A2%AB%E7%AE%A1%E7%90%86%E6%9C%BA%E5%99%A8%E7%9A%84%E6%B8%85%E5%8D%95inventory_%E4%B8%BB%E6%9C%BA%E6%B8%85%E5%8D%95\" >2\uff09\u88ab\u7ba1\u7406\u673a\u5668\u7684\u6e05\u5355(inventory \u4e3b\u673a\u6e05\u5355)<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%88%86%E7%BB%84%E6%A1%88%E4%BE%8B%EF%BC%9A%E7%BB%99backupnfs_2%E4%B8%AA%E7%BB%84%E5%90%88%E5%B9%B6%E6%96%B0%E7%9A%84%E7%BB%84%E5%8F%ABdata\" >\u5206\u7ec4\u6848\u4f8b\uff1a\u7ed9backup,nfs 2\u4e2a\u7ec4\u5408\u5e76\u65b0\u7684\u7ec4\u53ebdata<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B%EF%BC%9A%E4%B8%BB%E6%9C%BA%E6%B8%85%E5%8D%95%E4%B8%AD%E8%A1%A8%E7%A4%BA%E8%8C%83%E5%9B%B4%EF%BC%88ip%E5%9C%B0%E5%9D%80%E5%90%8E%E8%B7%9F%E8%B5%B7%E5%A7%8B%E6%95%B0%E5%AD%97_%E7%BB%93%E6%9D%9F%E6%95%B0%E5%AD%97_%E9%97%B4%E9%9A%94%EF%BC%89\" >\u6848\u4f8b\uff1a\u4e3b\u673a\u6e05\u5355\u4e2d\u8868\u793a\u8303\u56f4\uff08ip\u5730\u5740\u540e\u8ddf[\u8d77\u59cb\u6570\u5b57:\u7ed3\u675f\u6570\u5b57:\u95f4\u9694]\uff09<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B%EF%BC%9A%E6%B2%A1%E6%9C%89%E9%85%8D%E7%BD%AE%E5%AF%86%E9%92%A5%E8%AE%A4%E8%AF%81%E4%B8%BB%E6%9C%BA%E6%B8%85%E5%8D%95%E5%A6%82%E4%BD%95%E4%B9%A6%E5%86%99%EF%BC%88%E4%BD%BF%E7%94%A8%E6%98%8E%E6%96%87%E6%8C%87%E5%AE%9A%E7%94%A8%E6%88%B7%E5%90%8D%E5%AF%86%E7%A0%81%E7%9A%84%E6%96%B9%E5%BC%8F%EF%BC%89\" >\u6848\u4f8b\uff1a\u6ca1\u6709\u914d\u7f6e\u5bc6\u94a5\u8ba4\u8bc1,\u4e3b\u673a\u6e05\u5355\u5982\u4f55\u4e66\u5199.\uff08\u4f7f\u7528\u660e\u6587\u6307\u5b9a\u7528\u6237\u540d\u5bc6\u7801\u7684\u65b9\u5f0f\uff09<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3%EF%BC%89%E6%B5%8B%E8%AF%95%E6%98%AF%E5%90%A6%E8%BF%9E%E6%8E%A5%E6%88%90%E5%8A%9F\" >3\uff09\u6d4b\u8bd5\u662f\u5426\u8fde\u63a5\u6210\u529f<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#13_%E7%AE%A1%E7%90%86\" >1.3 \u7ba1\u7406<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#ansible%E7%82%B9%E5%AF%B9%E7%82%B9%E6%A8%A1%E5%BC%8F%EF%BC%88%E5%91%BD%E4%BB%A4%E8%A1%8C%EF%BC%89%E6%89%B9%E9%87%8F%E7%AE%A1%E7%90%86%E6%B5%81%E7%A8%8B\" >ansible\u70b9\u5bf9\u70b9\u6a21\u5f0f\uff08\u547d\u4ee4\u884c\uff09\u6279\u91cf\u7ba1\u7406\u6d41\u7a0b:<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#Ansible%E5%BF%85%E7%9F%A5%E5%BF%85%E4%BC%9A%E6%A8%A1%E5%9D%97\" >Ansible\u5fc5\u77e5\u5fc5\u4f1a\u6a21\u5757<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_%E5%91%BD%E4%BB%A4%E4%B8%8E%E8%84%9A%E6%9C%AC%E7%B1%BB%E6%A8%A1%E5%9D%97\" >1) \u547d\u4ee4\u4e0e\u811a\u672c\u7c7b\u6a21\u5757<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#a_command%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\" >a) command\u6a21\u5757\u2606\u2606\u2606\u2606\u2606<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#b_shell%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\" >b) shell\u6a21\u5757\u2606\u2606\u2606\u2606\u2606<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B01_%E6%89%B9%E9%87%8F%E6%89%A7%E8%A1%8Chostname_-I%E5%91%BD%E4%BB%A4\" >\u6848\u4f8b01:\u6279\u91cf\u6267\u884chostname -I\u547d\u4ee4<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#_%E6%A1%88%E4%BE%8B02_%E6%89%B9%E9%87%8F%E5%88%9B%E5%BB%BA%E6%96%87%E4%BB%B6_oldboy01txt_%E2%80%A6oldboy10txt\" >\u00a0\u6848\u4f8b02: \u6279\u91cf\u521b\u5efa\u6587\u4ef6 oldboy01.txt &#8230;oldboy10.txt<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B03_%E6%89%B9%E9%87%8F%E5%88%A0%E9%99%A4tmp%E4%B8%8B%E9%9D%A2%E6%89%80%E6%9C%89%E5%86%85%E5%AE%B9\" >\u6848\u4f8b03:\u6279\u91cf\u5220\u9664\/tmp\/\u4e0b\u9762\u6240\u6709\u5185\u5bb9<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B04_%E6%89%B9%E9%87%8F%E8%8E%B7%E5%8F%96ip%E5%9C%B0%E5%9D%80\" >\u6848\u4f8b04:\u6279\u91cf\u83b7\u53d6ip\u5730\u5740<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#c_script%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\" >c) script\u6a21\u5757\u2606\u2606\u2606\u2606\u2606<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_%E6%A1%88%E4%BE%8B05_%E6%89%B9%E9%87%8F%E6%89%A7%E8%A1%8C%E8%84%9A%E6%9C%AC\" >3) \u6848\u4f8b05: \u6279\u91cf\u6267\u884c\u811a\u672c<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_%E6%96%87%E4%BB%B6%E7%9B%B8%E5%85%B3%E6%A8%A1%E5%9D%97\" >2) \u6587\u4ef6\u76f8\u5173\u6a21\u5757<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#a_file%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\" >a) file\u6a21\u5757\u2606\u2606\u2606\u2606\u2606<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B05_%E5%88%9B%E5%BB%BAoptlidaotxt_%E2%98%86\" >\u6848\u4f8b05: \u521b\u5efa\/opt\/lidao.txt \u2606<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B06_%E5%88%9B%E5%BB%BA%E7%9B%AE%E5%BD%95app_%E2%98%86%EF%BC%88%E8%87%AA%E5%8A%A8%E9%80%92%E5%BD%92%E5%88%9B%E5%BB%BA%EF%BC%89\" >\u6848\u4f8b06: \u521b\u5efa\u76ee\u5f55\/app\/ \u2606\uff08\u81ea\u52a8\u9012\u5f52\u521b\u5efa\uff09<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B07_%E5%88%9B%E5%BB%BA%E8%BD%AF%E8%BF%9E%E6%8E%A5_etchosts%E5%88%9B%E5%BB%BA%E8%BD%AF%E8%BF%9E%E6%8E%A5%E5%88%B0opt%E4%B8%8B_%E2%98%86\" >\u6848\u4f8b07: \u521b\u5efa\u8f6f\u8fde\u63a5 \/etc\/hosts\u521b\u5efa\u8f6f\u8fde\u63a5\u5230\/opt\/\u4e0b \u2606<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B08_%E5%88%9B%E5%BB%BAans-backup%E7%9B%AE%E5%BD%95_%E6%89%80%E6%9C%89%E8%80%85%E6%98%AFrsync%E6%9D%83%E9%99%90%E6%98%AF700\" >\u6848\u4f8b08: \u521b\u5efa\/ans-backup\/\u76ee\u5f55 \u6240\u6709\u8005\u662frsync,\u6743\u9650\u662f700<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B09_%E5%88%A0%E9%99%A4oldboy%E7%9B%AE%E5%BD%95\" >\u6848\u4f8b09: \u5220\u9664\/oldboy\/\u76ee\u5f55<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#b_copy%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\" >b) copy\u6a21\u5757\u2606\u2606\u2606\u2606\u2606<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-30\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B10_%E5%88%86%E5%8F%91%E4%B9%A6%E5%86%99%E5%A5%BD%E7%9A%84etchosts%E6%96%87%E4%BB%B6%E5%A6%82%E6%9E%9C%E6%96%87%E4%BB%B6%E5%AD%98%E5%9C%A8%E5%88%99%E5%A4%87%E4%BB%BD%E4%B8%8B\" >\u6848\u4f8b10: \u5206\u53d1\u4e66\u5199\u597d\u7684\/etc\/hosts\u6587\u4ef6,\u5982\u679c\u6587\u4ef6\u5b58\u5728\u5219\u5907\u4efd\u4e0b.<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-31\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#c_lineinfile%E6%A8%A1%E5%9D%97\" >c) lineinfile\u6a21\u5757<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-32\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B11_etcsshsshd_config%E5%8E%BB%E6%8E%89Port%E5%89%8D%E9%9D%A2%E7%9A%84%E6%B3%A8%E9%87%8A%E7%AC%A6%E5%8F%B7\" >\u6848\u4f8b11: \/etc\/ssh\/sshd_config\u53bb\u6389Port\u524d\u9762\u7684\u6ce8\u91ca\u7b26\u53f7<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-33\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B12_%E6%96%87%E4%BB%B6%E8%BF%BD%E5%8A%A0%E5%86%85%E5%AE%B9_%E2%80%98oldboy_lidao996%EF%BC%88%E4%B8%8D%E5%8A%A0%E6%AD%A3%E5%88%99%E5%8F%82%E6%95%B0%E9%BB%98%E8%AE%A4%E8%BF%BD%E5%8A%A0%E6%AD%A4%E8%A1%8C%EF%BC%89\" >\u6848\u4f8b12: \u6587\u4ef6\u8ffd\u52a0\u5185\u5bb9 &#8216;#oldboy lidao996&#8217;\uff08\u4e0d\u52a0\u6b63\u5219\u53c2\u6570\u9ed8\u8ba4\u8ffd\u52a0\u6b64\u884c\uff09<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-34\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_%E6%9C%8D%E5%8A%A1%E7%AE%A1%E7%90%86-systemd%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\" >3) \u670d\u52a1\u7ba1\u7406-systemd\u2606\u2606\u2606\u2606\u2606<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-35\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B11_%E5%BC%80%E5%90%AFcrond%E6%9C%8D%E5%8A%A1%E5%B9%B6%E8%AE%BE%E7%BD%AE%E5%BC%80%E6%9C%BA%E8%87%AA%E5%90%AF%E5%8A%A8\" >\u6848\u4f8b11: \u5f00\u542fcrond\u670d\u52a1\u5e76\u8bbe\u7f6e\u5f00\u673a\u81ea\u542f\u52a8.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-36\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B12_%E5%85%B3%E9%97%ADfirewalld%E6%9C%8D%E5%8A%A1%E5%B9%B6%E4%B8%8D%E8%AE%A9%E5%BC%80%E6%9C%BA%E8%87%AA%E5%90%AF%E5%8A%A8\" >\u6848\u4f8b12: \u5173\u95edfirewalld\u670d\u52a1\u5e76\u4e0d\u8ba9\u5f00\u673a\u81ea\u542f\u52a8.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-37\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B12_%E9%87%8D%E5%90%AF%EF%BC%88%E9%87%8D%E8%BD%BD%EF%BC%89sshd%E6%9C%8D%E5%8A%A1\" >\u6848\u4f8b12: \u91cd\u542f\uff08\u91cd\u8f7d\uff09sshd\u670d\u52a1<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-38\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#4_%E8%BD%AF%E4%BB%B6%E7%AE%A1%E7%90%86\" >4) \u8f6f\u4ef6\u7ba1\u7406<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-39\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#a_yum%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\" >a) yum\u6a21\u5757\u2606\u2606\u2606\u2606\u2606<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-40\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B13_%E5%AE%89%E8%A3%85%E5%B8%B8%E7%94%A8%E7%9A%84%E8%BD%AF%E4%BB%B6htoptreelrzszsshpass%E6%9B%B4%E6%96%B0rsync\" >\u6848\u4f8b13: \u5b89\u88c5\u5e38\u7528\u7684\u8f6f\u4ef6htop,tree,lrzsz,sshpass;\u66f4\u65b0rsync<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-41\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#b_get_url%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86\" >b) get_url\u6a21\u5757\u2606\u2606<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-42\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B14_%E4%B8%8B%E8%BD%BDzabbix-agent%E7%9A%84%E8%BD%AF%E5%8C%85%E5%88%B0tmp%E4%B8%8B%E9%9D%A2\" >\u6848\u4f8b14: \u4e0b\u8f7dzabbix-agent\u7684\u8f6f\u5305\u5230\/tmp\/\u4e0b\u9762<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-43\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#c_yum_repository%E6%A8%A1%E5%9D%97\" >c) yum_repository\u6a21\u5757<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-44\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#5_%E7%94%A8%E6%88%B7%E7%AE%A1%E7%90%86\" >5) \u7528\u6237\u7ba1\u7406<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-45\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#auser_%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\" >a)user \u6a21\u5757\u2606\u2606\u2606\u2606\u2606<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-46\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B15_%E5%88%9B%E5%BB%BAwww-ans%E7%94%A8%E6%88%B7uid2000%E8%99%9A%E6%8B%9F%E7%94%A8%E6%88%B7_%E2%98%86_%E2%98%86_%E2%98%86_%E2%98%86_%E2%98%86\" >\u6848\u4f8b15: \u521b\u5efawww-ans\u7528\u6237uid2000\u865a\u62df\u7528\u6237 \u2606 \u2606 \u2606 \u2606 \u2606<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-47\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B16_%E6%89%B9%E9%87%8F%E6%9B%B4%E6%96%B0%E5%AF%86%E7%A0%81\" >\u6848\u4f8b16: \u6279\u91cf\u66f4\u65b0\u5bc6\u7801<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-48\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B17%EF%BC%9A%E6%89%B9%E9%87%8F%E6%B7%BB%E5%8A%A0%E7%94%A8%E6%88%B7lidao%E5%B9%B6%E6%A3%80%E6%9F%A5%E6%98%AF%E5%90%A6%E6%B7%BB%E5%8A%A0%E6%88%90%E5%8A%9F\" >\u6848\u4f8b17\uff1a\u6279\u91cf\u6dfb\u52a0\u7528\u6237lidao\u5e76\u68c0\u67e5\u662f\u5426\u6dfb\u52a0\u6210\u529f<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-49\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#b_group%E6%A8%A1%E5%9D%97\" >b) group\u6a21\u5757<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-50\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#6_cron%E6%A8%A1%E5%9D%97\" >6) cron\u6a21\u5757<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-51\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B18_%E6%AF%8F%E5%88%86%E9%92%9F%E8%BE%93%E5%87%BAoldboy%E5%86%99%E5%85%A5%E5%88%B0tmpoldboytxt\" >\u6848\u4f8b18: \u6bcf\u5206\u949f\u8f93\u51faoldboy\u5199\u5165\u5230\/tmp\/oldboy.txt<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-52\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#7_mount%E6%A8%A1%E5%9D%97\" >7) mount\u6a21\u5757<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-53\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B17_%E6%8C%82%E8%BD%BDnfs01%E5%B7%B2%E6%9C%89%E7%9A%84%E5%85%B1%E4%BA%AB%E7%9B%AE%E5%BD%95%E5%88%B0web01%E4%B8%8A%E7%9A%84mnt%E4%B8%8B\" >\u6848\u4f8b17: \u6302\u8f7dnfs01\u5df2\u6709\u7684\u5171\u4eab\u76ee\u5f55\u5230web01\u4e0a\u7684\/mnt\u4e0b.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-54\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B18_%E9%80%9A%E8%BF%87ans%E7%AE%A1%E7%90%86%E5%9C%A8web01%E4%B8%8A%E6%8C%82%E8%BD%BDnfs_data%E6%8C%82%E8%BD%BD%E5%88%B0web01%E7%9A%84ans-upload\" >\u6848\u4f8b18:\u901a\u8fc7ans\u7ba1\u7406\u5728web01\u4e0a\u6302\u8f7dnfs:\/data\u6302\u8f7d\u5230web01\u7684\/ans-upload\/<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-55\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#6ansible%E6%A8%A1%E5%9D%97%E5%B0%8F%E7%BB%93\" >6)ansible\u6a21\u5757\u5c0f\u7ed3<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-56\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#21_%E7%9B%AE%E6%A0%87\" >2.1 \u76ee\u6807<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-57\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#22_%E5%89%A7%E6%9C%AC\" >2.2 \u5267\u672c<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-58\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%89%A7%E6%9C%AC%E4%B9%A6%E5%86%99%E6%A0%BC%E5%BC%8F%EF%BC%9A\" >\u5267\u672c\u4e66\u5199\u683c\u5f0f\uff1a<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-59\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E4%B9%A6%E5%86%99Ans_playbook%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9_%E2%98%86_%E2%98%86_%E2%98%86_%E2%98%86_%E2%98%86\" >\u4e66\u5199Ans playbook\u6ce8\u610f\u4e8b\u9879:\u2606 \u2606 \u2606 \u2606 \u2606<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-60\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#Ansible%E5%89%A7%E6%9C%AC%E4%B8%AD%E6%A8%A1%E5%9D%97%E9%80%89%E9%A1%B9%E4%B9%A6%E5%86%99%E6%A0%BC%E5%BC%8F\" >Ansible\u5267\u672c\u4e2d\u6a21\u5757\u9009\u9879\u4e66\u5199\u683c\u5f0f:<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-61\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E4%B9%A6%E5%86%99%E5%89%A7%E6%9C%AC%E6%B5%81%E7%A8%8B%E5%B0%8F%E7%BB%93\" >\u4e66\u5199\u5267\u672c\u6d41\u7a0b\u5c0f\u7ed3:<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-62\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#23_%E5%89%A7%E6%9C%AC%E6%A1%88%E4%BE%8B\" >2.3 \u5267\u672c\u6848\u4f8b<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-63\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_%E6%A1%88%E4%BE%8B01_%E5%88%9B%E5%BB%BA%E7%9B%AE%E5%BD%95%E5%B9%B6%E5%88%86%E5%8F%91%E6%96%87%E4%BB%B6\" >1) \u6848\u4f8b01: \u521b\u5efa\u76ee\u5f55\u5e76\u5206\u53d1\u6587\u4ef6<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-64\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_%E6%A1%88%E4%BE%8B02_%E6%89%B9%E9%87%8F%E6%B7%BB%E5%8A%A0%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A103_xiu_cronyml\" >2) \u6848\u4f8b02: \u6279\u91cf\u6dfb\u52a0\u5b9a\u65f6\u4efb\u52a103_xiu_cron.yml<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-65\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_%E6%A1%88%E4%BE%8B03_%E9%83%A8%E7%BD%B2nfs%E6%9C%8D%E5%8A%A1%E5%B9%B6%E8%AE%BE%E7%BD%AEweb%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%8C%82%E8%BD%BD\" >3) \u6848\u4f8b03: \u90e8\u7f72nfs\u670d\u52a1\u5e76\u8bbe\u7f6eweb\u670d\u52a1\u5668\u6302\u8f7d<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-66\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#24_%E9%A1%B9%E7%9B%AE%E5%B0%8F%E7%BB%93\" >2.4 \u9879\u76ee\u5c0f\u7ed3<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-67\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#26_Ansible%E4%B8%AD%E7%9A%84%E5%8F%98%E9%87%8F%E2%80%93%E6%80%9D%E7%BB%B4%E5%AF%BC%E5%9B%BE\" >2.6 Ansible\u4e2d\u7684\u53d8\u91cf&#8211;\u601d\u7ef4\u5bfc\u56fe<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-68\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_%E5%89%A7%E6%9C%AC%E4%B8%AD%E4%BD%BF%E7%94%A8%E5%8F%98%E9%87%8F%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\" >1) \u5267\u672c\u4e2d\u4f7f\u7528\u53d8\u91cf\u2b50\u2b50\u2b50\u2b50\u2b50<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-69\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#Ansible%E9%80%89%E9%A1%B9\" >Ansible\u9009\u9879:<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-70\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%B0%8F%E7%BB%93\" >\u5c0f\u7ed3:<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-71\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_%E5%85%B1%E7%94%A8%E5%8F%98%E9%87%8F%E2%80%93%E5%8F%98%E9%87%8F%E6%96%87%E4%BB%B6\" >2) \u5171\u7528\u53d8\u91cf&#8211;\u53d8\u91cf\u6587\u4ef6<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-72\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%B0%8F%E7%BB%93-2\" >\u5c0f\u7ed3:<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-73\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_%E5%85%B1%E7%94%A8%E5%8F%98%E9%87%8F%E2%80%93%E6%A0%B9%E6%8D%AE%E4%B8%BB%E6%9C%BA%E7%BB%84%E4%BD%BF%E7%94%A8%E5%8F%98%E9%87%8F_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\" >3) \u5171\u7528\u53d8\u91cf&#8211;\u6839\u636e\u4e3b\u673a\u7ec4\u4f7f\u7528\u53d8\u91cf \u2b50\u2b50\u2b50\u2b50\u2b50<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-74\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#4_%E5%8F%98%E9%87%8F%E5%AE%9A%E4%B9%89%E5%B0%8F%E7%BB%93%EF%BC%88%E9%80%9A%E7%94%A8%E5%8F%98%E9%87%8F%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95%EF%BC%89\" >4) \u53d8\u91cf\u5b9a\u4e49\u5c0f\u7ed3\uff08\u901a\u7528\u53d8\u91cf\u4f7f\u7528\u65b9\u6cd5\uff09<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-75\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#5_facts%E5%8F%98%E9%87%8F%EF%BC%88%E4%B8%8E%E4%B8%8B%E9%9D%A2%E7%9A%84%E4%B8%80%E6%A0%B7%E9%83%BD%E6%9C%89%E7%8B%AC%E7%89%B9%E7%9A%84%E4%BD%BF%E7%94%A8%E5%9C%BA%E6%99%AF%EF%BC%89\" >5) facts\u53d8\u91cf\uff08\u4e0e\u4e0b\u9762\u7684\u4e00\u6837\u90fd\u6709\u72ec\u7279\u7684\u4f7f\u7528\u573a\u666f\uff09<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-76\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B_%E8%BE%93%E5%87%BA%E5%B8%B8%E7%94%A8%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF%E5%88%B0%E5%B1%8F%E5%B9%95%E7%B3%BB%E7%BB%9F%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF%E5%86%99%E5%85%A5%E5%88%B0etcmotd%E4%B8%AD%EF%BC%9A%E4%BD%BF%E7%94%A8debug%E6%A8%A1%E5%9D%97%E8%B0%83%E8%AF%95%E8%BE%93%E5%87%BA%E7%B1%BB%E4%BC%BCecho\" >\u6848\u4f8b \u8f93\u51fa\u5e38\u7528\u57fa\u672c\u4fe1\u606f\u5230\u5c4f\u5e55,\u7cfb\u7edf\u57fa\u672c\u4fe1\u606f\u5199\u5165\u5230\/etc\/motd\u4e2d.\uff1a\u4f7f\u7528debug\u6a21\u5757\u8c03\u8bd5\u8f93\u51fa(\u7c7b\u4f3cecho)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-77\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B%EF%BC%9A%E6%89%B9%E9%87%8F%E4%BF%AE%E6%94%B9%E7%B3%BB%E7%BB%9Fetcmotd%E6%96%87%E4%BB%B6%E7%99%BB%E5%BD%95%E7%9A%84%E6%97%B6%E5%80%99%E8%BE%93%E5%87%BA%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF\" >\u6848\u4f8b\uff1a\u6279\u91cf\u4fee\u6539\u7cfb\u7edf\/etc\/motd\u6587\u4ef6,\u767b\u5f55\u7684\u65f6\u5019\u8f93\u51fa\u7cfb\u7edf\u7684\u57fa\u672c\u4fe1\u606f.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-78\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%85%B3%E4%BA%8Efacts%E5%8F%98%E9%87%8F%E5%AE%9E%E9%99%85%E5%BA%94%E7%94%A8%E6%A1%88%E4%BE%8B\" >\u5173\u4e8efacts\u53d8\u91cf\u5b9e\u9645\u5e94\u7528\u6848\u4f8b:<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-79\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#yes_or_no_%E8%BF%98%E6%98%AFTrue_or_false\" >yes or no \u8fd8\u662fTrue or false<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-80\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#6_register%E5%8F%98%E9%87%8F%E6%B3%A8%E5%86%8C%E5%8F%98%E9%87%8F_%E2%AD%90%E2%AD%90%EF%BC%88%E6%89%8B%E5%8A%A8%E5%88%9B%E5%BB%BA%EF%BC%89\" >6) register\u53d8\u91cf\u6ce8\u518c\u53d8\u91cf \u2b50\u2b50\uff08\u624b\u52a8\u521b\u5efa\uff09<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-81\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#7_%E6%80%BB%E7%BB%93\" >7) \u603b\u7ed3<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-82\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%B5%81%E7%A8%8B%E6%8E%A7%E5%88%B6%EF%BC%9A\" >\u6d41\u7a0b\u63a7\u5236\uff1a<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-83\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1%EF%BC%89Ansible%E4%B8%AD%E7%9A%84%E5%BE%AA%E7%8E%AF\" >1\uff09Ansible\u4e2d\u7684\u5faa\u73af<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-84\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_%E6%9C%80%E5%B8%B8%E7%94%A8%E7%9A%841%E7%A7%8D%E5%BE%AA%E7%8E%AF%E5%BD%A2%E5%BC%8F-1%E4%B8%AA%E5%8F%98%E9%87%8F\" >1) \u6700\u5e38\u7528\u76841\u79cd\u5faa\u73af\u5f62\u5f0f-1\u4e2a\u53d8\u91cf<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-85\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_%E6%AF%8F%E6%AC%A1%E5%BE%AA%E7%8E%AF%E5%88%9B%E5%BB%BA%E5%A4%9A%E4%B8%AA%E5%8F%98%E9%87%8F\" >2) \u6bcf\u6b21\u5faa\u73af\u521b\u5efa\u591a\u4e2a\u53d8\u91cf<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-86\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B%EF%BC%9A%E5%BE%AA%E7%8E%AF%E6%B7%BB%E5%8A%A0%E6%8C%87%E5%AE%9Auid%E7%9A%84%E5%A4%9A%E4%B8%AA%E7%94%A8%E6%88%B7\" >\u6848\u4f8b\uff1a\u5faa\u73af\u6dfb\u52a0\u6307\u5b9auid\u7684\u591a\u4e2a\u7528\u6237<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-87\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_%E5%B0%8F%E7%BB%93\" >3) \u5c0f\u7ed3<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-88\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#27_%E5%BE%AA%E7%8E%AF%E6%A1%88%E4%BE%8B%EF%BC%88nfs%EF%BC%89\" >2.7 \u5faa\u73af\u6848\u4f8b\uff08nfs\uff09<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-89\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E2%AD%90_%E2%AD%90_%E2%AD%90_%E2%AD%90_%E2%AD%90_copy%E5%92%8Ctemplate%E6%A8%A1%E5%9D%97%E5%8C%BA%E5%88%AB\" >\u2b50 \u2b50 \u2b50 \u2b50 \u2b50 copy\u548ctemplate\u6a21\u5757\u533a\u522b<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-90\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_nfs_13nfs_srv_cli_v2yml\" >1) nfs\u00a0 \u00a013.nfs_srv_cli_v2.yml<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-91\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_rsync_14_rsync_client_v1yml\" >2) rsync\u00a0 14_rsync_client_v1.yml<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-92\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_lsyncd_1000031NFS01%E5%B7%B2%E9%83%A8%E7%BD%B2\" >3) lsyncd\u00a0 (10.0.0.0.31NFS01\u5df2\u90e8\u7f72)<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-93\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_handlers%E8%A7%A6%E5%8F%91%E5%99%A8_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\" >2) handlers\u89e6\u53d1\u5668 \u2b50\u2b50\u2b50\u2b50\u2b50<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-94\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E8%A7%A6%E5%8F%91%E5%99%A8%E6%A1%88%E4%BE%8B%EF%BC%9A%E5%9C%A8%E4%B8%8A%E9%9D%A2%E7%9A%8414%E5%8F%B7%E5%89%A7%E6%9C%AC%E9%83%A8%E7%BD%B2rsyncd%E6%97%B6%E4%B8%AD%E6%9C%89%E5%86%99\" >\u89e6\u53d1\u5668\u6848\u4f8b\uff1a\u5728\u4e0a\u9762\u768414\u53f7\u5267\u672c\u90e8\u7f72rsyncd\u65f6\u4e2d\u6709\u5199<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-95\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E8%A7%A6%E5%8F%91%E5%99%A8%E5%B0%8F%E7%BB%93\" >\u89e6\u53d1\u5668\u5c0f\u7ed3:<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-96\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_when%E5%88%A4%E6%96%AD%EF%BC%88%E4%B8%8E%E6%A8%A1%E5%9D%97%E5%90%8D%E5%AD%97%E5%AF%B9%E9%BD%90%EF%BC%89\" >3) when\u5224\u65ad\uff08\u4e0e\u6a21\u5757\u540d\u5b57\u5bf9\u9f50\uff09<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-97\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%A1%88%E4%BE%8B02_%E5%A6%82%E6%9E%9C%E7%B3%BB%E7%BB%9F%E6%98%AFcentos%E6%88%96kylin%E5%88%99_%E5%AE%89%E8%A3%85slcowsay%E5%A6%82%E6%9E%9C%E6%98%AFubuntu_%E5%88%99%E5%AE%89%E8%A3%85cmatrix\" >\u6848\u4f8b02 : \u5982\u679c\u7cfb\u7edf\u662fcentos\u6216kylin\u5219 \u5b89\u88c5sl,cowsay,\u5982\u679c\u662fubuntu \u5219\u5b89\u88c5cmatrix<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-98\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%85%B3%E9%97%ADansible%E8%BF%90%E8%A1%8C%E5%89%A7%E6%9C%AC%E7%9A%84%E7%B4%AB%E8%89%B2%E6%8F%90%E7%A4%BA\" >\u5173\u95edansible\u8fd0\u884c\u5267\u672c\u7684\u7d2b\u8272\u63d0\u793a<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-99\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%B0%8F%E7%BB%93-3\" >\u5c0f\u7ed3:<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-100\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#4_%E6%B5%81%E7%A8%8B%E6%8E%A7%E5%88%B6%E5%B0%8F%E7%BB%93%EF%BC%88%E5%88%A4%E6%96%AD%E8%A7%A6%E5%8F%91%E5%99%A8%E5%BE%AA%E7%8E%AF%EF%BC%89\" >4) \u6d41\u7a0b\u63a7\u5236\u5c0f\u7ed3\uff08\u5224\u65ad\/\u89e6\u53d1\u5668\/\u5faa\u73af\uff09<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-101\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%89%A7%E6%9C%AC%E8%B0%83%E8%AF%95%EF%BC%88%E5%90%84%E7%A7%8Ddebug%EF%BC%89\" >\u5267\u672c\u8c03\u8bd5\uff08\u5404\u79cddebug\uff09<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-102\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_%E6%A3%80%E6%9F%A5%E8%AF%AD%E6%B3%95%E4%B8%8E%E5%8D%95%E6%AD%A5%E6%89%A7%E8%A1%8C_%E8%BF%90%E8%A1%8C%E8%84%9A%E6%9C%AC%E6%97%B6%E4%BD%BF%E7%94%A8_-C\" >1) \u68c0\u67e5\u8bed\u6cd5\u4e0e\u5355\u6b65\u6267\u884c\u00a0 \u00a0\u8fd0\u884c\u811a\u672c\u65f6\u4f7f\u7528 -C<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-103\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_%E4%BB%8E%E6%8C%87%E5%AE%9A%E4%BB%BB%E5%8A%A1%E5%BC%80%E5%A7%8B%E8%BF%90%E8%A1%8C_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\" >2) \u4ece\u6307\u5b9a\u4efb\u52a1\u5f00\u59cb\u8fd0\u884c \u2b50\u2b50\u2b50\u2b50\u2b50<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-104\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_tag%E6%A0%87%E7%AD%BE%EF%BC%88%E5%92%8C%E6%A8%A1%E5%9D%97%E5%90%8D%E5%AD%97%E5%AF%B9%E9%BD%90%EF%BC%89%E2%AD%90%E2%AD%90\" >3) tag\u6807\u7b7e\uff08\u548c\u6a21\u5757\u540d\u5b57\u5bf9\u9f50\uff09\u2b50\u2b50<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-105\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#4_%E5%BF%BD%E7%95%A5%E9%94%99%E8%AF%AF%EF%BC%88%E5%92%8C%E6%A8%A1%E5%9D%97%E5%90%8D%E5%AD%97%E5%AF%B9%E9%BD%90%EF%BC%89\" >4) \u5ffd\u7565\u9519\u8bef\uff08\u548c\u6a21\u5757\u540d\u5b57\u5bf9\u9f50\uff09<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-106\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#5_%E5%89%A7%E6%9C%AC%E8%B0%83%E8%AF%95%E5%B0%8F%E7%BB%93\" >5) \u5267\u672c\u8c03\u8bd5\u5c0f\u7ed3<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-107\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#23_Jinja2%E6%A8%A1%E6%9D%BF\" >2.3 Jinja2\u6a21\u677f<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-108\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_%E5%9F%BA%E6%9C%AC%E4%BD%BF%E7%94%A8_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\" >1) \u57fa\u672c\u4f7f\u7528 \u2b50\u2b50\u2b50\u2b50\u2b50<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-109\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_j2%E5%88%A4%E6%96%AD%EF%BC%88%E5%86%99%E5%9C%A8j2%E4%B8%AD%EF%BC%89\" >2) j2\u5224\u65ad\uff08\u5199\u5728j2\u4e2d\uff09<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-110\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_j2%E5%BE%AA%E7%8E%AF%EF%BC%88%E5%86%99%E5%9C%A8j2%E4%B8%AD%EF%BC%89\" >3) j2\u5faa\u73af\uff08\u5199\u5728j2\u4e2d\uff09<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-111\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#4_%E5%B0%8F%E7%BB%93\" >4) \u5c0f\u7ed3<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-112\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#Ansible-%E8%BF%9B%E9%98%B6\" >Ansible-\u8fdb\u9636<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-113\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#31_Vault_%E4%BF%9D%E9%99%A9%E7%AE%B1\" >3.1 Vault\u00a0 \u4fdd\u9669\u7bb1<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-114\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#31_Roles_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\" >3.1 Roles \u2b50\u2b50\u2b50\u2b50\u2b50<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-115\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_roles%E8%AF%A6%E8%A7%A3%EF%BC%9A\" >1) roles\u8be6\u89e3\uff1a<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-116\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#Roles%E6%9C%AC%E8%B4%A8%E8%AE%A9%E6%88%91%E4%BB%AC%E4%B9%A6%E5%86%99%E5%89%A7%E6%9C%AC%E7%9A%84%E6%97%B6%E5%80%99%E6%9C%89%E4%B8%AA%E7%9B%AE%E5%BD%95%E8%A7%84%E8%8C%83%EF%BC%9A\" >Roles\u672c\u8d28\u8ba9\u6211\u4eec\u4e66\u5199\u5267\u672c\u7684\u65f6\u5019\u6709\u4e2a\u76ee\u5f55\u89c4\u8303\uff1a<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-117\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_%E5%88%9B%E5%BB%BAroles%E7%8E%AF%E5%A2%83\" >2) \u521b\u5efaroles\u73af\u5883<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-118\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3_%E5%87%86%E5%A4%87nfs-server%E5%92%8Cnfs-client%E7%9A%84roles%EF%BC%88%E5%A1%AB%E5%85%85%E6%96%87%E4%BB%B6%E6%8B%86%E5%88%86%E5%89%A7%E6%9C%AC%EF%BC%89\" >3) \u51c6\u5907nfs-server\u548cnfs-client\u7684roles\uff08\u586b\u5145\u6587\u4ef6\/\u62c6\u5206\u5267\u672c\uff09<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-119\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#4_roles%E5%B0%8F%E7%BB%93\" >4) roles\u5c0f\u7ed3<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-120\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#32_include%E6%96%87%E4%BB%B6%E5%8C%85%E5%90%AB\" >3.2 include\u6587\u4ef6\u5305\u542b<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-121\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%9C%A8tasks%E7%9B%AE%E5%BD%95%E4%B8%AD%E4%BD%BF%E7%94%A8%EF%BC%9A\" >\u5728tasks\u76ee\u5f55\u4e2d\u4f7f\u7528\uff1a<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-122\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%9C%A8%E8%B0%83%E7%94%A8roles%E6%97%B6%E4%B8%AD%E4%BD%BF%E7%94%A8%EF%BC%9A%EF%BC%88nfs-server%E8%A7%92%E8%89%B2%E4%B8%AD%E6%89%80%E6%9C%89%E7%9A%84yml%E4%B8%AD%E9%83%BD%E4%B8%8D%E7%94%A8%E5%86%99%E5%8D%95%E8%AF%8D%EF%BC%9Ahoststaskshandlers%EF%BC%89\" >\u5728\u8c03\u7528roles\u65f6\u4e2d\u4f7f\u7528\uff1a\uff08nfs-server\u89d2\u8272\u4e2d\u6240\u6709\u7684yml\u4e2d\u90fd\u4e0d\u7528\u5199\u5355\u8bcd\uff1ahosts\/tasks\/handlers\uff09<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-123\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%8F%AA%E6%9C%89%E5%9C%A8roles%E5%A4%96%E7%9A%84%E5%89%A7%E6%9C%AC%EF%BC%8C%E8%B0%83%E7%94%A8roles%E6%97%B6%E5%86%99%E9%9C%80%E8%A6%81%E5%86%99hoststasksroles\" >\u53ea\u6709\u5728roles\u5916\u7684\u5267\u672c\uff0c\u8c03\u7528roles\u65f6\u5199\u9700\u8981\u5199\/hosts\/tasks\/roles\/<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-124\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E5%A6%82%E4%BD%95%E5%9C%A81%E4%B8%AA%E5%89%A7%E6%9C%AC%E4%B8%AD%E4%BD%BF%E7%94%A8include\" >\u5982\u4f55\u57281\u4e2a\u5267\u672c\u4e2d\u4f7f\u7528include<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-125\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#include%E5%8A%9F%E8%83%BD%E5%B0%8F%E7%BB%93\" >include\u529f\u80fd\u5c0f\u7ed3<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-126\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#34_Galaxy\" >3.4 Galaxy<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-127\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#35_%E4%BC%98%E5%8C%96\" >3.5 \u4f18\u5316<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-128\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#1_ansible%E5%AE%89%E5%85%A8%E4%BC%98%E5%8C%96-sudo_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\" >1) ansible\u5b89\u5168\u4f18\u5316-sudo \u2b50\u2b50\u2b50\u2b50\u2b50<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-129\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#a_%E6%95%B4%E4%BD%93%E6%B5%81%E7%A8%8B\" >a) \u6574\u4f53\u6d41\u7a0b<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-130\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#b_%E8%AF%A6%E7%BB%86%E6%AD%A5%E9%AA%A4\" >b) \u8be6\u7ec6\u6b65\u9aa4:<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-131\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#c%E8%AF%A6%E7%BB%86%E6%AD%A5%E9%AA%A4_%E5%88%86%E5%8F%91%E5%AF%86%E9%92%A5\" >c)\u8be6\u7ec6\u6b65\u9aa4:\u5206\u53d1\u5bc6\u94a5<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-132\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#d_%E8%AF%A6%E7%BB%86%E6%AD%A5%E9%AA%A4_%E4%BF%AE%E6%94%B9ansible%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6\" >d) \u8be6\u7ec6\u6b65\u9aa4: \u4fee\u6539ansible\u914d\u7f6e\u6587\u4ef6<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-133\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#e_%E8%B0%83%E8%AF%95\" >e) \u8c03\u8bd5<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-134\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2_%E5%85%B6%E4%BB%96%E4%BC%98%E5%8C%96\" >2) \u5176\u4ed6\u4f18\u5316<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-135\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#4Ansible%E4%B8%8E%E8%87%AA%E5%8A%A8%E5%8C%96\" >4.Ansible\u4e0e\u81ea\u52a8\u5316<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-136\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%89%B9%E9%87%8F%E7%AE%A1%E7%90%86%E6%A1%88%E4%BE%8B%EF%BC%9A400%E5%8F%B0%E6%9C%BA%E5%99%A8%E9%83%A8%E7%BD%B2zabbix\" >\u6279\u91cf\u7ba1\u7406\u6848\u4f8b\uff1a400\u53f0\u673a\u5668\u90e8\u7f72zabbix<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-137\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E8%83%8C%E6%99%AF%EF%BC%9A\" >\u80cc\u666f\uff1a<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-138\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E8%A7%84%E5%88%92%EF%BC%9A%E4%B9%A6%E5%86%99hosts%E6%96%87%E4%BB%B6%E5%9C%A8hosts%E9%87%8C%E9%9D%A2%E6%8C%87%E5%AE%9A%E7%94%A8%E6%88%B7%E5%90%8D%E5%AF%86%E7%A0%81\" >\u89c4\u5212\uff1a\u4e66\u5199hosts\u6587\u4ef6,\u5728hosts\u91cc\u9762\u6307\u5b9a\u7528\u6237\u540d\u5bc6\u7801<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-139\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#2%E4%B8%BB%E6%9C%BA%E6%B8%85%E5%8D%95%E5%86%85%E5%AE%B9%EF%BC%9A\" >2.\u4e3b\u673a\u6e05\u5355\u5185\u5bb9\uff1a<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-140\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#3%E7%AE%A1%E7%90%86%E6%9C%BA%E6%B7%BB%E5%8A%A0winrm%E6%A8%A1%E5%9D%97\" >3.\u7ba1\u7406\u673a\u6dfb\u52a0winrm\u6a21\u5757<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-141\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#4%E6%A3%80%E6%9F%A5\" >4.\u68c0\u67e5<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-142\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#5%E4%B9%A6%E5%86%99%E5%89%A7%E6%9C%AC\" >5.\u4e66\u5199\u5267\u672c<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-143\" href=\"https:\/\/linuxjk.cn\/?p=1785\/#%E6%80%BB%E7%BB%93%EF%BC%9A\" >\u603b\u7ed3\uff1a<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"_%E5%B8%82%E9%9D%A2%E4%B8%8A%E5%B8%B8%E8%A7%81%E7%9A%84%E6%89%B9%E9%87%8F%E7%AE%A1%E7%90%86%E6%96%B9%E6%A1%88%EF%BC%9A\"><\/span>\u00a0\u5e02\u9762\u4e0a\u5e38\u89c1\u7684\u6279\u91cf\u7ba1\u7406\u65b9\u6848\uff1a<span class=\"ez-toc-section-end\"><\/span><\/h2><p><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone size-full wp-image-1787\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u81ea\u52a8\u5316\u6279\u91cf\u7ba1\u7406\u65b9\u6848.png\" alt=\"\" width=\"1566\" height=\"378\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u81ea\u52a8\u5316\u6279\u91cf\u7ba1\u7406\u65b9\u6848.png 1566w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u81ea\u52a8\u5316\u6279\u91cf\u7ba1\u7406\u65b9\u6848-300x72.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u81ea\u52a8\u5316\u6279\u91cf\u7ba1\u7406\u65b9\u6848-1024x247.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u81ea\u52a8\u5316\u6279\u91cf\u7ba1\u7406\u65b9\u6848-768x185.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u81ea\u52a8\u5316\u6279\u91cf\u7ba1\u7406\u65b9\u6848-1536x371.png 1536w\" sizes=\"(max-width: 1566px) 100vw, 1566px\" \/><\/p><p>\u7b80\u5355\u5bf9\u6bd4 ansible vs for\u5faa\u73af<\/p><p>for\u4e32\u884c,1\u4e2a1\u4e2a\u5904\u7406.<\/p><p>pssh\/pscp\/psync \u76f8\u6bd4\u4e8essh\u6709\u5e76\u53d1\u529f\u80fd\u8f6f\u4ef6\u5305\u540dpssh<\/p><p>ansible\u5e76\u884c,\u9ed8\u8ba45\u4e2a\u5e76\u53d1.<\/p><pre>\u57fa\u4e8eansible\u6545\u969c\u6392\u67e5\u6d41\u7a0b:<br \/>\u8fde\u63a5\u6545\u969c.\u8fdc\u7a0b\u8fde\u63a5,\u5bc6\u94a5\u8ba4\u8bc1.<br \/>\u81ea\u52a8\u5316\u90e8\u7f72\u670d\u52a1\u6545\u969c:<br \/>\u6839\u636e\u6545\u969c\u6240\u5728\u7684\u6b65\u9aa4.<br \/>\u628a\u6b65\u9aa4\u6240\u5bf9\u5e94\u7684\u547d\u4ee4,\u628a\u547d\u4ee4\u5728\u5bf9\u5e94\u7684\u8282\u70b9\u624b\u52a8\u8fd0\u884c.<br \/>\u5b9a\u4f4d\u662fans\u95ee\u9898\u8fd8\u662f\u670d\u52a1\u95ee\u9898.<br \/>\u670d\u52a1\u95ee\u9898\u5c31\u6839\u636e\u5bf9\u5e94\u670d\u52a1\u7684\u6392\u67e5\u6d41\u7a0b<\/pre>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ac1109e elementor-widget elementor-widget-text-editor\" data-id=\"ac1109e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span class=\"ez-toc-section\" id=\"1%E9%83%A8%E7%BD%B2%E4%B8%8E%E4%BD%BF%E7%94%A8\"><\/span>1.\u90e8\u7f72\u4e0e\u4f7f\u7528<span class=\"ez-toc-section-end\"><\/span><\/h2><ul><li><strong>centos\/ubuntu\/debian<\/strong><\/li><\/ul><p><code>yum install -y ansible<\/code>\u00a0 #ansible 2.9.xxx<\/p><p>apt install -y ansible<\/p><ul><li><strong>\u9e92\u9e9flinux&#8212;-<\/strong>ansible 4.xx<\/li><\/ul><p>\u5b89\u88c5python\u8f6f\u4ef6.<\/p><p>python\u7248\u672c<\/p><p>python 3.x<\/p><p>python 2.7 #centos \u9e92\u9e9f \u505c\u6b62\u7ef4\u62a4.<\/p><p><b>python 3.x\u9009\u62e9,\u7cfb\u7edf\u4e2d\u6709\u54ea\u4e2a\u5c31\u7528\u54ea\u4e2a<\/b>.<\/p><p>\u5982\u679c\u6ca1\u6709yum\/apt\u4e00\u4e2a\u5c31\u884c.<\/p><p>\u5982\u679capt\/yum\u5b89\u88c5\u7684\u7248\u672c\u4e0d\u6ee1\u8db3,\u5219\u7f16\u8bd1\u5b89\u88c5python\u6307\u5b9a\u7248\u672c.<\/p><ul><li><strong>python3\u5b89\u88c5\u65b0\u7248\u672cansible<\/strong><\/li><\/ul><p>#1.python 3\u4e2d\u5b89\u88c5 pip,python\u4e2d\u8f6f\u4ef6\u5305\u7ba1\u7406\u547d\u4ee4.<\/p><p><code>yum install \u00a0-y python3-pip<\/code><\/p><p>#2.\u5378\u8f7d\/tmp\/\u00a0 \u00a0#\u5b89\u88c5ansible\u65f6\u4f1a\u5927\u91cf\u5199\u5165\u4e34\u65f6\u6587\u4ef6\uff08\u9e92\u9e9f\u628atmp\u653e\u5165\u5185\u5b58\u4e2d\uff09<\/p><p><code>umount -lf \/tmp\/<\/code><\/p><p>#3.\u5b89\u88c5ansible<\/p><p><code>pip3 install -i https:\/\/pypi.tuna.tsinghua.edu.cn\/simple \u00a0 ansible<\/code><\/p><p>-i \u4e34\u65f6\u6307\u5b9a\u6e05\u534e\u6e90<\/p><p>#4.\u68c0\u67e5<\/p><pre>\u5982\u679c\u4ecd\u7136\u575a\u6301\u4f7f\u7528yum\u5b89\u88c5ansible \u5219\u6309\u7167\u5982\u4e0b\u6d41\u7a0b\u64cd\u4f5c\u5373\u53ef.\u5b89\u88c5\u7684\u662fansible 2.9.x<\/pre><p>python 2\u4e2d\u5b89\u88c5 ansible<\/p><p>yum install -y python2-pip ansible<\/p><p>pip install -i\u00a0<span style=\"font-style: inherit; font-weight: inherit;\">https:\/\/pypi.tuna.tsinghua.edu.cn\/simple jinja2\u00a0\u00a0<\/span><\/p><p>ansible &#8211;version<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0a7a6b8 elementor-widget elementor-widget-text-editor\" data-id=\"0a7a6b8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span class=\"ez-toc-section\" id=\"12_%E9%85%8D%E7%BD%AE\"><\/span>1.2 \u914d\u7f6e<span class=\"ez-toc-section-end\"><\/span><\/h2><h3><span class=\"ez-toc-section\" id=\"1_ansible%E5%91%BD%E4%BB%A4%E7%9A%84%E9%85%8D%E7%BD%AE\"><\/span><b>1) ansible<\/b><b>\u547d\u4ee4\u7684\u914d\u7f6e <\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p><code>\/etc\/ansible\/ansible.cfg<\/code><\/p><p>\u4fee\u6539\/etc\/ansible\/ansible.cfg\u914d\u7f6e\u6587\u4ef6 71\u548c111\u884c,\u53bb\u6389\u6ce8\u91ca\u5373\u53ef.<\/p><p>host_key_checking = False<\/p><p>#\u5173\u95ed\u4e3b\u673a\u4fe1\u606f\u8ba4\u8bc1\uff0c\u5373\u6279\u91cf\u7ba1\u7406\u65f6\u7684yes\/no<\/p><p>log_path = \/var\/log\/ansible.log<\/p><p>#\u65e5\u5fd7\u76ee\u5f55\uff1a\u8bb0\u5f55ansible\u90fd\u5e72\u8fc7\u4ec0\u4e48\u4e8b<\/p><h3><span class=\"ez-toc-section\" id=\"2%EF%BC%89%E8%A2%AB%E7%AE%A1%E7%90%86%E6%9C%BA%E5%99%A8%E7%9A%84%E6%B8%85%E5%8D%95inventory_%E4%B8%BB%E6%9C%BA%E6%B8%85%E5%8D%95\"><\/span><a href=\"https:\/\/docs.ansible.com\/ansible\/latest\/inventory_guide\/intro_inventory.html\"><b>2<\/b><b>\uff09\u88ab\u7ba1\u7406\u673a\u5668\u7684\u6e05\u5355<\/b><b>(inventory <\/b><b>\u4e3b\u673a\u6e05\u5355<\/b><b>)<\/b><\/a><span class=\"ez-toc-section-end\"><\/span><\/h3><p><img decoding=\"async\" class=\"alignnone size-full wp-image-1832\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u65b9\u5f0f.png\" alt=\"\" width=\"2034\" height=\"316\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u65b9\u5f0f.png 2034w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u65b9\u5f0f-300x47.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u65b9\u5f0f-1024x159.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u65b9\u5f0f-768x119.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u65b9\u5f0f-1536x239.png 1536w\" sizes=\"(max-width: 2034px) 100vw, 2034px\" \/><\/p><p>\u4e3b\u673a\u6e05\u5355\u83b7\u53d6:<\/p><ol><li>\u6839\u636e\u5df2\u6709\u7684\u6e05\u5355\u83b7\u53d6(\u8868\u683c \u2026\u5176\u4ed6\u7cfb\u7edf)<\/li><li>\u516c\u6709\u4e91\u5bfc\u51fa<\/li><li>\u4e66\u5199\u811a\u672cping\/fping+\u83b7\u53d6ip.<\/li><\/ol><p><b>\u5206\u7ec4\u540d\u4e0d\u80fd\u4e0e\u4e3b\u673a\u540d\u4e00\u81f4<\/b><\/p><p>\u4ec0\u4e48\u662f\u4e3b\u673a\u6e05\u5355: \u8ba9ansible\u7ba1\u7406\u7684\u8282\u70b9\u7684\u5217\u8868.<\/p><p>ansible\u9ed8\u8ba4\u8bfb\u53d6\u5728\/etc\/ansible\/hosts\u6587\u4ef6,\u5e76\u975e\/etc\/hosts.<\/p><p>\u672a\u6765\u5b9e\u9645\u4f7f\u7528\u4e2d\u4e00\u822c\u6211\u4eec\u4f1a\u628a\u4e3b\u673a\u6e05\u5355\u6587\u4ef6\u5b58\u653e\u5728\u6307\u5b9a\u7684\u76ee\u5f55\u4e2d,\u8fd0\u884cansible\u7684\u65f6\u5019\u901a\u8fc7-i\u9009\u9879\u6307\u5b9a\u4e3b\u673a\u6e05\u5355\u6587\u4ef6\u5373\u53ef.<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-1830\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355.png\" alt=\"\" width=\"1830\" height=\"675\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355.png 1830w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355-300x111.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355-1024x378.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355-768x283.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355-1536x567.png 1536w\" sizes=\"(max-width: 1830px) 100vw, 1830px\" \/><\/p><p>\u4e3b\u673a\u6e05\u5355\u5206\u7ec4\u8be6\u89e3:<\/p><p>\u9700\u8981\u6211\u4eec\u8fdb\u884c\u5206\u7ec4:\u6309\u7167\u5c42\u6b21\u8fdb\u884c\u5206\u7ec4,\u6309\u7167\u529f\u80fd\/\u4e1a\u52a1<\/p><p><code>\/etc\/ansible\/hosts<\/code><\/p><p>\u4e3b\u673a\u6e05\u5355\u53ef\u4ee5\u5206\u7ec4\uff0c<\/p><p>\u5b50\u7ec4\u4f7f\u7528children\u5173\u952e\u8bcd\u521b\u5efa<\/p><p>\u683c\u5f0f:<\/p><p><code>[data:children] #\u7ec4\u540d\u5b57:children\u5373\u53ef.<\/code><\/p><h4><span class=\"ez-toc-section\" id=\"%E5%88%86%E7%BB%84%E6%A1%88%E4%BE%8B%EF%BC%9A%E7%BB%99backupnfs_2%E4%B8%AA%E7%BB%84%E5%90%88%E5%B9%B6%E6%96%B0%E7%9A%84%E7%BB%84%E5%8F%ABdata\"><\/span><b>\u5206\u7ec4\u6848\u4f8b\uff1a\u7ed9<\/b><b>backup,nfs 2<\/b><b>\u4e2a\u7ec4\u5408\u5e76\u65b0\u7684\u7ec4\u53eb<\/b><b>data<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>data\u7ec4\u5305\u542b\u4e86backup\u548cnfs<\/p><p>children\uff1a\u5b50\u7ec4. data\u7236\u4eb2,backup\u548cnfs\u5b69\u5b50<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1831\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u5206\u7ec4.png\" alt=\"\" width=\"1031\" height=\"617\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u5206\u7ec4.png 1031w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u5206\u7ec4-300x180.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u5206\u7ec4-1024x613.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4e3b\u673a\u6e05\u5355\u5206\u7ec4-768x460.png 768w\" sizes=\"(max-width: 1031px) 100vw, 1031px\" \/><\/p><h4><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B%EF%BC%9A%E4%B8%BB%E6%9C%BA%E6%B8%85%E5%8D%95%E4%B8%AD%E8%A1%A8%E7%A4%BA%E8%8C%83%E5%9B%B4%EF%BC%88ip%E5%9C%B0%E5%9D%80%E5%90%8E%E8%B7%9F%E8%B5%B7%E5%A7%8B%E6%95%B0%E5%AD%97_%E7%BB%93%E6%9D%9F%E6%95%B0%E5%AD%97_%E9%97%B4%E9%9A%94%EF%BC%89\"><\/span><b>\u6848\u4f8b\uff1a\u4e3b\u673a\u6e05\u5355\u4e2d\u8868\u793a\u8303\u56f4\uff08ip\u5730\u5740\u540e\u8ddf[\u8d77\u59cb\u6570\u5b57:\u7ed3\u675f\u6570\u5b57:\u95f4\u9694]\uff09<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><pre>[root@m01 ~]# cat \/etc\/ansible\/hosts<br \/>[web]<br \/>172.16.1.[7:10]\u00a0 \u00a0[\u4ece\u54ea\u91cc\u5f00\u59cb:\u5230\u54ea\u91cc\u7ed3\u675f] \u00a0  <br \/>172.16.1.7-10<br \/>\u8fd8\u53ef\u4ee5\u5199\u6210\uff1a<br \/>10.0.0.[1:50:2] #\u6bcf\u96942\u4e3a1\u4e2aip\u5730\u5740\uff0c10.0.0.1\uff0c10.0.0.3\uff0c10.0.0.5\u00a0 \u7b49\u7b49<\/pre><h4><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B%EF%BC%9A%E6%B2%A1%E6%9C%89%E9%85%8D%E7%BD%AE%E5%AF%86%E9%92%A5%E8%AE%A4%E8%AF%81%E4%B8%BB%E6%9C%BA%E6%B8%85%E5%8D%95%E5%A6%82%E4%BD%95%E4%B9%A6%E5%86%99%EF%BC%88%E4%BD%BF%E7%94%A8%E6%98%8E%E6%96%87%E6%8C%87%E5%AE%9A%E7%94%A8%E6%88%B7%E5%90%8D%E5%AF%86%E7%A0%81%E7%9A%84%E6%96%B9%E5%BC%8F%EF%BC%89\"><\/span>\u6848\u4f8b\uff1a\u6ca1\u6709\u914d\u7f6e\u5bc6\u94a5\u8ba4\u8bc1,\u4e3b\u673a\u6e05\u5355\u5982\u4f55\u4e66\u5199.\uff08\u4f7f\u7528\u660e\u6587\u6307\u5b9a\u7528\u6237\u540d\u5bc6\u7801\u7684\u65b9\u5f0f\uff09<span class=\"ez-toc-section-end\"><\/span><\/h4><p><code>172.16.1.7 ansible_user=root \u00a0ansible_password=1 ansible_port=22<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"3%EF%BC%89%E6%B5%8B%E8%AF%95%E6%98%AF%E5%90%A6%E8%BF%9E%E6%8E%A5%E6%88%90%E5%8A%9F\"><\/span>3\uff09\u6d4b\u8bd5\u662f\u5426\u8fde\u63a5\u6210\u529f<span class=\"ez-toc-section-end\"><\/span><\/h3><p><code>ansible all -m ping<\/code><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6edbd77 elementor-widget elementor-widget-text-editor\" data-id=\"6edbd77\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span class=\"ez-toc-section\" id=\"13_%E7%AE%A1%E7%90%86\"><\/span>1.3 \u7ba1\u7406<span class=\"ez-toc-section-end\"><\/span><\/h2><h3><span class=\"ez-toc-section\" id=\"ansible%E7%82%B9%E5%AF%B9%E7%82%B9%E6%A8%A1%E5%BC%8F%EF%BC%88%E5%91%BD%E4%BB%A4%E8%A1%8C%EF%BC%89%E6%89%B9%E9%87%8F%E7%AE%A1%E7%90%86%E6%B5%81%E7%A8%8B\"><\/span>ansible\u70b9\u5bf9\u70b9\u6a21\u5f0f\uff08\u547d\u4ee4\u884c\uff09\u6279\u91cf\u7ba1\u7406\u6d41\u7a0b:<span class=\"ez-toc-section-end\"><\/span><\/h3><ol><li>\u914d\u7f6e\u597d\u5bc6\u94a5\u8ba4\u8bc1 \u2705<\/li><li>\u4e66\u5199yaml\u5267\u672c\/\u4f7f\u7528\u547d\u4ee4<\/li><\/ol><p>\u4e3b\u673a\u6e05\u5355<\/p><p>\u6587\u6863(inventory) \/etc\/ansible\/hosts \u2705<\/p><ol start=\"3\"><li>\u5f00\u59cb\u4f7f\u7528ansible\u7ba1\u7406<\/li><\/ol><p><a href=\"https:\/\/docs.ansible.com\/ansible\/latest\/collections\/index.html\">ansible\u6a21\u5757\u7684\u5730\u5740\u6a21\u5757\u5927\u5168<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4a6dae2 elementor-widget elementor-widget-text-editor\" data-id=\"4a6dae2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span class=\"ez-toc-section\" id=\"Ansible%E5%BF%85%E7%9F%A5%E5%BF%85%E4%BC%9A%E6%A8%A1%E5%9D%97\"><\/span><a href=\"https:\u054e\u2161docs.ansible.com\/ansible\/latest\/collections\/i ndex.html\"><b>Ansible<\/b><b>\u5fc5\u77e5\u5fc5\u4f1a\u6a21\u5757<\/b><\/a><span class=\"ez-toc-section-end\"><\/span><\/h2><p>Ansible\u6a21\u5757\u6982\u8ff0:<\/p><p>ansible\u4e2d\u7684\u6a21\u5757\u5c31\u7c7b\u4f3c\u4e8eLinux\u4e2d\u7684\u547d\u4ee4,\u6211\u4eecLinux\u547d\u4ee4\u7ba1\u7406\u7cfb\u7edf,\u6211\u4eec\u901a\u8fc7ansible\u6a21\u5757\u5b9e\u73b0\u6279\u91cf\u7ba1\u7406.<\/p><p>ansible\u4e2d\u6a21\u5757\u4e00\u822c\u76f8\u5f53\u4e8eLinux\u4e2d\u7684\u4e00\u4e9b\u547d\u4ee4.yum\u6a21\u5757,file\u6a21\u5757,user\u6a21\u5757.<\/p><p>ansible\u4e2d\u7684\u6a21\u5757\u62e5\u6709\u4e0d\u540c\u7684\u9009\u9879,\u8fd9\u4e9b\u9009\u9879\u4e00\u822c\u90fd\u662f\u4e00\u4e9b\u5355\u8bcd,\u62e5\u6709\u81ea\u5df1\u7684\u683c\u5f0f\u4e0e\u8981\u6c42<\/p><p>\u67e5\u8be2\u5e2e\u52a9\uff1aansible-doc -s \u6a21\u5757\u540d<\/p><h3><span class=\"ez-toc-section\" id=\"1_%E5%91%BD%E4%BB%A4%E4%B8%8E%E8%84%9A%E6%9C%AC%E7%B1%BB%E6%A8%A1%E5%9D%97\"><\/span><b>1) <\/b><b>\u547d\u4ee4\u4e0e\u811a\u672c\u7c7b\u6a21\u5757<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><h4><span class=\"ez-toc-section\" id=\"a_command%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\"><\/span><b>a) command<\/b><b>\u6a21\u5757<\/b>\u2606\u2606\u2606\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u662fans\u9ed8\u8ba4\u7684\u6a21\u5757,\u9002\u7528\u4e8e\u6267\u884c\u7b80\u5355\u7684\u547d\u4ee4,\u4e0d\u652f\u6301\u7279\u6b8a\u7b26\u53f7.<\/p><h4><span class=\"ez-toc-section\" id=\"b_shell%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\"><\/span><b>b) shell<\/b><b>\u6a21\u5757<\/b>\u2606\u2606\u2606\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u4e0ecommand\u6a21\u5757\u7c7b\u4f3c,\u4f46\u662fshell\u652f\u6301\u7279\u6b8a\u7b26\u53f7.<\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B01_%E6%89%B9%E9%87%8F%E6%89%A7%E8%A1%8Chostname_-I%E5%91%BD%E4%BB%A4\"><\/span><b>\u6848\u4f8b<\/b><b>01:<\/b><b>\u6279\u91cf\u6267\u884c<\/b><b>hostname -I<\/b><b>\u547d\u4ee4<\/b><span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all \u00a0-m shell -a \"hostname -I\"<\/code><\/p><p>ansible \u88ab\u7ba1\u7406\u7684\u4e3b\u673a\/\u5206\u7ec4\/all all\u8868\u793a\u6240\u6709<\/p><p>-m \u6307\u5b9a\u6a21\u5757 shell\u6a21\u5757\u8fd0\u884c\u547d\u4ee4\uff08\u4e0d\u6307\u5b9a\u7684\u8bddcommand\u6a21\u5757\u662fansible\u9ed8\u8ba4\u6a21\u5757.\uff09<\/p><p>-a \u6a21\u5757\u7684\u53c2\u6570<\/p><h5><span class=\"ez-toc-section\" id=\"_%E6%A1%88%E4%BE%8B02_%E6%89%B9%E9%87%8F%E5%88%9B%E5%BB%BA%E6%96%87%E4%BB%B6_oldboy01txt_%E2%80%A6oldboy10txt\"><\/span><b>\u00a0<\/b><b>\u6848\u4f8b<\/b><b>02: <\/b><b>\u6279\u91cf\u521b\u5efa\u6587\u4ef6 <\/b><b>oldboy01.txt &#8230;<\/b><b>oldboy10.txt<\/b><span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all \u00a0 -m shell \u00a0 -a \"touch \/tmp\/oldboy{01..10}.txt\"<\/code><\/p><p>\u4e0ecommand\u6a21\u5757\u7c7b\u4f3c,\u4f46\u662fshell\u652f\u6301\u7279\u6b8a\u7b26\u53f7.<\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B03_%E6%89%B9%E9%87%8F%E5%88%A0%E9%99%A4tmp%E4%B8%8B%E9%9D%A2%E6%89%80%E6%9C%89%E5%86%85%E5%AE%B9\"><\/span>\u6848\u4f8b03:\u6279\u91cf\u5220\u9664\/tmp\/\u4e0b\u9762\u6240\u6709\u5185\u5bb9<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all -m shell \u00a0-a 'rm -rf \/tmp\/*'<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B04_%E6%89%B9%E9%87%8F%E8%8E%B7%E5%8F%96ip%E5%9C%B0%E5%9D%80\"><\/span>\u6848\u4f8b04:\u6279\u91cf\u83b7\u53d6ip\u5730\u5740<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all -m shell \u00a0-a \u00a0\"ip a s eth0 |awk -F'[\/]+' \u00a0 'NR==3{print \\$3}'\"<\/code><\/p><h4><span class=\"ez-toc-section\" id=\"c_script%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\"><\/span><b>c) script<\/b><b>\u6a21\u5757<\/b>\u2606\u2606\u2606\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h4><h6><span class=\"ez-toc-section\" id=\"3_%E6%A1%88%E4%BE%8B05_%E6%89%B9%E9%87%8F%E6%89%A7%E8%A1%8C%E8%84%9A%E6%9C%AC\"><\/span><b>3) <\/b><b>\u6848\u4f8b<\/b><b>05: <\/b><b>\u6279\u91cf\u6267\u884c\u811a\u672c<\/b><span class=\"ez-toc-section-end\"><\/span><\/h6><p>1.\u5206\u53d1\u811a\u672c(\u7ba1\u7406\u673a\u4e0a\u5df2\u6709\u7684\u811a\u672c\u5206\u53d1)<\/p><p>2.\u6267\u884c\u811a\u672c(\u81ea\u52a8\u6267\u884c)<\/p><p>3.\u76f4\u63a5\u6267\u884c\u7ba1\u7406\u673a\u4e0a\u7684\u811a\u672c<\/p><pre>cat \/server\/scripts\/check.sh\nip a  \nhostname\nwhoami\npwd<\/pre><p><code>ansible all \u00a0-m script \u00a0-a \"\/server\/scripts\/check.sh\"<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"2_%E6%96%87%E4%BB%B6%E7%9B%B8%E5%85%B3%E6%A8%A1%E5%9D%97\"><\/span><b>2) <\/b><b>\u6587\u4ef6\u76f8\u5173\u6a21\u5757<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><h4><span class=\"ez-toc-section\" id=\"a_file%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\"><\/span><b>a) file<\/b><b>\u6a21\u5757<\/b>\u2606\u2606\u2606\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h4><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1833\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/file\u6a21\u5757.png\" alt=\"\" width=\"1704\" height=\"1044\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/file\u6a21\u5757.png 1704w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/file\u6a21\u5757-300x184.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/file\u6a21\u5757-1024x627.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/file\u6a21\u5757-768x471.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/file\u6a21\u5757-1536x941.png 1536w\" sizes=\"(max-width: 1704px) 100vw, 1704px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B05_%E5%88%9B%E5%BB%BAoptlidaotxt_%E2%98%86\"><\/span>\u6848\u4f8b05: \u521b\u5efa\/opt\/lidao.txt \u2606<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all \u00a0-m file -a 'path=\/opt\/lidao.txt state=touch'<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B06_%E5%88%9B%E5%BB%BA%E7%9B%AE%E5%BD%95app_%E2%98%86%EF%BC%88%E8%87%AA%E5%8A%A8%E9%80%92%E5%BD%92%E5%88%9B%E5%BB%BA%EF%BC%89\"><\/span>\u6848\u4f8b06: \u521b\u5efa\u76ee\u5f55\/app\/ \u2606\uff08\u81ea\u52a8\u9012\u5f52\u521b\u5efa\uff09<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all \u00a0-m file -a 'path=\/app\/a\/b\/c\/d\/e\/g\/ state=directory '<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B07_%E5%88%9B%E5%BB%BA%E8%BD%AF%E8%BF%9E%E6%8E%A5_etchosts%E5%88%9B%E5%BB%BA%E8%BD%AF%E8%BF%9E%E6%8E%A5%E5%88%B0opt%E4%B8%8B_%E2%98%86\"><\/span>\u6848\u4f8b07: \u521b\u5efa\u8f6f\u8fde\u63a5 \/etc\/hosts\u521b\u5efa\u8f6f\u8fde\u63a5\u5230\/opt\/\u4e0b \u2606<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ln -s \/etc\/hosts \u00a0 \/opt\/hosts<\/code><\/p><p><code>ansible all \u00a0-m file -a ' src=\/etc\/hosts path=\/opt\/hosts state=link '<\/code><\/p><p>#\u68c0\u9a8c\u662f\u5426\u6210\u529f\uff1a\u67e5\u770b\u8f6f\u8fde\u63a5\u662f\u5426\u53ef\u4ee5\u5c55\u793a\u51fa\u8fde\u63a5\u7684\u7684\u6587\u4ef6\u5373\u53ef<\/p><p><code>ansible all -a 'cat \/opt\/hosts'<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B08_%E5%88%9B%E5%BB%BAans-backup%E7%9B%AE%E5%BD%95_%E6%89%80%E6%9C%89%E8%80%85%E6%98%AFrsync%E6%9D%83%E9%99%90%E6%98%AF700\"><\/span>\u6848\u4f8b08: \u521b\u5efa\/ans-backup\/\u76ee\u5f55 \u6240\u6709\u8005\u662frsync,\u6743\u9650\u662f700<span class=\"ez-toc-section-end\"><\/span><\/h5><p>\u521b\u5efa\u6587\u4ef6\u6216\u76ee\u5f55\u7684\u65f6\u5019,\u8fdb\u884c\u4fee\u6539\u6743\u9650,\u6240\u6709\u8005.<\/p><p><code>ansible all \u00a0-m file -a 'path=\/ans-backup\/ owner=oldboy group=oldboy mode=700 state=directory'<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B09_%E5%88%A0%E9%99%A4oldboy%E7%9B%AE%E5%BD%95\"><\/span>\u6848\u4f8b09: \u5220\u9664\/oldboy\/\u76ee\u5f55<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all \u00a0-m file -a 'path=\/ans-backup\/ state=absent'<\/code><\/p><h4><span class=\"ez-toc-section\" id=\"b_copy%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\"><\/span><b>b) copy<\/b><b>\u6a21\u5757<\/b>\u2606\u2606\u2606\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u4f5c\u7528\uff1a\u6279\u91cf\u5206\u53d1\uff0c1\u4e2a\u8282\u70b9(\u7ba1\u7406\u8282\u70b9)\u53d1\u9001\u6587\u4ef6\u6216\u538b\u7f29\u5305\u5230\u6240\u6709\u88ab\u7ba1\u7406\u7aef. \u6ce8\u610f:copy\u662f\u5355\u5411\u7684\u4f20\u8f93\uff0c\u7c7b\u4f3c\u4e8escp<\/p><p><strong>\u6ce8\u610f\uff1a\u4e0d\u5efa\u8bae\u4f7f\u7528copy\u547d\u4ee4\u4f20\u8f93\u76ee\u5f55\uff0c\u901f\u5ea6\u975e\u5e38\u6162\uff0c\u66ff\u4ee3\u65b9\u6848\uff1a\u5148\u6253\u5305\u538b\u7f29\uff0c\u518d\u8fdb\u884c\u4f20\u8f93<\/strong><\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1834\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/copy\u6a21\u5757.png\" alt=\"\" width=\"1249\" height=\"486\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/copy\u6a21\u5757.png 1249w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/copy\u6a21\u5757-300x117.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/copy\u6a21\u5757-1024x398.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/copy\u6a21\u5757-768x299.png 768w\" sizes=\"(max-width: 1249px) 100vw, 1249px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B10_%E5%88%86%E5%8F%91%E4%B9%A6%E5%86%99%E5%A5%BD%E7%9A%84etchosts%E6%96%87%E4%BB%B6%E5%A6%82%E6%9E%9C%E6%96%87%E4%BB%B6%E5%AD%98%E5%9C%A8%E5%88%99%E5%A4%87%E4%BB%BD%E4%B8%8B\"><\/span>\u6848\u4f8b10: \u5206\u53d1\u4e66\u5199\u597d\u7684\/etc\/hosts\u6587\u4ef6,\u5982\u679c\u6587\u4ef6\u5b58\u5728\u5219\u5907\u4efd\u4e0b.<span class=\"ez-toc-section-end\"><\/span><\/h5><p>\u5728\/etc\/hosts\u4e2d\u589e\u52a0 172.16.1.10 web04 \u7136\u540e\u5206\u53d1hosts\u6587\u4ef6.<\/p><p><code>ansible all -m copy \u00a0-a 'src=\/etc\/hosts\u00a0 dest=\/etc\/hosts backup=yes'<\/code><\/p><p>\u989d\u5916\u6269\u5c55:copy\u662f\u63a8\u9001,\u6279\u91cf\u63a8\u9001.<\/p><p>fetch\u662f\u62c9\u53d6,\u6279\u91cf\u62c9\u53d6.\u4f7f\u7528\u8f83\u5c11. \u62c9\u53d6\u6240\u6709\u4e3b\u673a\u7684\/etc\/hostname<\/p><p>\u4f7f\u7528\u573a\u666f\uff1a\u7ed9\u88ab\u7ba1\u7406\u673a\u8fdb\u884c\u7cfb\u7edf\u5de1\u68c0\u540e\u9700\u8981\u62c9\u53d6\u5404\u4e2a\u8282\u70b9\u7684\u5de1\u68c0\u65e5\u5fd7<\/p><p><code>ansible all -m fetch -a 'src=\/etc\/hostname dest=\/tmp\/'<\/code><\/p><h4><span class=\"ez-toc-section\" id=\"c_lineinfile%E6%A8%A1%E5%9D%97\"><\/span><b>c) lineinfile<\/b><b>\u6a21\u5757<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u4fee\u6539\u6587\u4ef6\u4e2d\u7684\u884c&#8212;-\u539f\u7406\uff1a\u627e\u5230\u8fd9\u4e00\u884c\u8fdb\u884c\u4fee\u6539&#8211;\u641c\u7d22\u67d0\u884c\uff0c\u627e\u5230\u4e4b\u540e\u8fdb\u884c\u6b64\u884c\u7684\u66ff\u6362\u64cd\u4f5c<\/p><p>\u901a\u8fc7ansible\u4fee\u6539\u6587\u4ef6\u7684\u7b56\u7565:<\/p><p>sed\u4fee\u6539\u66ff\u6362\u529f\u80fd<\/p><p>cat\u6279\u91cf\u5199\u5165\u5185\u5bb9\u529f\u80fd.<\/p><p>echo\u5199\u5165\u529f\u80fd.\uff08\u8ffd\u52a0\uff09<\/p><p>\u7ba1\u7406\u673a\u51c6\u5907\u597d\u914d\u7f6e\u6587\u4ef6copy\u5206\u53d1.<\/p><p>\u672a\u6765\u4fee\u6539\u914d\u7f6e\u6587\u4ef6\u4f7f\u7528lineinfile\u6a21\u5757,\u7c7b\u4f3c\u4e8esed -i &#8216;sg&#8217;\u548csed &#8216;cai&#8217;<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1836\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/lineinfile\u6a21\u5757\u53c2\u6570.png\" alt=\"\" width=\"1566\" height=\"253\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/lineinfile\u6a21\u5757\u53c2\u6570.png 1566w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/lineinfile\u6a21\u5757\u53c2\u6570-300x48.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/lineinfile\u6a21\u5757\u53c2\u6570-1024x165.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/lineinfile\u6a21\u5757\u53c2\u6570-768x124.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/lineinfile\u6a21\u5757\u53c2\u6570-1536x248.png 1536w\" sizes=\"(max-width: 1566px) 100vw, 1566px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B11_etcsshsshd_config%E5%8E%BB%E6%8E%89Port%E5%89%8D%E9%9D%A2%E7%9A%84%E6%B3%A8%E9%87%8A%E7%AC%A6%E5%8F%B7\"><\/span>\u6848\u4f8b11: \/etc\/ssh\/sshd_config\u53bb\u6389Port\u524d\u9762\u7684\u6ce8\u91ca\u7b26\u53f7<span class=\"ez-toc-section-end\"><\/span><\/h5><p>\u76ee\u6807\u627e\u5230\u6b64\u884c\uff1a#Port 22<\/p><p>\u4fee\u6539\u4e3a\uff08\u5c06\u6b64\u884c\u66ff\u6362\u4e3a\uff09Port 22<\/p><p><code>ansible all \u00a0-m lineinfile \u00a0 \u00a0-a\u00a0 'path=\/etc\/ssh\/sshd_config\u00a0 regexp=\"^#Port\" \u00a0line=\"Port 22\"\u00a0 backup=yes'<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B12_%E6%96%87%E4%BB%B6%E8%BF%BD%E5%8A%A0%E5%86%85%E5%AE%B9_%E2%80%98oldboy_lidao996%EF%BC%88%E4%B8%8D%E5%8A%A0%E6%AD%A3%E5%88%99%E5%8F%82%E6%95%B0%E9%BB%98%E8%AE%A4%E8%BF%BD%E5%8A%A0%E6%AD%A4%E8%A1%8C%EF%BC%89\"><\/span>\u6848\u4f8b12: \u6587\u4ef6\u8ffd\u52a0\u5185\u5bb9 &#8216;#oldboy lidao996&#8217;\uff08\u4e0d\u52a0\u6b63\u5219\u53c2\u6570\u9ed8\u8ba4\u8ffd\u52a0\u6b64\u884c\uff09<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all \u00a0-m lineinfile \u00a0-a 'path=\/etc\/ssh\/sshd_config line=\"#lidao\"\u00a0 backup=yes'<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"3_%E6%9C%8D%E5%8A%A1%E7%AE%A1%E7%90%86-systemd%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\"><\/span><b>3) <\/b><b>\u670d\u52a1\u7ba1\u7406<\/b><b>-systemd<\/b>\u2606\u2606\u2606\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h3><p>systemd\u6a21\u5757\u76f8\u5f53\u4e8e\u662flinux systemctl\u547d\u4ee4:<\/p><p>\u529f\u80fd\uff1a\u5f00\u542f\/\u5173\u95ed\/\u91cd\u542f\u670d\u52a1 ;\u5f00\u673a\u81ea\u542f\u52a8;<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1837\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/systemd\u6a21\u5757.png\" alt=\"\" width=\"1301\" height=\"415\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/systemd\u6a21\u5757.png 1301w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/systemd\u6a21\u5757-300x96.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/systemd\u6a21\u5757-1024x327.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/systemd\u6a21\u5757-768x245.png 768w\" sizes=\"(max-width: 1301px) 100vw, 1301px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B11_%E5%BC%80%E5%90%AFcrond%E6%9C%8D%E5%8A%A1%E5%B9%B6%E8%AE%BE%E7%BD%AE%E5%BC%80%E6%9C%BA%E8%87%AA%E5%90%AF%E5%8A%A8\"><\/span>\u6848\u4f8b11: \u5f00\u542fcrond\u670d\u52a1\u5e76\u8bbe\u7f6e\u5f00\u673a\u81ea\u542f\u52a8.<span class=\"ez-toc-section-end\"><\/span><\/h5><p>#\u542f\u52a8\u670d\u52a1<\/p><p><code>ansible all -m systemd -a 'name=crond enabled=yes state=started<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B12_%E5%85%B3%E9%97%ADfirewalld%E6%9C%8D%E5%8A%A1%E5%B9%B6%E4%B8%8D%E8%AE%A9%E5%BC%80%E6%9C%BA%E8%87%AA%E5%90%AF%E5%8A%A8\"><\/span>\u6848\u4f8b12: \u5173\u95edfirewalld\u670d\u52a1\u5e76\u4e0d\u8ba9\u5f00\u673a\u81ea\u542f\u52a8.<span class=\"ez-toc-section-end\"><\/span><\/h5><p>#\u5173\u95ed\u670d\u52a1<\/p><p><code>ansible all -m systemd -a 'name=firewalld enabled=no state=stopped'<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B12_%E9%87%8D%E5%90%AF%EF%BC%88%E9%87%8D%E8%BD%BD%EF%BC%89sshd%E6%9C%8D%E5%8A%A1\"><\/span>\u6848\u4f8b12: \u91cd\u542f\uff08\u91cd\u8f7d\uff09sshd\u670d\u52a1<span class=\"ez-toc-section-end\"><\/span><\/h5><p>#\u91cd\u542fssh\u00a0 \u00a0 #\u4e5f\u53ef\u4ee5restarted<\/p><p><code>ansible all -m systemd -a 'name=sshd state=reloaded'<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"4_%E8%BD%AF%E4%BB%B6%E7%AE%A1%E7%90%86\"><\/span><b>4) <\/b><b>\u8f6f\u4ef6\u7ba1\u7406<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>yum\u6a21\u5757 get_url\u6a21\u5757:wget\u547d\u4ee4<\/p><p>yum_repository\u6a21\u5757:yum\u6e90\u914d\u7f6e\u6a21\u5757,\u672a\u6765\u53ef\u4ee5\u901a\u8fc7copy\u6a21\u5757\u914d\u7f6eyum\u6e90.<\/p><h4><span class=\"ez-toc-section\" id=\"a_yum%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\"><\/span><b>a) yum<\/b><b>\u6a21\u5757<\/b>\u2606\u2606\u2606\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h4><p>yum\u6a21\u5757\u5e76\u4e0d\u53ea\u662fyum\u547d\u4ee4,\u5305\u542b\u4e86yum\/apt\u547d\u4ee4<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1838\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/yum\u6a21\u5757.png\" alt=\"\" width=\"1295\" height=\"302\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6a21\u5757.png 1295w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6a21\u5757-300x70.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6a21\u5757-1024x239.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6a21\u5757-768x179.png 768w\" sizes=\"(max-width: 1295px) 100vw, 1295px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B13_%E5%AE%89%E8%A3%85%E5%B8%B8%E7%94%A8%E7%9A%84%E8%BD%AF%E4%BB%B6htoptreelrzszsshpass%E6%9B%B4%E6%96%B0rsync\"><\/span>\u6848\u4f8b13: \u5b89\u88c5\u5e38\u7528\u7684\u8f6f\u4ef6htop,tree,lrzsz,sshpass;\u66f4\u65b0rsync<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all -m yum \u00a0-a 'name=htop,tree,lrzsz,sshpass<\/code><\/p><p><code>ansible all -m yum -a 'name=rsync \u00a0 state=present'<\/code><\/p><p><code>ansible all -m yum -a 'name=rsync \u00a0 state=latest'<\/code><\/p><h4><span class=\"ez-toc-section\" id=\"b_get_url%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86\"><\/span><b>b) get_url<\/b><b>\u6a21\u5757<\/b>\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u76f8\u5f53\u4e8e\u662fwget\u547d\u4ee4.\u6240\u6709\u4e3b\u673a\u80fd\u8bbf\u95ee\u7f51\u7edc\u624d\u884c.<\/p><p>\u63a8\u8350\u5728\u7ba1\u7406\u8282\u70b9\u4e0b\u8f7d\u597d,\u4f7f\u7528copy\u4ec5\u5206\u53d1\u5373\u53ef.<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1839\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/get_url\u6a21\u5757.png\" alt=\"\" width=\"991\" height=\"146\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/get_url\u6a21\u5757.png 991w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/get_url\u6a21\u5757-300x44.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/get_url\u6a21\u5757-768x113.png 768w\" sizes=\"(max-width: 991px) 100vw, 991px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B14_%E4%B8%8B%E8%BD%BDzabbix-agent%E7%9A%84%E8%BD%AF%E5%8C%85%E5%88%B0tmp%E4%B8%8B%E9%9D%A2\"><\/span>\u6848\u4f8b14: \u4e0b\u8f7dzabbix-agent\u7684\u8f6f\u5305\u5230\/tmp\/\u4e0b\u9762<span class=\"ez-toc-section-end\"><\/span><\/h5><pre>zabbix-agent\u5730\u5740\u4e3a:https:\/\/mirrors.aliyun.com\/zabbix\/zabbix\/6.0\/rhel\/7\/x86_64\/zabbix-agent-6.0.13-release1.el7.x86_64.rpm\n#1.\u4e0b\u8f7drpm\u5305\n#2.yum\u5b89\u88c5\u672c\u5730\u7684rpm\u5305\n#1. \u4e0b\u8f7drpm\u5305\nansible all \u00a0-m get_url -a 'url=\"https:\/\/mirrors.aliyun.com\/zabbix\/zabbix\/6.0\/rhel\/7\/x86_64\/zabbix-agent-6.0.13-release1.el7.x86_64.rpm\" dest=\/tmp\/'\n#2. \u901a\u8fc7yum\u6a21\u5757\u5b89\u88c5\uff1a\u540e\u7eed\u53ef\u4ee5\u8c03\u7528yum\u6a21\u5757\u5b89\u88c5\u672c\u5730\u7684\u8f6f\u4ef6\uff0cname=\/app\/tools\/xxxxx.rpm\u5373\u53ef.\nansible all -m yum -a 'name=\/tmp\/zabbix-agent-6.0.13-release1.el7.x86_64.rpm state=present'<\/pre><h4><span class=\"ez-toc-section\" id=\"c_yum_repository%E6%A8%A1%E5%9D%97\"><\/span><b>c) yum_repository<\/b><b>\u6a21\u5757<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u4e0d\u63a8\u8350\u5728\u547d\u4ee4\u884c\u4f7f\u7528\u6b64\u6a21\u5757\uff0c\u5728\u5267\u672c\u4e2d\u4f1a\u597d\u5199\u4e00\u70b9:\u672a\u6765\u4e66\u5199\u597dyum\u914d\u7f6e(xxx.repo)\u6587\u4ef6,copy\u5206\u53d1\u8fc7\u53bb\u5373\u53ef<\/p><h3><b><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1840\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757.png\" alt=\"\" width=\"1142\" height=\"367\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757.png 1142w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757-300x96.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757-1024x329.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757-768x247.png 768w\" sizes=\"(max-width: 1142px) 100vw, 1142px\" \/><\/b><\/h3><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1841\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757\u5bf9\u5e94\u5267\u672c\u53c2\u6570.png\" alt=\"\" width=\"1300\" height=\"330\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757\u5bf9\u5e94\u5267\u672c\u53c2\u6570.png 1300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757\u5bf9\u5e94\u5267\u672c\u53c2\u6570-300x76.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757\u5bf9\u5e94\u5267\u672c\u53c2\u6570-1024x260.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/yum\u6e90\u6a21\u5757\u5bf9\u5e94\u5267\u672c\u53c2\u6570-768x195.png 768w\" sizes=\"(max-width: 1300px) 100vw, 1300px\" \/><\/p><pre>root@m01 ~]# cat \/etc\/yum.repos.d\/epel.repo\n[epel]\nname=Extra Packages for Enterprise Linux 7 -$basearch baseurl=http:\/\/mirrors.aliyun.com\/epel\/7\/$basearch enabled=1 gpgcheck=0<\/pre><p><code>ansible backup -m yum_repository -a 'name=epel \u00a0description=\"Extra Packages for Enterprise Linux7-$basearch\"baseurl=\"http:\/\/mirrors.aliyun.com\/epel\/7\/$basearch\"enabled=yes gpgcheck=no'<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"5_%E7%94%A8%E6%88%B7%E7%AE%A1%E7%90%86\"><\/span><b><br \/>5) <\/b><b>\u7528\u6237\u7ba1\u7406<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><h4><span class=\"ez-toc-section\" id=\"auser_%E6%A8%A1%E5%9D%97%E2%98%86%E2%98%86%E2%98%86%E2%98%86%E2%98%86\"><\/span>a)user \u6a21\u5757\u2606\u2606\u2606\u2606\u2606<span class=\"ez-toc-section-end\"><\/span><\/h4><p>#\u66ff\u4ee3 useradd,passwd,userdel.<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1842\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/user\u6a21\u5757.png\" alt=\"\" width=\"1105\" height=\"513\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/user\u6a21\u5757.png 1105w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/user\u6a21\u5757-300x139.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/user\u6a21\u5757-1024x475.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/user\u6a21\u5757-768x357.png 768w\" sizes=\"(max-width: 1105px) 100vw, 1105px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B15_%E5%88%9B%E5%BB%BAwww-ans%E7%94%A8%E6%88%B7uid2000%E8%99%9A%E6%8B%9F%E7%94%A8%E6%88%B7_%E2%98%86_%E2%98%86_%E2%98%86_%E2%98%86_%E2%98%86\"><\/span>\u6848\u4f8b15: \u521b\u5efawww-ans\u7528\u6237uid2000\u865a\u62df\u7528\u6237 \u2606 \u2606 \u2606 \u2606 \u2606<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all -m user -a 'name=www-ans uid=2000 shell=\/sbin\/nologin create_home=no state=present'<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B16_%E6%89%B9%E9%87%8F%E6%9B%B4%E6%96%B0%E5%AF%86%E7%A0%81\"><\/span>\u6848\u4f8b16: \u6279\u91cf\u66f4\u65b0\u5bc6\u7801<span class=\"ez-toc-section-end\"><\/span><\/h5><p>#\u65b9\u6cd501 user\u6a21\u5757<\/p><p>\u4e0b\u9762\u547d\u4ee4\u53ef\u4ee5\u66f4\u65b0\u5bc6\u7801,\u5bc6\u7801\u4e3a1.<\/p><p><code>ansible all \u00a0-m user -a \"name=lidao996 password={{ '1' | password_hash('sha512', 'lidao') }} state=present\"<\/code><\/p><p>#\u65b9\u6cd502<\/p><p><code>ansible all -m shell -a 'echo 1 |passwd --stdin lidao996'<\/code><\/p><p>#\u5176\u4ed6\u65b9\u6cd5<\/p><p><a href=\"https:\/\/docs.ansible.com\/ansible\/latest\/reference_appendices\/faq.html#how-do-i-generate-encrypted-passwords-for-the-user-module\">ansible\u5b98\u7f51user\u6a21\u5757\u5e2e\u52a9<\/a><\/p><p><strong>\u5173\u4e8e{{}}\u76f8\u5173\u7684\u89e3\u91ca {{ }} \u683c\u5f0f\u7528\u4e8e\u5728ansible\u8c03\u7528\u53d8\u91cf,$PATH oldboy=666 echo $oldboy {{ &#8216;1&#8217; | password_hash(&#8216;sha512&#8217;, &#8216;lidao&#8217;) }} \u8868\u793a1\u662f\u5bc6\u7801,\u7ecf\u8fc7\u7ba1\u9053,\u4f20\u9012\u7ed9\u4e86password_hash()\u63d2\u4ef6, sha512\u52a0\u5bc6\u7b97\u6cd5,lidao\u662f\u968f\u673a\u5b57\u7b26\u7528\u4e8e\u751f\u6210\u968f\u673a\u52a0\u5bc6\u540e\u7684\u5bc6\u7801.<\/strong><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B17%EF%BC%9A%E6%89%B9%E9%87%8F%E6%B7%BB%E5%8A%A0%E7%94%A8%E6%88%B7lidao%E5%B9%B6%E6%A3%80%E6%9F%A5%E6%98%AF%E5%90%A6%E6%B7%BB%E5%8A%A0%E6%88%90%E5%8A%9F\"><\/span>\u6848\u4f8b17\uff1a\u6279\u91cf\u6dfb\u52a0\u7528\u6237lidao\u5e76\u68c0\u67e5\u662f\u5426\u6dfb\u52a0\u6210\u529f<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible all \u00a0-m user -a 'name=lidao state=present'<\/code><\/p><p><code>ansible all \u00a0 -a \u00a0'id lidao'<\/code><\/p><p>\u6dfb\u52a0\u865a\u62df\u7528\u6237 web_www 2999<\/p><p>ansible web -m user \u00a0-a &#8216;name=web_www uid=2999<\/p><p>shell=\/sbin\/nologin\u00a0 create_home=no\u00a0 state=present &#8216;<\/p><p>ansible web -a &#8216;id_web_www&#8217;<\/p><p>ansible web -a &#8216;grep &#8220;web_www&#8221; \/etc\/passwd&#8217;<\/p><h4><span class=\"ez-toc-section\" id=\"b_group%E6%A8%A1%E5%9D%97\"><\/span><b>b) group<\/b><b>\u6a21\u5757<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1843\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/group\u6a21\u5757.png\" alt=\"\" width=\"784\" height=\"234\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/group\u6a21\u5757.png 784w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/group\u6a21\u5757-300x90.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/group\u6a21\u5757-768x229.png 768w\" sizes=\"(max-width: 784px) 100vw, 784px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"6_cron%E6%A8%A1%E5%9D%97\"><\/span><b>6) cron<\/b><b>\u6a21\u5757<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u4f5c\u7528:\u7528\u4e8e\u7ba1\u7406\u7cfb\u7edf\u7684\u5b9a\u65f6\u4efb\u52a1.<\/p><p>\u66ff\u4ee3\u4e86crontab -e\u6216vi \/var\/spool\/cron\/xxx\u7528\u6237\u529f\u80fd.<\/p><p>\u5173\u4e8ecrontab -e\u540e\u7684\u5206\u65f6\u65e5\u6708\u661f\u671f*****\uff1a\u5728\u6a21\u5757\u4e2d\u54ea\u4e2a\u4f7f\u7528\u5199*\/n\u5373\u53ef,\u4e0d\u7528\u7684\u4e0d\u5199<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1844\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/cron\u6a21\u5757.png\" alt=\"\" width=\"1165\" height=\"513\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/cron\u6a21\u5757.png 1165w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/cron\u6a21\u5757-300x132.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/cron\u6a21\u5757-1024x451.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/cron\u6a21\u5757-768x338.png 768w\" sizes=\"(max-width: 1165px) 100vw, 1165px\" \/><\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1845\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u5b9a\u65f6\u4efb\u52a1\u6a21\u5757\u8bb2\u89e3.png\" alt=\"\" width=\"1222\" height=\"1154\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5b9a\u65f6\u4efb\u52a1\u6a21\u5757\u8bb2\u89e3.png 1222w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5b9a\u65f6\u4efb\u52a1\u6a21\u5757\u8bb2\u89e3-300x283.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5b9a\u65f6\u4efb\u52a1\u6a21\u5757\u8bb2\u89e3-1024x967.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5b9a\u65f6\u4efb\u52a1\u6a21\u5757\u8bb2\u89e3-768x725.png 768w\" sizes=\"(max-width: 1222px) 100vw, 1222px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B18_%E6%AF%8F%E5%88%86%E9%92%9F%E8%BE%93%E5%87%BAoldboy%E5%86%99%E5%85%A5%E5%88%B0tmpoldboytxt\"><\/span>\u6848\u4f8b18: \u6bcf\u5206\u949f\u8f93\u51faoldboy\u5199\u5165\u5230\/tmp\/oldboy.txt<span class=\"ez-toc-section-end\"><\/span><\/h5><p>#\u521b\u5efa\u5b9a\u65f6\u4efb\u52a1<\/p><p><code>ansible all -m cron -a 'name=\"2.echo oldboy\" \u00a0job=\"echo oldboy &amp;&gt;&gt;\/tmp\/oldboy.txt\" state=present \u00a0'<\/code><\/p><p>#\u5220\u9664\u5b9a\u65f6\u4efb\u52a1<\/p><p><code>ansible all -m cron -a 'name=\"2.echo oldboy\" \u00a0state=absent '<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"7_mount%E6%A8%A1%E5%9D%97\"><\/span><b>7) mount<\/b><b>\u6a21\u5757<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u5b9e\u73b0mount\u547d\u4ee4\u8fdb\u884c\u6302\u8f7d;\u8fd8\u53ef\u4ee5\u4fee\u6539\/etc\/fstab\u5b9e\u73b0\u6c38\u4e45\u6302\u8f7d.<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1846\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/mount\u6a21\u5757.png\" alt=\"\" width=\"1197\" height=\"717\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/mount\u6a21\u5757.png 1197w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/mount\u6a21\u5757-300x180.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/mount\u6a21\u5757-1024x613.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/mount\u6a21\u5757-768x460.png 768w\" sizes=\"(max-width: 1197px) 100vw, 1197px\" \/><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B17_%E6%8C%82%E8%BD%BDnfs01%E5%B7%B2%E6%9C%89%E7%9A%84%E5%85%B1%E4%BA%AB%E7%9B%AE%E5%BD%95%E5%88%B0web01%E4%B8%8A%E7%9A%84mnt%E4%B8%8B\"><\/span>\u6848\u4f8b17: \u6302\u8f7dnfs01\u5df2\u6709\u7684\u5171\u4eab\u76ee\u5f55\u5230web01\u4e0a\u7684\/mnt\u4e0b.<span class=\"ez-toc-section-end\"><\/span><\/h5><p><code>ansible web \u00a0 -m mount \u00a0-a 'fstype=nfs src=172.16.1.31:\/data\/ path=\/mnt\/ state=mounted'<\/code><\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B18_%E9%80%9A%E8%BF%87ans%E7%AE%A1%E7%90%86%E5%9C%A8web01%E4%B8%8A%E6%8C%82%E8%BD%BDnfs_data%E6%8C%82%E8%BD%BD%E5%88%B0web01%E7%9A%84ans-upload\"><\/span>\u6848\u4f8b18:\u901a\u8fc7ans\u7ba1\u7406\u5728web01\u4e0a\u6302\u8f7dnfs:\/data\u6302\u8f7d\u5230web01\u7684\/ans-upload\/<span class=\"ez-toc-section-end\"><\/span><\/h5><p>nfs\u670d\u52a1\u7aef:172.16.1.31 \/ans-data\/<\/p><p>web01:\u5ba2\u6237\u7aef \/ans-upload\/<\/p><p>\u68b3\u7406\u6e05\u695a\u670d\u52a1\u7684\u4f7f\u7528\u6d41\u7a0b.<\/p><p>#\u81ea\u52a8\u5316\u7b2c1\u4e2a\u91cc\u7a0b\u7891-\u68b3\u7406\u670d\u52a1\u7684\u4f7f\u7528\u6d41\u7a0b.\u670d\u52a1\u7aef\u4e0e\u5ba2\u6237\u7aef.<\/p><p>#\u670d\u52a1\u7aef172.16.1.31<\/p><ol><li>\u00a0\u5b89\u88c5nfs<\/li><li>\u00a0\u914d\u7f6enfs<\/li><li>\u00a0\u521b\u5efa\u5171\u4eab\u76ee\u5f55\u5e76\u4fee\u6539\u6240\u6709\u8005 \/ans-data\/<\/li><li>\u00a0\u542f\u52a8(\u91cd\u542f)<\/li><\/ol><p>#\u5ba2\u6237\u7aef172.16.1.7<\/p><ol><li>\u00a0web \u5b89\u88c5nfs<\/li><li>\u00a0web \u521b\u5efa\u6302\u8f7d\u70b9 \/ans-upload\/<\/li><li>\u00a0web \u6302\u8f7d\u5e76\u6c38\u4e45\u6302\u8f7d<\/li><\/ol><p>\u628a\u6d41\u7a0b\u8f6c\u6362\u4e3a\u5bf9\u5e94\u7684\u6a21\u5757.<\/p><pre>1. \u5b89\u88c5nfs<br \/><code>ansible nfs -m yum -a 'name=\"nfs-utils,rpcbind\" state=present'<\/code><br \/>2. \u914d\u7f6enfs\/etc\/exports<br \/>\u914d\u7f6e\u6587\u4ef6\u5185\u5bb9: \/ans-data\/ \u00a0 \u00a0172.16.1.0\/24(rw)<br \/><code>ansible nfs -m lineinfile -a 'path=\/etc\/exports\u00a0 line=\"\/ans-data\/ 172.16.1.0\/24(rw)\" '<\/code><br \/>#\u4fee\u6539\u914d\u7f6e\u4e5f\u53ef\u4ee5\u7528sed,cat,echo,copy.<br \/>3. \u521b\u5efa\u5171\u4eab\u76ee\u5f55\u5e76\u4fee\u6539\u6240\u6709\u8005 \/ans-data\/<br \/><code>ansible nfs -m file -a 'path=\/ans-data\/ owner=nfsnobody group=nfsnobody state=directory'<\/code><br \/>4. \u542f\u52a8(\u91cd\u542f)<br \/><code>ansible nfs -m systemd -a 'name=rpcbind enabled=yes state=restarted'<\/code><br \/><code>ansible nfs -m systemd -a 'name=nfs enabled=yes state=restarted'<\/code><br \/>#\u5ba2\u6237\u7aef172.16.1.7<br \/>1. web \u5b89\u88c5nfs<br \/><code>ansible web -m yum -a 'name=\"nfs-utils,rpcbind\" state=present'<\/code><br \/>2. web \u521b\u5efa\u6302\u8f7d\u70b9 \/ans-upload\/<br \/><code>ansible web -m file -a 'path=\/ans-upload\/ state=directory'<\/code><br \/>3. web \u6302\u8f7d\u5e76\u6c38\u4e45\u6302\u8f7d<br \/><code>ansible web -m mount -a 'src=\"172.16.1.31\/ans-data\/\" path=\"\/ans-upload\/\" fstype=nfs state=mounted '<\/code><\/pre><p><code><\/code><\/p><h3><span class=\"ez-toc-section\" id=\"6ansible%E6%A8%A1%E5%9D%97%E5%B0%8F%E7%BB%93\"><\/span><a href=\"https:\/\/www.processon.com\/view\/link\/64783f6097dfee0f88662081\"><b>6)ansible\u6a21\u5757\u5c0f\u7ed3<\/b><\/a><span class=\"ez-toc-section-end\"><\/span><\/h3><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1847\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/ans\u6a21\u5757\u5c0f\u7ed3.png\" alt=\"\" width=\"1028\" height=\"1136\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ans\u6a21\u5757\u5c0f\u7ed3.png 1028w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ans\u6a21\u5757\u5c0f\u7ed3-271x300.png 271w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ans\u6a21\u5757\u5c0f\u7ed3-927x1024.png 927w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ans\u6a21\u5757\u5c0f\u7ed3-768x849.png 768w\" sizes=\"(max-width: 1028px) 100vw, 1028px\" \/><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2e681e1 elementor-widget elementor-widget-text-editor\" data-id=\"2e681e1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span class=\"ez-toc-section\" id=\"21_%E7%9B%AE%E6%A0%87\"><\/span><b>2.1 <\/b><b>\u76ee\u6807<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2><p>\u6700\u7ec8:\u6839\u636e\u670d\u52a1\u4f7f\u7528\u6d41\u7a0b,\u4e66\u5199\u51fa\u5bf9\u5e94\u7684\u5267\u672c.<\/p><p>\u4e66\u5199\u5e38\u89c1\u670d\u52a1\u5267\u672c:rsync,nfs,lsyncd,\u4fee\u6539\u5b9a\u65f6\u4efb\u52a1,\u4fee\u6539sshd_config.<\/p><p>\u4e66\u5199\u5267\u672c\u7684\u65f6\u5019\u4f7f\u7528\u51e0\u79cd\u5e38\u89c1\u7684ansible\u53d8\u91cf.<\/p><h2><span class=\"ez-toc-section\" id=\"22_%E5%89%A7%E6%9C%AC\"><\/span><b>2.2 <\/b><b>\u5267\u672c<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2><p>\u5267\u672c: \u6279\u91cf\u7ba1\u7406\u4f7f\u7528<\/p><p>playbook \u6587\u4ef6,\u7528\u4e8e\u957f\u4e45\u4fdd\u5b58\u5e76\u4e14\u5b9e\u73b0\u6279\u91cf\u7ba1\u7406,\u7ef4\u62a4,\u90e8\u7f72\u7684\u6587\u4ef6. \u7c7b\u4f3c\u4e8e\u811a\u672c\u5b58\u653e\u547d\u4ee4\u548c\u53d8\u91cf,\u5267\u672c\u4e2d\u5b58\u653e\u7684\u65f6\u5019?\u6a21\u5757\u00a0<\/p><p>\u5267\u672cyaml\u683c\u5f0f,yaml\u683c\u5f0f\u7684\u6587\u4ef6: \u7a7a\u683c,\u5192\u53f7.<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1795\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u548c\u547d\u4ee4\u533a\u522b.png\" alt=\"\" width=\"1835\" height=\"330\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u548c\u547d\u4ee4\u533a\u522b.png 1835w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u548c\u547d\u4ee4\u533a\u522b-300x54.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u548c\u547d\u4ee4\u533a\u522b-1024x184.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u548c\u547d\u4ee4\u533a\u522b-768x138.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u548c\u547d\u4ee4\u533a\u522b-1536x276.png 1536w\" sizes=\"(max-width: 1835px) 100vw, 1835px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"%E5%89%A7%E6%9C%AC%E4%B9%A6%E5%86%99%E6%A0%BC%E5%BC%8F%EF%BC%9A\"><\/span>\u5267\u672c\u4e66\u5199\u683c\u5f0f\uff1a<span class=\"ez-toc-section-end\"><\/span><\/h3><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1796\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u683c\u5f0f.png\" alt=\"\" width=\"1821\" height=\"832\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u683c\u5f0f.png 1821w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u683c\u5f0f-300x137.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u683c\u5f0f-1024x468.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u683c\u5f0f-768x351.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5267\u672c\u683c\u5f0f-1536x702.png 1536w\" sizes=\"(max-width: 1821px) 100vw, 1821px\" \/><\/p><p>\u5267\u672c\u6838\u5fc3\u6982\u5ff5:<\/p><p><b>\u89d2\u8272 <\/b><b>play <\/b><b>\u901a\u8fc7<\/b><b>hosts<\/b><b>\u90e8\u5206\u6307\u5b9a\u7684 <\/b><b>(<\/b><b>\u6307\u5b9a\u4f60\u8981\u7ba1\u7406\u7684\u4e3b\u673a<\/b><b>(<\/b><b>\u4e3b\u673a\u6e05\u5355\u91cc\u9762\u7684<\/b><b>)<\/b><\/p><p>\u4efb\u52a1 tasks \u5177\u4f53\u8981\u6267\u884c\u7684\u6a21\u5757(\u6839\u636e\u4f60\u7684\u6b65\u9aa4\u8f6c\u6362)<\/p><p>\u6a21\u5757(\u6839\u636e\u4f60\u7684\u64cd\u4f5c\u6d41\u7a0b,\u6b65\u9aa4\u9009\u62e9\u6a21\u5757)<\/p><p>#1. \u4e66\u5199\u5267\u672c \u6ce8\u610f\u4ee5.yml\u6216.yaml\u7ed3\u5c3e<\/p><p>cat 01.show.yml<\/p><pre>- hosts: all<br \/>tasks:<br \/>  \u00a0- name: 01 \u6253\u5f00\u51b0\u7bb1\u95e8<br \/>  \u00a0 shell: echo 01 &gt;&gt; \/tmp\/bingxiang.log<br \/>  \u00a0- name: 02 \u628a\u5927\u8c61\u653e\u5165\u51b0\u7bb1<br \/>  \u00a0 shell: echo 02 &gt;&gt; \/tmp\/bingxiang.log<br \/>  \u00a0- name: 03 \u5173\u4e0a\u51b0\u7bb1\u7684\u95e8<br \/>\u00a0 \u00a0 shell: echo 03 &gt;&gt;\/tmp\/bingxiang.log<\/pre><p>#2. \u6267\u884c\u5267\u672c \u00a0<\/p><p><code>ansible-playbook -i hosts 01.show.yml<\/code><\/p><p>\u6267\u884c\u7684\u65f6\u5019\u6709\u5976\u725b:\ud83d\udc2e<\/p><p>\u53ef\u4ee5\u5220\u9664\u8f6f\u4ef6\u6216\u4fee\u6539ansible.cfg\u914d\u7f6e\u8fdb\u884c\u5173\u95ed #nocows = 1\u53bb\u6389\u6ce8\u91ca\u5373\u53ef<\/p><h3><span class=\"ez-toc-section\" id=\"%E4%B9%A6%E5%86%99Ans_playbook%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9_%E2%98%86_%E2%98%86_%E2%98%86_%E2%98%86_%E2%98%86\"><\/span>\u4e66\u5199Ans playbook\u6ce8\u610f\u4e8b\u9879:\u2606 \u2606 \u2606 \u2606 \u2606<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u540c\u4e00\u4e2a\u5c42\u7ea7\u7684\u5185\u5bb9\u5bf9\u9f50\u7684.<\/p><p>\u4e0d\u540c\u5c42\u7ea7\u7684\u901a\u8fc72\u4e2a\u7a7a\u683c\u5bf9\u9f50<\/p><p>\u4e0d\u80fd\u4f7f\u7528tab\u952e<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5782397 elementor-widget elementor-widget-text-editor\" data-id=\"5782397\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h4><span class=\"ez-toc-section\" id=\"Ansible%E5%89%A7%E6%9C%AC%E4%B8%AD%E6%A8%A1%E5%9D%97%E9%80%89%E9%A1%B9%E4%B9%A6%E5%86%99%E6%A0%BC%E5%BC%8F\"><\/span>Ansible\u5267\u672c\u4e2d\u6a21\u5757\u9009\u9879\u4e66\u5199\u683c\u5f0f:<span class=\"ez-toc-section-end\"><\/span><\/h4><pre> - name: 01 \u521b\u5efa\u76ee\u5f55<br \/>  \u00a0file:<br \/>  \u00a0 \u00a0 path: \/server\/files\/<br \/>\u00a0 \u00a0 \u00a0 state: directory<\/pre><pre>-\u00a0 name: 01 \u521b\u5efa\u76ee\u5f55<br \/>  \u00a0file:path=\/server\/files\/ \u00a0state=directory<\/pre><h4><span class=\"ez-toc-section\" id=\"%E4%B9%A6%E5%86%99%E5%89%A7%E6%9C%AC%E6%B5%81%E7%A8%8B%E5%B0%8F%E7%BB%93\"><\/span>\u4e66\u5199\u5267\u672c\u6d41\u7a0b\u5c0f\u7ed3:<span class=\"ez-toc-section-end\"><\/span><\/h4><ol><li>\u628a\u9700\u6c42\u8f6c\u6362\u6b65\u9aa4<\/li><li>\u6839\u636e\u6b65\u9aa4\u9009\u62e9\u5bf9\u5e94\u7684ansible\u6a21\u5757<\/li><li>\u4e66\u5199\u4e0e\u8c03\u8bd5\u5267\u672c ansible-playbook -i \u4e3b\u673a\u6e05\u5355\u6587\u4ef6 -C\u6a21\u62df\u8fd0\u884c<\/li><\/ol><h3><span class=\"ez-toc-section\" id=\"23_%E5%89%A7%E6%9C%AC%E6%A1%88%E4%BE%8B\"><\/span>2.3 \u5267\u672c\u6848\u4f8b<span class=\"ez-toc-section-end\"><\/span><\/h3><h4><span class=\"ez-toc-section\" id=\"1_%E6%A1%88%E4%BE%8B01_%E5%88%9B%E5%BB%BA%E7%9B%AE%E5%BD%95%E5%B9%B6%E5%88%86%E5%8F%91%E6%96%87%E4%BB%B6\"><\/span><b>1) <\/b><b>\u6848\u4f8b<\/b><b>01: <\/b><b>\u521b\u5efa\u76ee\u5f55\u5e76\u5206\u53d1\u6587\u4ef6<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u6b65\u9aa4:\u00a0 \u00a0<code>02.dist_file.yml<\/code><\/p><ol><li>\u00a0\u521b\u5efa\u76ee\u5f55\/server\/files\/<\/li><li>\u00a0\/etc\/hosts\u6587\u4ef6\u53d1\u9001\u8fc7\u53bb\/server\/files\/<\/li><\/ol><h4><span class=\"ez-toc-section\" id=\"2_%E6%A1%88%E4%BE%8B02_%E6%89%B9%E9%87%8F%E6%B7%BB%E5%8A%A0%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A103_xiu_cronyml\"><\/span><b>2) <\/b><b>\u6848\u4f8b<\/b><b>02: <\/b><b>\u6279\u91cf\u6dfb\u52a0\u5b9a\u65f6\u4efb\u52a103_xiu_cron.yml<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u9700\u6c42: \u6279\u91cf\u6dfb\u52a0\u6bcf2\u5206\u949f\u8f93\u51faoldboy\u5230\/tmp\/oldboy.txt<\/p><p>#\u8bf4\u660e\u6ce8\u91ca\u4fe1\u606f \u00a0 \u5b9a\u65f6\u8f93\u51fa &#8230;.<\/p><p><code>*\/2 * * * * echo oldboy\u00a0 \u00a0&gt;&gt;\/tmp\/oldboy.txt\u00a0 \u00a02&gt;&amp;1<\/code><\/p><h4><span class=\"ez-toc-section\" id=\"3_%E6%A1%88%E4%BE%8B03_%E9%83%A8%E7%BD%B2nfs%E6%9C%8D%E5%8A%A1%E5%B9%B6%E8%AE%BE%E7%BD%AEweb%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%8C%82%E8%BD%BD\"><\/span><b>3) <\/b><b>\u6848\u4f8b<\/b><b>03: \u90e8\u7f72nfs<\/b><b>\u670d\u52a1\u5e76\u8bbe\u7f6eweb\u670d\u52a1\u5668\u6302\u8f7d<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u670d\u52a1\u90e8\u7f72\u7c7b\u5267\u672c:\u00a0 \u670d\u52a1\u7aef\u4e0e\u5ba2\u6237\u7aef<\/p><p>\u8981\u6c42:<\/p><p>nfs\u670d\u52a1\u7aef:\u5728nfs\u4e0a\u90e8\u7f72nfs\u670d\u52a1,\u5171\u4eab\/nfs\/ans\/\u76ee\u5f55,all_squash,\u533f\u540d\u7528\u6237:www-ans uid 2999 2999<\/p><p>nfs\u5ba2\u6237\u7aef:web\u6302\u8f7d \/app\/web\/ans-upload\/\u76ee\u5f55\u6302\u8f7dnfs\u670d\u52a1\u7aef\u5171\u4eab\u7684\/nfs\/ans(\u6c38\u4e45\u6302\u8f7d)<\/p><p>\u7b2c1\u4e2a\u91cc\u7a0b\u7891-\u5217\u51fa\u6d41\u7a0b<\/p><p>\u670d\u52a1\u7aef\u6d41\u7a0b: nfs<\/p><ol><li>yum\u5b89\u88c5nfs-utils,rpcbind<\/li><li>lineinfile\u4fee\u6539\u914d\u7f6e\u6587\u4ef6 <code>\/nfs\/ans\/ 172.16.1.0\/24 (rw,all_squash,anonuid=2999,anongid=2999)<\/code><\/li><li>user\u6dfb\u52a0www-ans,uid 2999\uff08\u5148\u6dfb\u52a0group\uff0c\u518d\u6dfb\u52a0user\uff09<\/li><li>file\u521b\u5efa\u5171\u4eab\u76ee\u5f55\u5e76\u6539\u6240\u6709\u8005<\/li><li>systemd\u542f\u52a8\u670d\u52a1rpcbind,nfs(\u6ce8\u610f\u987a\u5e8f)\uff08\u4e00\u4e2a\u4e00\u4e2a\u542f\u52a8\uff09<\/li><\/ol><p>\u5ba2\u6237\u7aef\u6d41\u7a0b: web<\/p><ol><li>yum\u5b89\u88c5nfs-utils<\/li><li>mount\u6302\u8f7d\u4e0e\u6c38\u4e45\u6302\u8f7d<\/li><\/ol><p>\u7b2c2\u4e2a\u91cc\u7a0b\u7891-\u6839\u636e\u6b65\u9aa4\u6d41\u7a0b \u2192\u6a21\u5757<\/p><p>\u7b2c3\u4e2a\u91cc\u7a0b\u7891-\u4e66\u5199\u5267\u672c<\/p><p>\u600e\u4e48\u80fd\u591f\u4ece\u6307\u5b9a\u4f4d\u7f6e\u5f00\u59cb\u8fd0\u884c\uff0c\u4e00\u822c\u7528\u4e8e\u8c03\u8bd5\uff0c\u540e\u9762\u6307\u5b9a\u8fd9\u4e00\u9879\u4efb\u52a1\u7684\u540d\u5b57\uff08\u9002\u7528\u4e8e\u524d\u9762\u6210\u529f\u8dd1\u4e86\u5927\u90e8\u5206\u7684\u6d41\u7a0b\uff0c\u540e\u51e0\u6b65\u51fa\u9519\u7684\u60c5\u51b5\uff09<\/p><p>ansible-playbook &#8211;start-at-task\u00a0 &#8220;3.\u6302\u8f7d\u4e0e\u6c38\u4e45\u6302\u8f7d&#8221; 04_nfs_srv_cli.yml<\/p><p>\u89e3\u51b3\u914d\u7f6e\u6587\u4ef6\u91cd\u590d\u5199\u5165\u7684\u95ee\u9898\uff1a<\/p><ol><li>\u4f7f\u7528lineinfile\u7684\u6b63\u5219\u5339\u914d\u5df2\u7ecf\u5199\u5165\u7684\u884c\uff0c\u5982\u679c\u6ca1\u6709\u4f1a\u81ea\u52a8\u8ffd\u52a0<\/li><li>\u4f7f\u7528copy\u6a21\u5757\u5c06\u672c\u5730\u5199\u597d\u7684\u914d\u7f6e\u6587\u4ef6\u5206\u53d1\u5230\u9700\u8981\u7684\u673a\u5668<\/li><\/ol><h3><span class=\"ez-toc-section\" id=\"24_%E9%A1%B9%E7%9B%AE%E5%B0%8F%E7%BB%93\"><\/span><b>2.4 <\/b><b>\u9879\u76ee\u5c0f\u7ed3 <\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u7406\u6e05\u670d\u52a1\u4f5c\u7528,\u670d\u52a1\u4f7f\u7528\u6d41\u7a0b.<\/p><p>\u4e66\u5199\u5267\u672c\u6838\u5fc3: \u5217\u51fa\u6b65\u9aa4 \u2192\u6839\u636e\u6b65\u9aa4\u627e\u51fa\u6a21\u5757<\/p><p>\u4e66\u5199\u5267\u672c.<\/p><p>\u4e66\u5199\u5267\u672c\u524d\u62cd\u6444\u5feb\u7167,\u8fb9\u4e66\u5199\u5267\u672c\u8fb9\u6d4b\u8bd5,\u6700\u540e\u6d4b\u8bd5\u5b8c\u6210,\u6062\u590d\u5feb\u7167,\u91cd\u65b0\u8dd1\u4e00\u6b21.(\u5206\u6b65\u6d4b\u8bd5,\u8054\u5408\u6d4b\u8bd5)<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1865\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/NFS\u5267\u672c\u5b9e\u73b0\u6548\u679c.png\" alt=\"\" width=\"2494\" height=\"1206\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/NFS\u5267\u672c\u5b9e\u73b0\u6548\u679c.png 2494w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/NFS\u5267\u672c\u5b9e\u73b0\u6548\u679c-300x145.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/NFS\u5267\u672c\u5b9e\u73b0\u6548\u679c-1024x495.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/NFS\u5267\u672c\u5b9e\u73b0\u6548\u679c-768x371.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/NFS\u5267\u672c\u5b9e\u73b0\u6548\u679c-1536x743.png 1536w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/NFS\u5267\u672c\u5b9e\u73b0\u6548\u679c-2048x990.png 2048w\" sizes=\"(max-width: 2494px) 100vw, 2494px\" \/><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1dfbad9 elementor-widget elementor-widget-text-editor\" data-id=\"1dfbad9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3><span class=\"ez-toc-section\" id=\"26_Ansible%E4%B8%AD%E7%9A%84%E5%8F%98%E9%87%8F%E2%80%93%E6%80%9D%E7%BB%B4%E5%AF%BC%E5%9B%BE\"><\/span><a href=\"https:\/\/www.processon.com\/view\/link\/64783f6097dfee0f88662081\"><b>2.6 Ansible<\/b><b>\u4e2d\u7684\u53d8\u91cf<\/b><b>&#8211;\u601d\u7ef4\u5bfc\u56fe<\/b><\/a><span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u53d8\u91cf\u65e0\u5904\u4e0d\u5728,\u5728ans\u4e2d\u5927\u90e8\u5206\u5730\u65b9\u90fd\u53ef\u4ee5\u5b9a\u4e49\u53d8\u91cf.<\/p><p>\u6bd4\u8f83\u5e38\u7528\u7684\u521b\u5efa\u53d8\u91cf\u7684\u5730\u65b9:\u5267\u672c\u4e2d,\u7c7b\u4f3c\u4e8e &#8220;\u529f\u80fd,\u5171\u7528\u7684\u53d8\u91cf\u6587\u4ef6.<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1816\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf.png\" alt=\"\" width=\"1826\" height=\"768\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf.png 1826w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf-300x126.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf-1024x431.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf-768x323.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf-1536x646.png 1536w\" sizes=\"(max-width: 1826px) 100vw, 1826px\" \/><\/p><h4><span class=\"ez-toc-section\" id=\"1_%E5%89%A7%E6%9C%AC%E4%B8%AD%E4%BD%BF%E7%94%A8%E5%8F%98%E9%87%8F%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\"><\/span><b>1) <\/b><b>\u5267\u672c\u4e2d\u4f7f\u7528\u53d8\u91cf<\/b>\u2b50\u2b50\u2b50\u2b50\u2b50<span class=\"ez-toc-section-end\"><\/span><\/h4><p>ansible \u53d8\u91cf\u547d\u540d\u89c4\u5219:<\/p><ol><li>\u4e0eshell\u7c7b\u4f3c,\u4e0d\u80fd\u4ee5\u6570\u5b57\u5f00\u5934.<\/li><li>\u53d8\u91cf\u4e2d\u4ec5\u5305\u542b_\u4e0b\u5212\u7ebf\u5373\u53ef.\u4e0d\u8981\u5305\u542b\u5176\u4ed6\u7279\u6b8a\u7b26\u53f7\uff08\u5982-\u51cf\u53f7\uff09.<\/li><\/ol><p>\u6279\u91cf\u521b\u5efa\/server\/ans-test\/test.txt<\/p><pre>vars : variables \u53d8\u91cf\u7684\u5185\u5bb9,\u53d8\u91cf.\n[root@m01 \/server\/scripts\/ansible]# cat 05_play_vars.yml \n---\n- hosts: all\nvars: \n  dir: \/server\/ans-test\/\n  file: test.txt\ntasks: \n- name: mkdir\n  file: \n    path: \"{{ dir }}\" #\u7c7b\u4f3c\u4e8edir\uff0c\u5f53\u53d8\u91cf\u4f5c\u4e3a\u5f00\u5934\u5c31\u8981\u52a0\u4e0a\u5355\/\u53cc\u5f15\u53f7\"\"\n    state: directory\n- name: touch\n  file: \n    path: \"{{ dir }}{{ file }}\"\n    state: touch<\/pre><h5><span class=\"ez-toc-section\" id=\"Ansible%E9%80%89%E9%A1%B9\"><\/span>Ansible\u9009\u9879:<span class=\"ez-toc-section-end\"><\/span><\/h5><p>ansible-playbook -i \u6307\u5b9a\u4e3b\u673a\u6e05\u5355<\/p><p>-C \u6a21\u62df\u8fd0\u884c\u5267\u672c\u5e76\u4e0d\u4f1a\u771f\u7684\u8fd0\u884c. \u5982\u679c\u8981\u771f\u7684\u8fd0\u884c\u5267\u672c\u53bb\u6389-C<\/p><p>\u26a0 \u6e29\u99a8\u63d0\u793a:<\/p><p>\u4f7f\u7528\u53d8\u91cf\u7684\u65f6\u5019\u5982\u679c\u53d8\u91cf\u662f\u67d0\u4e2a\u9009\u9879\u7684\u5f00\u5934,\u5219\u53d8\u91cf\u5f15\u7528\u7684\u65f6\u5019\u9700\u8981\u52a0\u4e0a\u53cc\u5f15\u53f7.<\/p><pre>dir: \/oldboy\/lidao\/upload\/\nfile:\npath: \"{{ dir }}\" \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0#\u8fd9\u79cd\u8981\u6dfb\u52a0,\u53d8\u91cf\u662f\u5f00\u5934.\nfile:\npath: \/oldboy-new\/{{ dir }} \u00a0#\u8fd9\u79cd\u53ef\u4ee5\u4e0d\u52a0\u5f15\u53f7,\u53d8\u91cf\u4e0d\u662f\u5f00\u5934.<\/pre><p>\u5728\u5267\u672cplay\u4e2d\u5b9a\u4e49\u53d8\u91cf\u5e94\u7528:<\/p><ol><li>\u4ec5\u4ec5\u5728\u5f53\u524dplay\u751f\u6548.<\/li><li>\u4e00\u822c\u7528\u6765\u5b58\u653e\u8def\u5f84,\u7528\u6237\u540d,ip\u5730\u5740,\u7c7b\u4f3c\u4e8e\u4e4b\u524d\u4f7f\u7528\u7684\u811a\u672c.<\/li><li>\u6ce8\u610f\u5f15\u53f7\u4f7f\u7528.<\/li><\/ol><h5><span class=\"ez-toc-section\" id=\"%E5%B0%8F%E7%BB%93\"><\/span>\u5c0f\u7ed3:<span class=\"ez-toc-section-end\"><\/span><\/h5><p>\u4f18\u52bf:\u4f7f\u7528\u7b80\u5355,\u5728\u5267\u672c\u5f00\u5934(play\u548ctasks\u4e4b\u95f4)\u521b\u5efa\u5373\u53ef.<\/p><p>\u7f3a\u70b9:\u53ea\u80fd\u5728\u5f53\u524d\u7684play\u4e2d\u751f\u6548,\u5176\u4ed6play\u4e2d\u8981\u4f7f\u7528\u53d8\u91cf,\u9700\u8981\u91cd\u65b0\u5b9a\u4e49.<\/p><p>\u4f7f\u7528\u5efa\u8bae: \u7b80\u5355\u5267\u672c,\u53ea\u67091\u4e2aplay\u53ef\u4ee5\u4f7f\u7528.(\u4e00\u4e2ahosts\u90e8\u5206)<\/p><h4><span class=\"ez-toc-section\" id=\"2_%E5%85%B1%E7%94%A8%E5%8F%98%E9%87%8F%E2%80%93%E5%8F%98%E9%87%8F%E6%96%87%E4%BB%B6\"><\/span><b>2) <\/b><b>\u5171\u7528\u53d8\u91cf<\/b><b>&#8211;<\/b><b>\u53d8\u91cf\u6587\u4ef6<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u901a\u8fc7vars_files\u6307\u5b9a\u53d8\u91cf\u6587\u4ef6.<\/p><pre>[root@m01 \/server\/scripts\/ansible]# cat vars.yml\n#\u6240\u6709\u670d\u52a1\u5668\u4f7f\u7528\ndir: \/server\/ans-test\/\nfile: test02.txt<\/pre><pre>[root@m01 \/server\/playbooks]# cat 06_play_vars_files.yml\n\n---\n- hosts: all\nvars_files: .\/vars_files.yml\ntasks:\n  \u00a0- name: 01.mkdir\n  \u00a0 file:\n  \u00a0 \u00a0 path: '{{ dir }}'\n  \u00a0 \u00a0 state: directory\n  \u00a0- name: 02.touch\n  \u00a0 file:\n  \u00a0 \u00a0 path: '{{ dir }}\/{{ file }}'\n\u00a0 \u00a0 \u00a0 state: touch<\/pre><h5><span class=\"ez-toc-section\" id=\"%E5%B0%8F%E7%BB%93-2\"><\/span>\u5c0f\u7ed3:<span class=\"ez-toc-section-end\"><\/span><\/h5><p>\u4f18\u70b9:\u76f8\u5bf9\u4e8evars\u65b9\u6cd5,\u901a\u8fc7vars_files\u6307\u5b9a\u5171\u4eab\u53d8\u91cf\u6587\u4ef6.<\/p><p>\u7f3a\u70b9:\u6bcf\u6b21\u4f7f\u7528\u8fd8\u9700\u8981\u5728Play\u4e2d\u6307\u5b9avars_files<\/p><p>\u4f7f\u7528\u5efa\u8bae,\u80fd\u591f\u7406\u89e3\u53d8\u91cf\u6587\u4ef6\u4f5c\u7528\u5373\u53ef,\u4e00\u822c\u4f7f\u7528\u4e0b\u9762\u7684\u65b9\u6cd5.<\/p><h4><span class=\"ez-toc-section\" id=\"3_%E5%85%B1%E7%94%A8%E5%8F%98%E9%87%8F%E2%80%93%E6%A0%B9%E6%8D%AE%E4%B8%BB%E6%9C%BA%E7%BB%84%E4%BD%BF%E7%94%A8%E5%8F%98%E9%87%8F_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\"><\/span><b>3) <\/b><b>\u5171\u7528\u53d8\u91cf<\/b><b>&#8211;<\/b><b>\u6839\u636e\u4e3b\u673a\u7ec4\u4f7f\u7528\u53d8\u91cf <\/b>\u2b50\u2b50\u2b50\u2b50\u2b50<span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u8fd9\u79cd\u65b9\u6848\u7684\u672c\u8d28\u8fd8\u662f\u53d8\u91cf\u6587\u4ef6\uff0c\u4e0e\u4e0a\u65b9\u533a\u522b\u5c31\u5728\u591a\u4e86\u4e00\u4e2a\u7ec4\u7684\u529f\u80fd<\/p><p>group_vars\u6839\u636e\u4e3b\u673a\u6e05\u5355\u91cc\u7684\u5206\u7ec4\u53bb\u5339\u914d\u4e0d\u540c\u7684\u53d8\u91cf\u6587\u4ef6.<\/p><p>\u4e3b\u673a\u7ec4\u521b\u5efa\u53d8\u91cf\u6587\u4ef6.group_vars<\/p><p>\u907f\u514d\u51b2\u7a81\u4f7f\u7528group\u65b9\u6cd5\u5c31\u4e0d\u4f7f\u7528\u4e0a\u8ff0\u4e24\u79cd\u53d8\u91cf\u521b\u5efa\u65b9\u5f0f\uff0c\u9632\u6b62\u51b2\u7a81<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1818\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/groupvars\u53d8\u91cf\u56fe.png\" alt=\"\" width=\"1557\" height=\"688\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u53d8\u91cf\u56fe.png 1557w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u53d8\u91cf\u56fe-300x133.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u53d8\u91cf\u56fe-1024x452.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u53d8\u91cf\u56fe-768x339.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u53d8\u91cf\u56fe-1536x679.png 1536w\" sizes=\"(max-width: 1557px) 100vw, 1557px\" \/><\/p><pre>xxxx-check.yml\ngroup_vars\/\n  lb\/vars.yml \u00a0#\u5b58\u653elb\u7ec4\u7684\u53d8\u91cf\n  web\/vars.yml #\u5b58\u653eweb\u7ec4\u7684\u53d8\u91cf\n  data\/vars.yml #\u5b58\u653exxx\u7ec4\u7684\u53d8\u91cf\n  all\/vars.yml \u00a0#\u6240\u6709\u4e3b\u673a\u5171\u7528\u7684\u53d8\u91cf\n\u00a0<strong> \u672a\u6765\u4e00\u822c\u4f7f\u7528all\u5206\u7ec4\u5373\u53ef,\u628a\u6240\u6709\u53d8\u91cf\u5b58\u653e\u5728\u4e00\u8d77,\u4f9b\u5267\u672c\u4f7f\u7528.<\/strong><\/pre><p>\u76ee\u5f55\u7ed3\u6784\uff1a<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1819\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/groupvars\u76ee\u5f55\u7ed3\u6784.png\" alt=\"\" width=\"1298\" height=\"875\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u76ee\u5f55\u7ed3\u6784.png 1298w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u76ee\u5f55\u7ed3\u6784-300x202.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u76ee\u5f55\u7ed3\u6784-1024x690.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/groupvars\u76ee\u5f55\u7ed3\u6784-768x518.png 768w\" sizes=\"(max-width: 1298px) 100vw, 1298px\" \/><\/p><pre>[root@m01 \/server\/scripts\/ansible]# cat 07_group_vars_test.yml \n---\n- hosts: all\ntasks: \n- name: 1. \u521b\u5efa\u76ee\u5f55\nfile: \npath: \"{{ dir }}\"\nstate: directory\n- name: 2. \u6dfb\u52a0\u7528\u6237\nuser: \nname: \"{{ user }}\"\ncomment: www\u7528\u6237\ncreate_home: no\nshell: \/sbin\/nologin\nstate: present<\/pre><p>\u26a0\u6e29\u99a8\u63d0\u793a: group_vars\u5e94\u7528\u63d0\u793a<br \/>\u4e00\u822c\u4f7f\u7528group_vars\u4e2d\u7684all\u5206\u7ec4\u5373\u53ef<\/p><h4><span class=\"ez-toc-section\" id=\"4_%E5%8F%98%E9%87%8F%E5%AE%9A%E4%B9%89%E5%B0%8F%E7%BB%93%EF%BC%88%E9%80%9A%E7%94%A8%E5%8F%98%E9%87%8F%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95%EF%BC%89\"><\/span><b>4) <\/b><b>\u53d8\u91cf\u5b9a\u4e49\u5c0f\u7ed3\uff08\u901a\u7528\u53d8\u91cf\u4f7f\u7528\u65b9\u6cd5\uff09<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1820\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u53d8\u91cf\u5b9a\u4e49\u5c0f\u7ed3.png\" alt=\"\" width=\"1299\" height=\"210\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u53d8\u91cf\u5b9a\u4e49\u5c0f\u7ed3.png 1299w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u53d8\u91cf\u5b9a\u4e49\u5c0f\u7ed3-300x48.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u53d8\u91cf\u5b9a\u4e49\u5c0f\u7ed3-1024x166.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u53d8\u91cf\u5b9a\u4e49\u5c0f\u7ed3-768x124.png 768w\" sizes=\"(max-width: 1299px) 100vw, 1299px\" \/><\/p><h4><span class=\"ez-toc-section\" id=\"5_facts%E5%8F%98%E9%87%8F%EF%BC%88%E4%B8%8E%E4%B8%8B%E9%9D%A2%E7%9A%84%E4%B8%80%E6%A0%B7%E9%83%BD%E6%9C%89%E7%8B%AC%E7%89%B9%E7%9A%84%E4%BD%BF%E7%94%A8%E5%9C%BA%E6%99%AF%EF%BC%89\"><\/span><b>5) facts<\/b><b>\u53d8\u91cf\uff08\u4e0e\u4e0b\u9762\u7684\u4e00\u6837\u90fd\u6709\u72ec\u7279\u7684\u4f7f\u7528\u573a\u666f\uff09<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p><b>ans\u5185\u7f6e\u53d8\u91cf\uff0cans\u8fd0\u884c\u5267\u672c\u7684\u65f6\u5019\u4f1a\u6709\u4e00\u4e2a\u9ed8\u8ba4\u7684task\uff08Gathering Facts <\/b>:ansible\u6536\u96c6\u88ab\u7ba1\u7406\u7aef\u57fa\u672c\u4fe1\u606f.cpu,\u5185\u5b58,\u78c1\u76d8,\u7f51\u7edc,\u7cfb\u7edf.\u7b49\u8fd9\u4e2a\u4e3b\u673a\u7684\u5404\u79cd\u57fa\u672c\u4fe1\u606f\uff09\u8fd9\u4e9b\u57fa\u672c\u4fe1\u606f\u5c31\u79f0\u4e3afacts\u53d8\u91cf.facts\u53d8\u91cfsetup\u6a21\u5757\u83b7\u53d6<\/p><p>\u6211\u4eec\u5728\u5267\u672c\u4e2d\u4f7f\u7528facts\u53d8\u91cf,\u672a\u6765\u5982\u679c\u4e0d\u7528\u53ef\u4ee5\u5173\u95edgather facts\u529f\u80fd,\u52a0\u901f\u5267\u672c\u8fd0\u884c\u6548\u679c.<\/p><p><code>ansible all -m setup\u00a0 #\u4f7f\u7528setup\u6a21\u5757\u67e5\u770bfacts\u53d8\u91cf<\/code><\/p><pre><b>json\u5f62\u5f0f\uff0c\u5f00\u53d1\u6bd4\u8f83\u559c\u6b22<\/b>\n\"ansible_eth0\": {\n  \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\"active\": true,\n  \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\"device\": \"eth0\",  \u00a0 \u00a0  \u00a0  \n  \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\"hw_timestamp_filters\": [],\n  \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\"ipv4\": { \u00a0 \u00a0 \u00a0#\u53d6\u51fa\u8fd9\u4e2a\u4f7f\u7528\nansible_eth0.ipv4\n  \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\"address\": \"10.0.0.41\", \u00a0 \u00a0 #\u53d6\u51faip\n  ansible_eth0.ipv4.address\n  \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\"broadcast\": \"10.0.0.255\",\n  \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\"netmask\": \"255.255.255.0\",\n  \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\"network\": \"10.0.0.0\"\n  \u00a0 \u00a0 \u00a0 \u00a0 }, \u00a0\n\n\u5e38\u7528fact\u53d8\u91cf\nansible_hostname \u00a0 #\u4e3b\u673a\u540d\nansible_memtotal_mb #\u5185\u5b58\u5927\u5c0f(\u603b\u8ba1) \u5355\u4f4dmb\nansible_processor_vcpus \u00a0 \u00a0 \u00a0 \u00a0#cpu\u6838\u5fc3\u6570\u91cf\nansible_default_ipv4.address \u00a0 #\u9ed8\u8ba4\u7684\u7f51\u5361ip eth0\nansible_distribution \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 #\u7cfb\u7edf\u53d1\u884c\u7248\u672c\u540d\u5b57 CentOS Ubuntu Debian\nansible_distribution_version \u00a0 #\u7cfb\u7edf\u7684\u7248\u672c\nansible_date_time.date<\/pre><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B_%E8%BE%93%E5%87%BA%E5%B8%B8%E7%94%A8%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF%E5%88%B0%E5%B1%8F%E5%B9%95%E7%B3%BB%E7%BB%9F%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF%E5%86%99%E5%85%A5%E5%88%B0etcmotd%E4%B8%AD%EF%BC%9A%E4%BD%BF%E7%94%A8debug%E6%A8%A1%E5%9D%97%E8%B0%83%E8%AF%95%E8%BE%93%E5%87%BA%E7%B1%BB%E4%BC%BCecho\"><\/span>\u6848\u4f8b \u8f93\u51fa\u5e38\u7528\u57fa\u672c\u4fe1\u606f\u5230\u5c4f\u5e55,\u7cfb\u7edf\u57fa\u672c\u4fe1\u606f\u5199\u5165\u5230\/etc\/motd\u4e2d.\uff1a\u4f7f\u7528debug\u6a21\u5757\u8c03\u8bd5\u8f93\u51fa(\u7c7b\u4f3cecho)<span class=\"ez-toc-section-end\"><\/span><\/h5><pre>- hosts: all\ntasks:\n  \u00a0- name: \u8c03\u8bd5\u53d8\u91cf\n  \u00a0 debug:\n  \u00a0 \u00a0 msg: |\n  \u00a0 \u00a0 \u00a0 \u00a0\u4e3b\u673a\u540d:{{ ansible_hostname }}\n  \u00a0 \u00a0 \u00a0 \u00a0\u5185\u5b58\u5927\u5c0f:{{ ansible_memtotal_mb }}\n  \u00a0 \u00a0 \u00a0 \u00a0cpu\u6838\u6570:{{ ansible_processor_vcpus }}\n  \u00a0- name: \u4fdd\u5b58\u5230\u6587\u4ef6\u4e2d\n  \u00a0 lineinfile:\n  \u00a0 \u00a0 path: \/etc\/motd\n  \u00a0 \u00a0 create: yes  #\u5982\u679c\u6ca1\u6709\u8fd9\u4e2a\ud83d\udc46\u6587\u4ef6\u81ea\u52a8\u521b\u5efa\n  \u00a0 \u00a0 line: |\n  \u00a0 \u00a0 \u00a0 \u00a0\u4e3b\u673a\u540d:{{ ansible_hostname }}\n  \u00a0 \u00a0 \u00a0 \u00a0\u5185\u5b58\u5927\u5c0f:{{ ansible_memtotal_mb }}\n  \u00a0 \u00a0 \u00a0 \u00a0cpu\u6838\u6570:{{ ansible_processor_vcpus }}\n         \u7cfb\u7edf: {{ ansible_distribution }}\n         \u7cfb\u7edf\u7248\u672c:{{ ansible_distribution_version }}<\/pre><p>\u8bf4\u660e:<\/p><p>debug\u6a21\u5757\u7528\u4e8e\u5728\u5267\u672c\u4e2d\u8f93\u51fa\u4e0e\u8c03\u8bd5,\u4e00\u822c\u7528\u4e8e\u8f93\u51fa\u53d8\u91cf\u5185\u5bb9.<\/p><p>|\u8868\u793a\u4e0b\u9762\u7684\u5185\u5bb9\u662f\u591a\u884c,\u7528\u4e8e\u8f93\u51fa\u6216\u5199\u5165\u591a\u884c\u5230\u6587\u4ef6\u4e2d,\u6ce8\u610f\u7d22\u5f15\u5bf9\u9f50.<\/p><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B%EF%BC%9A%E6%89%B9%E9%87%8F%E4%BF%AE%E6%94%B9%E7%B3%BB%E7%BB%9Fetcmotd%E6%96%87%E4%BB%B6%E7%99%BB%E5%BD%95%E7%9A%84%E6%97%B6%E5%80%99%E8%BE%93%E5%87%BA%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF\"><\/span>\u6848\u4f8b\uff1a\u6279\u91cf\u4fee\u6539\u7cfb\u7edf\/etc\/motd\u6587\u4ef6,\u767b\u5f55\u7684\u65f6\u5019\u8f93\u51fa\u7cfb\u7edf\u7684\u57fa\u672c\u4fe1\u606f.<span class=\"ez-toc-section-end\"><\/span><\/h5><p><strong>\u8f93\u51fa\u4e3b\u673a\u540d\u00a0 \u00a0\u8f93\u51fa\u5185\u5b58\u603b\u5927\u5c0f\u00a0 \u00a0\u8f93\u51faip\u5730\u5740\u00a0 \u53d1\u884c\u7248\u672c cpu\u6570\u00a0 \u6838\u5fc3\u6570<\/strong><\/p><p><strong>#1. \u521b\u5efa\u5305\u542b\u53d8\u91cf\u7684\u6a21\u677f\u6587\u4ef6<\/strong><\/p><p><strong>#2. \u53d1\u9001\u6a21\u677f\u6587\u4ef6\u66ff\u4ee3\/etc\/motd \u5373\u53ef<\/strong><\/p><p>template\u6a21\u5757\u652f\u6301\u5206\u53d1\u6587\u4ef6\u7684\u65f6\u5019,\u66ff\u6362\u6587\u4ef6\u4e2d\u7684ansible\u53d8\u91cf.<\/p><p>\u8981\u6c42:\u6e90\u6587\u4ef6\u4ee5.j2\u7ed3\u5c3e<\/p><pre>[root@m01 \/server\/scripts\/playbook]# cat\u00a0 \u00a007.change_motd.yml\n- hosts: all\ntasks:\n  \u00a0- name: 2. \u5199\u5165\u5230\/etc\/motd\u6587\u4ef6\n  \u00a0 template:\n  \u00a0 \u00a0 src: \/server\/files\/conf\/motd.j2\n  \u00a0 \u00a0 dest: \/etc\/motd\n  \u00a0 \u00a0 backup: true\n[root@m01 \/server\/scripts\/playbook]# cat  templates\/motd.j2\n#######################################\n\u64cd\u4f5c\u9700\u8c28\u614e,\u5220\u6839\u5f39\u6307\u95f4.\n\u4e3b\u673a\u540d: {{ ansible_hostname }}\nip\u5730\u5740: {{ ansible_default_ipv4.address }}\n\u5185\u5b58\u5927\u5c0f: {{ ansible_memtotal_mb }}\nCPU\u6570\u91cf: {{ ansible_processor_vcpus }}\n\u6838\u5fc3\u603b\u6570: {{ ansible_processor_cores }}\n\u53d1\u884c\u7248\u672c: {{ ansible_distribution }}<\/pre><h5><span class=\"ez-toc-section\" id=\"%E5%85%B3%E4%BA%8Efacts%E5%8F%98%E9%87%8F%E5%AE%9E%E9%99%85%E5%BA%94%E7%94%A8%E6%A1%88%E4%BE%8B\"><\/span>\u5173\u4e8efacts\u53d8\u91cf\u5b9e\u9645\u5e94\u7528\u6848\u4f8b:<span class=\"ez-toc-section-end\"><\/span><\/h5><ol><li>\u901a\u8fc7facts\u53d8\u91cf\u83b7\u53d6\u7cfb\u7edf\u7684\u57fa\u672c\u4fe1\u606f<\/li><li>\u901a\u8fc7facts\u53d8\u91cf\u83b7\u53d6\u4fe1\u606f\u5e76\u8fdb\u884c\u5224\u65ad<\/li><li>\u5982\u679c\u4e0d\u9700\u8981\u53ef\u4ee5\u4e34\u65f6\u8fdb\u884c\u5173\u95ed,\u52a0\u901f\u5267\u672c\u7684\u8fd0\u884c(\u5728\u5267\u672chosts\u4e0b\u9762\u5199 gather_facts: false)<\/li><li>\u4fee\u6539ansible.cfg #gathering = implicit\u53bb\u6389\u6ce8\u91ca,\u6c38\u4e45\u5173\u95ed,\u5982\u679c\u5267\u672c\u4e2d\u9700\u8981\uff0c\u5728\u5267\u672c\u4e2d\u5199gather_facts: true<\/li><\/ol><pre>- hosts: all\n  gather_facts: false\n  tasks: .......<\/pre><h5><span class=\"ez-toc-section\" id=\"yes_or_no_%E8%BF%98%E6%98%AFTrue_or_false\"><\/span>yes or no \u8fd8\u662fTrue or false<span class=\"ez-toc-section-end\"><\/span><\/h5><p>\u5728\u4f7f\u7528\u4e0a\u662f\u4e00\u81f4\u7684,\u8868\u793a\u7684\u662f\u771f(\u5f00\u542f,\u542f\u52a8),\u5047(\u5173\u95ed).<\/p><p>\u5e03\u5c14\u7c7b\u578b\u7684\u6570\u636e:\u771f,\u5047.<\/p><p>\u771f:yes,True,true<\/p><p>\u5047:no,False,false<\/p><p>\u6839\u636e\u6bcf\u4e2a\u6a21\u5757\u9009\u9879\u7684\u8bf4\u660e\u53bb\u4f7f\u7528\u5373\u53ef.<\/p><h4><span class=\"ez-toc-section\" id=\"6_register%E5%8F%98%E9%87%8F%E6%B3%A8%E5%86%8C%E5%8F%98%E9%87%8F_%E2%AD%90%E2%AD%90%EF%BC%88%E6%89%8B%E5%8A%A8%E5%88%9B%E5%BB%BA%EF%BC%89\"><\/span>6) register\u53d8\u91cf\u6ce8\u518c\u53d8\u91cf \u2b50\u2b50\uff08\u624b\u52a8\u521b\u5efa\uff09<span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u672c\u8d28\u4e0a\u5c31\u662f\u7528\u6765\u5b9e\u73b0\u811a\u672c\u4e2d\u7684\u53cd\u5f15\u53f7\u529f\u80fd. ip=`hostname -I`<\/p><p>\u7528\u6237\u901a\u8fc7\u547d\u4ee4\u83b7\u53d6\u7684\u5185\u5bb9\u90fd\u5b58\u653e\u5230Register\u53d8\u91cf\u4e2d.<\/p><p>\u5e94\u7528\u573a\u666f:\u83b7\u53d6\u547d\u4ee4\u6267\u884c\u7ed3\u679c\u6216\u83b7\u53d6\u6a21\u5757\u6267\u884c\u7684\u7ed3\u679c.<\/p><pre>\u6848\u4f8b\uff1a\u5c06\u547d\u4ee4\u6267\u884c\u7684\u7ed3\u679c\u5b58\u653e\u5230json\u7ed3\u679c\u4e2d\uff0c\u65b9\u4fbf\u53d6\u7528\n[root@m01 \/server\/scripts\/ansible]# cat 10.register_vars.yml \n- hosts: all \n  gather_facts: false\n  tasks: \n    - name: 1. \u83b7\u53d6ip\n      shell: hostname -I | awk '{print $2}'\n<strong>      register: ipaddr<\/strong>\n    - name: 2. \u8c03\u8bd5\u8f93\u51fa\n      debug: \n        msg: \"{{ ipaddr }}\"\n     - name: 3. \u663e\u793a\u53d8\u91cf\uff08\u6700\u7ec8\u60f3\u8981\u7684\u503c\uff09\n       debug: \n         msg: | \n           \"{{ ipaddr.stdout }}\"\n           \"{{ ipaddr.rc }}\" \n     - name: 4. \u5c06\u53d8\u91cf\u4e2d\u7684\u503c\u5199\u5165\u6587\u4ef6\n\u6587\u4ef6\u5185\u5bb9\uff1a\n172.16.1.31\n0\n       lineinfile: \n         path: \/server\/ans-test\/test.txt\n         line: |\n           {{ ipaddr.stdout }}\n           {{ ipaddr.rc }}<\/pre><p>\u5f97\u5230\u4e86IP\u5730\u5740\u7684\u53d8\u91cf\uff1a{{ ipaddr.stdout }} \uff0c\u7b49\u540c\u4e8efacts\u53d8\u91cf\u4e2d\u7684ansible_default_ipv4.address<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1874\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u6ce8\u518c\u53d8\u91cf\u7ed3\u679c.png\" alt=\"\" width=\"1314\" height=\"629\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6ce8\u518c\u53d8\u91cf\u7ed3\u679c.png 1314w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6ce8\u518c\u53d8\u91cf\u7ed3\u679c-300x144.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6ce8\u518c\u53d8\u91cf\u7ed3\u679c-1024x490.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6ce8\u518c\u53d8\u91cf\u7ed3\u679c-768x368.png 768w\" sizes=\"(max-width: 1314px) 100vw, 1314px\" \/><\/p><p>register\u6ce8\u518c\u53d8\u91cf:<br \/>\u53d8\u91cf.stdout \u83b7\u53d6\u8f93\u51fa\u5373\u53ef.<\/p><p>json\u5f62\u5f0f\u6570\u636e.<\/p><p>key: value<\/p><p>\u952e: \u503c<\/p><p>\u53d8\u91cf: \u5185\u5bb9<\/p><p><code>hostname -I | awk '{print $2}'<\/code><\/p><p>\u5f97\u5230\u7684stdout\u90e8\u5206\u662f\u6211\u4eec\u60f3\u8981\u7684\u5185\u5bb9.<\/p><p>register\u53d8\u91cfipaddr.<\/p><p><code>ipaddr.stdout\u00a0<\/code> \u00a0 \u00a0#std standard output \u6807\u51c6\u8f93\u51fa.<\/p><p>#<code>stderr\u00a0 \u00a0#std standard error\u6807\u51c6\u9519\u8bef\u8f93\u51fa<\/code><\/p><p><code>.rc\u00a0 \u00a0 \u00a0#return code<\/code>\u8fd4\u56de\u503c (\u76f8\u5f53\u4e8e\u00a0 $?)<\/p><p>\u5982\u679c\u7ed3\u5408\u5176\u4ed6\u6a21\u5757\u4f7f\u7528\u6211\u4eec\u5173\u6ce8\u7ed3\u679c\u4e2d\u7684failed\u90e8\u5206<\/p><h4><span class=\"ez-toc-section\" id=\"7_%E6%80%BB%E7%BB%93\"><\/span><b>7) <\/b><b>\u603b\u7ed3<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1822\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf\u5c0f\u7ed3.png\" alt=\"\" width=\"1561\" height=\"509\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf\u5c0f\u7ed3.png 1561w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf\u5c0f\u7ed3-300x98.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf\u5c0f\u7ed3-1024x334.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf\u5c0f\u7ed3-768x250.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u53d8\u91cf\u5c0f\u7ed3-1536x501.png 1536w\" sizes=\"(max-width: 1561px) 100vw, 1561px\" \/><\/p><h2><span class=\"ez-toc-section\" id=\"%E6%B5%81%E7%A8%8B%E6%8E%A7%E5%88%B6%EF%BC%9A\"><\/span>\u6d41\u7a0b\u63a7\u5236\uff1a<span class=\"ez-toc-section-end\"><\/span><\/h2><h3><span class=\"ez-toc-section\" id=\"1%EF%BC%89Ansible%E4%B8%AD%E7%9A%84%E5%BE%AA%E7%8E%AF\"><\/span><b>1\uff09Ansible<\/b><b>\u4e2d\u7684\u5faa\u73af<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u5e94\u7528\u573a\u666f:\u6279\u91cf\u5f00\u542f\u670d\u52a1,\u91cd\u542f\u670d\u52a1,\u521b\u5efa\u6587\u4ef6,\u76ee\u5f55,\u6dfb\u52a0\u7528\u6237.<\/p><h4><span class=\"ez-toc-section\" id=\"1_%E6%9C%80%E5%B8%B8%E7%94%A8%E7%9A%841%E7%A7%8D%E5%BE%AA%E7%8E%AF%E5%BD%A2%E5%BC%8F-1%E4%B8%AA%E5%8F%98%E9%87%8F\"><\/span><b>1) <\/b><b>\u6700\u5e38\u7528\u7684<\/b><b>1<\/b><b>\u79cd\u5faa\u73af\u5f62\u5f0f<\/b><b>-1<\/b><b>\u4e2a\u53d8\u91cf<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><pre>\u521b\u5efa3\u4e2a\u6587\u4ef6.\n\/tmp\/oldboy\n\/mnt\/lidao\n\/root\/lidao996\n[root@m01 \/server\/scripts\/ansible]# cat 11.ans_with_items.yml \n---\n- hosts: all \n  tasks: \n    - name: 1. \u5faa\u73af\u521b\u5efa\u6587\u4ef6\n      file: \n        name: \"{{ item }}\"\n        state: touch\n      with_items: #\u5faa\u73af\u53d6\u503c\u8303\u56f4\n#loop\u6548\u679c\u7b49\u540c\u4e8ewith_items\uff0c\u672a\u6765\u590d\u6742\u7684\u5faa\u73af\u4f7f\u7528with_items\u6548\u679c\u66f4\u591a\n        - \/tmp\/oldboy \n        - \/mnt\/lidao \n        - \/root\/lidao996<\/pre><p>\u5c0f\u7ed3:<\/p><p>\u7c7b\u4f3c\u4e8eshell\u4e2d\u7684for\u5faa\u73af.<\/p><p>with_items\u6216loop,\u53d8\u91cf\u540d\u5b57item.<\/p><p>\u542f\u52a8\/\u91cd\u542f\u670d\u52a1,\u6dfb\u52a0\u7528\u6237,\u6587\u4ef6,\u76ee\u5f55&#8230;.<\/p><h4><span class=\"ez-toc-section\" id=\"2_%E6%AF%8F%E6%AC%A1%E5%BE%AA%E7%8E%AF%E5%88%9B%E5%BB%BA%E5%A4%9A%E4%B8%AA%E5%8F%98%E9%87%8F\"><\/span><b>2) <\/b><b>\u6bcf\u6b21\u5faa\u73af\u521b\u5efa\u591a\u4e2a\u53d8\u91cf<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><h5><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B%EF%BC%9A%E5%BE%AA%E7%8E%AF%E6%B7%BB%E5%8A%A0%E6%8C%87%E5%AE%9Auid%E7%9A%84%E5%A4%9A%E4%B8%AA%E7%94%A8%E6%88%B7\"><\/span>\u6848\u4f8b\uff1a\u5faa\u73af\u6dfb\u52a0\u6307\u5b9auid\u7684\u591a\u4e2a\u7528\u6237<span class=\"ez-toc-section-end\"><\/span><\/h5><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1875\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u5faa\u73af\u521b\u5efa\u591a\u4e2a\u53d8\u91cf.png\" alt=\"\" width=\"959\" height=\"202\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5faa\u73af\u521b\u5efa\u591a\u4e2a\u53d8\u91cf.png 959w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5faa\u73af\u521b\u5efa\u591a\u4e2a\u53d8\u91cf-300x63.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u5faa\u73af\u521b\u5efa\u591a\u4e2a\u53d8\u91cf-768x162.png 768w\" sizes=\"(max-width: 959px) 100vw, 959px\" \/><\/p><pre>[root@m01 \/server\/scripts\/ansible]# cat 12_ans_loop_mutli_vars.yml \n---\n- hosts: all\n  tasks: \n    - name: 1. \u5faa\u73af\u6dfb\u52a0\u6307\u5b9auid\u7684\u591a\u4e2a\u7528\u6237\n      user: \n        name: \"{{ item.name }}\"\n        uid: \"{{ item.uid }}\"\n        state: present\n      loop: #\u5faa\u73af\u53d6\u503c\u8303\u56f4\n#loop\u6548\u679c\u7b49\u540c\u4e8ewith_items\n        - { name: \"lidao01\",uid: 4090 }\n        - { name: \"oldboy01\",uid: 5090 } \n        - { name: \"test01\",uid: 6090 }<\/pre><h4><span class=\"ez-toc-section\" id=\"3_%E5%B0%8F%E7%BB%93\"><\/span><b>3) <\/b><b>\u5c0f\u7ed3 <\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>with_items\/loop\u5faa\u73af<\/p><p>\u5355\u4e2a\u53d8\u91cf,item.<\/p><p>\u591a\u4e2a\u53d8\u91cf,<\/p><p>\u521b\u5efa {user: &#8220;lidao666&#8221; ,uid: 4090}<\/p><p>\u4f7f\u7528 item.user item.uid<\/p><h5><span class=\"ez-toc-section\" id=\"27_%E5%BE%AA%E7%8E%AF%E6%A1%88%E4%BE%8B%EF%BC%88nfs%EF%BC%89\"><\/span>2.7 \u5faa\u73af\u6848\u4f8b\uff08nfs\uff09<span class=\"ez-toc-section-end\"><\/span><\/h5><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1821\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/jinja2\u6a21\u677f\u56fe.png\" alt=\"\" width=\"1517\" height=\"1108\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/jinja2\u6a21\u677f\u56fe.png 1517w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/jinja2\u6a21\u677f\u56fe-300x219.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/jinja2\u6a21\u677f\u56fe-1024x748.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/jinja2\u6a21\u677f\u56fe-768x561.png 768w\" sizes=\"(max-width: 1517px) 100vw, 1517px\" \/><\/p><h4><span class=\"ez-toc-section\" id=\"%E2%AD%90_%E2%AD%90_%E2%AD%90_%E2%AD%90_%E2%AD%90_copy%E5%92%8Ctemplate%E6%A8%A1%E5%9D%97%E5%8C%BA%E5%88%AB\"><\/span>\u2b50 \u2b50 \u2b50 \u2b50 \u2b50 copy\u548ctemplate\u6a21\u5757\u533a\u522b<span class=\"ez-toc-section-end\"><\/span><\/h4><p>copy\u4f20\u8f93\u6587\u4ef6,\u6587\u4ef6\u4e2d\u5305\u542b\u53d8\u91cf\u4e0d\u4f1a\u89e3\u6790.<\/p><p>template\u6a21\u5757\u652f\u6301\u5206\u53d1\u6587\u4ef6\u7684\u65f6\u5019,\u66ff\u6362\u6587\u4ef6\u4e2d\u7684ansible\u53d8\u91cf.<\/p><p>\u8981\u6c42:\u6e90\u6587\u4ef6\u4ee5.j2\u7ed3\u5c3e<\/p><p>template\u4f20\u8f93\u6587\u4ef6,\u6587\u4ef6\u4e2d\u7684\u53d8\u91cf\u4f1a\u89e3\u6790.<\/p><pre>---\n- hosts: all\ngather_facts: no\ntasks:\n  \u00a0- name: 01. mkdir dir\n  \u00a0 file:\n  \u00a0 \u00a0 path: \/server\/files\/ \u00a0\n  \u00a0 \u00a0 state: directory\n  \u00a0- name: 02. copy file\n  \u00a0 copy:\n  \u00a0 \u00a0 src: \/etc\/hosts\n\u00a0 \u00a0 \u00a0 dest: \/server\/files<\/pre><h6><span class=\"ez-toc-section\" id=\"1_nfs_13nfs_srv_cli_v2yml\"><\/span><b>1) nfs\u00a0 \u00a013.nfs_srv_cli_v2.yml<\/b><span class=\"ez-toc-section-end\"><\/span><\/h6><h6><span class=\"ez-toc-section\" id=\"2_rsync_14_rsync_client_v1yml\"><\/span><b>2) rsync\u00a0 14_rsync_client_v1.yml<\/b><span class=\"ez-toc-section-end\"><\/span><\/h6><h6><span class=\"ez-toc-section\" id=\"3_lsyncd_1000031NFS01%E5%B7%B2%E9%83%A8%E7%BD%B2\"><\/span><b>3) lsyncd\u00a0 (10.0.0.0.31NFS01\u5df2\u90e8\u7f72)<\/b><span class=\"ez-toc-section-end\"><\/span><\/h6><p>\u7f16\u8bd1\u5b89\u88c5\u6d41\u7a0b\u4f7f\u7528shell\u811a\u672c.\u6216\u8005\u5206\u53d1\u547d\u4ee4(lsyncd)&#8212;&#8211;\u76f4\u63a5\u5c06\u7f16\u8bd1\u597d\u7684\/usr\/local\/bin\/lsyncd\u4f20\u5230\u5ba2\u6237\u7aef\u4e2d\u7684\/usr\/bin\/lsyncd\uff0c which lsyncd\u80fd\u627e\u5230\u5373\u53ef\u4f7f\u7528<\/p><p>rsync\u670d\u52a1\u53ef\u7528.<\/p><p>\u540e\u7eed\u64cd\u4f5c,\u5206\u53d1\u914d\u7f6e\u6587\u4ef6\/etc\/lsyncd.conf<\/p><p>\u5206\u53d1systemd\u6587\u4ef6.<\/p><pre># \/usr\/lib\/systemd\/system\/lsyncd.service\n[Unit]\nDescription=Live Syncing (Mirror) Daemon\n[Service]\nType=simple\nExecStart=\/usr\/local\/bin\/lsyncd -nodaemon \/etc\/lsyncd.conf\nExecStop=pkill lsyncd\nRestart=always\nRestartSec=5s\n[Install]\nWantedBy=multi-user.target<\/pre><p>\u542f\u52a8\u670d\u52a1.<\/p><h3><span class=\"ez-toc-section\" id=\"2_handlers%E8%A7%A6%E5%8F%91%E5%99%A8_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\"><\/span><b>2) handlers<\/b><b>\u89e6\u53d1\u5668 <\/b>\u2b50\u2b50\u2b50\u2b50\u2b50<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u9700\u6c42:\u5206\u53d1nfs\u670d\u52a1\u914d\u7f6e\u6587\u4ef6,\u7136\u540e\u91cd\u542fnfs.<\/p><p>\u5b9e\u73b0\u6b65\u9aa4:<\/p><p>copy\/template\u5206\u53d1<\/p><p>systemd: restarted\/reloaded<\/p><p>\u53d1\u73b0\u7684\u95ee\u9898:<\/p><p>\u6309\u7167\u4e4b\u524d\u6240\u5199\u7684\u5267\u672c,\u76ee\u524d\u53ea\u80fd\u5b8c\u6210\u5206\u53d1\u914d\u7f6e\u548c\u91cd\u542f\u670d\u52a1,\u5e76\u4e14\u4e24\u4e2a\u6b65\u9aa4\u4e4b\u95f4\u6ca1\u6709\u5173\u8054.<\/p><p>\u6211\u4eec\u5e0c\u671b\u53ea\u6709\u914d\u7f6e\u53d1\u751f\u4e86\u53d8\u5316\u7136\u540e\u518d\u53bb\u91cd\u542f\u670d\u52a1.<\/p><p>\u5b9e\u73b0\u65b9\u6848:\u00a0 \u00a0 \u89e6\u53d1\u5668\uff1a\u7ec4\u6210\uff1a\u00a0 handler\u4e0enotify<\/p><p>\u5e94\u7528\u573a\u666f:\u00a0 \u4e00\u822c\u7528\u4e8e\u5206\u53d1\u914d\u7f6e\u6587\u4ef6\u7684\u65f6\u5019\u4e0e\u91cd\u542f\u670d\u52a1\uff1b\u5982\u679c\u914d\u7f6e\u6587\u4ef6\u53d1\u751f\u53d8\u5316\u5219\u91cd\u542f\u670d\u52a1,\u5982\u679c\u6ca1\u6709\u53d8\u5316\u5219\u91cd\u542f<\/p><h4><span class=\"ez-toc-section\" id=\"%E8%A7%A6%E5%8F%91%E5%99%A8%E6%A1%88%E4%BE%8B%EF%BC%9A%E5%9C%A8%E4%B8%8A%E9%9D%A2%E7%9A%8414%E5%8F%B7%E5%89%A7%E6%9C%AC%E9%83%A8%E7%BD%B2rsyncd%E6%97%B6%E4%B8%AD%E6%9C%89%E5%86%99\"><\/span>\u89e6\u53d1\u5668\u6848\u4f8b\uff1a\u5728\u4e0a\u9762\u768414\u53f7\u5267\u672c\u90e8\u7f72rsyncd\u65f6\u4e2d\u6709\u5199<span class=\"ez-toc-section-end\"><\/span><\/h4><p>handlers\u4f7f\u7528\u65b9\u6cd5\uff1a\u5c06notify\u8ddf\u89e6\u53d1\u89e6\u53d1\u5668\u64cd\u4f5c\u7684\u6a21\u5757\u540d\u5b57\u5bf9\u9f50\uff1bhandlers\u4e0etasks\u540c\u4e00\u5c42\u7ea7\uff0c\u5199\u5728hosts\u4e2d \u6240\u6709tasks\u7684\u6700\u540e<\/p><p>\u914d\u7f6e\u6587\u4ef6\u672a\u6539\u53d8\u5219\u4e0d\u89e6\u53d1&#8221;\u91cd\u542f\u670d\u52a1&#8221; \u4efb\u52a1\uff1b\u914d\u7f6e\u6587\u4ef6\u53d1\u751f\u53d8\u5316,\u89e6\u53d1&#8221;\u91cd\u542f\u670d\u52a1&#8221;\u4efb\u52a1<\/p><pre>- hosts: backup\n  gather_facts: no\n  tasks:\n\u00a0   - name: \u5206\u53d1\u914d\u7f6e\u6587\u4ef6\n  \u00a0 \u00a0 copy:\n\u00a0 \u00a0   \u00a0 src: files\/exports\n\u00a0   \u00a0 \u00a0 dest: \/etc\/exports\n\u00a0   \u00a0 \u00a0 backup: yes\n      notify: \u00a0#\u5e03\u96f7\n        - \u91cd\u542f\u670d\u52a1\n  handler: \u00a0 \u00a0 #\u8bbe\u7f6e\u8e29\u96f7\u540e\u64cd\u4f5c.\n    - name: \u91cd\u542f\u670d\u52a1\n      systemd:\n      name: nfs\n      state: reloaded\n<\/pre><h4><span class=\"ez-toc-section\" id=\"%E8%A7%A6%E5%8F%91%E5%99%A8%E5%B0%8F%E7%BB%93\"><\/span>\u89e6\u53d1\u5668\u5c0f\u7ed3:<span class=\"ez-toc-section-end\"><\/span><\/h4><p>handlers\u89e6\u53d1\u5668,\u5e94\u7528\u573a\u666f: \u914d\u7f6e\u6587\u4ef6\u53d1\u751f\u53d8\u5316,\u7136\u540e\u91cd\u542f\u670d\u52a1(\u6216\u505a\u5176\u4ed6) .<br \/>\u683c\u5f0f: \u57cb\u96f7:\u8bbe\u7f6e\u7eca\u96f7(notify: \u5199\u4e2a\u540d\u5b57) , handlers\u8bbe\u7f6e\u540d\u5b57\u548c\u6a21\u5757.<br \/>\u6ce8\u610f\u4e8b\u9879: handlers\u653e\u5728\u5267\u672ctasks\u7684\u6700\u540e,\u5426\u5219handlers\u540e\u9762\u7684\u6a21\u5757\u90fd\u4f1a\u88ab\u8bc6\u522b\u4e3ahandlers\u64cd\u4f5c\uff0c\u4e0d\u89e6\u53d1\u4e0d\u4f1a\u8fd0\u884c<\/p><h3><span class=\"ez-toc-section\" id=\"3_when%E5%88%A4%E6%96%AD%EF%BC%88%E4%B8%8E%E6%A8%A1%E5%9D%97%E5%90%8D%E5%AD%97%E5%AF%B9%E9%BD%90%EF%BC%89\"><\/span><b>3) when<\/b><b>\u5224\u65ad\uff08\u4e0e\u6a21\u5757\u540d\u5b57\u5bf9\u9f50\uff09<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>when\u5224\u65ad\u5e94\u7528\u573a\u666f:\u7528\u4e8e\u7ed9ans\u8fd0\u884c\u7684task(\u6a21\u5757)\u8bbe\u7f6e\u6761\u4ef6,\u6ee1\u8db3\u6216\u4e0d\u6ee1\u8db3\u6761\u4ef6\u5728\u8fd0\u884c\u5bf9\u5e94\u7684\u6a21\u5757.<\/p><p>\u5e94\u7528\u5efa\u8bae: when\u8fdb\u884c\u5224\u65ad,\u4e00\u822c\u4e0efacts\u53d8\u91cf\u6216register\u53d8\u91cf\u4e00\u8d77\u4f7f\u7528.<\/p><p>\u6839\u636e\u7cfb\u7edf\u53d8\u91cf\u5224\u65ad\u5728\u54ea\u4e9b\u673a\u5668\u8fd0\u884c\u54ea\u4e9b\u9488\u5bf9\u6027\u7684\u64cd\u4f5c\uff0c\u5982\uff1a\u76f8\u540c\u7684\u8f6f\u4ef6\u5728\u4e0d\u540c\u7684\u7cfb\u7edf\u8f6f\u4ef6\u5305\u540d\u4e0d\u4e00\u81f4\uff0c\u6216\u8005centos\u7cfb\u7edf\u4f7f\u7528yum\u6a21\u5757\u5b89\u88c5\uff1bubuntu\u7cfb\u7edf\u4f7f\u7528apt\u6a21\u5757\u5b89\u88c5<\/p><p>when\u6761\u4ef6\u8fd8\u53ef\u4ee5\u548cansible\u8bed\u53e5\u4e00\u8d77\u4f7f\u7528(\u5224\u65ad\u6587\u4ef6,\u5224\u65ad\u76ee\u5f55,\u5224\u65ad\u662f\u5426\u5b58\u5728,\u6bd4\u8f83\u5927\u5c0f).<\/p><p>when: \u7ed9\u6a21\u5757\u52a0\u4e0a\u4e2a\u6761\u4ef6.<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1881\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/when\u5224\u65ad\u4e2d\u4f7f\u7528\u7684\u7b26\u53f7.png\" alt=\"\" width=\"1133\" height=\"465\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/when\u5224\u65ad\u4e2d\u4f7f\u7528\u7684\u7b26\u53f7.png 1133w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/when\u5224\u65ad\u4e2d\u4f7f\u7528\u7684\u7b26\u53f7-300x123.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/when\u5224\u65ad\u4e2d\u4f7f\u7528\u7684\u7b26\u53f7-1024x420.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/when\u5224\u65ad\u4e2d\u4f7f\u7528\u7684\u7b26\u53f7-768x315.png 768w\" sizes=\"(max-width: 1133px) 100vw, 1133px\" \/><\/p><h4><span class=\"ez-toc-section\" id=\"%E6%A1%88%E4%BE%8B02_%E5%A6%82%E6%9E%9C%E7%B3%BB%E7%BB%9F%E6%98%AFcentos%E6%88%96kylin%E5%88%99_%E5%AE%89%E8%A3%85slcowsay%E5%A6%82%E6%9E%9C%E6%98%AFubuntu_%E5%88%99%E5%AE%89%E8%A3%85cmatrix\"><\/span>\u6848\u4f8b02 : \u5982\u679c\u7cfb\u7edf\u662fcentos\u6216kylin\u5219 \u5b89\u88c5sl,cowsay,\u5982\u679c\u662fubuntu \u5219\u5b89\u88c5cmatrix<span class=\"ez-toc-section-end\"><\/span><\/h4><pre>- hosts: all\n  tasks:\n    - name: centos \u7cfb\u7edf\u5b89\u88c5sl cowsay\n    \u00a0 yum:\n    \u00a0 \u00a0 name: sl,cowsay\n    \u00a0 \u00a0 state: present\n    \u00a0 when: ansible_distribution ismatch('CentOS|Kylin')\n    - name: ubuntu \u7cfb\u7edf\u5b89\u88c5cmatrix\n  \u00a0   apt:\n    \u00a0 \u00a0 name: cmatrix\n  \u00a0   \u00a0 state: present\n  \u00a0 \u00a0 when: ansible_distribution is match('Ubuntu')\n\u6e29\u99a8\u63d0\u793a: ubuntu\u9ed8\u8ba4\u7981\u7528\u4e86root\u8fdc\u7a0b\u767b\u5f55\u9700\u8981\u4fee\u6539sshd\u914d\u7f6e\u6587\u4ef6\u5f00\u542f\uff0c\n\u5e76\u8bb0\u5f97\u914d\u7f6eRoot\u5bc6\u7801. \u64cd\u4f5c\u6d41\u7a0b\u4e0ecentos\u4e00\u81f4.\n<code> PermitRootLogin yes\n\"ansible_facts\": {\n\"ansible_distribution\": \"Kylin Linux Advanced Server\",\n\"ansible_distribution_file_parsed\": true,\n\"ansible_distribution_file_path\": \"\/etc\/os-release\",\n\"ansible_distribution_file_variety\": \"NA\",\n\"ansible_distribution_major_version\": \"V10\",\n\"ansible_distribution_release\": \"Lance\",\n\"ansible_distribution_version\": \"V10\",\n\"discovered_interpreter_python\": \"\/usr\/bin\/python3.7\"\n},\n[root@nfs01 ~]# cat \/etc\/os-release \nNAME=\"Kylin Linux Advanced Server\"\nVERSION=\"V10 (Lance)\"\nID=\"kylin\"\nVERSION_ID=\"V10\"\nPRETTY_NAME=\"Kylin Linux Advanced Server V10 (Lance)\"\nANSI_COLOR=\"0;31\"<\/code><\/pre><p>is match\u5339\u914d\u7684\u5b57\u6bb5\u662f\/etc\/os-release\u91cc\u9762\u7684<code>NAME\uff0c\u6240\u4ee5\u8fd9\u91cc\u5339\u914d\u4e0d\u80fd\u7528==\uff0c==\u53ea\u80fd\u7cbe\u51c6\u5339\u914d\u5b57\u7b26\u4e32<\/code><\/p><p>\u5982\u679c\u8fd9\u91cc\u60f3\u67e5\u770bfacts\u53d8\u91cf\u53ef\u4ee5\u4f7f\u7528setup\u6a21\u5757\uff0c\u67e5\u770b\u5168\u90e8\uff1a<code>ansible all -m setup;<\/code>\u5982\u679c\u60f3\u53ea\u8fc7\u6ee4\u4e0a\u9762\u4f7f\u7528\u7684\u5b58\u653e\u7cfb\u7edf\u4fe1\u606f\u7684\u53d8\u91cf\u53ef\u4ee5\u5728\u6a21\u5757\u540e\u9762\u52a0\u4e0a<code>'filter=ansible_distribution*'<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"%E5%85%B3%E9%97%ADansible%E8%BF%90%E8%A1%8C%E5%89%A7%E6%9C%AC%E7%9A%84%E7%B4%AB%E8%89%B2%E6%8F%90%E7%A4%BA\"><\/span>\u5173\u95edansible\u8fd0\u884c\u5267\u672c\u7684\u7d2b\u8272\u63d0\u793a<span class=\"ez-toc-section-end\"><\/span><\/h3><p>1\uff09\u88ab\u7ba1\u7406\u7684 \u9e92\u9e9f\u7cfb\u7edf \u6bcf\u6b21\u63d0\u793a: \u7cfb\u7edf\u4e2d\u6709\u591a\u4e2a\u7248\u672c\uff0c\u9ed8\u8ba4\u4f7f\u7528\/usr\/bin\/python\u7684\u63d0\u793a\uff1a<br \/>\u5728group_vars\/all\/vars.yml\u4e2d\u6307\u5b9a\u7ba1\u7406\u673a\u9ed8\u8ba4\u4f7f\u7528\u7684python\u7248\u672c\u5373\u53ef<br \/><code>ansible_python_interpreter: \/usr\/bin\/python3<\/code><\/p><p>2\uff09\u7ba1\u7406\u673a\u8fd0\u884c\u5267\u672c\u540e\u5728\u5267\u672c\u5f00\u5934\u663e\u793a\u7684\u5f53\u524d\u7cfb\u7edfpython\u7248\u672c\u8fc7\u4f4e\u95ee\u9898<\/p><p><code>sed -i 's@#deprecation_warnings = True@deprecation_warnings = False@g' \/etc\/ansible\/ansible.cfg<\/code><\/p><h4><span class=\"ez-toc-section\" id=\"%E5%B0%8F%E7%BB%93-3\"><\/span>\u5c0f\u7ed3:<span class=\"ez-toc-section-end\"><\/span><\/h4><p>when\u7528\u4e8e\u8fdb\u884c\u5224\u65ad,\u6ee1\u8db3\/\u4e0d\u6ee1\u8db3\u6761\u4ef6\u5c31\u6267\u884c\u5bf9\u5e94\u7684\u6a21\u5757(\u4e0d\u6ee1\u8db3\u6761\u4ef6\u7684\u4e3b\u673a\u63d0\u793askip).<\/p><p>when\u4e00\u822c\u4e0e\u53d8\u91cf\u4e00\u8d77\u4f7f\u7528.<\/p><p>\u7b26\u53f7 ==\u00a0 \u00a0!=\u00a0 \u00a0 is match\u00a0 \u00a0 is not match<\/p><p>(\u6761\u4ef61) and (\u6761\u4ef62)<\/p><p>(\u6761\u4ef61) or (\u6761\u4ef62)<\/p><p>\u5e38\u7528\u7684facts\u53d8\u91cf:\u89c1\u4e0a\u65b9facts\u53d8\u91cf\u00a0<a href=\"https:\/\/linuxjk.cn\/?p=1785#5_facts%E5%8F%98%E9%87%8F%EF%BC%88%E4%B8%8E%E4%B8%8B%E9%9D%A2%E7%9A%84%E4%B8%80%E6%A0%B7%E9%83%BD%E6%9C%89%E7%8B%AC%E7%89%B9%E7%9A%84%E4%BD%BF%E7%94%A8%E5%9C%BA%E6%99%AF%EF%BC%89\">ansible\u81ea\u52a8\u5316 \u2013 linux\u6781\u5ba2\u805a\u96c6\u5730<\/a><\/p><h3><span class=\"ez-toc-section\" id=\"4_%E6%B5%81%E7%A8%8B%E6%8E%A7%E5%88%B6%E5%B0%8F%E7%BB%93%EF%BC%88%E5%88%A4%E6%96%AD%E8%A7%A6%E5%8F%91%E5%99%A8%E5%BE%AA%E7%8E%AF%EF%BC%89\"><\/span><b>4) <\/b><b>\u6d41\u7a0b\u63a7\u5236\u5c0f\u7ed3\uff08\u5224\u65ad\/\u89e6\u53d1\u5668\/\u5faa\u73af\uff09<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1885\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u6d41\u7a0b\u63a7\u5236\u5c0f\u7ed3.png\" alt=\"\" width=\"1083\" height=\"226\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d41\u7a0b\u63a7\u5236\u5c0f\u7ed3.png 1083w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d41\u7a0b\u63a7\u5236\u5c0f\u7ed3-300x63.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d41\u7a0b\u63a7\u5236\u5c0f\u7ed3-1024x214.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d41\u7a0b\u63a7\u5236\u5c0f\u7ed3-768x160.png 768w\" sizes=\"(max-width: 1083px) 100vw, 1083px\" \/><\/p><h2><span class=\"ez-toc-section\" id=\"%E5%89%A7%E6%9C%AC%E8%B0%83%E8%AF%95%EF%BC%88%E5%90%84%E7%A7%8Ddebug%EF%BC%89\"><\/span><b>\u5267\u672c\u8c03\u8bd5\uff08\u5404\u79cddebug\uff09<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2><p>debug\u6d41\u7a0b.<\/p><p>\u76ee\u6807:\u901a\u8fc7\u6ce8\u91ca,\u7b49\u7b49\u65b9\u6cd5\u5b9a\u4f4d\u95ee\u9898.\u00a0 \u5e38\u7528\u7684\u51e0\u79cddebug\u65b9\u5f0f\uff1a<\/p><h3><span class=\"ez-toc-section\" id=\"1_%E6%A3%80%E6%9F%A5%E8%AF%AD%E6%B3%95%E4%B8%8E%E5%8D%95%E6%AD%A5%E6%89%A7%E8%A1%8C_%E8%BF%90%E8%A1%8C%E8%84%9A%E6%9C%AC%E6%97%B6%E4%BD%BF%E7%94%A8_-C\"><\/span><b>1) <\/b><b>\u68c0\u67e5\u8bed\u6cd5\u4e0e\u5355\u6b65\u6267\u884c\u00a0 \u00a0\u8fd0\u884c\u811a\u672c\u65f6\u4f7f\u7528 <\/b>-C<span class=\"ez-toc-section-end\"><\/span><\/h3><p><code>-C\u00a0 --check<\/code> \u6a21\u62df\u8fd0\u884c,\u4e0d\u4f5c\u51fa\u6539\u53d8,\u4e00\u4e9b\u53d8\u91cf\u53ef\u80fd\u4f1a\u63d0\u793a\u62a5\u9519,\u56e0\u4e3a-C\u6ca1\u6709\u771f\u6b63\u8fd0\u884c\u5267\u672c.\u00a0 \u6240\u4ee5register\u53d8\u91cf\u65e0\u6cd5\u4f7f\u7528\uff0c\u56e0\u4e3a\u4e0d\u8fd0\u884c\u83b7\u53d6\u4e0d\u5230\u6ce8\u518c\u7684\u53d8\u91cf\u4e2d\u7684\u503c<\/p><p><code>--syntax-check<\/code> \u53ea\u505a\u8bed\u6cd5\u68c0\u67e5,\u4e0d\u8fd0\u884c.<\/p><p>\u9ad8\u7ea7: <code>-- step<\/code> \u5355\u6b65\u8fd0\u884c.\u8fd0\u884c\u811a\u672c\u65f6\u7684\u6bcf\u4e00\u6b65\u90fd\u4f1a\u8be2\u95ee\u662f\u5426\u8fd0\u884c\uff0c<\/p><p>y\u6267\u884c\u8fd9\u4e2atask,n\u5ffd\u7565\u8fd9\u4e2atask,c&#8211;continue\u81ea\u52a8\u8fd0\u884c\uff1a\u4e0b\u4e00\u6b65\u5c31\u4e0d\u8be2\u95ee\u662f\u5426\u8fd0\u884c\uff0c\u4e00\u76f4\u8fd0\u884c\u5230\u5267\u672c\u7ed3\u675f<\/p><h3><span class=\"ez-toc-section\" id=\"2_%E4%BB%8E%E6%8C%87%E5%AE%9A%E4%BB%BB%E5%8A%A1%E5%BC%80%E5%A7%8B%E8%BF%90%E8%A1%8C_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\"><\/span><b>2) <\/b><b>\u4ece\u6307\u5b9a\u4efb\u52a1\u5f00\u59cb\u8fd0\u884c <\/b>\u2b50\u2b50\u2b50\u2b50\u2b50<span class=\"ez-toc-section-end\"><\/span><\/h3><p><code>--start-at-task<\/code> \u4ece\u6307\u5b9a\u4efb\u52a1\u8fd0\u884c\u4e00\u76f4\u8fd0\u884c\u5230\u5267\u672c\u7ed3\u675f.\uff1a\u8fd0\u884c\u5f53\u524d\u6307\u5b9a\u6b65\u9aa4\u548c\u540e\u9762\u7684\u6240\u6709\u6b65\u9aa4<\/p><p>\u4e00\u822c\u5148\u7528&#8211;list-tasks\u67e5\u770b\u5267\u672c\u4e2dtasks\u4e2d\u6240\u6709\u7684-name\uff08\u6a21\u5757\u6267\u884c\u7684\u4efb\u52a1\u7684\u540d\u5b57\uff09<\/p><p>\u7136\u540e&#8211;start-at-task &#8220;\u4efb\u52a1\u540d\u5b57&#8221; \u4ece\u6307\u5b9a\u4efb\u52a1\u5f00\u59cb\u8fd0\u884c.<\/p><p>\uff081\uff09<code>ansible-playbook\u00a0 --list-tasks 16.nfs_server_client_v2_handlers.yml<\/code><\/p><p>\uff082\uff09<code>ansible-playbook\u00a0 \u00a0 \u00a0--start-at-task \"3.\u521b\u5efa\u6302\u8f7d\u70b9\" 16.nfs_server_clit_v2_handlers.yml<\/code><\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1901\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u4ece\u67d0\u4e00\u6b65\u5f00\u59cb\u8fd0\u884c.png\" alt=\"\" width=\"1752\" height=\"1013\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u4ece\u67d0\u4e00\u6b65\u5f00\u59cb\u8fd0\u884c.png 1752w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u4ece\u67d0\u4e00\u6b65\u5f00\u59cb\u8fd0\u884c-300x173.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u4ece\u67d0\u4e00\u6b65\u5f00\u59cb\u8fd0\u884c-1024x592.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u4ece\u67d0\u4e00\u6b65\u5f00\u59cb\u8fd0\u884c-768x444.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u4ece\u67d0\u4e00\u6b65\u5f00\u59cb\u8fd0\u884c-1536x888.png 1536w\" sizes=\"(max-width: 1752px) 100vw, 1752px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"3_tag%E6%A0%87%E7%AD%BE%EF%BC%88%E5%92%8C%E6%A8%A1%E5%9D%97%E5%90%8D%E5%AD%97%E5%AF%B9%E9%BD%90%EF%BC%89%E2%AD%90%E2%AD%90\"><\/span><b>3) tag<\/b><b>\u6807\u7b7e\uff08\u548c\u6a21\u5757\u540d\u5b57\u5bf9\u9f50\uff09<\/b>\u2b50\u2b50<span class=\"ez-toc-section-end\"><\/span><\/h3><p>tag\u6807\u7b7e\u7c7b\u4f3c\u4e8e\u8d85\u5e02\u7269\u54c1\u7684\u5206\u7c7b,\u53ea\u4e0d\u8fc7tag\u6807\u7b7e\u662f\u7ed9ansible\u4e2d\u7684task\u8fdb\u884c\u5206\u7c7b,\u52a0\u4e0a\u6807\u8bb0; \u8fd0\u884c\u5267\u672c\u7684\u65f6\u5019\u8fd0\u884c\u6307\u5b9a\u7684tag\u6807\u7b7e\u6216\u6392\u9664\u67d0\u4e9btag.<\/p><p>\u8fd0\u884c\u5267\u672c\u7684\u65f6\u5019\u4f7f\u7528<code>--list-tasks<\/code> \u67e5\u770b\u4efb\u52a1\u540d\u5b57\u548c\u6807\u7b7e\u540d<\/p><p>-t \u8fd0\u884c\u7684\u6807\u7b7e,\u5982\u679c\u591a\u4e2a\u6807\u7b7e\u901a\u8fc7&#8221;,&#8221;\u5206\u5272<\/p><p>&#8211;skip-tags \u6392\u9664\u6307\u5b9a\u7684tags,\u5982\u679c\u591a\u4e2a\u6807\u7b7e\u901a\u8fc7&#8221;,&#8221;\u5206\u5272<\/p><p>\u4f7f\u7528\u65f6\u7684\u547d\u4ee4\uff1a\u4ee5\u4e0b\u7684\u683c\u5f0f\u90fd\u662f\u53ef\u4ee5\u7684<\/p><p>ansible-playbook &#8211;tags \u6807\u7b7e\u540d \u5267\u672c\u540d<\/p><p>ansible-playbook &#8211;tags=\u6807\u7b7e\u540d \u5267\u672c\u540d<\/p><p>ansible-playbook -t=\u6807\u7b7e\u540d \u5267\u672c\u540d<\/p><p>ansible-playbook -t \u6807\u7b7e\u540d \u5267\u672c\u540d<\/p><p>\u5728\u540c\u4e00\u5267\u672c\u4e2d\uff0ctags\u662f\u53ef\u4ee5\u91cd\u590d\u7684\uff0c\u56e0\u4e3a\u53ef\u4ee5\u7ed9\u4e0d\u540c\u7684\u6a21\u5757\u6253\u4e0a\u540cige\u6807\u7b7e\uff0ctags\u8fd8\u53ef\u4ee5\u7ed9\u6bcf\u4e00\u6b65\u6a21\u5757\u7684\u64cd\u4f5c\u5199\u6210\u591a\u79cd\u6807\u7b7e\u7684\u5f62\u5f0f\uff0c\u5982\uff1a<\/p><pre>tags: \"01\"\n\u6216\u8005\ntags:\n  - server_02_conf\n  - nfs_server<\/pre><p>vim\u6279\u91cf\u6dfb\u52a0tags\u7684\u7ec6\u8282\uff0c\u5c06\u5149\u6807\u9009\u4e2d\u6570\u5b57\uff0c\u6309ctrl+a\u662f\u6570\u5b57\u52a01\uff0cctrl+x\u662f\u6570\u5b57\u51cf\u4e00\uff0c\u5982\u679c\u5149\u6807\u5904\u662f\u4e24\u4f4d\u6570\u6570\u5b57\uff0c\u5149\u6807\u4e0d\u7ba1\u653e\u5728\u54ea\u4e00\u4f4d\u4e0a\u9762\u90fd\u4f1a\u7ed9\u6574\u4e2a\u6570\u5b57\u52a01\uff1a\u5982\uff0c\u5149\u6807\u653e\u572814\u4e0a\u4e2d\u76844\u4e0a\u6309\u4e86ctrl+a\uff0c\u6570\u5b57\u4f1a\u53d8\u621015<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1902\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u4f7f\u7528tags.png\" alt=\"\" width=\"1700\" height=\"1165\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4f7f\u7528tags.png 1700w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4f7f\u7528tags-300x206.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4f7f\u7528tags-1024x702.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4f7f\u7528tags-768x526.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u4f7f\u7528tags-1536x1053.png 1536w\" sizes=\"(max-width: 1700px) 100vw, 1700px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"4_%E5%BF%BD%E7%95%A5%E9%94%99%E8%AF%AF%EF%BC%88%E5%92%8C%E6%A8%A1%E5%9D%97%E5%90%8D%E5%AD%97%E5%AF%B9%E9%BD%90%EF%BC%89\"><\/span><b>4) <\/b><b>\u5ffd\u7565\u9519\u8bef\uff08\u548c\u6a21\u5757\u540d\u5b57\u5bf9\u9f50\uff09<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u8fd0\u884c\u5267\u672c\u7684\u65f6\u5019,\u56e0\u4e3a\u91cd\u590d\u8fd0\u884c\u5bfc\u81f4\u7684\u9519\u8bef\u63d0\u793a,\u5e76\u4e0d\u662f\u771f\u7684\u9519\u8bef.<\/p><p><code>\u6bd4\u5982:\u76ee\u5f55\u5df2\u7ecf\u5b58\u5728,\u7528\u6237\u5df2\u7ecf\u5b58\u5728.;<\/code>\u5728\u8fd9\u79cd\u60c5\u51b5\u4e0b,\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7<code>ignore_errors<\/code>\u5ffd\u7565\u9519\u8bef,\u8ba9\u5267\u672c\u53ef\u4ee5\u7ee7\u7eed\u8fd0\u884c<\/p><pre>ignore_errors: true  \ntrue\/false\nyes\/no\nbool\u5e03\u5c14\u7c7b\u578b\u7684\u6570\u636e.<br \/>---<br \/>- hosts: all<br \/>tasks:<br \/>- name: 01<br \/>shell: echo 01 &gt;&gt;\/tmp\/test.log<br \/>- name: 02<br \/>shell: echo 02 &gt;&gt;\/tmp\/test.log<br \/>- name: 03<br \/>shell: cho 03 &gt;&gt;\/tmp\/test.log<br \/>ignore_errors: true<\/pre><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1903\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u8df3\u8fc7\u9519\u8bef.png\" alt=\"\" width=\"2540\" height=\"1219\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u8df3\u8fc7\u9519\u8bef.png 2540w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u8df3\u8fc7\u9519\u8bef-300x144.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u8df3\u8fc7\u9519\u8bef-1024x491.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u8df3\u8fc7\u9519\u8bef-768x369.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u8df3\u8fc7\u9519\u8bef-1536x737.png 1536w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5\u8df3\u8fc7\u9519\u8bef-2048x983.png 2048w\" sizes=\"(max-width: 2540px) 100vw, 2540px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"5_%E5%89%A7%E6%9C%AC%E8%B0%83%E8%AF%95%E5%B0%8F%E7%BB%93\"><\/span><b>5) <\/b><b>\u5267\u672c\u8c03\u8bd5\u5c0f\u7ed3 <\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>ansible\u5267\u672c\u4e66\u5199\u5efa\u8bae:<\/p><p>\u4f7f\u7528\u53d8\u91cf,\u7ed9\u6bcf\u4e2a\u4efb\u52a1\u52a0\u4e0atag\u6807\u7b7e.<\/p><p>\u5e38\u89c1: \u4e00\u822c\u6709\u5bc6\u94a5\u8ba4\u8bc1\u95ee\u9898.<\/p><p>\u5e38\u89c1\u95ee\u9898:\u5267\u672c\u672c\u8eab<\/p><p>\u68c0\u67e5\u8bed\u6cd5-C\u00a0 &#8211;syntax-check<\/p><p>tags\u6807\u7b7e<\/p><p>&#8211;start-at-task<\/p><p>\u5355\u884c\u6267\u884c: &#8211;step<\/p><p>\u5ffd\u7565\u9519\u8bef<\/p><h2><span class=\"ez-toc-section\" id=\"23_Jinja2%E6%A8%A1%E6%9D%BF\"><\/span><b>2.3 Jinja2<\/b><b>\u6a21\u677f<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2><p>template\u6a21\u5757\u4e0exxx.j2\u6587\u4ef6<\/p><p>\u5e94\u7528\u573a\u666f:<\/p><ol><li>\u8fdb\u884c\u5206\u53d1\u914d\u7f6e\u6587\u4ef6\u6216\u6587\u4ef6\u7684\u65f6\u5019,\u9700\u8981\u5728\u6587\u4ef6\u4e2d\u4f7f\u7528\u53d8\u91cf,\u9700\u8981\u4f7f\u7528jinja2\u6587\u4ef6 nginx.conf.j2,\u9700\u8981\u4f7f\u7528template\u6a21\u5757\u8fdb\u884c\u5206\u53d1. (\u76ee\u524d\u5fc5\u987b\u8981\u4f1a\u7684)<\/li><li>\u00a0\u8fdb\u884c\u5224\u65ad<\/li><li>\u8fdb\u884c\u5faa\u73af<\/li><\/ol><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1892\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/j2\u6a21\u677f.png\" alt=\"\" width=\"1815\" height=\"939\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u6a21\u677f.png 1815w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u6a21\u677f-300x155.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u6a21\u677f-1024x530.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u6a21\u677f-768x397.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u6a21\u677f-1536x795.png 1536w\" sizes=\"(max-width: 1815px) 100vw, 1815px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"1_%E5%9F%BA%E6%9C%AC%E4%BD%BF%E7%94%A8_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\"><\/span><b>1) <\/b><b>\u57fa\u672c\u4f7f\u7528 <\/b>\u2b50\u2b50\u2b50\u2b50\u2b50<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u6848\u4f8b\uff1a\u89c1\u4e0a\u65b9\u7684facts\u53d8\u91cf\u4e2d\u4f7f\u7528j2\u6a21\u677f\u8fdb\u884c\u8c03\u7528facts\u53d8\u91cf\u7684\u4f8b\u5b50\uff1a<a href=\"https:\/\/linuxjk.cn\/?p=1785#%E6%A1%88%E4%BE%8B%EF%BC%9A%E6%89%B9%E9%87%8F%E4%BF%AE%E6%94%B9%E7%B3%BB%E7%BB%9Fetcmotd%E6%96%87%E4%BB%B6%E7%99%BB%E5%BD%95%E7%9A%84%E6%97%B6%E5%80%99%E8%BE%93%E5%87%BA%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF\">ansible\u81ea\u52a8\u5316 \u2013 linux\u6781\u5ba2\u805a\u96c6\u5730<\/a><\/p><h3><span class=\"ez-toc-section\" id=\"2_j2%E5%88%A4%E6%96%AD%EF%BC%88%E5%86%99%E5%9C%A8j2%E4%B8%AD%EF%BC%89\"><\/span><b>2) j2<\/b><b>\u5224\u65ad<\/b>\uff08\u5199\u5728j2\u4e2d\uff09<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u5e94\u7528\u573a\u666f:\u672a\u6765\u67d0\u4e00\u4e2a\u670d\u52a1,\u4e3b\u5907,\u5728\u4e3b\u59072\u4e2a\u8282\u70b9\u4e0a,\u914d\u7f6e\u6587\u4ef6\u51e0\u4e4e\u662f\u4e00\u6a21\u4e00\u6837\u7684.(\u4e3b:master, \u5907:backup)<\/p><p>\u6839\u636e\u4e3b\u673a\u540d\u6216ip\u6216\u5176\u4ed6\u6761\u4ef6,\u751f\u6210\u4e0d\u540c\u7684\u914d\u7f6e\u6587\u4ef6.<\/p><p>\u76ee\u524d\u6709\u4e2a\u914d\u7f6e\u6587\u4ef6\u53ebkeepalived.conf,\u6587\u4ef6\u4e2d\u7684\u5185\u5bb9\u6839\u636elb01\u6216lb02\u6709\u6240\u533a\u522b.<\/p><p>\u5982\u679c\u662flb01\u5219\u914d\u7f6e\u6587\u4ef6\u5185\u5bb9\u662f<\/p><pre><strong>keepalived-master.conf<\/strong>\n<strong>state MASTER<\/strong><\/pre><p>\u5982\u679c\u662flb02\u5219\u914d\u7f6e\u6587\u4ef6\u5185\u5bb9\u662f<\/p><pre><strong>keepalived-backup.conf<\/strong>\n<strong>state BACKUP<\/strong><\/pre><pre>cat 15.jinja2-if.yml\n- hosts: all\n  tasks:\n    - name: \u5206\u53d1\u914d\u7f6e\u6587\u4ef6\n  \u00a0   template:\n  \u00a0 \u00a0 src: templates\/keepalived.conf.j2\n  \u00a0 \u00a0 dest: \/tmp\/keepalived.conf\n\u5c06\u6240\u6709\u7684j2\u6587\u4ef6\u653e\u5728templates\u76ee\u5f55\u4e2d\n[root@m01 \/server\/scripts\/playbook]# tree templates\/\ntemplates\/\n\u251c\u2500\u2500 keepalived.conf.j2\n\u2514\u2500\u2500 motd.j2\n\n[root@m01 \/server\/scripts\/playbook]# cat templates\/keepalived.conf.j2\n#this is keepalived.conf\n{% if ansible_hostname == \"lb01\" %}\n  state \u4e3b\u8282\u70b9\n{% elif ansible_hostname == \"lb02\" %}\n  state \u5907\u8282\u70b9\n{% endif %}<\/pre><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1904\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5j2\u5224\u65ad.png\" alt=\"\" width=\"1985\" height=\"479\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5j2\u5224\u65ad.png 1985w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5j2\u5224\u65ad-300x72.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5j2\u5224\u65ad-1024x247.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5j2\u5224\u65ad-768x185.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6d4b\u8bd5j2\u5224\u65ad-1536x371.png 1536w\" sizes=\"(max-width: 1985px) 100vw, 1985px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"3_j2%E5%BE%AA%E7%8E%AF%EF%BC%88%E5%86%99%E5%9C%A8j2%E4%B8%AD%EF%BC%89\"><\/span>3) j2\u5faa\u73af\uff08\u5199\u5728j2\u4e2d\uff09<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u5c06\u591a\u4e2aip\u5199\u5165\u5230web\u670d\u52a1\u5668\u7684\/tmp\/\u76ee\u5f55\u4e0b\u7684\u914d\u7f6e\u6587\u4ef6 server.conf \u4e2d\uff1a<\/p><pre>templates\/server.conf.j2<br \/>{% for ip in [1,2,3,4,5,6] %}\n 10.0.0.{{ ip }}\n{% endfor %}\n#range(2,11) \u751f\u6210\u6570\u5b57\u5e8f\u5217 2\u8868\u793a\u4ece2\u5f00\u59cb,\u523010\u7ed3\u675f\n#\u987e\u5934\u4e0d\u987e\u815a\n{% for ip in range(2,11) %}\n 10.0.0.{{ ip }}\n{%endfor%}\n{% for ip in [\"lidao\",\"oldwang\"] %}\n 10.0.0.{{ ip }}\n{%endfor%}<br \/>\u5267\u672c\u6587\u4ef6\uff1a16_j2_for.yml<br \/>---<br \/>- hosts: web<br \/>tasks: <br \/>- name: use template create server.conf<br \/>template: <br \/>src: templates\/server.conf.j2<br \/>dest: \/tmp\/server.conf\n<\/pre><h3><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1905\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/j2\u5faa\u73af.png\" alt=\"\" width=\"1260\" height=\"1247\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u5faa\u73af.png 1260w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u5faa\u73af-300x297.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u5faa\u73af-1024x1013.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/j2\u5faa\u73af-768x760.png 768w\" sizes=\"(max-width: 1260px) 100vw, 1260px\" \/><\/h3><p>\u51fa\u73b0\u4e86\u4e0a\u9762\u7684\u7a7a\u884c\u95ee\u9898\u53ef\u4ee5\u5728\u5faa\u73af\u7684%\u524d\u9762\u52a0\u4e00\u4e2a-\uff0c\u5373\u53ef\u89e3\u51b3<\/p><p><code>{% for ip in [1,2,3,4,5,6] -%}<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"4_%E5%B0%8F%E7%BB%93\"><\/span>4) \u5c0f\u7ed3<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u6838\u5fc3: \u4f7f\u7528.j2\u7ed3\u5c3e+template\u5206\u53d1\u5e26\u6709\u53d8\u91cf\u7684\u6587\u4ef6\u5373\u53ef.<br \/>\u8fd8\u6709\u7cbe\u529b\u7684\u53ef\u4ee5\u7814\u7a76jinja2\u7684\u5224\u65ad\u4e0e\u5faa\u73af.<\/p><h1><span class=\"ez-toc-section\" id=\"Ansible-%E8%BF%9B%E9%98%B6\"><\/span><b> Ansible-<\/b><b>\u8fdb\u9636 <\/b><span class=\"ez-toc-section-end\"><\/span><\/h1><h2><span class=\"ez-toc-section\" id=\"31_Vault_%E4%BF%9D%E9%99%A9%E7%AE%B1\"><\/span><b>3.1 Vault\u00a0 \u4fdd\u9669\u7bb1<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2><p>\u7ed9\u673a\u5bc6\u6587\u4ef6\u52a0\u5bc6.&#8212;&#8212;\u5267\u672c,\u4e3b\u673a\u6e05\u5355,\u53d8\u91cf\u6587\u4ef6,\u6587\u4ef6.<\/p><p>#1.\u8fdb\u884c\u52a0\u5bc6<\/p><p><code>ansible-vault encrypt \u6587\u4ef6 #enable<\/code><\/p><p>#2.\u52a0\u5bc6\u540e\u8fdb\u884c\u7f16\u8f91\uff1a<\/p><p><code>ansible-vault edit \u6587\u4ef6---\u9ed8\u8ba4\u4f7f\u7528vim\u7f16\u8f91\u5668\u6253\u5f00\u6587\u4ef6\uff0c\u7f16\u8f91\u5b8c\u4f9d\u65e7\u4fdd\u6301\u52a0\u5bc6\u72b6\u6001<\/code><\/p><p>#\u8fdb\u884c\u4f7f\u7528<\/p><p><code>ansible\u6216ansible-playbook \u00a0 --ask-vault-pass<\/code> \u5373\u53ef<\/p><p><code>--ask-vault-pass<\/code> \u4ea4\u4e92<\/p><p><code>--vault-password-file<\/code> \u5bc6\u7801\u6587\u4ef6<\/p><p>#\u5f7b\u5e95\u89e3\u5bc6,\u53ef\u4ee5cat\u67e5\u770b<\/p><p><code>ansible-vault decrypt hosts#<\/code><\/p><h2><span class=\"ez-toc-section\" id=\"31_Roles_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\"><\/span><b>3.1 Roles <\/b>\u2b50\u2b50\u2b50\u2b50\u2b50<span class=\"ez-toc-section-end\"><\/span><\/h2><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1906\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/roles\u67b6\u6784\u56fe.png\" alt=\"\" width=\"2439\" height=\"1099\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u67b6\u6784\u56fe.png 2439w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u67b6\u6784\u56fe-300x135.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u67b6\u6784\u56fe-1024x461.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u67b6\u6784\u56fe-768x346.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u67b6\u6784\u56fe-1536x692.png 1536w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u67b6\u6784\u56fe-2048x923.png 2048w\" sizes=\"(max-width: 2439px) 100vw, 2439px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"1_roles%E8%AF%A6%E8%A7%A3%EF%BC%9A\"><\/span><b>1) roles<\/b><b>\u8be6\u89e3\uff1a<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><h5><span class=\"ez-toc-section\" id=\"Roles%E6%9C%AC%E8%B4%A8%E8%AE%A9%E6%88%91%E4%BB%AC%E4%B9%A6%E5%86%99%E5%89%A7%E6%9C%AC%E7%9A%84%E6%97%B6%E5%80%99%E6%9C%89%E4%B8%AA%E7%9B%AE%E5%BD%95%E8%A7%84%E8%8C%83%EF%BC%9A\"><\/span>Roles\u672c\u8d28\u8ba9\u6211\u4eec\u4e66\u5199\u5267\u672c\u7684\u65f6\u5019\u6709\u4e2a\u76ee\u5f55\u89c4\u8303\uff1a<span class=\"ez-toc-section-end\"><\/span><\/h5><p>\u5c06\u6211\u4eec\u5b8c\u6574\u7684\u5267\u672c\u62c6\u5206\u82e5\u5e72\u90e8\u5206,\u6709\u7684\u4e13\u95e8\u5b58\u653etasks\u90e8\u5206\uff08\u5267\u672c\uff09\uff0c\u5b58\u653e\u53d8\u91cf\uff0c\u5b58\u653e\u666e\u901a\u6587\u4ef6\uff0c\u5b58\u50a8\u53d8\u91cf\u6587\u4ef6,handlers\u5185\u5bb9.<\/p><p>\u4f5c\u7528\uff1a\u589e\u52a0\u5267\u672c\u53ef\u8bfb\u6027,\u89c4\u8303\u6027. \u56e0\u4e3a\u968f\u7740\u6211\u4eec\u4e66\u5199\u7684\u5267\u672c\u8d8a\u6765\u8d8a\u590d\u6742,\u6211\u4eec\u53d1\u73b0,\u5267\u672c\u4f7f\u7528\u5230\u7684\u6587\u4ef6,\u914d\u7f6e\u6587\u4ef6,j2\u6587\u4ef6 \u90fd\u653e\u5728\u4e0e\u5267\u672c\u540c\u4e00\u5c42\u76ee\u5f55\u4e0b\uff0c\u4e0d\u65b9\u4fbf\u540e\u671f\u7ef4\u62a4.<\/p><p>\u5267\u672c\u4f7f\u7528\u5230\u7684\u53d8\u91cf\u6587\u4ef6(group_vars\/all\/vars.yml),\u666e\u901a\u6587\u4ef6(copy),\u6a21\u677f\u914d\u7f6e\u6587\u4ef6(template),handlers(\u89e6\u53d1\u5668.)<\/p><p>\u5b58\u653e\u7684\u89c4\u5219\uff1a\u9488\u5bf9\u4e0d\u540c\u7684\u4e3b\u673a\uff08hosts\uff09\u4e66\u5199\u7684\u4e0d\u540ctasks\u5c5e\u4e8eroles\u4e2d\u7684\u540c\u7ea7\u76ee\u5f55\uff0c\u4e00\u4e2arole\u91cc\u9762\u5305\u542b\u591a\u4e2a\u6a21\u5757\uff08tasks\u4e2d\u7684\u6240\u6709\u5185\u5bb9\uff09<\/p><h3><span class=\"ez-toc-section\" id=\"2_%E5%88%9B%E5%BB%BAroles%E7%8E%AF%E5%A2%83\"><\/span><b>2) <\/b><b>\u521b\u5efa<\/b><b>roles<\/b><b>\u73af\u5883<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><pre>cd \/server\/ans\/<br \/>#\u65b0\u5efa\u4e00\u4e2aroles\u76ee\u5f55\uff0c\u5c06\u4e4b\u524d\u7684\u6a21\u677f\u6587\u4ef6\u7b49\u653e\u5230roles\u4e0b\u4f7f\u7528\u5230\u7684\u5bf9\u5e94role\u7684\u5b50\u6587\u4ef6\u5939\u4e2d<br \/>mkdir -p roles\/{nfs-server,nfs-client}\/{files,tasks,templates,handlers}<br \/>mkdir -p roles\/group_vars\/all\/<\/pre><h3><span class=\"ez-toc-section\" id=\"3_%E5%87%86%E5%A4%87nfs-server%E5%92%8Cnfs-client%E7%9A%84roles%EF%BC%88%E5%A1%AB%E5%85%85%E6%96%87%E4%BB%B6%E6%8B%86%E5%88%86%E5%89%A7%E6%9C%AC%EF%BC%89\"><\/span><b>3) <\/b><b>\u51c6\u5907<\/b><b>nfs-server\u548cnfs-client<\/b><b>\u7684<\/b><b>roles\uff08\u586b\u5145\u6587\u4ef6\/\u62c6\u5206\u5267\u672c\uff09<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p><strong>\u5c06\u6574\u4e2a\u90e8\u7f72nfs\u670d\u52a1\u5668\u7684\u5267\u672c\u62c6\u5f00\u5206\u4e3a\u670d\u52a1\u7aef\u548c\u5ba2\u6237\u7aef\uff1a<\/strong><\/p><ol><li>\u521b\u5efa\u6587\u4ef6\/\u76ee\u5f55<\/li><li>\u5f80\u76ee\u5f55\u4e2d\u653e\u8be5\u653e\u7684\u6587\u4ef6,<strong>\u4e3b\u673a\u6e05\u5355\u653e\u5728roles\/inventory\uff0c\u6a21\u677f\u6587\u4ef6\u653e\u7f6e\u5728template\u76ee\u5f55\uff0c\u53d8\u91cf\u6587\u4ef6\u653e\u5728group_vars\/all\/vars.yml\u4e2d\u6839\u636e\u4e3b\u673a\u6e05\u5355\u91cc\u7684\u5206\u7ec4\u53bb\u5339\u914d\u4e0d\u540c\u7684\u53d8\u91cf\u6587\u4ef6.\u6216\u8005\u7528\/vars\/vars.yml\u7684\u683c\u5f0f\u7ed9\u6240\u6709\u673a\u5668\u5171\u4eab\u53d8\u91cf\u6587\u4ef6<\/strong><\/li><li><strong>tasks\u90e8\u5206\u5199\u5165role\u4e2d\u7684main.yml\uff0chandlers\u90e8\u5206\u5199\u5165handlets\/main.yml\uff0c<\/strong><\/li><li>\u6700\u540e\u5728roles\u4e0b\u5199\u63a7\u5236roles\u4e2d\u5404\u4e2arole\u7684\u5267\u672c<\/li><\/ol><pre>[root@m01 \/server\/ans\/roles]# cat top.yml <br \/>---<br \/>- hosts: nfs<br \/>gather_facts: false<br \/>roles: <br \/>- role: nfs-server<br \/>- hosts: web<br \/>gather_facts: false<br \/>roles:<br \/>- role: nfs-client<\/pre><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1907\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/roles\u6d4b\u8bd5.png\" alt=\"\" width=\"779\" height=\"1061\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u6d4b\u8bd5.png 779w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u6d4b\u8bd5-220x300.png 220w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u6d4b\u8bd5-752x1024.png 752w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u6d4b\u8bd5-768x1046.png 768w\" sizes=\"(max-width: 779px) 100vw, 779px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"4_roles%E5%B0%8F%E7%BB%93\"><\/span><b>4) roles<\/b><b>\u5c0f\u7ed3<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u4e66\u5199\u5267\u672c\u7684\u65f6\u5019\u901a\u8fc7roles\u65b9\u5f0f\u5b9e\u73b0\uff0c\u4f7f\u5267\u672c\u66f4\u52a0\u89c4\u8303\uff0c\u6587\u4ef6\u597d\u7ba1\u7406<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1908\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/\u6807\u51c6roles\u7ed3\u6784.png\" alt=\"\" width=\"1514\" height=\"925\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6807\u51c6roles\u7ed3\u6784.png 1514w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6807\u51c6roles\u7ed3\u6784-300x183.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6807\u51c6roles\u7ed3\u6784-1024x626.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/\u6807\u51c6roles\u7ed3\u6784-768x469.png 768w\" sizes=\"(max-width: 1514px) 100vw, 1514px\" \/><\/p><h2><span class=\"ez-toc-section\" id=\"32_include%E6%96%87%E4%BB%B6%E5%8C%85%E5%90%AB\"><\/span><b>3.2 include<\/b><b>\u6587\u4ef6\u5305\u542b<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2><p>\u95ee\u9898\uff1a\u5728\u6211\u4eec\u4e66\u5199\u5267\u672c\u7684\u65f6\u5019,\u4f1a\u6d89\u53ca\u5230\u591a\u4e2a\u6b65\u9aa4,\u8fd8\u4f1a\u6d89\u53ca\u5230\u670d\u52a1\u7aef\u548c\u5ba2\u6237\u7aef.\u53d1\u73b0\u5267\u672c\u8d8a\u6765\u8d8a\u5927,\u4e0d\u5bb9\u6613\u8fdb\u884c\u5206\u6790\u4e0e\u9605\u8bfb.<\/p><p>\u89e3\u51b3\u65b9\u6848\uff1a\u628a\u5267\u672c\u62c6\u5206\u5f00,\u5206\u62102\u4e2a\u6587\u4ef6\u670d\u52a1\u7aef,\u5ba2\u6237\u7aef.<\/p><p>\u8fd9\u65f6\u5019\u53ef\u4ee5\u901a\u8fc7include_tasks\u7684\u529f\u80fd\u628a\u591a\u4e2a\u5267\u672c\u6587\u4ef6\u5408\u5e76\u5728\u4e00\u8d77,\u8ba9\u5267\u672c\u53d8\u6210\u591a\u4e2a\u65b9\u4fbf\u9605\u8bfb\u4e0e\u7ef4\u62a4<\/p><p>include\u7684\u4f5c\u7528\u7c7b\u4f3cshell\u811a\u672c\u4e2d\u7684\u51fd\u6570\uff0c\u53ef\u4ee5\u5f15\u7528\u4e0d\u540croles\u4e0b\u7684tasks\u4e2d\u7684\u5185\u5bb9\u9632\u6b62\u5267\u672c\u8fc7\u5927<\/p><h3><span class=\"ez-toc-section\" id=\"%E5%9C%A8tasks%E7%9B%AE%E5%BD%95%E4%B8%AD%E4%BD%BF%E7%94%A8%EF%BC%9A\"><\/span>\u5728tasks\u76ee\u5f55\u4e2d\u4f7f\u7528\uff1a<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u6bd4\u5982\u4e00\u4e2aroles\u4e2d\u7684tasks\u6709\u591a\u4e2a\u5267\u672c\uff0c\u539f\u672c\u7684\u65b9\u6848\u662f\u90fd\u5199\u5728main.yml\u4e2d,\u4f7f\u7528include\u53ef\u4ee5\u7b80\u5316main.yml\uff0c\u5c06\u539f\u672c\u7684main\u62c6\u5f00\u6309\u7167\u4e0d\u540c\u7684\u529f\u80fd\u5206\u4e3a\u591a\u4e2a\u540c\u7ea7\u76ee\u5f55\u7684\u5176\u4ed6tasks\u5e76\u4f7f\u7528include\u5f15\u7528\u8fd9\u4e9btasks<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1919\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/tasks\u4e2d\u4f7f\u7528include\u2018.png\" alt=\"\" width=\"1070\" height=\"578\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/tasks\u4e2d\u4f7f\u7528include\u2018.png 1070w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/tasks\u4e2d\u4f7f\u7528include\u2018-300x162.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/tasks\u4e2d\u4f7f\u7528include\u2018-1024x553.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/tasks\u4e2d\u4f7f\u7528include\u2018-768x415.png 768w\" sizes=\"(max-width: 1070px) 100vw, 1070px\" \/><\/p><h3><span class=\"ez-toc-section\" id=\"%E5%9C%A8%E8%B0%83%E7%94%A8roles%E6%97%B6%E4%B8%AD%E4%BD%BF%E7%94%A8%EF%BC%9A%EF%BC%88nfs-server%E8%A7%92%E8%89%B2%E4%B8%AD%E6%89%80%E6%9C%89%E7%9A%84yml%E4%B8%AD%E9%83%BD%E4%B8%8D%E7%94%A8%E5%86%99%E5%8D%95%E8%AF%8D%EF%BC%9Ahoststaskshandlers%EF%BC%89\"><\/span>\u5728\u8c03\u7528roles\u65f6\u4e2d\u4f7f\u7528\uff1a\uff08nfs-server\u89d2\u8272\u4e2d\u6240\u6709\u7684yml\u4e2d\u90fd\u4e0d\u7528\u5199\u5355\u8bcd\uff1ahosts\/tasks\/handlers\uff09<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1920\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/roles\u4e2d\u4f7f\u7528include.png\" alt=\"\" width=\"1093\" height=\"1137\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u4e2d\u4f7f\u7528include.png 1093w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u4e2d\u4f7f\u7528include-288x300.png 288w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u4e2d\u4f7f\u7528include-984x1024.png 984w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/roles\u4e2d\u4f7f\u7528include-768x799.png 768w\" sizes=\"(max-width: 1093px) 100vw, 1093px\" \/><span class=\"ez-toc-section-end\"><\/span><\/h3><h4><span class=\"ez-toc-section\" id=\"%E5%8F%AA%E6%9C%89%E5%9C%A8roles%E5%A4%96%E7%9A%84%E5%89%A7%E6%9C%AC%EF%BC%8C%E8%B0%83%E7%94%A8roles%E6%97%B6%E5%86%99%E9%9C%80%E8%A6%81%E5%86%99hoststasksroles\"><\/span>\u53ea\u6709\u5728roles\u5916\u7684\u5267\u672c\uff0c\u8c03\u7528roles\u65f6\u5199\u9700\u8981\u5199\/hosts\/tasks\/roles\/<span class=\"ez-toc-section-end\"><\/span><\/h4><h4><span class=\"ez-toc-section\" id=\"%E5%A6%82%E4%BD%95%E5%9C%A81%E4%B8%AA%E5%89%A7%E6%9C%AC%E4%B8%AD%E4%BD%BF%E7%94%A8include\"><\/span>\u5982\u4f55\u57281\u4e2a\u5267\u672c\u4e2d\u4f7f\u7528include<span class=\"ez-toc-section-end\"><\/span><\/h4><pre>- hosts: backup<br \/>tasks:<br \/>  \u00a0- include_tasks: install.yml<br \/>  \u00a0- include_tasks: config.yml<br \/>\u00a0 \u00a0- include_tasks: start.yml<\/pre><h3><span class=\"ez-toc-section\" id=\"include%E5%8A%9F%E8%83%BD%E5%B0%8F%E7%BB%93\"><\/span>include\u529f\u80fd\u5c0f\u7ed3<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u9632\u6b62\u6211\u4eec\u5267\u672c\u8fc7\u5927,\u5bf9\u5267\u672c\u8fdb\u884c\u62c6\u5206<\/p><h2><span class=\"ez-toc-section\" id=\"34_Galaxy\"><\/span><a href=\"http:\/\/galaxy.ansible.com\"><b>3.4 Galaxy<\/b><\/a><span class=\"ez-toc-section-end\"><\/span><\/h2><p>\u53ef\u4ee5\u5728\u5b98\u7f51\u4e0b\u8f7d\u522b\u4eba\u7684roles\u4f7f\u7528\ud83d\udc46<\/p><p>\u91cc\u9762\u6709\u5f88\u591a\u96c6\u5408\uff0c\u9075\u5faa\u67d0\u79cd\u683c\u5f0f\uff0c\u8fd9\u91cc\u9762\u7684galaxy\u4f1a\u76f8\u5bf9\u590d\u6742\uff0c\u56e0\u4e3aroles\u7684\u521b\u4f5c\u8005\u8003\u8651\u5230\u9002\u914d\u5927\u90e8\u5206\u7cfb\u7edf\u4f1a\u589e\u52a0\u4e00\u4e9b\u5224\u65ad\uff08\u6709\u4e2a\u4eba\u5199\u7684\u4e5f\u6709\u7ea2\u5e3d\u5199\u7684\uff09<\/p><p>\u7f51\u7ad9\u754c\u9762\u53ef\u4ee5\u4e0b\u8f7droles\u7684\u538b\u7f29\u5305\uff0c\u89e3\u538b\u540e\u770b\u5230\u5f88\u591aroles\uff0ctasks\uff0c\u770b\u91cc\u9762\u7684main.yml<br \/>\u6216\u8005\u547d\u4ee4\u884c\u4e0b\u8f7d\u4f7f\u7528<code>ansible-galaxy collection install nginxinc.nginx_core<\/code><\/p><h2><span class=\"ez-toc-section\" id=\"35_%E4%BC%98%E5%8C%96\"><\/span><b>3.5 <\/b><b>\u4f18\u5316<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2><h3><span class=\"ez-toc-section\" id=\"1_ansible%E5%AE%89%E5%85%A8%E4%BC%98%E5%8C%96-sudo_%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90%E2%AD%90\"><\/span><b>1) ansible<\/b><b>\u5b89\u5168\u4f18\u5316<\/b><b>-sudo <\/b>\u2b50\u2b50\u2b50\u2b50\u2b50<span class=\"ez-toc-section-end\"><\/span><\/h3><h4><span class=\"ez-toc-section\" id=\"a_%E6%95%B4%E4%BD%93%E6%B5%81%E7%A8%8B\"><\/span><b>a) <\/b><b>\u6574\u4f53\u6d41\u7a0b <\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u7981\u7528\u88ab\u7ba1\u7406\u673a\u7684root\u8fdc\u7a0b\u767b\u5f55,ansible\u5982\u4f55\u5b9e\u73b0?<\/p><p>ansible\u5728\u88ab\u7ba1\u7406\u673a\u4e2d\u4f7f\u7528\u666e\u901a\u7528\u6237(\u5177\u6709sudo\u6743\u9650)<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1912\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/ansible\u5b89\u5168\u4f18\u5316.png\" alt=\"\" width=\"978\" height=\"1188\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u5b89\u5168\u4f18\u5316.png 978w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u5b89\u5168\u4f18\u5316-247x300.png 247w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u5b89\u5168\u4f18\u5316-843x1024.png 843w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u5b89\u5168\u4f18\u5316-768x933.png 768w\" sizes=\"(max-width: 978px) 100vw, 978px\" \/><\/p><h4><span class=\"ez-toc-section\" id=\"b_%E8%AF%A6%E7%BB%86%E6%AD%A5%E9%AA%A4\"><\/span><b>b) <\/b><b>\u8be6\u7ec6\u6b65\u9aa4<\/b><b>:<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>\u76ee\u524d\u64cd\u4f5c\uff1a\u5148\u4f7f\u7528ans\u811a\u672c\u8fdb\u884c\u666e\u901a\u7528\u6237ans\u7684\u521b\u5efa<\/p><p>\u6dfb\u52a0\u7528\u6237\u8bbe\u7f6e\u5bc6\u7801<\/p><p>\u914d\u7f6esudo\u6743\u9650<\/p><p>\u4fee\u6539sshd_config\u914d\u7f6e\u6587\u4ef6<\/p><p>\u91cd\u542fsshd<\/p><pre>[root@m01 \/server\/ans\/playbooks]# cat14.useradd_sudo.yml<br \/>- hosts: all<br \/>vars:<br \/>  username: ans<br \/>  password: \"1\"<br \/>gather_facts: false<br \/>tasks:<br \/>  \u00a0- name: 01.\u6dfb\u52a0\u7528\u6237\u8bbe\u7f6e\u5bc6\u7801<br \/>  \u00a0 user:<br \/>  \u00a0 \u00a0 name: \"{{ username }}\"<br \/>  \u00a0 \u00a0 shell: \/bin\/bash<br \/>  \u00a0 \u00a0 password: \"{{ password |password_hash('sha512', 'lidao') }}\"<br \/>  \u00a0 \u00a0 state: present<br \/>  \u00a0- name: 02.\u914d\u7f6esudo\u6743\u9650<br \/>  \u00a0 lineinfile:<br \/>  \u00a0 \u00a0 path: \/etc\/sudoers<br \/>  \u00a0 \u00a0 line: \"{{ username }} ALL=(ALL) NOPASSWD:ALL\"<br \/>  \u00a0 \u00a0 state: present<br \/>  \u00a0- name: 03.\u4fee\u6539sshd_config\u914d\u7f6e\u6587\u4ef6<br \/>  \u00a0 replace:<br \/>  \u00a0 \u00a0 path: \/etc\/ssh\/sshd_config<br \/>  \u00a0 \u00a0 \u00a0#\u76ee\u6807 #PermitRootLogin yes<br \/>  \u00a0 \u00a0 \u00a0#\u76ee\u6807 PermitRootLogin yes<br \/> #regexp: \"^(#PermitRootLogin yes)|(PermitRootLogin yes)\"<br \/>  \u00a0 \u00a0 regexp: \"^PermitRootLogin yes\"<br \/>  \u00a0 \u00a0 replace: \"PermitRootLogin no\"<br \/>  \u00a0 notify:<br \/>  \u00a0 \u00a0 \u00a0- 04.\u91cd\u542fsshd<br \/>handlers:<br \/>  \u00a0- name: 04.\u91cd\u542fsshd<br \/>  \u00a0 systemd:<br \/>  \u00a0 \u00a0 name: sshd<br \/>\u00a0 \u00a0 \u00a0 state: reloaded<\/pre><p>password\uff1a\u8fd9\u91cc\u9ed8\u8ba4\u8ba4\u4e3a\u662f\u52a0\u5bc6\u540e\u7684\u5bc6\u7801\uff0c\u5982\u679c\u76f4\u63a5\u5199\u660e\u6587\u4e0d\u884c<\/p><p>\u8fd9\u91cc\u5982\u679c\u4f7f\u7528sha512 \u65f6\u52a0\u4e0a\u540e\u9762\u7684\u968f\u673a\u5b57\u7b26\uff0c\u4f1a\u63d0\u9ad8\u5b89\u5168\u6027\uff1a\u5982\u679c\u91cd\u65b0\u8fd0\u884c\u52a0\u5bc6\u547d\u4ee4\uff0c\u6bcf\u6b21\u751f\u6210\u7684\u5bc6\u7801\u90fd\u4e0d\u4e00\u6837\uff0c\u964d\u4f4e\u4e86\u66b4\u529b\u7834\u89e3\u7684\u53ef\u80fd\u6027<\/p><p><strong>replace\u6a21\u5757\uff1a\u66ff\u6362\u00a0 \u00a0\u7c7b\u4f3csed\u7684s###g\u66ff\u6362\u529f\u80fd\uff0c\u5c06\u6574\u884c\u66ff\u6362\u4e3a***<\/strong><\/p><h4><span class=\"ez-toc-section\" id=\"c%E8%AF%A6%E7%BB%86%E6%AD%A5%E9%AA%A4_%E5%88%86%E5%8F%91%E5%AF%86%E9%92%A5\"><\/span><b>c)<\/b><b>\u8be6\u7ec6\u6b65\u9aa4<\/b><b>:<\/b><b>\u5206\u53d1\u5bc6\u94a5<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p><b>\u521b\u5efa\u5b8c\u7528\u6237\u4e4b\u540e\u7528shell\u4e00\u952e\u5206\u53d1\u5bc6\u94a5\u7684<a href=\"https:\/\/linuxjk.cn\/?page_id=847#%E7%AE%A1%E7%90%86%E6%9C%BAm01%E4%B8%80%E9%94%AE%E5%88%9B%E5%BB%BA%E7%A7%98%E9%92%A5%E5%AF%B9%EF%BC%8C%E5%88%86%E5%8F%91%E5%85%AC%E9%92%A5%E4%BB%A5%E6%89%B9%E9%87%8F%E8%BF%9E%E6%8E%A5%E8%84%9A%E6%9C%AC%EF%BC%88%E6%9C%AC%E8%B4%A8for%E5%BE%AA%E7%8E%AF%EF%BC%89\">\u811a\u672c<\/a>\uff0c\u7a0d\u4f5c\u4fee\u6539\uff1a\u5c06\u6536\u5bc6\u94a5\u7684\u7528\u6237\u4ece\u9ed8\u8ba4\u7684$ip&#8212;root\u53d8\u4e3aans@$ip\u7528\u6237\uff0c\u5bc6\u7801\u6362\u4e3aans\u7528\u6237\u7684\u5bc6\u7801\uff0c\u5b9e\u73b0\u5bc6\u94a5\u8fde\u63a5\u666e\u901a\u7528\u6237<\/b><\/p><h4><span class=\"ez-toc-section\" id=\"d_%E8%AF%A6%E7%BB%86%E6%AD%A5%E9%AA%A4_%E4%BF%AE%E6%94%B9ansible%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6\"><\/span><b>d) <\/b><b>\u8be6\u7ec6\u6b65\u9aa4<\/b><b>: <\/b><b>\u4fee\u6539<\/b><b>ansible<\/b><b>\u914d\u7f6e\u6587\u4ef6<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><pre>[root@m01 \/server\/scripts\/playbook]# egrep -v '^$|#'<br \/>\/etc\/ansible\/ansible.cfg<br \/>[defaults]<br \/>sudo_user = ans #\u88ab\u7ba1\u7406\u7aef\u4e0a\u5177\u6709sudo\u6743\u9650\u7684\u7528\u6237<br \/>nopasswd: ALL<br \/>remote_user \u00a0 \u00a0= ans #\u88ab\u7ba1\u7406\u7aef\u4f7f\u7528\u7684\u7528\u6237,\u4e0d\u6307\u5b9a\u9ed8\u8ba4\u662f\u5f53\u524d\u7528\u6237\/root<br \/>remote_port \u00a0 \u00a0= 22 \u00a0#\u88ab\u7ba1\u7406\u7aefssh\u7aef\u53e3\u53f7<br \/>host_key_checking = False<br \/>log_path = \/var\/log\/ansible.log<br \/>[inventory]<br \/>[privilege_escalation]<br \/>become=True \u00a0 \u00a0 \u00a0 \u00a0 # \u63d0\u6743<br \/>become_method=sudo \u00a0 #\u63d0\u6743\u65b9\u5f0f\uff1a\u4f7f\u7528sudo\u547d\u4ee4<br \/>become_user=root \u00a0 \u00a0 #\u666e\u901a\u7528\u6237\u5207\u6362\u81f3root<\/pre><h4><span class=\"ez-toc-section\" id=\"e_%E8%B0%83%E8%AF%95\"><\/span><b>e) <\/b><b>\u8c03\u8bd5<\/b><span class=\"ez-toc-section-end\"><\/span><\/h4><p>ansible all -i hosts \u00a0-m ping<\/p><h3><span class=\"ez-toc-section\" id=\"2_%E5%85%B6%E4%BB%96%E4%BC%98%E5%8C%96\"><\/span><b>2) <\/b><b>\u5176\u4ed6\u4f18\u5316<\/b><span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u6027\u80fd<\/p><p>ssh\u8fde\u63a5\u901f\u5ea6\u4f18\u5316,\u5173\u95edUseDNS,GSSAPIAuthcation &#8230;.<\/p><p>\u4e0d\u8981\u8ba9ansible\u8fd0\u884c\u4ea4\u4e92\u5f0f\u7684\u547d\u4ee4,\u975e\u8981\u7528\u4f7f\u7528\u547d\u4ee4\u7684\u975e\u4ea4\u4e92\u6a21\u5f0f.<\/p><p>\u9700\u8981\u4f7f\u7528ans,yum\u5b89\u88c5\u8f6f\u4ef6,\u53ef\u4ee5\u81ea\u5efa\u672c\u5730yum\u4ed3\u5e93,\u7136\u540eans\u5b89\u88c5.(\u81ea\u5efayum\u6e90,\u81ea\u5df1\u5236\u4f5c\u7684rpm\u5305)<\/p><p>\u8c03\u6574ansible\u5e76\u53d1\u6570\u91cf( -f \u8c03\u6574\u5e76\u53d1\u6570\u91cf \u9ed8\u8ba4\u662f5 ansible.cfg\u00a0 forks=5,\u5b9e\u9645\u8c03\u6574\u6839\u636e\u8d1f\u8f7d\u60c5\u51b5.)<\/p><p>\u7ed9ansible\u914d\u7f6e\u7f13\u5b58(redis),\u961f\u5217.\u7f13\u5b58facts.<\/p><p>\u7ed9\u4e3b\u673a\u8fdb\u884c\u5206\u7ec4\u64cd\u4f5c\u4e0e\u7ba1\u7406.<\/p><p>\u5173\u95edgather_facts,\u5982\u679c\u4e0d\u7528facts\u53d8\u91cf\u53ef\u4ee5\u5173\u95ed, \u5267\u672c\u4e2d:<\/p><p>gather_facts: false \u914d\u7f6e\u6587\u4ef6\u4e2d:\u00a0 <code>gathering = explicit<\/code><\/p><p>host_key_checking = False\u4e00\u822c\u4f7f\u7528\u5bc6\u7801\u8ba4\u8bc1\u7684\u65f6\u5019\u9700\u8981\u5173\u95ed\u00a0<\/p><p>\u5b89\u5168\u2b50<\/p><p>\u2b50 \u914d\u7f6esudo\u7528\u6237 ans ALL=(ALL) NOPASSWD: ALL \u5bc6\u7801\u662f1,ssh\u7aef\u53e3\u662f 22<\/p><p>\u914d\u5408vpn,jms\u4e00\u8d77\u4f7f\u7528<\/p><p>\u7528\u6237&#8212; &gt;vpn&#8212;-&gt;jms(\u8df3\u677f\u673a)&#8212;-&gt;ansible<\/p><p>\u7528\u6237\u7684\u5bc6\u7801,\u8fdb\u884c\u52a0\u5bc6( hash, ansible-vault)<\/p><p>\u914d\u7f6esudo<\/p><p>\u6240\u6709\u88ab\u7ba1\u7406\u8282\u70b9\u4e0a\u6dfb\u52a0ans\u7528\u6237 ,\u8bbe\u7f6e\u5bc6\u7801.<\/p><p>\u6240\u6709\u5907\u7ba1\u7406\u8282\u70b9\u4e0a\u914d\u7f6eans sudo\u6743\u9650 ans ALL=(ALL) NOPASSWD: ALL<\/p><p>\u7ba1\u7406\u7aef\u4e0e\u88ab\u7ba1\u7406\u7aef\u5bc6\u94a5\u8ba4\u8bc1:\u5206\u53d1\u5bc6\u94a5\u53d1\u5230ans\u7528\u6237.<\/p><p>\u7ba1\u7406\u7aef: ansible.cfg\u914d\u7f6e,\u901a\u8fc7ans\u7528\u6237\u8fde\u63a5,\u8fdc\u7a0b\u8fde\u63a5\u7aef\u53e3\u53f7,\u4f7f\u7528sudo.<\/p><h4><span class=\"ez-toc-section\" id=\"4Ansible%E4%B8%8E%E8%87%AA%E5%8A%A8%E5%8C%96\"><\/span><a href=\"https:\/\/www.processon.com\/view\/link\/61addd266376896056c1b1b2\"><b style=\"font-size: 2em; font-style: inherit;\">4.Ansible<\/b><b style=\"font-size: 2em; font-style: inherit;\">\u4e0e\u81ea\u52a8\u5316<\/b><\/a><span class=\"ez-toc-section-end\"><\/span><\/h4><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1913\" src=\"https:\/\/linuxjk.cn\/wp-content\/uploads\/2025\/08\/ansible\u603b\u7ed3.png\" alt=\"\" width=\"1759\" height=\"566\" srcset=\"https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u603b\u7ed3.png 1759w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u603b\u7ed3-300x97.png 300w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u603b\u7ed3-1024x329.png 1024w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u603b\u7ed3-768x247.png 768w, https:\/\/linuxjk.oss-cn-shanghai.aliyuncs.com\/wp-content\/uploads\/2025\/08\/ansible\u603b\u7ed3-1536x494.png 1536w\" sizes=\"(max-width: 1759px) 100vw, 1759px\" \/><\/p><h2><span class=\"ez-toc-section\" id=\"%E6%89%B9%E9%87%8F%E7%AE%A1%E7%90%86%E6%A1%88%E4%BE%8B%EF%BC%9A400%E5%8F%B0%E6%9C%BA%E5%99%A8%E9%83%A8%E7%BD%B2zabbix\"><\/span>\u6279\u91cf\u7ba1\u7406\u6848\u4f8b\uff1a400\u53f0\u673a\u5668\u90e8\u7f72zabbix<span class=\"ez-toc-section-end\"><\/span><\/h2><h3><span class=\"ez-toc-section\" id=\"%E8%83%8C%E6%99%AF%EF%BC%9A\"><\/span>\u80cc\u666f\uff1a<span class=\"ez-toc-section-end\"><\/span><\/h3><ul><li>zabbix\u670d\u52a1\u7aef8c16G 500G<\/li><li>400\u53f0\u670d\u52a1\u5668\u5b89\u88c5zabbix-agent<\/li><li>\u6d41\u7a0b\uff1a<\/li><li>\u5b89\u88c5\u8f6f\u4ef6\/\u4e66\u5199\u914d\u7f6e\u6587\u4ef6\/\u542f\u52a8\u670d\u52a1<\/li><li><p>\u673a\u5668\u6e05\u5355<span style=\"font-size: 16px;\">\uff1a<\/span><\/p><\/li><li>400\u53f0\u91cc\u9762\u6709300\u53f0linux\uff0c100\u53f0windows-server<\/li><li>\u6240\u6709\u673a\u5668\u7684\u5bc6\u7801\u4e0d\u540c<\/li><\/ul><h3><span class=\"ez-toc-section\" id=\"%E8%A7%84%E5%88%92%EF%BC%9A%E4%B9%A6%E5%86%99hosts%E6%96%87%E4%BB%B6%E5%9C%A8hosts%E9%87%8C%E9%9D%A2%E6%8C%87%E5%AE%9A%E7%94%A8%E6%88%B7%E5%90%8D%E5%AF%86%E7%A0%81\"><\/span>\u89c4\u5212\uff1a\u4e66\u5199hosts\u6587\u4ef6,\u5728hosts\u91cc\u9762\u6307\u5b9a\u7528\u6237\u540d\u5bc6\u7801<span class=\"ez-toc-section-end\"><\/span><\/h3><p><code>linuxpass.txt<\/code>\u5b58\u653e\u6240\u6709\u7684\u7528\u6237\u540d\u5bc6\u7801\uff0c\u4e2d\u95f4\u7528\u7a7a\u683c\u5206\u5272<br \/><code>10.0.0.9 root xxx linux<\/code><br \/><code>10.0.0.9 administrator xxx win<\/code><\/p><pre>\u5199\u4e2a\u811a\u672c\u751f\u6210\u4e3b\u673a\u6e05\u5355\u6587\u4ef6hosts<br \/>#!\/bin\/bash<br \/>#\u4f18\u5316\u65b9\u5411\uff1a\u5224\u65ad\u5bc6\u7801\u6587\u4ef6\u662f\u5426\u5b58\u5728\uff0c\u8f93\u51fa\u65e5\u5fd7<br \/>i=0<br \/>j=0<br \/>#\u5f00\u5173\u6cd5\uff0c\u8bbe\u7f6e\u4e24\u4e2a\u5f00\u5173\uff0c\u5982\u679c\u5f00\u5173\u4e3a0\uff0c\u4e0b\u9762\u7684echo[linux_servers] \u5c31\u8ffd\u52a0\uff0c\u5982\u679c\u5f00\u5173\u4e3a1\uff0c\u5c31\u4e0d\u52a0<br \/>while read ip user pass type<br \/>do<br \/>if [ \"$type\" = \"linux\" ] ;then<br \/>if [ $i -eq 0 ];then<br \/>echo [linux_servers] &gt;&gt; hosts <br \/>i=1<br \/>fi<br \/>echo $ip ansible_user=$user ansible_port=22 ansible_password=$pass &gt;&gt;hosts<br \/>fi<br \/>if [ \"$type\" = \"win\" ] ;then<br \/>if [ $j -eq 0 ];then<br \/>echo [win_servers] &gt;&gt; hosts <br \/>j=1<br \/>fi<br \/>echo $ip ansible_user=$user ansible_port=22 ansible_password=$pass &gt;&gt;hosts<br \/>fi<br \/>done &lt;linuxpass.txt<\/pre><h3><span class=\"ez-toc-section\" id=\"2%E4%B8%BB%E6%9C%BA%E6%B8%85%E5%8D%95%E5%86%85%E5%AE%B9%EF%BC%9A\"><\/span>2.\u4e3b\u673a\u6e05\u5355\u5185\u5bb9\uff1a<span class=\"ez-toc-section-end\"><\/span><\/h3><pre>[linux_servers]<br \/>10.0.0.9 ansible_user=root ansible_port=22 ansible_password=xxx<br \/>[win_servers]<br \/>10.0.0.10 ansible_user=administrator ansible_port=22 ansible_password=xxx<br \/><br \/>\u7ed9win\u8865\u5145\u9700\u8981\u7684\u53d8\u91cf<br \/>[win_servers:vars]<br \/>ansible_connection=\"winrm\"<br \/>ansible_port=5985<br \/>#5985 http<br \/>#5986 https<br \/>ansible_winrm_transport=\"ntlm\"<br \/>ansible_winrm_server_cert_validation=ignore<\/pre><h3><span class=\"ez-toc-section\" id=\"3%E7%AE%A1%E7%90%86%E6%9C%BA%E6%B7%BB%E5%8A%A0winrm%E6%A8%A1%E5%9D%97\"><\/span>3.\u7ba1\u7406\u673a\u6dfb\u52a0winrm\u6a21\u5757<span class=\"ez-toc-section-end\"><\/span><\/h3><p><code>yum install -y python-winrm<\/code><br \/>\u6216\u8005<br \/><code>pip install pywinrm<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"4%E6%A3%80%E6%9F%A5\"><\/span>4.\u68c0\u67e5<span class=\"ez-toc-section-end\"><\/span><\/h3><p>#1.linux<br \/><code>ansible -i hosts -f 50 linux_servers -m ping<\/code><br \/>-f \u8c03\u6574\u5e76\u53d1\u6570\uff0c\u9ed8\u8ba4\u662f5<br \/>#2.win <br \/>windows\u6a21\u5757\u524d\u9762\u4e00\u822c\u90fd\u52a0\u4e2awin_<br \/><a href=\"https:\/\/docs.ansible.com\/ansible\/latest\/collections\/index_module.html#ansible-windows\">\u5b98\u65b9\u6587\u6863\uff1a<\/a><br \/><code>ansible -i hosts -f 50 linux_servers -m win_ping<\/code><\/p><h3><span class=\"ez-toc-section\" id=\"5%E4%B9%A6%E5%86%99%E5%89%A7%E6%9C%AC\"><\/span>5.\u4e66\u5199\u5267\u672c<span class=\"ez-toc-section-end\"><\/span><\/h3><p>\u4e0b\u8f7dzabbix<br \/>\u5b89\u88c5<br \/>\u5206\u53d1\u914d\u7f6e\u6587\u4ef6<br \/>\u542f\u52a8\u670d\u52a1<br \/>handlers\u68c0\u67e5\u914d\u7f6e\u53d8\u5316\u4e0e\u81ea\u52a8\u91cd\u542f\u670d\u52a1<\/p><h3><span class=\"ez-toc-section\" id=\"%E6%80%BB%E7%BB%93%EF%BC%9A\"><\/span>\u603b\u7ed3\uff1a<span class=\"ez-toc-section-end\"><\/span><\/h3><p>1. \u6279\u91cf\u7ba1\u7406linux\u548cwindows\uff08server\u7248\u672c\u53ef\u4ee5\u81ea\u5e265985\uff0c\u5bb6\u5ead\u7248\u8f83\u590d\u6742\uff09<br \/>windows\u7684grep\u547d\u4ee4\u4e3afindstr\uff0c\u4f46\u662f\u4e0d\u652f\u6301\u6b63\u5219<br \/>2.\u89c4\u5212\uff0c\u5217\u51fa\u6b65\u9aa4<br \/>3.\u9884\u9632\uff1a\u7edf\u4e00\u4fee\u6539\u4e0e\u66f4\u65b0\u5bc6\u7801<br \/>4.hosts\u6587\u4ef6\u4f7f\u7528ansible-vault\u52a0\u5bc6<\/p><p>\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>ansble\u81ea\u52a8\u5316&#8211;\u5168\u6587\u8bb2\u89e3\u53ca\u81ea\u52a8\u90e8\u7f72nfs\uff0crsyncd \u624b\u673a\u7aef\u53ef\u76f4\u63a5\u64ad\u653e\u4e0b\u65b9\u89c6\u9891\uff0cPC\u7aef\u8bf7\u70b9\u51fb\u64ad\u653e\u6309\u94ae\u6216 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1],"tags":[12],"class_list":["post-1785","post","type-post","status-publish","format-standard","hentry","category-vxhs888p","tag-study-note"],"_links":{"self":[{"href":"https:\/\/linuxjk.cn\/index.php?rest_route=\/wp\/v2\/posts\/1785","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linuxjk.cn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linuxjk.cn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linuxjk.cn\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/linuxjk.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1785"}],"version-history":[{"count":58,"href":"https:\/\/linuxjk.cn\/index.php?rest_route=\/wp\/v2\/posts\/1785\/revisions"}],"predecessor-version":[{"id":2600,"href":"https:\/\/linuxjk.cn\/index.php?rest_route=\/wp\/v2\/posts\/1785\/revisions\/2600"}],"wp:attachment":[{"href":"https:\/\/linuxjk.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linuxjk.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linuxjk.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}