mirror of
https://github.com/iiab/iiab.git
synced 2025-02-13 11:42:08 +00:00
97 lines
3.8 KiB
YAML
97 lines
3.8 KiB
YAML
# Official usbmount 0.0.22 (2011-08-08) documentation:
|
|
# https://github.com/rbrito/usbmount/releases
|
|
# https://github.com/hfuchs/usbmount/blob/master/README (2010-08-11)
|
|
# https://github.com/rbrito/usbmount/blob/master/README.md (2018-08-10)
|
|
# https://github.com/rbrito/usbmount/blob/master/usbmount.conf (2010-04-25)
|
|
|
|
- name: Does systemd-udevd.service exist
|
|
stat:
|
|
path: "{{ systemd_location }}/systemd-udevd.service"
|
|
register: udev_unit
|
|
|
|
- name: Copy udevd service to /etc/systemd/system to modify
|
|
copy:
|
|
src: "{{ systemd_location }}/systemd-udevd.service"
|
|
dest: /etc/systemd/system/systemd-udevd.service
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
when: udev_unit.stat.exists is defined and udev_unit.stat.exists
|
|
|
|
- name: Change MountFlags from slave to shared
|
|
lineinfile:
|
|
backup: no
|
|
dest: /etc/systemd/system/systemd-udevd.service
|
|
regexp: '^MountFlags'
|
|
line: 'MountFlags=shared'
|
|
state: present
|
|
when: udev_unit.stat.exists is defined and udev_unit.stat.exists
|
|
|
|
- name: Ask systemd to reread unit files (daemon-reload) and restart so systemd recognizes the changes
|
|
systemd:
|
|
daemon_reload: yes
|
|
name: systemd-udevd
|
|
state: restarted
|
|
when: udev_unit.stat.exists is defined and udev_unit.stat.exists
|
|
|
|
#http://raspbian.raspberrypi.org/raspbian/pool/main/u/usbmount/usbmount_0.0.22_all.deb
|
|
- name: Install {{ iiab_download_url }}/usbmount_0.0.22_all.deb, missing from Debian
|
|
apt:
|
|
deb: "{{ iiab_download_url }}/usbmount_0.0.22_all.deb"
|
|
when: is_debian
|
|
|
|
# check status of usbmount on mintlinux - should be ok Ubuntu variant
|
|
- name: Install usbmount from OS repo for Ubuntu variants
|
|
package:
|
|
name: usbmount
|
|
state: present
|
|
when: is_ubuntu
|
|
|
|
- name: Add dir {{ doc_root }}/local_content, where USB drive links can appear
|
|
file:
|
|
state: directory
|
|
path: "{{ doc_root }}/local_content"
|
|
owner: "{{ apache_user }}"
|
|
group: "{{ apache_user }}" # 2020-02-13: changed from iiab_admin_user, after discussion on weekly call (#1228, #2222)
|
|
mode: '0775'
|
|
|
|
- name: 'Install from template: /etc/udev/rules.d/usbmount.rules, /etc/systemd/system/usbmount@.service, /usr/bin/iiab-usb_lib-show-all-on, /usr/bin/iiab-usb_lib-show-all-off'
|
|
template:
|
|
src: "{{ item.src }}"
|
|
dest: "{{ item.dest }}"
|
|
mode: "{{ item.mode }}"
|
|
with_items:
|
|
- { src: 'usbmount@.service.j2', dest: '/etc/systemd/system/usbmount@.service', mode: '0644' }
|
|
- { src: 'usbmount.rules.j2', dest: '/etc/udev/rules.d/usbmount.rules', mode: '0644' }
|
|
- { src: 'iiab-usb_lib-show-all-on', dest: '/usr/bin/', mode: '0755' }
|
|
- { src: 'iiab-usb_lib-show-all-off', dest: '/usr/bin/', mode: '0755' }
|
|
- { src: 'iiab-clean-usb.sh', dest: '/usr/sbin/', mode: '0755' }
|
|
|
|
# 2021-03-21: If usbmount is repackaged by apt as a result of Linux kernel 5.4+
|
|
# supporting exFAT, the stanza below (might) in future no longer be needed...
|
|
# SEE ALSO: https://github.com/iiab/iiab/blob/master/roles/2-common/tasks/packages.yml#L22-L23
|
|
- name: Add ' exfat fuseblk ntfs' to FILESYSTEMS var in /etc/usbmount/usbmount.conf
|
|
lineinfile:
|
|
regexp: '^FILESYSTEMS=.*'
|
|
line: 'FILESYSTEMS="vfat ext2 ext3 ext4 hfsplus exfat fuseblk ntfs"'
|
|
path: /etc/usbmount/usbmount.conf
|
|
|
|
# 2021-03-25: Consider removing this stanza & all of this role's Apache logic!
|
|
- name: Install /etc/{{ apache_conf_dir }}/content_dir.conf from template
|
|
template:
|
|
src: content_dir.conf
|
|
dest: "/etc/{{ apache_conf_dir }}" # apache2/sites-available on debuntu
|
|
when: apache_installed is defined
|
|
|
|
|
|
# RECORD 'USB_LIB' AS INSTALLED
|
|
|
|
- name: "Set 'usb_lib_installed: True'"
|
|
set_fact:
|
|
usb_lib_installed: True
|
|
|
|
- name: "Add 'usb_lib_installed: True' to {{ iiab_state_file }}"
|
|
lineinfile:
|
|
path: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml
|
|
regexp: '^usb_lib_installed'
|
|
line: 'usb_lib_installed: True'
|