您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“linux中如何使用Ansible配置桌面設置”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“linux中如何使用Ansible配置桌面設置”這篇文章吧。
首先,我們將創建一個任務手冊來保存我們的 GNOME 設置。在倉庫的根目錄中,應該有一個名為 local.yml
的文件,添加以下行:
- include: tasks/gnome.yml
整個文件應如下所示:
- hosts: localhost become: true pre_tasks: - name: update repositories apt: update_cache=yes changed_when: False tasks: - include: tasks/users.yml - include: tasks/cron.yml - include: tasks/packages.yml - include: tasks/gnome.yml
基本上,這添加了對名為 gnome.yml
文件的引用,它將存儲在倉庫內的 tasks
目錄中。我們還沒有創建這個文件,現在就來創建它。在 tasks
目錄中創建 gnome.yml
文件,并將以下內容放入:
- name: Install python-psutil package apt: name=python-psutil - name: Copy wallpaper file copy: src=files/wallpaper.jpg dest=/home/jay/.wallpaper.jpg owner=jay group=jay mode=600 - name: Set GNOME Wallpaper become_user: jay dconf: key="/org/gnome/desktop/background/picture-uri" value="'file:///home/jay/.wallpaper.jpg'"
注意,此代碼多次引用我的用戶名(jay
),因此確保使用你機器上的用戶名替換每次出現的 jay
。另外,如果你沒有像我一樣使用 Ubuntu 18.04,你將必須更改 apt
一行來匹配你所選擇的發行版的包管理器,并確認 python-psutil
包的名稱,因為它可能有所不同。
在示例任務中,我引用了 file
目錄下的 wallpaper.jpg
文件,此文件必須存在,否則 Ansible 配置將失敗。在 tasks
目錄中,創建一個名為 files
的子目錄。找到你喜歡的壁紙圖片,將其命名為 wallpaper.jpg
,然后把它放在 files
目錄中。如果文件是 PNG 圖像而不是 JPG,在代碼和倉庫中更改文件擴展名。如果你覺得沒有創意,我在 GitHub 倉庫 中有一個示例壁紙文件,你可以使用它。
完成所有這些更改后,將內容提交到 GitHub 倉庫,并推送這些更改。總結一下,你應該完成以下工作:
修改 local.yml
文件以引用 tasks/gnome.yml
使用上面提到的內容創建 tasks/gnome.yml
在 tasks
目錄中創建一個 files
目錄,其中有一個名為 wallpaper.jpg
的圖像文件(或者你選擇的任何名稱)。
完成這些步驟并將更改推送到倉庫后,配置應該在下次計劃運行期間自動應用。(你可能還記得我們在上一篇文章中對此進行了自動化。)如果你想節省時間,可以使用以下命令立即應用配置:
sudo ansible-pull -U https://github.com/<github_user>/ansible.git
如果一切正常,你應該可以看到你的新壁紙。
讓我們花一點時間來了解新的 GNOME 任務手冊的功能。首先,我們添加了一個計劃來安裝 python-psutil
包。如果不添加它,我們就不能使用 dconf
模塊,因為它需要在修改 GNOME 設置之前安裝這個包。接下來,我們使用 copy
模塊將壁紙文件復制到我們的 home
目錄,并將生成的文件命名為以點開頭的隱藏文件。如果你不希望此文件放在 home
目錄的根目錄中,你可以隨時指示此部分將其復制到其它位置 —— 只要你在正確的位置引用它,它仍然可以工作。在下一個計劃中,我們使用 dconf
模塊來更改 GNOME 設置。在這種情況下,我們調整了 /org/gnome/desktop/background/picture-uri
鍵并將其設置為 file:///home/jay/.wallpaper.jpg
。注意本節中的引號 —— 你必須在 dconf
值中使用兩個單引號,如果值是一個字符串,還必須包含在雙引號內。
現在,讓我們進一步進行配置,并將背景應用于鎖屏。這是現在的 GNOME 任務手冊,但增加了兩個額外的計劃:
- name: Install python-psutil package apt: name=python-psutil - name: Copy wallpaper file copy: src=files/wallpaper.jpg dest=/home/jay/.wallpaper.jpg owner=jay group=jay mode=600 - name: Set GNOME wallpaper dconf: key="/org/gnome/desktop/background/picture-uri" value="'file:///home/jay/.wallpaper.jpg'" - name: Copy lockscreenfile copy: src=files/lockscreen.jpg dest=/home/jay/.lockscreen.jpg owner=jay group=jay mode=600 - name: Set lock screen background become_user: jay dconf: key="/org/gnome/desktop/screensaver/picture-uri" value="'file:///home/jay/.lockscreen.jpg'"
正如你所看到的,我們做的事情和設置壁紙時差不多。我們添加了兩個額外的任務,一個是復制鎖屏圖像并將其放在我們的 home
目錄中,另一個是將設置應用于 GNOME 以便使用它。同樣,確保將 jay
更改為你的用戶名,并命名你想要的鎖屏圖片 lockscreen.jpg
,并將其復制到 files
目錄。將這些更改提交到倉庫后,在下一次計劃的 Ansible 運行期間就會應用新的鎖屏。
設置壁紙和鎖屏背景很酷,但是讓我們更進一步來應用桌面主題。首先,讓我們在我們的任務手冊中添加一條指令來安裝 arc
主題的包。將以下代碼添加到 GNOME 任務手冊的開頭:
- name: Install arc theme apt: name=arc-theme
然后,在底部,添加以下動作:
- name: Set GTK theme become_user: jay dconf: key="/org/gnome/desktop/interface/gtk-theme" value="'Arc'"
你看到 GNOME 的 GTK 主題在你眼前變化了嗎?我們添加了一個動作來通過 apt
模塊安裝 arc-theme
包,另一個動作將這個主題應用到 GNOME。
既然你已經更改了一些 GNOME 設置,你可以隨意添加其它定制。你在 GNOME 中調整的任何設置都可以通過這種方式自動完成,設置壁紙和主題只是幾個例子。你可能想知道如何找到要更改的設置,以下是一個我用的技巧。
首先,通過在你管理的計算機上運行以下命令,獲取所有當前 dconf
設置的快照:
dconf dump / > before.txt
此命令將所有當前更改導出到名為 before.txt
的文件中。接下來,手動更改要自動化的設置,并再次獲取 dconf
設置:
dconf dump / > after.txt
現在,你可以使用 diff
命令查看兩個文件之間的不同之處:
diff before.txt after.txt
這應該會給你一個已更改鍵值的列表。雖然手動更改設置確實違背了自動化的目的,但你實際上正在做的是獲取更新***設置時更改的鍵,這允許你創建 Ansible 任務以修改這些設置,這樣你就再也不需要碰這些設置了。如果你需要還原機器,Ansible 倉庫會處理好你的每個定制。如果你有多臺計算機,甚至是一組工作站,則只需手動進行一次更改,所有其他工作站都將應用新設置并完全同步。
以上是“linux中如何使用Ansible配置桌面設置”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。