LINUX.ORG.RU

Сообщения LYJEX

 

Ansible & PostgreSQL

Верно ли написан сценарий:

- name: Remove PostgreSQL db
  become: yes
  become_user: postgres
  postgresql_db:
    name: "{{ dbname }}"
    state: absent

- name: Remove PostgreSQL user
  become: yes
  become_user: postgres
  postgresql_user:
    db: "{{ dbname }}"
    user: "{{ username }}"
    state: absent

Выдет ошибку что не удалось удалить базу\пользователя, хотя все в базе есть... Подскажите в чем может быть проблема?

 ,

LYJEX
()

Ansible. Проблема с шаблоном

Имееться шаблон:

DATABASES = {
'default': {
'ENGINE': 'django.blabla.ops.{{ dbtype }}', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
'NAME': '{{ username }}', # Or path to database file if using sqlite3.
'USER': '{{ username }}',                      # Not used with sqlite3.
'PASSWORD: '{{ username }}',                  # Not used with sqlite3.

Сценарий должен его скопировать и подставить переменные. Но он материться ошибкой:

AnsibleError: template error while templating string: expected token 'name', got 'string'. String:

И после String мне шаблон пишет... Хелпаните, пожалуйста. Я уже и raw прописывал. Не могу понять что не так...

 ,

LYJEX
()

Переменные в плейбуке ansible

Есть часть скрипта bash:

#$USER_PYTHON_BIN $PROJECT_ROOT $SETTINGS_FILE $DJANGO_ADMIN_NAME $DJANGO_ADMIN_PASSWORD
USERNAME=$1
USERS_HOME="/home/wproject"
USER_PYTHON_BIN=$USERS_HOME/$USERNAME/bin/python
USER_PIP_BIN=$USERS_HOME/$USERNAME/bin/pip
USER_HOME_DIR=$USERS_HOME/$USERNAME
USER_UWSGI_BIN=$USERS_HOME/$USERNAME/bin/uwsgi
PROJECT_ROOT=$USERS_HOME/$USERNAME/lib/$PROJECT
SETTINGS_FILE="project_src.settings"
DJANGO_ADMIN_NAME="admin"
DJANGO_ADMIN_PASSWORD=$USERNAME"password"

#$USER_PYTHON_BIN $PROJECT_ROOT $SETTINGS_FILE $DJANGO_ADMIN_NAME 
#$DJANGO_ADMIN_PASSWORD
set_django_admin_password(){
 if [ ! $# -eq "5" ] ; then
    echo "Error![num_args incorrect] function \"set_django_admin_password\" wasn't run"
 else
    $1 <<EOF
import os
import sys
sys.path.insert(0, '$2/src')
os.environ['DJANGO_SETTINGS_MODULE'] = '$3'
import django
django.setup()

from django.contrib.auth.models import User

u = User.objects.get(username__exact='$4')
u.set_password('$5')
u.save()
EOF
 fi
}

Как Вы видите - есть переменные которые гинерируються и передаються скрипту.

Как реализовать аналогично выполнение плейбука ansible?

Начал писать сценарий:

---
- hosts: localhost
  vars_files:
    - flores.yml
  become: yes
  become_user: root
  tasks:
    - name: Create users    
      user: name={{ item.user }} group: {{ item.user }}
      with_items: "{{ flores }}"

    - name: Create user_directory
      file: path=/home/{{ item.repname }} owner={{ item.user }} droup={{ item.user }} mode=0755     
      with_items: "{{ flores }}"

    - name: Arguments 
      shell: python /bin/set_admin_django.py 
      with_items:
       - {

Завис на том, как передать переменные скрипту /bin/set_admin_django.py ...

В файле flores.yml указаные пользователи, для которых выполняеться скрипт.

Подскажите, как реализовать в сценарии генерацию переменных? То есть,(как пример) нужно чтобы в переменную USER_PYTHON_BIN подставлялись USERNAME и USERS_HOME

Простите за такое корявое обьяснение...

 , ,

LYJEX
()

Не могу подключится к интернету

Здравствуйте. Вот в чём моя проблема. На винде интернет подключен напрямую, плюс создан адаптер WANMiniport (PPPOE), как маршрутизатор что ли... И что бы подключиться к сети, мне надо помимо локального подключения ещё подключиться к этому маршрутизатору, ввести логин\пароль и тогда будет доступ к интернету. Вопрос: как мне по такому аналогу подключиться к сети на Ubuntu при её установке и вообще? В IPv4 всё автоматом, думаю труда не составит? Помогите плиз.

 ,

LYJEX
()

Grub!!!

Ребят, дело такое. Установил Ubuntu 14.04, потому ничего кроме этого не было ... Так вот, скачал винду, создал загрузочную флешку. Перезагружаю комп - вылетает долбанный GRUB. Пробовал с диска - таже фигня. Что делать??? Я с ним ещё ни разу не имел дела. Помогите!!! аааааа

Перемещено leave из admin

 ,

LYJEX
()

Помогите с раздачей WiFi

У меня Debian 7. Нужно раздать WiFi. И так, в hostapd.conf прописано:

interface=wlan0
driver=nl80211
bridge=br0
country_code=FR
ieee80211d=1
ssid=MAKAPOHIK
hw_mode=g
channel=6
wme_enabled=0
macaddr_acl=
auth_algs=1
wpa=2
wpa_passphrase=piligrim
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

В interfaces прописано:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo br0
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual

iface br0 inet dhcp
bridge_ports eth0 wlan0

При запуске hostapd.conf устройства видят точку доступа WiFi и подключаються к ней. Но интернета нет. Ничего не загружается. Что может быть не так?

 , ,

LYJEX
()

Проблема с раздачей WiFi

Здравтсвуйте, у меня проблема с раздачей WiFi с ноутбука. (Debian 7) В основном, вот что я сделал.

Текущие настройки точки доступа:

PPPoE-соединение задано через Network Manager (интерфес ppp0) фрагмент /etc/network/interfaces с параметрами WiFi-адаптера

auto wlan1
    iface wlan1 inet static
      address 192.168.1.1
      netmask 255.255.255.0
      network 192.168.1.0
      pre-up iptables-restore < /etc/wlan2ppp.rules

правила для iptables

    iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
    iptables -A FORWARD -i wlan1 -o ppp0 -j ACCEPT
    iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

сonf-файл для hostapd

interface=wlan1
    driver=nl80211
    ssid=SuperTUX
    hw_mode=g
    channel=6
    macaddr_acl=0
    ignore_broadcast_ssid=0
    auth_algs=1
    wpa=3
    wpa_passphrase=a1b2c3d4e5
    wpa_key_mgmt=WPA-PSK
    wpa_pairwise=TKIP
    rsn_pairwise=CCMP

содержимое /etc/dnsmasq.conf (приведены только измененные строки)

    ...
    # Never forward plain names (without a dot or domain part)
    domain-needed
    # Never forward addresses in the non-routed address spaces.
    bogus-priv
    ...
    # If you want dnsmasq to listen for DHCP and DNS requests only on
    # specified interfaces (and the loopback) give the name of the
    # interface (eg eth0) here.
    # Repeat the line for more than one interface.
    interface=wlan1
    ...
    # Uncomment this to enable the integrated DHCP server, you need
    # to supply the range of addresses available for lease and optionally
    # a lease time. If you have more than one network, you will need to
    # repeat this for each network on which you want to supply DHCP
    # service.
    dhcp-range=192.168.1.2,192.168.1.254,12h
    ...

содержимое /etc/resolv.conf (корретные адреса провайдера)

    # Generated by NetworkManager
    nameserver 87.253.13.14
    nameserver 217.15.134.62
Запускаю hostapd:
hostapd -B /etc/hostapd/hostapd.conf

Вот что выдаёт:

Configuration file: /etc/hostapd/hostapd.conf
Could not read interface wlan1 flags: No such device
Could not read interface wlan1 flags: No such device
nl80211 driver initialization failed.

Что не так? Помогите пожалуйста.

 , ,

LYJEX
()

Помогите пожалуйста.

Ещё такой вопрос появился. Вот скрипт:

#!/bin/bash
vm_id="$1"
ipone="$2"

/usr/sbin/vzctl set ${vm_id} --ipadd ${ipone} --save
Например в переменную ipone нужно занести аргумент который должен содержать три_цифры.три_цифры.три_цифры.три_цифры, то есть обычный IP-адрес, задача такова - если аргумент будет иметь какую нибудь букву или лишнюю цифру - то скрипт должен заматерится. Не подскажешь как это сделать?

LYJEX
()

Подскажите код

Никак не могу найти скрипт, который в файле ищет два IP-адреса, и эти же IP-адреса использует в переменной. То есть, вот скрипт:

#!/bin/bash
root_pw="П"
os_template="Ш"
domain="Д"
name_server="resolv.conf"
vm_id="ID-ВПС"
ipone="IP"
iptwo="IP"
tarif="Т"
/usr/sbin/vzctl create ${vm_id} --ostemplate ${os_template}
/usr/sbin/vzctl set ${vm_id} --hostname host1.${domain} --ipadd ${ipone} --ipadd ${iptwo} --nameserver ${name_server} --save --applyconfig ${tarif}  --userpasswd root:${root_pw} --save
/usr/sbin/vzctl start ${vm_id}

В файле resolv.conf имеются два IP-адреса которые должна использовать переменная name_server. Подскажите как мне это сделать?

LYJEX
()

RSS подписка на новые темы