成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用Ansible管理你的工作站:配置桌面設置

系統 Linux
在本系列第三篇(也是最后一篇)文章中,我們將使用 Ansible 自動化配置 GNOME 桌面設置。

 [[270823]]

在本系列第三篇(也是***一篇)文章中,我們將使用 Ansible 自動化配置 GNOME 桌面設置。

在本系列關于使用 Ansible 配置工作站的***篇文章中,我們設置了一個倉庫并配置了一些基本的東西。在第二篇文章中,我們配置了 Ansible 以使其在對倉庫進行更改時自動應用設置。在第三篇(也是***一篇)文章中,我們將使用 Ansible 配置 GNOME 桌面設置。

此配置只適用于較新的發行版(例如我將在示例中使用的 Ubuntu 18.04)。較舊版本的 Ubuntu 將無法運行,因為它們附帶了一個老版本的 python-psutils,對于 Ansible 的 dconf 模塊無法正常工作。如果你使用的是較新版本的 Linux 發行版,則應該沒有問題。

在開始之前,確保你已經完成了本系列的***部分和第二部分,因為第三部分建立在此基礎之上的。如果還沒有,下載前兩篇文章中一直使用的 GitHub 倉庫,我們將為其添加更多功能。

設置壁紙和鎖屏

首先,我們將創建一個任務手冊來保存我們的 GNOME 設置。在倉庫的根目錄中,應該有一個名為 local.yml 的文件,添加以下行:

  1. - include: tasks/gnome.yml

整個文件應如下所示:

  1. - hosts: localhost
  2. become: true
  3. pre_tasks:
  4. - name: update repositories
  5. apt: update_cache=yes
  6. changed_when: False
  7.  
  8. tasks:
  9. - include: tasks/users.yml
  10. - include: tasks/cron.yml
  11. - include: tasks/packages.yml
  12. - include: tasks/gnome.yml

基本上,這添加了對名為 gnome.yml 文件的引用,它將存儲在倉庫內的 tasks 目錄中。我們還沒有創建這個文件,現在就來創建它。在 tasks 目錄中創建 gnome.yml 文件,并將以下內容放入:

  1. - name: Install python-psutil package
  2. apt: name=python-psutil
  3.  
  4. - name: Copy wallpaper file
  5. copy: src=files/wallpaper.jpg dest=/home/jay/.wallpaper.jpg owner=jay group=jay mode=600
  6.  
  7. - name: Set GNOME Wallpaper
  8. become_user: jay
  9. 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 的圖像文件(或者你選擇的任何名稱)。

完成這些步驟并將更改推送到倉庫后,配置應該在下次計劃運行期間自動應用。(你可能還記得我們在上一篇文章中對此進行了自動化。)如果你想節省時間,可以使用以下命令立即應用配置:

  1. 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 任務手冊,但增加了兩個額外的計劃:

  1. - name: Install python-psutil package
  2. apt: name=python-psutil
  3.  
  4. - name: Copy wallpaper file
  5. copy: src=files/wallpaper.jpg dest=/home/jay/.wallpaper.jpg owner=jay group=jay mode=600
  6.  
  7. - name: Set GNOME wallpaper
  8. dconf: key="/org/gnome/desktop/background/picture-uri" value="'file:///home/jay/.wallpaper.jpg'"
  9.  
  10. - name: Copy lockscreenfile
  11. copy: src=files/lockscreen.jpg dest=/home/jay/.lockscreen.jpg owner=jay group=jay mode=600
  12.  
  13. - name: Set lock screen background
  14. become_user: jay
  15. dconf: key="/org/gnome/desktop/screensaver/picture-uri" value="'file:///home/jay/.lockscreen.jpg'"

正如你所看到的,我們做的事情和設置壁紙時差不多。我們添加了兩個額外的任務,一個是復制鎖屏圖像并將其放在我們的 home 目錄中,另一個是將設置應用于 GNOME 以便使用它。同樣,確保將 jay 更改為你的用戶名,并命名你想要的鎖屏圖片 lockscreen.jpg,并將其復制到 files 目錄。將這些更改提交到倉庫后,在下一次計劃的 Ansible 運行期間就會應用新的鎖屏。

應用新的桌面主題

設置壁紙和鎖屏背景很酷,但是讓我們更進一步來應用桌面主題。首先,讓我們在我們的任務手冊中添加一條指令來安裝 arc 主題的包。將以下代碼添加到 GNOME 任務手冊的開頭:

  1. - name: Install arc theme
  2.   apt: name=arc-theme

然后,在底部,添加以下動作:

  1. - name: Set GTK theme
  2.   become_user: jay
  3.   dconf: key="/org/gnome/desktop/interface/gtk-theme" value="'Arc'"

你看到 GNOME 的 GTK 主題在你眼前變化了嗎?我們添加了一個動作來通過 apt 模塊安裝 arc-theme 包,另一個動作將這個主題應用到 GNOME。

進行其它定制

既然你已經更改了一些 GNOME 設置,你可以隨意添加其它定制。你在 GNOME 中調整的任何設置都可以通過這種方式自動完成,設置壁紙和主題只是幾個例子。你可能想知道如何找到要更改的設置,以下是一個我用的技巧。

首先,通過在你管理的計算機上運行以下命令,獲取所有當前 dconf 設置的快照:

  1. dconf dump / > before.txt

此命令將所有當前更改導出到名為 before.txt 的文件中。接下來,手動更改要自動化的設置,并再次獲取 dconf 設置:

  1. dconf dump / > after.txt

現在,你可以使用 diff 命令查看兩個文件之間的不同之處:

  1. diff before.txt after.txt

這應該會給你一個已更改鍵值的列表。雖然手動更改設置確實違背了自動化的目的,但你實際上正在做的是獲取更新***設置時更改的鍵,這允許你創建 Ansible 任務以修改這些設置,這樣你就再也不需要碰這些設置了。如果你需要還原機器,Ansible 倉庫會處理好你的每個定制。如果你有多臺計算機,甚至是一組工作站,則只需手動進行一次更改,所有其他工作站都將應用新設置并完全同步。

***

如果你已經閱讀完本系列文章,你應該知道如何設置 Ansible 來自動化工作站。這些示例提供了一個有用的基礎,你可以使用這些語法和示例進行其他定制。隨著你的進展,你可以繼續添加新的修改,這將使你的 Ansible 配置一直增長。

我已經用 Ansible 以這種方式自動化了一切,包括我的用戶帳戶和密碼、Vim、tmux 等配置文件、桌面包、SSH 設置、SSH 密鑰,基本上我想要自定義的一切都使用了。以本系列文章作為起點,將為你實現工作站的完全自動化鋪平道路。


責任編輯:龐桂玉 來源: Linux中國
相關推薦

2019-07-16 16:40:00

Ansible工作站配置

2019-07-16 19:00:00

Ansible配置自動化

2011-07-29 13:38:42

惠普工作站ANSYS

2011-04-27 15:10:21

工作站戴爾T5400

2021-02-02 10:10:22

曙光

2014-12-23 11:11:53

2011-05-31 17:21:29

工作站技巧

2011-04-27 14:16:06

工作站戴爾Precision

2011-08-11 22:20:10

惠普工作站

2011-11-11 21:04:56

惠普工作站

2011-04-25 10:28:58

工作站ThinkPad W7ThinkPad W7

2017-12-13 17:43:40

2011-06-03 13:09:15

工作站技巧

2011-05-20 09:35:06

惠普工作站

2021-02-03 14:14:43

曙光

2011-10-26 12:11:29

惠普工作站

2011-04-22 17:43:27

惠普工作站Z600

2012-01-17 11:27:39

2011-04-12 18:06:21

圖形工作站

2011-07-21 16:05:30

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕亚洲视频 | 在线视频日韩精品 | 国产精品99久久久久久久久 | 欧美成人a∨高清免费观看 欧美日韩中 | 午夜99 | 国产精品毛片一区二区在线看 | 亚洲视频一区在线观看 | 中文在线播放 | 国产婷婷在线视频 | 欧美中文一区 | 欧美国产精品一区二区三区 | 日韩高清av| 日韩有码一区 | 国产在线观看一区二区三区 | 欧美精品一区二区三 | 91在线精品秘密一区二区 | 一区二区三区在线免费 | 特级做a爰片毛片免费看108 | 在线欧美亚洲 | 欧美精品一区二区三区在线 | 最新av中文字幕 | 天堂视频中文在线 | 日本人麻豆 | 女同久久 | 成人精品一区 | 午夜视频一区二区 | 精品国产欧美一区二区 | 国产成人99久久亚洲综合精品 | 成人午夜在线 | 妹子干综合| 婷婷久久综合 | 久久在线视频 | 免费的av| 日韩在线观看 | 精品国产一二三区 | 亚洲欧美中文日韩在线v日本 | av在线播放一区二区 | 亚洲一区二区三区免费在线观看 | 日本一区二区在线视频 | 免费黄色特级片 | 欧美国产亚洲一区二区 |