diff --git a/roles/calculateEtcHosts/tasks/main.yml b/roles/calculateEtcHosts/tasks/main.yml
index 1d1c617050cd33d1fbf3ffe17b3b5696ebc2c254..ceed9049e5b841abaea1a7d9055ca5a8dff93388 100644
--- a/roles/calculateEtcHosts/tasks/main.yml
+++ b/roles/calculateEtcHosts/tasks/main.yml
@@ -14,3 +14,12 @@
 
 - name: fetch hosts file
   fetch: src=/tmp/etcHosts dest=files/etcHosts flat=yes
+  
+- name: make sure our repo server is resolvable
+  lineinfile:
+    path: files/etcHosts
+    line: "{{ reposerverip }} {{ reposervername }}"
+    owner: root
+    group: root
+  become: True
+  when: reposerverip  is defined and reposervername is defined
diff --git a/roles/etcHosts/tasks/main.yml b/roles/etcHosts/tasks/main.yml
index 180a871738df379816c388a72ca8ef7968084ed3..fc85df29ab3501098b73b3a9bc78476293600a03 100644
--- a/roles/etcHosts/tasks/main.yml
+++ b/roles/etcHosts/tasks/main.yml
@@ -3,18 +3,18 @@
   become: true
 
 - name: get hostname by sysctl
-  shell: sysctl kernel.hostname | cut -f 3 -d " "
+  shell: /sbin/sysctl kernel.hostname | /usr/bin/cut -f 3 -d " "
   register: sysctl_hostname
   check_mode: no
   changed_when: False
 
 - name: set hostname by sysctl
-  shell: sysctl kernel.hostname="{{ inventory_hostname }}"
+  shell: /sbin/sysctl kernel.hostname="{{ inventory_hostname }}"
   become: true
   when: not sysctl_hostname.stdout == inventory_hostname
 
 - name: get domainname by sysctl
-  shell: sysctl kernel.domainname | cut -f 3 -d " "
+  shell: /sbin/sysctl kernel.domainname | cut -f 3 -d " "
   register: sysctl_domainname
   check_mode: no
   changed_when: False
@@ -22,7 +22,7 @@
   become_user: root
 
 - name: set domainname by sysctl
-  shell: sysctl kernel.domainname="{{ domain }}"
+  shell: /sbin/sysctl kernel.domainname="{{ domain }}"
   become: true
   when: not sysctl_domainname.stdout  ==  domain