<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.autosys.tk/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>wiki.autosys.tk</title>
        <description></description>
        <link>https://wiki.autosys.tk/</link>
        <lastBuildDate>Sun, 31 May 2026 02:20:40 +0000</lastBuildDate>
        <generator>FeedCreator 1.8</generator>
        <image>
            <url>https://wiki.autosys.tk/_media/wiki/dokuwiki.svg</url>
            <title>wiki.autosys.tk</title>
            <link>https://wiki.autosys.tk/</link>
        </image>
        <item>
            <title>ubuntu_setup_script</title>
            <link>https://wiki.autosys.tk/linux_faq/ubuntu_setup_script</link>
            <description>
&lt;p&gt;
В скрипте в секции &lt;strong&gt;Set needed Variables&lt;/strong&gt; надо задать только имя хоста.
Остальные параметры (&lt;strong&gt;&lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;&lt;/strong&gt;, &lt;strong&gt;domain-name&lt;/strong&gt;, &lt;strong&gt;DOMAIN controllers&lt;/strong&gt;) скрипт получает из &lt;strong&gt;DHCP&lt;/strong&gt; и &lt;strong&gt;&lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;&lt;/strong&gt;. 
&lt;/p&gt;

&lt;p&gt;
Запускать так: &lt;strong&gt;sudo ./script.sh&lt;/strong&gt; &lt;br/&gt;

Сделать: &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3. &lt;a href=&quot;http://kerberos.996246.n3.nabble.com/Pending-quot-gss-init-sec-context-failed-Unspecified-GSS-failure-quot-td22422.html&quot; class=&quot;urlextern&quot; title=&quot;http://kerberos.996246.n3.nabble.com/Pending-quot-gss-init-sec-context-failed-Unspecified-GSS-failure-quot-td22422.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://kerberos.996246.n3.nabble.com/Pending-quot-gss-init-sec-context-failed-Unspecified-GSS-failure-quot-td22422.html&lt;/a&gt;
I had the same problem/error and fixed it by adding “allow_weak_crypto = true” under [libdefaults] in /etc/krb5.conf 
This works for me, at least on Debian Squeeze, Ubuntu Karmic, and Ubuntu Lucid. 
This was announced in /usr/share/doc/libkrb5-3/NEWS.Debian.gz. 
Hope this helps. &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#! /bin/bash

####################################
#### Set needed Variables
####################################
CONNECTION=`ip link | grep &amp;#039;state UP&amp;#039; | awk &amp;#039;{ print $2 }&amp;#039; | sed &amp;#039;s/:$//&amp;#039;`
NEW_DOMAINNAME=`grep &amp;#039;option domain-name&amp;#039; /var/lib/dhcp/dhclient.$CONNECTION.leases | tail -n 1 | awk &amp;#039;{print $3}&amp;#039; | sed &amp;#039;s/&amp;quot;//g;s/;//g&amp;#039;`
DNS_SERVERS=`grep &amp;#039;option domain-name-servers&amp;#039; /var/lib/dhcp/dhclient.$CONNECTION.leases | tail -n 1 | awk &amp;#039;{print $3}&amp;#039; | sed &amp;#039;s/,/ /g;s/;//g&amp;#039;`
DNS_STATIC_SEARCHLIST=&amp;quot;$NEW_DOMAINNAME sberbank.ru&amp;quot;
DOMAIN_CONTROLLERS=`host -t srv _ldap._tcp.$NEW_DOMAINNAME | awk {&amp;#039;print $8&amp;#039;} | sed &amp;#039;s/.$//g&amp;#039;`
DEFAULT_REALM=&amp;quot;${NEW_DOMAINNAME^^}&amp;quot;
NETBIOS_DOMAIN_NAME=$(echo $DEFAULT_REALM | sed  &amp;#039;1,$ s/\..*//g&amp;#039;)
CA_CERT_PREFIX=&amp;quot;SberBank_Root_CA&amp;quot;

# check root
if [ &amp;quot;$(id -u)&amp;quot; != &amp;quot;0&amp;quot; ]; then
  echo &amp;quot;You do not have the appropriate privileges...&amp;quot;
  exit 1
fi

##############################################
### Disable IPv6
##############################################
cp /etc/sysctl.conf /etc/sysctl.conf.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
sed -i &amp;#039;/^net.ipv6.conf/D&amp;#039; /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.all.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.default.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.lo.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
sysctl -p

##############################################
### Setting up NameServers
##############################################
echo &amp;quot;search $DNS_STATIC_SEARCHLIST&amp;quot; | sudo tee -a /etc/resolvconf/resolv.conf.d/base
echo -ne &amp;gt; /etc/resolvconf/resolv.conf.d/head
for nameserver in $DNS_SERVERS; do echo &amp;quot;nameserver $nameserver&amp;quot; | sudo tee -a /etc/resolvconf/resolv.conf.d/head ;done
resolvconf -u

###########################################
### Add Certificates
###########################################
openssl s_client -showcerts -connect ya.ru:443 &amp;lt;/dev/null &amp;gt; chain.pem
csplit -k -f $CA_CERT_PREFIX ./chain.pem &amp;#039;/END CERTIFICATE/+1&amp;#039; {10}
find ./ -iname $CA_CERT_PREFIX\* -type f -exec grep -F -L &amp;#039;END CERTIFICATE&amp;#039; &amp;#039;{}&amp;#039; + | xargs -d &amp;#039;\n&amp;#039; rm
for file in &amp;quot;$CA_CERT_PREFIX&amp;quot;* ; do sudo mv &amp;quot;$file&amp;quot; /usr/local/share/ca-certificates/&amp;quot;$file&amp;quot;.pem ; done
for file in /usr/local/share/ca-certificates/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ; do sudo cp &amp;quot;$file&amp;quot; /etc/ssl/certs/ ; done
c_rehash /etc/ssl/certs/
c_rehash /usr/local/share/ca-certificates/
update-ca-certificates
rm -f ./chain.pem

####################################
#### Setup Software
####################################
#echo &amp;quot;deb http://ppa.launchpad.net/kubuntu-ppa/backports/ubuntu xenial main&amp;quot; &amp;gt; /etc/apt/sources.list.d/kubuntu-ppa.list
#apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8AC93F7A
#echo &amp;quot;deb https://tel.red/repos/ubuntu xenial non-free&amp;quot; &amp;gt; /etc/apt/sources.list.d/telred.list
#apt-key adv --keyserver keyserver.ubuntu.com --recv-keys CE49F8C5
#echo &amp;quot;deb [arch=amd64] http://repo.yandex.ru/yandex-browser/deb beta main&amp;quot; &amp;gt; /etc/apt/sources.list.d/yandex-browser.list
#curl -k https://repo.yandex.ru/yandex-browser/YANDEX-BROWSER-KEY.GPG | sudo apt-key add -

apt-get update
apt-get -y upgrade
#apt-get -y install kubuntu-full
apt-get -y install kubuntu-desktop
apt-get -y install xorg
apt-get -y install nano curl openssl libnss3-tools \
chrony krb5-config krb5-locales krb5-user libpam-krb5 \
samba smbclient winbind libpam-winbind libnss-winbind gss-ntlmssp \
ldap-utils cifs-utils libsasl2-modules-gssapi-mit \
libreoffice-l10n-ru aspell-ru language-pack-gnome-ru language-pack-gnome-ru-base \
language-pack-ru language-pack-ru-base language-pack-kde-ru \
evolution evolution-ews evolution-plugins desktop-file-utils \
xvfb myspell-ru build-essential libc6-i386

apt-get -y --allow-unauthenticated install flashplugin-installer yandex-browser-beta
#apt-get -y install sky
#apt-get install clamav tightvncserver
###  http://archive.canonical.com/pool/partner/a/adobe-flashplugin/adobe-flashplugin_20170411.1.orig.tar.gz
curl -o /tmp/adobe-flashplugin_20170411.1.orig.tar.gz \
http://szud-linux-repo.sigma.sbrf.ru/adobe-flashplugin_20170411.1.orig.tar.gz \
&amp;amp;&amp;amp; /usr/lib/flashplugin-installer/install_plugin \
/tmp/adobe-flashplugin_20170411.1.orig.tar.gz \
&amp;amp;&amp;amp; rm /tmp/adobe-flashplugin_20170411.1.orig.tar.gz

apt-get purge geoclue-2.0

#####################################################################
### Download and install Citrix VDA
#####################################################################
curl -o ./VDA.deb http://szud-linux-repo.sigma.sbrf.ru/xendesktopvda_7.13.0.382-1.Kubuntu16.04_amd64.deb &amp;amp;&amp;amp; apt-get -y install ./VDA.deb &amp;amp;&amp;amp; rm -f ./VDA.deb

###############################################
### Setup Services
###############################################
systemctl enable ssh
systemctl enable nmbd.service
systemctl enable samba.service
systemctl enable winbind.service
#############################################
#### Setting sudo
#############################################
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/sudoers.d/domain_users
localuser       ALL=(ALL) ALL
%$NETBIOS_DOMAIN_NAME\\\\domain\ users          ALL=(ALL) ALL
%domain\ users          ALL=(ALL) ALL
%$NETBIOS_DOMAIN_NAME\\\\domain\ admins      ALL=(ALL) NOPASSWD: ALL
%domain\ admins      ALL=(ALL) NOPASSWD: ALL
EOF

sed -i &amp;quot;/^Defaults\ targetpw.*\$/ s/^/#/&amp;quot; /etc/sudoers
sed -i &amp;quot;/^Defaults\ env_reset.*\$/ s/\ env_reset/\ \!env_reset/&amp;quot; /etc/sudoers
sed -i &amp;quot;/^ALL.*ALL=(ALL).*\$/ s/^/#/&amp;quot; /etc/sudoers

############################################################
#### Suppress PolKit prompt messages
############################################################
#cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/polkit-1/localauthority/50-local.d/allow_all.pkla
#[Do not prompt users with any messages]
#Identity=unix-user:*
#Action=*
#ResultAny=yes
#ResultInactive=yes
#EOF

cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/polkit-1/localauthority/50-local.d/55-inhibit-shutdown.pkla
[Disable PowerOff, Reboot, Hibernate, Suspend]
Identity=unix-user:*
Action=org.freedesktop.login1.power-off;org.freedesktop.login1.power-off-multiple-sessions;org.freedesktop.login1.suspend;org.freedesktop.login1.suspend-multiple-sessions;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no
EOF

cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/polkit-1/localauthority/50-local.d/60-inhibit-network-changes.pkla
[Disable PowerOff, Reboot, Hibernate, Suspend]
Identity=unix-user:*
Action=org.freedesktop.NetworkManager.*
ResultAny=no
ResultInactive=no
ResultActive=no
EOF

#########################################
### Setup NTP servers
#########################################
sed -i &amp;quot;/^pool.*\$/ s/^/#/&amp;quot; /etc/chrony/chrony.conf
sed -i &amp;quot;/^server.*\$/ s/^/#/&amp;quot; /etc/chrony/chrony.conf

for dc in $DOMAIN_CONTROLLERS;
do
echo &amp;quot;server $dc iburst&amp;quot; | sudo tee -a /etc/chrony/chrony.conf
done

#########################################
### Setup Kerberos /etc/krb5.conf
#########################################
LIBDEFAULTS=$(cat &amp;lt;&amp;lt;EOF
[libdefaults]
dns_lookup_kdc = true
dns_lookup_realm = false
default_realm = $DEFAULT_REALM
clockskew = 300
default_ccache_name = FILE:/tmp/krb5cc_%{uid}
EOF
)

REALMS_KDC=$(for i in $DOMAIN_CONTROLLERS; do echo &amp;quot;kdc = $i&amp;quot;;done)

REALMS=$(cat &amp;lt;&amp;lt;EOF

[realms]
$DEFAULT_REALM = {
$REALMS_KDC
default_domain = $DEFAULT_REALM
}
EOF
)

DOMAIN_REALM=$(cat &amp;lt;&amp;lt;EOF

[domain_realm]
.$NEW_DOMAINNAME = $DEFAULT_REALM
$NEW_DOMAINNAME = $DEFAULT_REALM

[appdefaults]
pam = {
        ticket_lifetime = 1d
        renew_lifetime = 1d
        forwardable = true
        proxiable = false
        minimum_uid = 1
}
EOF
)

echo &amp;quot;$LIBDEFAULTS&amp;quot; &amp;gt; /etc/krb5.conf
echo &amp;quot;$REALMS&amp;quot; &amp;gt;&amp;gt; /etc/krb5.conf
echo &amp;quot;$DOMAIN_REALM&amp;quot; &amp;gt;&amp;gt; /etc/krb5.conf

########################################
#### Configure /etc/samba/smb.conf
########################################
SMB_CONF=$(cat &amp;lt;&amp;lt;EOF
# smb.conf is the main Samba configuration file. You find a full commented
# version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the
# samba-doc package is installed.
[global]
        workgroup = $NETBIOS_DOMAIN_NAME
        passdb backend = tdbsam
        map to guest = Bad User
        include = /etc/samba/dhcp.conf
        usershare allow guests = No
        idmap gid = 10000-20000
        idmap uid = 10000-20000
        realm = $DEFAULT_REALM
        security = ADS
        template homedir = /home/%D/%U
        template shell = /bin/bash
        usershare max shares = 100
        encrypt passwords = yes
        kerberos method = secrets and keytab
        winbind nested groups = yes
        winbind offline logon = yes
        winbind refresh tickets = yes
        winbind use default domain = yes
        dns proxy = no
        domain master = no
        local master = no
        preferred master = no
        load printers = no
        show add printer wizard = no
        printcap name = /dev/null
        disable spoolss = yes
        client use spnego = yes
        client ntlmv2 auth = yes
EOF
)

mv /etc/samba/smb.conf /etc/samba/smb.conf.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
echo &amp;quot;$SMB_CONF&amp;quot; &amp;gt; /etc/samba/smb.conf

########################################
#### Configure /etc/nsswitch.conf
########################################
sed -i &amp;#039;/^passwd:.*compat$/ s/$/ winbind/&amp;#039; /etc/nsswitch.conf
sed -i &amp;#039;/^group:.*compat$/ s/$/ winbind/&amp;#039; /etc/nsswitch.conf
sed -i &amp;#039;/^hosts:/ s/:.*$/: files dns/&amp;#039; /etc/nsswitch.conf

##########################################
#### Configure PAM
##########################################
sed -i &amp;quot;/^Default:.*\$/ s/:.*$/: yes/&amp;quot; /usr/share/pam-configs/mkhomedir
sed -i &amp;#039;/^mkhomedir/D&amp;#039; /var/lib/pam/seen
pam-auth-update --package
################################################################
### Fix /etc/pam.d/sddm to allow copy /etc/skel/ on first logon
### https://wiki.autosys.tk/doku.php?id=linux_faq:kde_not_copying_etc_skel_on_user_first_login
################################################################
sed -i &amp;#039;/pam_kwallet/ s/^/#/g&amp;#039; /etc/pam.d/sddm

#################################################
### Disable autologin
#################################################
#sed -i &amp;quot;/^DISPLAYMANAGER_AUTOLOGIN=.*\$/ s/=.*$/=\&amp;quot;\&amp;quot;/&amp;quot; /etc/sysconfig/displaymanager

#####################################################
#### Set SDDM Theme to allow input Username
#####################################################
cp /usr/share/sddm/themes/breeze/Login.qml /usr/share/sddm/themes/breeze/Login.qml.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
sed -i &amp;quot;/^.*property bool showUsernamePrompt:.*\$/ s/:.*$/: true/&amp;quot; /usr/share/sddm/themes/breeze/Login.qml

#######################################################
#### Import CA Certificates into Browsers
#   http://blog.xelnor.net/firefox-systemcerts/
#######################################################
HOMEDIR=$(getent passwd $SUDO_USER | cut -d: -f6)
apt-get -y install libnss3-tools
rm -Rf $HOMEDIR/.mozilla
rm -Rf $HOMEDIR/.pki

########################################################
#### Create and fill cert8.db in Firefox Profile
########################################################
killall firefox
sudo -u  $SUDO_USER xvfb-run --server-args=&amp;quot;-screen 0, 1280x1024x24&amp;quot; firefox -CreateProfile default
FirefoxProfileDir=$(find $HOMEDIR&amp;#039;/.mozilla/firefox/&amp;#039; -iname &amp;#039;*.default&amp;#039;);
for certificateFile in /usr/local/share/ca-certificates/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ;
do
 certutil -A -n &amp;quot;${certificateFile}&amp;quot; -t &amp;quot;TCu,Cuw,Tuw&amp;quot; -i ${certificateFile} -d ${FirefoxProfileDir}
done
chmod -R a+rw $HOMEDIR/.mozilla/firefox/*

################################################################################
#### Import certificates into nssdb for Chromium engine
################################################################################
mkdir --parents $HOMEDIR/.pki/nssdb
echo 1q2w3e4r | sudo tee $HOMEDIR/.pki/nssdb/password-file
certutil -N -f $HOMEDIR/.pki/nssdb/password-file -d $HOMEDIR/.pki/nssdb
for certificateFile in /usr/local/share/ca-certificates/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ;
do
 certutil -f $HOMEDIR/.pki/nssdb/password-file -A -n &amp;quot;${certificateFile}&amp;quot; -t &amp;quot;TCu,Cuw,Tuw&amp;quot; -i ${certificateFile} -d sql:$HOMEDIR/.pki/nssdb
done
chmod -R a+rw $HOMEDIR/.pki/nssdb/*

#########################################################
### Copy databases with imported certs to default profile
#########################################################
rm -Rf /etc/skel/.pki/nssdb/*
rm -Rf /etc/skel/.mozilla/firefox/*
mkdir --parents /etc/skel/.pki/nssdb/
cp -Rf $HOMEDIR/.pki/nssdb/* /etc/skel/.pki/nssdb/
mkdir --parents /etc/skel/.mozilla/firefox/
cp -Rf $HOMEDIR/.mozilla/firefox/* /etc/skel/.mozilla/firefox/

############################################################
### Setup Evolution Mail Client
############################################################
### Force Evolution Mail to be online
############################################################
mkdir --parents /etc/skel/.config/plasma-workspace/env/
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/plasma-workspace/env/evolution.sh
#!/bin/bash
export LANG=ru_RU.utf8
export LANGUAGE=ru_RU
export GIO_USE_NETWORK_MONITOR=base
EOF
##############################################################
### Create Evolution EWS Autodiscovery Script
##############################################################
mkdir --parents /etc/skel/.config/autostart-scripts/
cat &amp;lt;&amp;lt;ENDOFSCRIPT &amp;gt; /etc/skel/.config/autostart-scripts/ews_autodiscovery.sh
#! /bin/bash

export GIO_USE_NETWORK_MONITOR=base
DOMAINNAME=\`hostname -d\`
##################################################
### Check if Evolution EWS source file exist
##################################################
if [ -f ~/.config/evolution/sources/ews.\$USER.\$DOMAINNAME.1.source ]; then
echo
else
##########################################
## Check if connected to AD
##########################################
if ! wbinfo -P; then
echo &amp;quot;NETLOGON test failed&amp;quot; &amp;gt;&amp;gt; ~/.ews_setup.log
else
echo &amp;quot;NETLOGON test OK&amp;quot; &amp;gt;&amp;gt; ~/.ews_setup.log

CURRENT_DC=\`wbinfo -P | awk &amp;#039;{print \$9}&amp;#039; | awk -F &amp;quot;\&amp;quot;&amp;quot; &amp;#039;{print \$2}&amp;#039;\`
FULL_NAME=\`wbinfo -i \$USER | awk -F &amp;quot;:&amp;quot; &amp;#039;{print \$5}&amp;#039;\`
BASEDN=\`echo \$CURRENT_DC | sed s/^[^.]*.//g | sed s/&amp;quot;\.&amp;quot;/,dc=/g | sed s/^/dc=/\`
MAIL=\`ldapsearch -h \$CURRENT_DC -b &amp;quot;\$BASEDN&amp;quot; &amp;quot;sAMAccountName=\$USER&amp;quot; | grep mail: | awk &amp;#039;{print \$2 }&amp;#039;\`

###############################################################################################
### MS Exchange autodiscovery
#### https://github.com/sys4/automx/blob/master/src/automx-test
#### http://stackoverflow.com/questions/38509837/when-using-negotiate-with-curl-is-a-keytab-file-required
#### Joined AD with samba/winbind and have package gss-ntlmssp
###############################################################################################
AUTOD_URL=&amp;quot;https://autodiscover.\`echo \$MAIL | sed &amp;#039;s/^.*@//&amp;#039;\`&amp;quot;/autodiscover/autodiscover.xml
REQUEST=\$(cat &amp;lt;&amp;lt;EOF
&amp;lt;Autodiscover xmlns=&amp;quot;http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006&amp;quot;&amp;gt;
&amp;lt;Request&amp;gt;
&amp;lt;EMailAddress&amp;gt;\$MAIL&amp;lt;/EMailAddress&amp;gt;
&amp;lt;AcceptableResponseSchema&amp;gt;http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a&amp;lt;/AcceptableResponseSchema&amp;gt;
&amp;lt;/Request&amp;gt;
&amp;lt;/Autodiscover&amp;gt;
EOF
)

bash -c &amp;quot;curl -k -d &amp;#039;\$REQUEST&amp;#039; --header \&amp;quot;Content-Type: text/xml\&amp;quot; -s --negotiate -u : \$AUTOD_URL&amp;quot; &amp;gt; ~/.autodiscover.xml
OABUrl=\$(cat ~/.autodiscover.xml | grep -m 1 OABUrl | awk -F &amp;#039;[&amp;lt;&amp;gt;]&amp;#039; &amp;#039;{ print \$3 }&amp;#039;)oab.xml
EwsUrl=\$(cat ~/.autodiscover.xml | grep -m 1 EwsUrl | awk -F &amp;#039;[&amp;lt;&amp;gt;]&amp;#039; &amp;#039;{ print \$3 }&amp;#039;)
EwsHost=\$(echo \$EwsUrl | awk -F &amp;#039;/&amp;#039; &amp;#039;{ print \$3 }&amp;#039;)
rm ~/.autodiscover.xml

echo CURRENT_DC - \$CURRENT_DC &amp;gt; ~/.ews_setup.log
echo FULL_NAME - \$FULL_NAME &amp;gt;&amp;gt; ~/.ews_setup.log
echo BASEDN - \$BASEDN &amp;gt;&amp;gt; ~/.ews_setup.log
echo MAIL - \$MAIL &amp;gt;&amp;gt; ~/.ews_setup.log
echo DOMAINNAME - \$DOMAINNAME &amp;gt;&amp;gt; ~/.ews_setup.log
echo OABUrl - \$OABUrl &amp;gt;&amp;gt; ~/.ews_setup.log
echo EwsUrl - \$EwsUrl &amp;gt;&amp;gt; ~/.ews_setup.log
echo EwsHost - \$EwsHost &amp;gt;&amp;gt; ~/.ews_setup.log
################################################################
### Check URLs format
################################################################
echo \$OABUrl | grep -E &amp;#039;(https|http)://(([[:alnum:]]|-|_|\.|~|!|\*|;|:|@|&amp;amp;|=|+|\$|,|/|\?|%|#|\[|\]])*/(oab|OAB)([[:alnum:]]|-|_|\.|~|!|\*|;|:|@|&amp;amp;|=|+|\$|,|/|\?|%|#|\[|\]])*/oab.xml)&amp;#039;
OAB_URL_Check=\$?
echo \$EwsUrl | grep -E &amp;#039;(https|http)://(([[:alnum:]]|-|_|\.|~|!|\*|;|:|@|&amp;amp;|=|+|\$|,|/|\?|%|#|\[|\]])*/(ews|EWS)([[:alnum:]]|-|_|\.|~|!|\*|;|:|@|&amp;amp;|=|+|\$|,|/|\?|%|#|\[|\]])*/exchange.asmx)&amp;#039;
EWS_URL_Check=\$?

if [ \$OAB_URL_Check != 0 ] || [ \$EWS_URL_Check != 0 ]; then
echo &amp;quot;OAB and EWS URLs check failed... Exit...&amp;quot; &amp;gt;&amp;gt; ~/.ews_setup.log
else
echo &amp;quot;OAB and EWS URLs check OK&amp;quot; &amp;gt;&amp;gt; ~/.ews_setup.log

######################################################################
### CleaningUp and creating evolution source files
######################################################################
killall evolution-source-registry
rm -Rf ~/.config/evolution/sources
mkdir --parents ~/.config/evolution/sources

#####################################################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/ews.\$USER.\$DOMAINNAME.1.source
[Data Source]
DisplayName=\$MAIL
Enabled=true
Parent=

[Offline]
StaySynchronized=true

[Authentication]
Host=\$EwsHost
Method=GSSAPI
Port=443
ProxyUid=system-proxy
RememberPassword=true
User=\$USER
CredentialName=

[Collection]
BackendName=ews
CalendarEnabled=true
ContactsEnabled=true
Identity=\$USER
MailEnabled=true

[Security]
Method=none

[Ews Backend]
FilterInbox=true
StoreChangesInterval=3
CheckAll=true
ListenNotifications=true
Email=\$MAIL
FilterJunk=true
FilterJunkInbox=false
FoldersInitialized=true
GalUid=ews.\$USER.\$DOMAINNAME
Hosturl=\$EwsUrl
Oaburl=\$OABUrl
OabOffline=true
OalSelected=
Timeout=300
UseImpersonation=false
ImpersonateUser=
EOF

######################################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/ews.\$USER.\$DOMAINNAME.0.source
[Data Source]
DisplayName=\$MAIL
Enabled=true
Parent=ews.\$USER.\$DOMAINNAME.1

[Mail Composition]
Bcc=
Cc=
DraftsFolder=folder://ews.\$USER.\$DOMAINNAME/%d0%a7%d0%b5%d1%80%d0%bd%d0%be%d0%b2%d0%b8%d0%ba%d0%b8
SignImip=true
TemplatesFolder=folder://local/Templates

[Mail Identity]
Address=\$MAIL
Name=\$FULL_NAME
Organization=
ReplyTo=
SignatureUid=none

[Mail Submission]
SentFolder=folder://ews.\$USER.\$DOMAINNAME/%d0%9e%d1%82%d0%bf%d1%80%d0%b0%d0%b2%d0%bb%d0%b5%d0%bd%d0%bd%d1%8b%d0%b5
TransportUid=ews.\$USER.\$DOMAINNAME.13
RepliesToOriginFolder=false
EOF

######################################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/ews.\$USER.\$DOMAINNAME.3.source
[Data Source]
DisplayName=\$MAIL
Enabled=true
Parent=ews.\$USER.\$DOMAINNAME.1

[Refresh]
Enabled=true
IntervalMinutes=3

[Mail Account]
BackendName=ews
IdentityUid=ews.\$USER.\$DOMAINNAME
ArchiveFolder=
EOF

###############################################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/ews.\$USER.\$DOMAINNAME.13.source
[Data Source]
DisplayName=\$MAIL
Enabled=true
Parent=ews.\$USER.\$DOMAINNAME.1

[Mail Transport]
BackendName=ews
EOF

################################################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/local.source
# Special built-in mail store.
[Data Source]
DisplayName=On This Computer
Enabled=false
Parent=

[Mail Account]
BackendName=maildir
IdentityUid=self
ArchiveFolder=

[Maildir Backend]
FilterInbox=true
Path=\$HOME/.local/share/evolution/mail/local
EOF

########################################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/vfolder.source
# Special built-in mail store.

[Data Source]
DisplayName=Search Folders
Enabled=false
Parent=

[Mail Account]
BackendName=vfolder
IdentityUid=self
ArchiveFolder=

[Vfolder Backend]
FilterInbox=true
EOF

##########################################################################
mkdir --parents ~/.config/evolution/mail/
cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/mail/state.ini
[GlobalFolder]
GroupByThreads=false
PreviewVisible=true

[Store ews.\$USER.\$DOMAINNAME.3]
Expanded=true

[Search Bar]
SearchScope=mail-scope-current-folder
SearchOption=mail-search-subject-or-addresses-contain

[Folder Tree]
Selected=folder://ews.\$USER.\$DOMAINNAME.3/%d0%92%d1%85%d0%be%d0%b4%d1%8f%d1%89%d0%b8%d0%b5

[Folder folder://ews.\$USER.\$DOMAINNAME.3/%d0%92%d1%85%d0%be%d0%b4%d1%8f%d1%89%d0%b8%d0%b5]
GroupByThreads=false
PreviewVisible=true
Expanded=true

EOF

fi
fi
fi
ENDOFSCRIPT

chmod +x /etc/skel/.config/autostart-scripts/ews_autodiscovery.sh

#############################################################
### Disable Screen Locker By Default
#############################################################
mkdir --parents /etc/skel/.config/
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kscreenlockerrc
[Daemon]
Autolock=false
EOF

#########################################################
### Disable KDEWallet By Default
#########################################################
mkdir --parents /etc/skel/.config
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kwalletrc
[Wallet]
Enabled=false
EOF

############################################################
### Enable Autostart apps
############################################################
mkdir --parents /etc/skel/.config/autostart/
cp /usr/share/applications/sky.desktop /etc/skel/.config/autostart/

##########################################################
###Change Default Desktop View to Folder
##########################################################
cp /usr/share/plasma/shells/org.kde.plasma.desktop/contents/defaults /usr/share/plasma/shells/org.kde.plasma.desktop/contents/defaults.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
sed -i &amp;#039;/Containment=/ s/org.kde.desktopcontainment$/org.kde.plasma.folder/&amp;#039; /usr/share/plasma/shells/org.kde.plasma.desktop/contents/defaults

#############################################################
### Disable Desktop Effects By Default (Compositor)
#############################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kwinrc
[Compositing]
Enabled=false
EOF

#########################################################
### Create Default Shortcuts
#########################################################
mkdir --parents /etc/skel/Desktop
cp /usr/share/applications/evolution.desktop /etc/skel/Desktop/
cp /usr/share/applications/libreoffice-calc.desktop /etc/skel/Desktop/
cp /usr/share/applications/libreoffice-writer.desktop /etc/skel/Desktop/
cp /usr/share/applications/libreoffice-impress.desktop /etc/skel/Desktop/
cp /usr/share/applications/yandex-browser-beta.desktop /etc/skel/Desktop/
cp /usr/share/applications/org.kde.konsole.desktop /etc/skel/Desktop/
cp /usr/share/applications/org.kde.dolphin.desktop /etc/skel/Desktop/

chmod +x /etc/skel/Desktop/*

###############################################################################
### Modifying KDE default panel settings
### https://forum.kde.org/viewtopic.php?f=67&amp;amp;t=94534#p193422
### http://askubuntu.com/questions/897979/unable-to-populate-a-kde-quicklaunch-widget-via-the-plasma-scripting-interface
##############################################################################
cp /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
#########################################################
#### Change kickoff menu to kicker by default for new users
#### org.kde.plasma.kickoff -&amp;gt; org.kde.plasma.kicker
#########################################################
sed -i &amp;#039;s/kickoff/kicker/g&amp;#039; /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js
###########################################################################
#### Add quick launchers
############################################################################
QUICKLAUNCHERS=$(cat &amp;lt;&amp;lt;EOF

//Add QuickLaunchers
var quicklaunch = panel.addWidget(&amp;quot;org.kde.plasma.quicklaunch&amp;quot;);
var qlurls = [&amp;quot;file:///usr/share/applications/yandex-browser-beta.desktop&amp;quot;,
          &amp;quot;file:///usr/share/applications/evolution.desktop&amp;quot;,
          &amp;quot;file:///usr/share/applications/libreoffice-writer.desktop&amp;quot;,
          &amp;quot;file:///usr/share/applications/libreoffice-calc.desktop&amp;quot;,
          &amp;quot;file:///usr/share/applications/org.kde.dolphin.desktop&amp;quot;,
          &amp;quot;file:///usr/share/applications/org.kde.konsole.desktop&amp;quot;
         ];
quicklaunch.currentConfigGroup = [&amp;quot;General&amp;quot;];
quicklaunch.writeConfig(&amp;quot;launcherUrls&amp;quot;, qlurls);
EOF
)

grep -q &amp;quot;//Add QuickLaunchers&amp;quot; /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js
[ $? -ne 0 ] &amp;amp;&amp;amp; while read line
do
        echo &amp;quot;$line&amp;quot; &amp;gt;&amp;gt; /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js_new
        echo &amp;quot;$line&amp;quot; | grep -q &amp;quot;kicker.writeConfig&amp;quot;
        [ $? -eq 0 ] &amp;amp;&amp;amp; echo &amp;quot;$QUICKLAUNCHERS&amp;quot; &amp;gt;&amp;gt; /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js_new
done &amp;lt; /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js

mv /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js_new /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js

###########################################################################################
### Enable Russian Locale
###########################################################################################
locale-gen ru_RU.UTF-8
update-locale LANG=&amp;quot;ru_RU.UTF-8&amp;quot; LANGUAGE=&amp;quot;ru_RU&amp;quot;
mkdir --parents /etc/skel/.config/
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/plasma-locale-settings.sh
# Generated script, do not edit
# Exports language-format specific env vars from startkde.
# This script has been generated from kcmshell5 formats.
# It will automatically be overwritten from there.
export LANG=cu_RU.UTF-8
export LANGUAGE=ru
EOF

cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/plasma-localerc
[Formats]
LANG=cu_RU.UTF-8

[Translations]
LANGUAGE=ru
EOF

cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kdeglobals
[Translations]
LANGUAGE=ru
EOF

mkdir --parents /etc/skel/.config/KDE
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/KDE/Sonnet.conf
[General]
autodetectLanguage=true
backgroundCheckerEnabled=true
checkUppercase=true
checkerEnabledByDefault=false
defaultClient=
defaultLanguage=ru_RU
ignore_ru_RU=Amarok, KAddressBook, KDevelop, KHTML, KIO, KJS, KMail, KMix, KOrganizer, Konqueror, Kontact, Nepomuk, Okular, Qt, Sonnet
skipRunTogether=true
EOF

cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kcminputrc
[Keyboard]
KeyboardRepeating=0
NumLock=2
RepeatDelay=600
RepeatRate=25
EOF

cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kxkbrc
[Layout]
DisplayNames=,
LayoutList=ru,us
LayoutLoopCount=-1
Model=pc101
Options=grp:alt_shift_toggle,grp:ctrl_shift_toggle
ResetOldOptions=true
ShowFlag=false
ShowLabel=true
ShowLayoutIndicator=true
ShowSingle=false
SwitchMode=Global
Use=true
EOF

############################################################
### Export Locale Variables
############################################################
mkdir --parents /etc/skel/.config/plasma-workspace/env/
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/plasma-workspace/env/locale_ru.sh
#!/bin/bash
export LANG=ru_RU.utf8
export LANGUAGE=ru_RU
EOF

###########################################################
### Set MIME types applications
###########################################################
xdg-settings set default-url-scheme-handler yandex-browser-beta.desktop
xdg-settings set default-url-scheme-handler yandex-browser-beta.desktop

#cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/mimeapps.list
#[Default Applications]
#inode/directory=org.kde.dolphin.desktop
#x-scheme-handler/http=yandex-browser-beta.desktop
#x-scheme-handler/https=yandex-browser-beta.desktop
#EOF

#######################################################################################
### Setup LibreOffice Locale
#######################################################################################
mkdir --parents /etc/skel/.config/libreoffice/4/user/
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/libreoffice/4/user/registrymodifications.xcu
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;
&amp;lt;oor:items xmlns:oor=&amp;quot;http://openoffice.org/2001/registry&amp;quot; xmlns:xs=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Setup/Office/Factories/org.openoffice.Setup:Factory[&amp;#039;com.sun.star.presentation.PresentationDocument&amp;#039;]&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;ooSetupFactoryDefaultFilter&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;Impress MS PowerPoint 2007 XML&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Setup/Office/Factories/org.openoffice.Setup:Factory[&amp;#039;com.sun.star.sheet.SpreadsheetDocument&amp;#039;]&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;ooSetupFactoryDefaultFilter&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;Calc MS Excel 2007 XML&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Setup/Office/Factories/org.openoffice.Setup:Factory[&amp;#039;com.sun.star.text.TextDocument&amp;#039;]&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;ooSetupFactoryDefaultFilter&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;MS Word 2007 XML&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;ru-RU&amp;quot; oor:op=&amp;quot;fuse&amp;quot; oor:type=&amp;quot;oor:string-list&amp;quot;&amp;gt;&amp;lt;value&amp;gt;&amp;lt;it&amp;gt;org.openoffice.lingu.MySpellSpellChecker&amp;lt;/it&amp;gt;&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;en-US&amp;quot; oor:op=&amp;quot;fuse&amp;quot; oor:type=&amp;quot;oor:string-list&amp;quot;&amp;gt;&amp;lt;value&amp;gt;&amp;lt;it&amp;gt;org.openoffice.lingu.MySpellSpellChecker&amp;lt;/it&amp;gt;&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;ru-RU&amp;quot; oor:op=&amp;quot;fuse&amp;quot; oor:type=&amp;quot;oor:string-list&amp;quot;&amp;gt;&amp;lt;value&amp;gt;&amp;lt;it&amp;gt;org.openoffice.lingu.MySpellSpellChecker&amp;lt;/it&amp;gt;&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;en-US&amp;quot; oor:op=&amp;quot;fuse&amp;quot; oor:type=&amp;quot;oor:string-list&amp;quot;&amp;gt;&amp;lt;value&amp;gt;&amp;lt;it&amp;gt;org.openoffice.lingu.MySpellSpellChecker&amp;lt;/it&amp;gt;&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/General&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;DefaultLocale_CTL&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/General&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;DefaultLocale&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;ru-RU&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/General&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;DefaultLocale_CJK&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/General&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;IsIgnoreControlCharacters&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;true&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Office.Linguistic/General&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;UILocale&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;ru&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Setup/L10N&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;ooLocale&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;ru&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Setup/L10N&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;ooSetupSystemLocale&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;ru-RU&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Setup/L10N&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;IgnoreLanguageChange&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;false&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;item oor:path=&amp;quot;/org.openoffice.Setup/L10N&amp;quot;&amp;gt;&amp;lt;prop oor:name=&amp;quot;DecimalSeparatorAsLocale&amp;quot; oor:op=&amp;quot;fuse&amp;quot;&amp;gt;&amp;lt;value&amp;gt;true&amp;lt;/value&amp;gt;&amp;lt;/prop&amp;gt;&amp;lt;/item&amp;gt;
&amp;lt;/oor:items&amp;gt;
EOF

####################################################################
#### Install Kaspersky
####################################################################
ADDONSDIR=&amp;quot;/tmp/addons&amp;quot;
mkdir --parents $ADDONSDIR
curl http://szud-linux-repo.sigma.sbrf.ru/addons.tar.gz | tar -xzv -C $ADDONSDIR
apt-get -y install libc6-i386 build-essential
dpkg -i --force-architecture $ADDONSDIR/kes10/*.deb

###‘PT_PTRACE_CAP’ undeclared (first use in this function)
sed -i &amp;#039;s/ | PT_PTRACE_CAP//&amp;#039; /opt/kaspersky/kav4fs/src/kernel/module.linux/interceptor_rfs.c
/opt/kaspersky/kav4fs/bin/kav4fs-setup.pl --auto-install=$ADDONSDIR/kes10/install.conf

### i_mutex_fix
sed -i &amp;#039;s/mutex_lock(&amp;amp;inode-&amp;gt;i_mutex);/inode_lock(inode);/&amp;#039; /opt/kaspersky/kav4fs/src/kernel/redirfs/rfs.h
sed -i &amp;#039;s/mutex_unlock(&amp;amp;inode-&amp;gt;i_mutex);/inode_unlock(inode);/&amp;#039; /opt/kaspersky/kav4fs/src/kernel/redirfs/rfs.h

/opt/kaspersky/klnagent/lib/bin/setup/postinstall.pl &amp;lt;$ADDONSDIR/kes10/server
/opt/kaspersky/kav4fs/bin/kav4fs-wmconsole-passwd
service kav4fs-wmconsole restart

reboot&lt;/pre&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;join_ad_setup_vda&quot;&gt;Join AD &amp;amp; Setup VDA&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;#! /bin/bash

####################################
#### Set needed Variables
####################################
NEW_HOSTNAME=$1
CONNECTION=`ip link | grep &amp;#039;state UP&amp;#039; | awk &amp;#039;{ print $2 }&amp;#039; | sed &amp;#039;s/:$//&amp;#039;`
NEW_DOMAINNAME=`grep &amp;#039;option domain-name&amp;#039; /var/lib/dhcp/dhclient.$CONNECTION.leases | tail -n 1 | awk &amp;#039;{print $3}&amp;#039; | sed &amp;#039;s/&amp;quot;//g;s/;//g&amp;#039;`

# check root
if [ &amp;quot;$(id -u)&amp;quot; != &amp;quot;0&amp;quot; ]; then
  echo &amp;quot;You do not have the appropriate privileges...&amp;quot;
  exit 1
fi

# check hostname $1
if [[ -z &amp;quot;$1&amp;quot; ]]; then
        echo &amp;quot;Hostname is epmty&amp;quot;
        echo &amp;quot;Try to run: ./join_ad_ctx.sh new-host-name&amp;quot;
        exit 1
fi

###############################################
### Setting HOSTNAME, DOMAINNAME
###############################################
sed -i &amp;#039;/^127./D&amp;#039; /etc/hosts
echo &amp;quot;127.0.0.1 $NEW_HOSTNAME.$NEW_DOMAINNAME $NEW_HOSTNAME localhost&amp;quot; | sudo tee -a /etc/hosts
echo &amp;quot;127.0.0.2 $NEW_HOSTNAME.$NEW_DOMAINNAME $NEW_HOSTNAME&amp;quot; | sudo tee -a /etc/hosts
hostname $NEW_HOSTNAME
domainname $NEW_DOMAINNAME
echo $NEW_HOSTNAME.$NEW_DOMAINNAME | sudo tee /etc/HOSTNAME
echo $NEW_HOSTNAME.$NEW_DOMAINNAME | sudo tee /etc/hostname

net ads join -U ADDSIGMACA

/opt/Citrix/VDA/sbin/ctxcleanup.sh
CTX_XDL_SUPPORT_DDC_AS_CNAME=N \
CTX_XDL_DDC_LIST=&amp;quot;v-szud-ctxdc-01.sigma.sbrf.ru v-szud-ctxdc-02.sigma.sbrf.ru&amp;quot; \
CTX_XDL_VDA_PORT=80 \
CTX_XDL_REGISTER_SERVICE=Y \
CTX_XDL_ADD_FIREWALL_RULES=Y \
CTX_XDL_AD_INTEGRATION=1 \
CTX_XDL_HDX_3D_PRO=N \
CTX_XDL_VDI_MODE=Y \
CTX_XDL_SITE_NAME=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_LDAP_LIST=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_SEARCH_BASE=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_START_SERVICE=Y \
/opt/Citrix/VDA/sbin/ctxsetup.sh

sleep 10
reboot&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Join AD &amp;amp; Setup VDA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;join_ad_setup_vda&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;32693-34357&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;join_multiple_vms_to_ad&quot;&gt;Join multiple VMs to AD&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;#! /bin/bash
vms_ip=$(cat &amp;lt;&amp;lt;EOF
10.38.246.47
10.38.247.23
10.38.246.46
10.38.247.22
10.38.246.45
10.38.246.44
10.38.246.43
10.38.246.42
10.38.246.41
EOF
)

i=30
for ip_addr in $vms_ip; do
echo &amp;#039;IP &amp;#039;$ip_addr &amp;#039; name - szud-ubuntu&amp;#039;$i
ssh -o StrictHostKeyChecking=no -t localuser@$ip_addr &amp;quot;sudo ~/join_ad_setup_ctx.sh szud-ubuntu$i&amp;quot; &amp;amp;
((i-=1))
done&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Join multiple VMs to AD&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;join_multiple_vms_to_ad&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;34358-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 29 Mar 2021 18:44:15 +0000</pubDate>
        </item>
        <item>
            <title>подготовка-к-экзамену-1y0-200-managing-citrix-xendesktop-7-solutions</title>
            <link>https://wiki.autosys.tk/citrix/%D0%BF%D0%BE%D0%B4%D0%B3%D0%BE%D1%82%D0%BE%D0%B2%D0%BA%D0%B0-%D0%BA-%D1%8D%D0%BA%D0%B7%D0%B0%D0%BC%D0%B5%D0%BD%D1%83-1y0-200-managing-citrix-xendesktop-7-solutions</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;раздел_1managing_citrix_xendesktop_7_solutions&quot;&gt;Раздел 1: Managing Citrix XenDesktop 7 Solutions&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 1: Managing Citrix XenDesktop 7 Solutions&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_1managing_citrix_xendesktop_7_solutions&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;2-69&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;работа_с_образами_серверных_и_клиентских_ос_в_том_числе_каталогами_машин_и_группами_доставки&quot;&gt;1.1 - Работа с образами серверных и клиентских ОС (в том числе каталогами машин и группами доставки).&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.1 - \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u043e\u0431\u0440\u0430\u0437\u0430\u043c\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0445 \u041e\u0421 (\u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430\u043c\u0438 \u043c\u0430\u0448\u0438\u043d \u0438 \u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438).&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0431\u043e\u0442\u0430_\u0441_\u043e\u0431\u0440\u0430\u0437\u0430\u043c\u0438_\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445_\u0438_\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0445_\u043e\u0441_\u0432_\u0442\u043e\u043c_\u0447\u0438\u0441\u043b\u0435_\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430\u043c\u0438_\u043c\u0430\u0448\u0438\u043d_\u0438_\u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438_\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;70-259&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit3&quot; id=&quot;обновление_существующего_каталога_машин_до_новой_версии_xendesktop_7&quot;&gt;Обновление существующего каталога машин до новой версии XenDesktop 7.&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-upgrade-catalog.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-upgrade-catalog.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-upgrade-catalog.html&lt;/a&gt;&lt;br/&gt;

Обновлены могут быть только каталоги машин на базе Windows 7 и Windows 8.&lt;br/&gt;

&lt;strong&gt;Remote PC Access&lt;/strong&gt; не поддерживается ОС &lt;strong&gt;Windows Vista&lt;/strong&gt;.&lt;br/&gt;

Для ОС Windows XP и Vista обновления VDA до версии 7 нет.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
While performing a random allocation type catalog update after updating the master image, the only valid options are&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Immediately&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 ‘On the next restart’&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 A restart can be delayed but not scheduled.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Machine&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-update-master-vm-rho.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-update-master-vm-rho.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-update-master-vm-rho.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/update-machines.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/update-machines.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/10/update-machines.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.2&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Create Citrix Policies&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
A policy is assigned to all objects in the site.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Set priority to 1 to over-write existing policies settings.&lt;br/&gt;

 1 is the highest priority.&lt;br/&gt;

 Deny mode&lt;br/&gt;

 Excludes a policy from applying to the assignment.&lt;br/&gt;

 By default, new policy is created with largest number for priority.&lt;br/&gt;

 The lowest priority.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Manage Citrix policies &amp;gt; Use multiple policies &amp;gt; Prioritize policies and create exceptions&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-multiple-prioritizing-rho.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-multiple-prioritizing-rho.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-multiple-prioritizing-rho.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Private Desktop is also called pooled VDI.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Shared Desktop is also called XenApp published desktop.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Private Application is a published application on a VM.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Shared Application is also called XenApp published application.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Please note: The Citrix eDoc site shows the ‘Assignment type’ as ‘Desktop type’ but the actual product shows it as Delivery Group type.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Manage Citrix policies &amp;gt; Apply policies &amp;gt; To apply a policy&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-applying-task-rho.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-applying-task-rho.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-applying-task-rho.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/09/assign-policy.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/09/assign-policy.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/09/assign-policy.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.3&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Create Citrix policies (including printing policies)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: When&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To utilize auto updating of Controllers, an administrator should use Citrix Studio to create and configure a Citrix policy.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Updating the registry of the master image is a manual self-managed method.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To perform an OU-based Controller discovery, run the Set-ADControllerDiscovery.ps1 PowerShell script on the Controller.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Delivery Controller environment &amp;gt; Automatically update&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-mng-cntrlr-autoupdate.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-mng-cntrlr-autoupdate.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-mng-cntrlr-autoupdate.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.4&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Manage license usage&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
In the Citrix admins group, to assign permissions to administrator to manage a Citrix license server:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Use Citrix Studio to add Citrix admins in Administrators.&lt;br/&gt;

 Adding a Citrix admin to Domain admins would be correct only if the license server is co-located on Controllers.&lt;br/&gt;

 Adding a Citrix admin to Licensing administrators only assigns rights in XenDesktop Citrix Studio, not the licensing portion.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; License &amp;gt; Manage Licensing &amp;gt; To add a licensing administrator group&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-licensing-management.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-licensing-management.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-licensing-management.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.5&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Delegate administrative rights&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To view configuration logs:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Use Citrix Studio.&lt;br/&gt;

 Select Logging in the left pane.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
View Configuration Logs rights.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Full Administrator&lt;br/&gt;

 Read Only Administrator&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Always use ‘Read only’ role when View Configuration Logs and minimum rights are needed.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Delegated Administration&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-delegatedadmin.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-delegatedadmin.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-delegatedadmin.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Want a PDF of the full 1Y0-200 study guide?&lt;br/&gt;

Enter your email and click Join!&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.6&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Publish server/desktop &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;-hosted applications&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To publish an application installed locally on Master Image:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Use Citrix Studio &amp;gt; Delivery Groups &amp;gt; Applications tab.&lt;br/&gt;

 Click Create Application.&lt;br/&gt;

 Select a Delivery Group and click Next.&lt;br/&gt;

 Select an application and click Next.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Deliver &amp;gt; Delivery Groups&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-create-update-desktops-wrapper-rho.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-create-update-desktops-wrapper-rho.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-create-update-desktops-wrapper-rho.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.7&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Modify virtual machine settings (XenServer)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To isolate Personal vDisk to a new storage:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 A new writeable shared storage must be first presented to XenServer pool.&lt;br/&gt;

 NFS storage&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 OR&lt;br/&gt;

 FC storage&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When share storage is presented:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Use Citrix Studio &amp;gt; Hosting.&lt;br/&gt;

 Select the XenServer resource.&lt;br/&gt;

 Click Add Storage.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
CIFS share is a read-only storage type for XenServer.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Personal vDisk cannot be attached to master image.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Please note: eDocs describes the concept of Personal vDisk, which should be separate from master image, so master image can be updated without losing personal settings.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Personal vDisks&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-about-personal-vdisks.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-about-personal-vdisks.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-about-personal-vdisks.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.8&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Create device collections, target devices, and vDisks (using the XenDesktop wizard, PV wizard, and manually)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Correct steps to create a device collection in PVS Console areIn the Console, right-click the Device Collections folder where the new collection will exist:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Select the ‘Create device collection’ menu option.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 OR&lt;br/&gt;

 Select Device Collections folder, click Action from the menu, and select Create Device Collection.&lt;br/&gt;

 The Device Collection Properties dialog will appear.&lt;br/&gt;

 On the General tab, type a name for the new device collection in the Name text box.&lt;br/&gt;

 A description of the collection in the Description text box.&lt;br/&gt;

 Click the Security tab.&lt;br/&gt;

 Under the Device Administrators list, click Add.&lt;br/&gt;

 The Add Security Group dialog will appear.&lt;br/&gt;

 To assign a group with the Device Administrator role:&lt;br/&gt;

 Type or select the appropriate domain and group name in the text box and click OK.&lt;br/&gt;

 Under the Device Operators list, click Add.&lt;br/&gt;

 The Add Security Group dialog will appear.&lt;br/&gt;

 To assign a group with the Device Operator role:&lt;br/&gt;

 Type or select the appropriate domain and group name in the text box and click OK.&lt;br/&gt;

 Click OK to close the dialog box.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Provisioning Services &amp;gt; Provisioning Services 7.0 &amp;gt; Provisioning Services Administration &amp;gt; Managing Device Collections &amp;gt; Device Collection Management Tasks&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-collections-create.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-collections-create.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-collections-create.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
The following are the necessary prerequisites when creating a vDisk:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Enable Windows Automount on Windows Server operating systems.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Disable Windows Autoplay.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Verify adequate free space exists in the vDisk store.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Approximately 101% of used space on the source volumes.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Make a note of which NIC(s) the master target device was bound to when the Provisioning Services software was installed on the target device.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 If a message appears during imaging prompting for reboot, ignore the request until imaging has completed successfully.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Provisioning Services &amp;gt; Provisioning Services 7.0 &amp;gt; Installing and configuring Provisioning Services &amp;gt; Creating vDisks Automatically&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-vdisks-image-wizard.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-vdisks-image-wizard.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-vdisks-image-wizard.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.9&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Manage Personal vDisk&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What (considerations need to be made)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Personal vDisks are only supported with a desktop &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Windows XP&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Windows 7&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Windows 8&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Server &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; is not supported.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
There can be only one personal vDisk per machine.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Personal vDisk can be moved to another machine if needed.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
The minimum size of personal vDisk is 3GB.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Personal vDisk can be placed on any hypervisor supported storage.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 It does not necessarily have to be on the same storage as the base VDI image.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &lt;abbr title=&quot;Frequently Asked Questions&quot;&gt;FAQ&lt;/abbr&gt; – Personal vDisk&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX131553&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX131553&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX131553&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.10&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Configure/Modify NetScaler Gateway Policies&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: When&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
A session policy is a collection of expressions and settings that are applied to:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Users&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Groups&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Virtual servers&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Globally&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Session policies are used to configure the settings for user connections, such as:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Defining settings to configure users to log on with the NetScaler Gateway Plug-in for Java or NetScaler Plug-in for Windows.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Session policies are evaluated and applied after the user is authenticated.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Traffic policies allow the configuration of settings for user connections, including:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Enforcing shorter time-outs for sensitive applications that are accessed from untrusted networks.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Switching network traffic to use TCP for some applications.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Identifying situations where other HTTP features for NetScaler Gateway Plug-in traffic should be used.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Defining the file extensions that are used with file type association.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 File type association allows users to open documents in applications published through Citrix XenApp or Citrix XenDesktop 7.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
NetScaler Gateway &amp;gt; NetScaler Gateway 10.1 &amp;gt; Configure &amp;gt; Configuring Policies and Profiles on NetScaler Gateway&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/NetScaler-gateway-101/ng-policies-profiles-wrapper-con.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/NetScaler-gateway-101/ng-policies-profiles-wrapper-con.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/NetScaler-gateway-101/ng-policies-profiles-wrapper-con.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.11&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Configure the store (include remote access and access for mobile devices)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 To make a store and other resources on an internal network available through an SSL VPN tunnel.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Select ‘Full VPN tunnel’.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Users require the NetScaler Gateway Plug-in to establish the VPN tunnel.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If an appliance running NetScaler Gateway 10.1, Access Gateway 10, or Access Gateway 9.3 is added, select from the ‘Logon type’ list the authentication method configured on the appliance for Citrix Receiver users.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
The information that is provided during configuration of the NetScaler Gateway appliance is added to the provisioning file for the store, which enables Citrix Receiver to send the appropriate connection request when contacting the appliance for the first time.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If users are required to enter both their domain credentials and a token code obtained from a security token, ‘Domain and security token’ should be selected.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Other selections that can be made, depending on the requirements, are:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Domain&lt;br/&gt;

 ‘Security token’&lt;br/&gt;

 ‘SMS authentication’&lt;br/&gt;

 ‘Smart card’&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; StoreFront &amp;gt; StoreFront 2.1 &amp;gt; Manage &amp;gt; Configure stores&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-store.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-store.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-store.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/enable-remote-access.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/enable-remote-access.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/10/enable-remote-access.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/change-general-settings.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/change-general-settings.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/10/change-general-settings.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Section 2: Maintaining Citrix XenDesktop 7 Solutions&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.1&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Back up/restore the XenDesktop database&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop utilizes SQL Server to handle database backup and restore.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To perform a one-time backup a XenDesktop 7 site database:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Verify the name of the database.&lt;br/&gt;

 Verify the database server name.&lt;br/&gt;

 Obtain the name of the database server data source.&lt;br/&gt;

 Obtain the database name.&lt;br/&gt;

 In Microsoft SQL Server Management Studio &amp;gt; Object Explorer:&lt;br/&gt;

 Select Tasks &amp;gt; Backup.&lt;br/&gt;

 Verify the backup is set to Full and click OK.&lt;br/&gt;

 Verify the backup was successful.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
How to Backup and Restore your XenDesktop Database&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX135207&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX135207&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX135207&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.2&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Update the desktop image&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What factors should be considered&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
In order for virtual machines to use an updated master image, the virtual machines must be restarted.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Please note that after updating the master image, the user devices must be restarted through Studio.&lt;br/&gt;

 For the changes to take effect.&lt;br/&gt;

 For the changes to be available to the users.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop 7 &amp;gt; Manage &amp;gt; Machines &amp;gt; Update a master image&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-update-master-vm-rho.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-update-master-vm-rho.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-update-master-vm-rho.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.3&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Configure power management settings&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: When&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To power manage Delivery Groups:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 In Studio, select the Delivery Group node.&lt;br/&gt;

 Select the desired Delivery Group power management settings.&lt;br/&gt;

 Click Edit Delivery Group.&lt;br/&gt;

 &lt;br/&gt;

 Click ‘Power management’.&lt;br/&gt;

 Select Weekdays in ‘Power on/off machines’.&lt;br/&gt;

 For random Delivery Groups, in ‘Machines to be powered on’:&lt;br/&gt;

 Click Edit.&lt;br/&gt;

 Specify the pool size during weekdays.&lt;br/&gt;

 In ‘Machines to be powered on’:&lt;br/&gt;

 Select the number of machines to power on.&lt;br/&gt;

 In ‘Peak hours’:&lt;br/&gt;

 Set the organization’s peak and off-peak hours during weekdays.&lt;br/&gt;

 Set power state timers for peak and non-peak hours during weekdays.&lt;br/&gt;

 Select Weekend.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop 7 &amp;gt; Manage &amp;gt; Application and desktop delivery &amp;gt; Power manage Desktop &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; machines&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-control-power-management-rho.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-control-power-management-rho.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-control-power-management-rho.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.4&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Backup/restore XenServer metadata&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To configure a recurring backup of XenServer virtual machine metadata in a XD 7 deployment:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Use the fdisk -l command to determine the device file needed for the USB storage device.&lt;br/&gt;

 Create the storage repository on the USB storage device.&lt;br/&gt;

 In the XenServer console (accessible with xsconsole using the command line interface in the XenCenter):&lt;br/&gt;

 Select ‘Backup, Restore and Update’.&lt;br/&gt;

 Select Backup Virtual Machine Metadata.&lt;br/&gt;

 Select the new storage repository created earlier using the xe sr-create command.&lt;br/&gt;

 Proceed with VM backup using a thumb drive or other USB drive.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
How to Back Up Virtual Machine Metadata to a USB Device&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX121282&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX121282&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX121282&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.5&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Add additional storage to target devices&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Adding a second drive to the master image can be a standard practice for many XenDesktop administrators.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The best method to add a second drive to the master image is to configure a vDisk for the master image and create C: and D: partition.&lt;br/&gt;

 When the master image is prepared with C: and D: partitions, the administrator can deploy new virtual machines.&lt;br/&gt;

 The VMs will have local D: drives.&lt;br/&gt;

 Random Desktop &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; machines will drop all of the configurations if rebooted if XenCenter is used to configure a D: drive on all of the VMs.&lt;br/&gt;

 Use the ‘Net Use’ command to map a network drive; not a local drive.&lt;br/&gt;

 Citrix policies can control how local Citrix client device drives map to a VDI session.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Although the following source is for a discontinued version of Provisioning Services, multiple partitions on a master image are still created using Provisioning Services.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Archive: How to Create a Two Partition Virtual Disk&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/ctx116698&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/ctx116698&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/ctx116698&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Want a PDF of the full 1Y0-200 study guide?&lt;br/&gt;

Enter your email and click Join!&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.6&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Maintain vDisks&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To add Personal vDisks to new hosts when configuring a new XenDesktop site:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Add Personal vDisks and storage for the Personal vDisks to existing hosts.&lt;br/&gt;

 &lt;br/&gt;

 In Studio:&lt;br/&gt;

 Click Configuration.&lt;br/&gt;

 Click Hosting.&lt;br/&gt;

 Select a host.&lt;br/&gt;

 Click Add Personal vDisk Storage.&lt;br/&gt;

 Specify the storage location.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop 7 &amp;gt; Manage &amp;gt; Personal vDisks &amp;gt; Manage Personal vDisks&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-personal-vdisks.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-personal-vdisks.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-personal-vdisks.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
(2.7 and 2.8 intentionally left out. See Citrix Education’s 1Y0-200 Exam Prep Guide)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.9&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Configure StoreFront access scenario&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
There are three choices for remote access to StoreFront:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 None&lt;br/&gt;

 None means no remote access.&lt;br/&gt;

 Only users on the internal network with connection to the StoreFront servers can access the store.&lt;br/&gt;

 No VPN Tunnel&lt;br/&gt;

 No VPN Tunnel is accessed through NetScaler in ICA Proxy mode.&lt;br/&gt;

 Full access to the internal network is not provided.&lt;br/&gt;

 Users do not need an Access Gateway Plug-in.&lt;br/&gt;

 Full VPN Tunnel&lt;br/&gt;

 Full VPN Tunnel means that users need Access Gateway Plug-in.&lt;br/&gt;

 Users can have outside VPN access to the internal network through NetScaler.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; StoreFront &amp;gt; StoreFront 2.0 &amp;gt; Manage &amp;gt; Configure stores&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-remote.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-remote.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-remote.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.10&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Configure Citrix Receiver updates&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
v  The options that an administrator can choose when providing users of StoreFront with updates to Citrix Receiver:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Citrix (citrix.com)&lt;br/&gt;

 Merchandising Server&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; StoreFront &amp;gt; StoreFront 2.1 &amp;gt; Manage &amp;gt; Configure stores&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-store.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-store.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-manage-store.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/citrix-StoreFront.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/citrix-StoreFront.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/10/citrix-StoreFront.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.11&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Perform user profile maintenance&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: When&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
In a pooled VDI, when user login time significantly increases for one user while other users aren’t seeing an increase, the cause is most likely a bloomed or corrupted user roaming profile.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To resolve:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Reset the user’s roaming profile.&lt;br/&gt;

 When the profile is reset, the user’s login behavior will be restored to normal.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop 7 &amp;gt; Monitor &amp;gt; Monitor environment with Director &amp;gt; Troubleshoot user issue&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-reset-user-profile.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-reset-user-profile.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-reset-user-profile.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Section 3: Monitoring Citrix XenDesktop 7 Solutions&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.1&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Use Director to monitor the environment&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When troubleshooting a user or virtual desktop issue, the operator is able to shadow the end user by starting a Remote Assistance connection to the virtual desktop machine.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 In XenDesktop 7, Citrix Director is the management console.&lt;br/&gt;

 Remote Desktop is RDP, which can only have one session on Desktop &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, is not used for shadowing.&lt;br/&gt;

 Shadow Taskbar is used in XenApp, not XenDesktop.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
How to Enable Remote Assistance for Citrix Director&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX127388&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX127388&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX127388&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenApp &amp;gt; XenApp 5 Feature Pack for Windows Server 2003 &amp;gt; XenApp Administration &amp;gt; Managing Session Environments and Connections &amp;gt; Viewing User Sessions&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp5fp-w2k3/ps-sessions-use-sess-shad-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp5fp-w2k3/ps-sessions-use-sess-shad-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp5fp-w2k3/ps-sessions-use-sess-shad-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Identifying and handling an unregistered VDI:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The administrator should use Citrix Director and filter State is Unregistered.&lt;br/&gt;

 This shows a VDI’s State is Unregistered and means there is an issue with VDA to DDC communications.&lt;br/&gt;

 This also includes the situation when Citrix Desktop Service is Stopped or Citrix Desktop Service is Started but still having issues communicating with the DDC.&lt;br/&gt;

 The Last Connection Failure is historical data.&lt;br/&gt;

 Using WMI and querying Citrix Desktop Service status is Stopped only shows the VDIs that the VDA service is stopped.&lt;br/&gt;

 Citrix ICA Service is used to handle ICA sessions, but does not communicate with a DDC.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Troubleshooting XenDesktop brokering process&lt;br/&gt;

&lt;a href=&quot;http://blogs.citrix.com/2012/07/23/troubleshooting-xendesktop-brokering-process-2&quot; class=&quot;urlextern&quot; title=&quot;http://blogs.citrix.com/2012/07/23/troubleshooting-xendesktop-brokering-process-2&quot; rel=&quot;ugc nofollow&quot;&gt;http://blogs.citrix.com/2012/07/23/troubleshooting-xendesktop-brokering-process-2&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop 7 &amp;gt; Monitor &amp;gt; Monitor environments with Director &amp;gt; Monitor deployments &amp;gt; Filter data to troubleshoot failures &amp;gt; Filter data to troubleshoot failures&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-use-create-filters.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-use-create-filters.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-use-create-filters.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.2&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Interpret Alerts in Citrix Director&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
In Citrix Director, Unavailable Capacity means that the Desktop/Server &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; session is not available due to max capacity reached.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When Unavailable Capacity count is greater than 0, it means the VM in a Delivery Group has no more free sessions to hand out.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 An administrator should add more VMs to the Delivery Group.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Monitor Monitor environments with Director &amp;gt; Monitor deployments on the Dashboard&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-monitor-deployment-wrapper.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-monitor-deployment-wrapper.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-monitor-deployment-wrapper.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/unavailable-capacity-count.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/unavailable-capacity-count.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/10/unavailable-capacity-count.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
(3.3 intentionally left out. See Citrix Education’s 1Y0-200 Exam Prep Guide)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.4&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor Machine Processes and Failures&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
View processes running under a user’s VDI session with Citrix Director.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Citrix admins should also use Director to end non-responsive applications or processes.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop 7 &amp;gt; Monitor &amp;gt; Monitor environments with Director &amp;gt; Troubleshoot user issues &amp;gt; Resolve application failures&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-app-failure.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-app-failure.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-app-failure.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.5&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor the Virtual Delivery Agent&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Using Citrix Director, administrators can monitor the Usage table.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The Usage table shows whether each machine is:&lt;br/&gt;

 Off&lt;br/&gt;

 Ready&lt;br/&gt;

 Connected&lt;br/&gt;

 Disconnected&lt;br/&gt;

 Unregistered&lt;br/&gt;

 When a machine’s registration state becomes unregistered, there is an issue with virtual delivery agent on the virtual machine.&lt;br/&gt;

 A user will not be able to login to a VDI.&lt;br/&gt;

 A disconnected user will not be able to re-connect back to a VDI.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 This results in a login failed event.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The Category table can also be monitored for Unregistered machines.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Desktop Director &amp;gt; Desktop Director 2.1 &amp;gt; Use &amp;gt; Interpreting the Information Displayed &amp;gt; Dashboard &amp;gt; Usage&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-usage.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-usage.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-usage.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Desktop Director &amp;gt; Desktop Director 2.1 &amp;gt; Use &amp;gt; Interpreting the Information Displayed &amp;gt; Dashboard &amp;gt; Machines&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-summary.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-summary.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-summary.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
An administrator can monitor machines from Director.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
In the Director Dashboard, the Category table lists the machines in the following states, which might require action:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 All&lt;br/&gt;

 Unregistered&lt;br/&gt;

 High CPU&lt;br/&gt;

 High Latency&lt;br/&gt;

 High Profile Load Time&lt;br/&gt;

 Last Connection Failed&lt;br/&gt;

 Pending Update&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Desktop Director &amp;gt; Desktop Director 2.1 &amp;gt; Use &amp;gt; Interpreting the Information Displayed &amp;gt; Dashboard &amp;gt; Machines&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-summary.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-summary.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/director-210/director-dashboard-summary.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.6&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor Configuration Logging&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Configuration Logging is provided through Citrix Studio &amp;gt; Logging.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Anyone that needs to view the logs should be in the Read Only Administrator role.&lt;br/&gt;

 &lt;br/&gt;

 Don’t allow them the Full Administrator role.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Configuration Logging&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-configlog-wrapper.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-configlog-wrapper.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-configlog-wrapper.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/configuration-logging.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/configuration-logging.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/10/configuration-logging.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Want a PDF of the full 1Y0-200 study guide?&lt;br/&gt;

Enter your email and click Join!&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.7&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor hosted server workload&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
IntelliCache is a XenServer host related feature.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The IntelliCache related counter is on a XenServer host.&lt;br/&gt;

 There are three IntelliCache counters available on a XenServer host Performance tab:&lt;br/&gt;

 IntelliCache Cache Hits&lt;br/&gt;

 IntelliCache Cache Misses&lt;br/&gt;

 IntelliCache Cache Size&lt;br/&gt;

 Options to monitor Virtual Machine related counters include:&lt;br/&gt;

 Performance Monitor&lt;br/&gt;

 Resource Monitor&lt;br/&gt;

 Selecting a Virtual Machine on a XenServer host’s Performance tab&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Connections and resources &amp;gt; Use IntelliCache with XenDesktop&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-hosts-intellicache.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-hosts-intellicache.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-manage-hosts-intellicache.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/xenserver-intellicache.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/10/xenserver-intellicache.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/10/xenserver-intellicache.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
The Hosts table in Director contains:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Health status icons&lt;br/&gt;

 Display alerts about issues with:&lt;br/&gt;

 XenDesktop Controller’s connection to a host&lt;br/&gt;

 CPU&lt;br/&gt;

 Memory&lt;br/&gt;

 Bandwidth (network usage)&lt;br/&gt;

 Storage&lt;br/&gt;

 Alerts are based on thresholds defined by the hypervisor administrator.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Desktop Director &amp;gt; Desktop Director 2.1 &amp;gt; Use &amp;gt; Interpreting the Information Displayed &amp;gt; Desktop Groups &amp;gt; Infrastructure&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/director-210/director-infrastructure-health.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/director-210/director-infrastructure-health.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/director-210/director-infrastructure-health.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.8&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor System Performance&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How (to interpret data)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Before an administrator investigates the reason for a user’s extended logon time, the administrator should:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Look at the user’s current and average logon duration.&lt;br/&gt;

 Look at the Delivery Group average logon duration.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When an administrator needs further investigation for the extended logon time, the administrator should:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Ask the user to log off and log back on to observe the Logon Duration data.&lt;br/&gt;

 &lt;br/&gt;

 Examine each phase of the logon process.&lt;br/&gt;

 The total logon time is not an accurate sum of each of the phases.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Monitor &amp;gt; Monitor environments with Director &amp;gt; Troubleshoot user issues &amp;gt; Diagnose user logon issues&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-logon-user.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-logon-user.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-help-logon-user.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.9&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Use PVS Auditing for Monitoring&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Provisioning Services provides an auditing tool that records configuration actions on components within the Provisioning Services farm, to the Provisioning Services database.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 This provides administrators with a way to troubleshoot and monitor recent changes that might impact system performance and behavior.&lt;br/&gt;

 To enable auditing in the PVS Console:&lt;br/&gt;

 Right-click on the farm.&lt;br/&gt;

 Select the farm Properties menu option.&lt;br/&gt;

 On the Options tab, under Auditing, check the Enable auditing checkbox.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Provisioning Services &amp;gt; Provisioning Services 7.x &amp;gt; Provisioning Services Administration &amp;gt; Auditing&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-audit-wrapper.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-audit-wrapper.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-audit-wrapper.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.10&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor StoreFront logs&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: Monitor Profile Management&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When StoreFront tracing is enabled:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Tracing information is written to files in the \Admin\Trace\ directory of the StoreFront installation.&lt;br/&gt;

 Typically located at C:\Program Files\Citrix\Receiver StoreFront\.&lt;br/&gt;

 The StoreFront installation log files can be found in C:\Windows\Temp\.&lt;br/&gt;

 The web.config file for the authentication service, store, or Receiver for Web site, is typically located in the following directories:&lt;br/&gt;

 C:\inetpub\wwwroot\Citrix\Authentication\&lt;br/&gt;

 C:\inetpub\wwwroot\Citrix\storename\&lt;br/&gt;

 C:\inetpub\wwwroot\Citrix\storenameWeb\&lt;br/&gt;

 Logs created by Windows PowerShell commands are stored in the \Admin\logs\ directory of the StoreFront installation.&lt;br/&gt;

 Typically located at C:\Program Files\Citrix\Receiver StoreFront\.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; StoreFront &amp;gt; StoreFront 2.1 &amp;gt; Troubleshoot StoreFront&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-troubleshoot.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-troubleshoot.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-troubleshoot.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
StoreFront supports Windows event logging for:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The authentication service&lt;br/&gt;

 Stores&lt;br/&gt;

 Receiver for Web sites&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Any events that are generated are written to the StoreFront application log.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Events can be viewed using Event Viewer under:&lt;br/&gt;

 &lt;br/&gt;

 Application and Services Logs &amp;gt; Citrix Delivery Services&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
OR&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Windows Logs &amp;gt; Application&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; StoreFront &amp;gt; StoreFront 2.1 &amp;gt; Troubleshoot StoreFront&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-troubleshoot.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-troubleshoot.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/dws-storefront-21/dws-troubleshoot.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.11&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor Profile Management&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How (where to find it is implied)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Citrix Profile Manager logs errors in the Windows Event Log.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
All other warnings and informational messages are logged in a file named UserProfileManager.log in the directory:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 %SystemRoot%\system32\LogFiles\UserProfileManager\&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Profile management collects data about the efficiency of a deployment using Microsoft Windows Performance Monitor (Perfmon) counters.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 For each session, counters are stored under the object called Citrix Profile Management.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Profile Management &amp;gt; Profile Management 3.x &amp;gt; Manage &amp;gt; Performance Optimization &amp;gt; Tuning Profiles &amp;gt; Monitoring and Logging Profile Management&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-kib/upm-perfmon.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-kib/upm-perfmon.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/user-profile-manager-kib/upm-perfmon.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Profile Management &amp;gt; Profile Management 3.x &amp;gt; Manage &amp;gt; Performance Optimization &amp;gt; Tuning Profiles &amp;gt; Monitoring and Logging Profile Management &amp;gt; About the Profile Management Log File&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-kib/upm-logging-about-den.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-kib/upm-logging-about-den.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/user-profile-manager-kib/upm-logging-about-den.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.12&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor the event log for NetScaler&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
NetScaler natively supports logging to:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 SYSLOG server&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 AND&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 NSLOG server&lt;br/&gt;

 Either server can be running on:&lt;br/&gt;

 A remote system.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
OR&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 On NetScaler.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Most deployments should have SYSLOG , NSLOG, or both in the environment, so configuring NetScaler to upload logs to one of them is an efficient solution.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
NetScaler &amp;gt; NetScaler 10.1 &amp;gt; System &amp;gt; Administration&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/ns-system-10-1-map/ns-ag-asl-intor-wrapper-con.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/ns-system-10-1-map/ns-ag-asl-intor-wrapper-con.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/ns-system-10-1-map/ns-ag-asl-intor-wrapper-con.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3.13&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Monitor NetScaler user sessions&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
The Citrix NetScaler appliance is a central point of control for all application traffic in the data center.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 It collects flow and user-session level information valuable for:&lt;br/&gt;

 application performance monitoring&lt;br/&gt;

 analytics&lt;br/&gt;

 business intelligence applications&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
AppFlow transmits the information by using the Internet Protocol Flow Information eXport (IPFIX) format.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Using UDP as the transport protocol, AppFlow transmits the collected data, called flow records, to one or more IPv4 collectors.&lt;br/&gt;

 The collectors aggregate the flow records and generate real-time or historical reports.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
NetScaler &amp;gt; NetScaler 10.1 &amp;gt; System &amp;gt; AppFlow&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/ns-system-10-1-map/ns-ag-appflow-intro-wrapper-con.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/ns-system-10-1-map/ns-ag-appflow-intro-wrapper-con.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/ns-system-10-1-map/ns-ag-appflow-intro-wrapper-con.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Section 4: Troubleshooting a Citrix XenDesktop 7 Solution&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.1&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot issues related to communication between the Delivery Controller and other components&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Delivery Controllers communicate with XenServer:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Via HTTP on port 80.&lt;br/&gt;

 Via HTTPs on port 443 when using a secure connection.&lt;br/&gt;

 Delivery Controllers send commands to XenServer on port 80 or 443 to power on VMs.&lt;br/&gt;

 If VMs can’t make new connections, chances are the Controllers are unable to communicate with XenServer on port 80 or port 443.&lt;br/&gt;

 If the Delivery Controllers are unavailable then they can’t connect to XenServer hosts on any port.&lt;br/&gt;

 New connections and reconnections will be affected.&lt;br/&gt;

 Connected users will be ok.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Communication ports used by Citrix Technologies&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/servlet/KbServlet/download/2389-102-704421/CTX101810_28th_June_2013.pdf&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/servlet/KbServlet/download/2389-102-704421/CTX101810_28th_June_2013.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/servlet/KbServlet/download/2389-102-704421/CTX101810_28th_June_2013.pdf&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.2&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot Virtual Delivery Agent/client issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
A Virtual Desktop Machine (VDM) must have an IP address to communicate on the network, so issues with registration can be attributed to:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 A DHCP server being down.&lt;br/&gt;

 Firewall changes.&lt;br/&gt;

 The names of the DCs being changed.&lt;br/&gt;

 Other changes in Group Policies.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
A Virtual Delivery Agent (VDA) communicates with the Delivery Controllers (DCs) on port 80.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 A VDA must be able to resolve the IP addresses of the DCs in order to register successfully.&lt;br/&gt;

 If a VDA can’t resolve the IP address of the DCs due to &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt; communication issue, registration will fail.&lt;br/&gt;

 Blocking port 1494 will prevent Receiver from connecting to a VDM.&lt;br/&gt;

 Kerberos settings allow for 5 minutes of time difference.&lt;br/&gt;

 A lesser number of minutes delay between a VDM and DC will not cause registration issues.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Troubleshooting Virtual Desktop Agent Registration with Controllers in XenDesktop&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/ctx117248&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/ctx117248&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/ctx117248&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.3&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot Virtual Delivery Agent/client issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
The Citrix Desktop Service manages communication between the Delivery Controller and Virtual Desktop Machines (VDMs). It handles:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 initial brokering of connections.&lt;br/&gt;

 settings for connections.&lt;br/&gt;

 interaction with sessions.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Restarting the Citrix Desktop Service will cause a VDM to re-register with a Delivery Controller.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The Citrix Desktop Service is the display name.&lt;br/&gt;

 BrokerAgent is the actual service name. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Used at the command line.&lt;br/&gt;

 The Citrix ICA Service manages communication between the endpoint device and the VDM.&lt;br/&gt;

 It does not handle the registration with the Delivery Controllers.&lt;br/&gt;

 PorticaService is the actual service name for the Citrix ICA Service.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Troubleshooting XenDesktop brokering process&lt;br/&gt;

&lt;a href=&quot;http://blogs.citrix.com/2012/07/23/troubleshooting-xendesktop-brokering-process-2&quot; class=&quot;urlextern&quot; title=&quot;http://blogs.citrix.com/2012/07/23/troubleshooting-xendesktop-brokering-process-2&quot; rel=&quot;ugc nofollow&quot;&gt;http://blogs.citrix.com/2012/07/23/troubleshooting-xendesktop-brokering-process-2&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.4&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot licensing issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Citrix license files are allocated on MyCitrix.com using the case sensitive license server name.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 When license files are installed on a license server, any change to the server name or to the license file will invalidate them.&lt;br/&gt;

 If a server name changes, an administrator must:&lt;br/&gt;

 go to MyCitrix.com.&lt;br/&gt;

 return the licenses.&lt;br/&gt;

 reallocate the licenses using the new server name.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Licensing Your Product &amp;gt; Citrix Licensing 11.11.1 &amp;gt; Backing up the license server&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/licensing-1111/lic-backup.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/licensing-1111/lic-backup.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/licensing-1111/lic-backup.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Licensing Your Product &amp;gt; Citrix Licensing 11.11.1 &amp;gt; Frequently Asked Questions for Licensing&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/licensing-1111/lic-faq.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/licensing-1111/lic-faq.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/licensing-1111/lic-faq.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.5&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshooting common printing issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When ‘Auto-create client printers’ is added to a policy, by default, all client printers are auto-created.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 This setting only takes effect if ‘Client printer redirection’ is set to Allowed.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Reference &amp;gt; Policy settings reference &amp;gt; ICA policy settings &amp;gt; Printing policy settings &amp;gt; Client Printers policy settings&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/ps-console-policies-rules-printer-clients-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/ps-console-policies-rules-printer-clients-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/ps-console-policies-rules-printer-clients-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.6&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot user connectivity issues related to Application and Desktop launch&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If a user logs on to StoreFront Receiver for Web using a web browser while on the internal network and is presented with a list of applications, clicks an application, and receives a Citrix Receiver error message…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The issue is most likely that the user’s machine cannot communicate with the server running the application over port 2598.&lt;br/&gt;

 Port 2598 is used when Session Reliability is enabled.&lt;br/&gt;

 Session Reliability is enabled by default in XenDesktop 7.&lt;br/&gt;

 If Session Reliability was disabled, port 1494 would be used.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Explaining ICA Session Reliability, Common Gateway Protocol, on TCP Port 2598&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX104147&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX104147&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX104147&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Reference &amp;gt; Policy settings reference &amp;gt; ICA policy settings &amp;gt; Session Reliability policy settings&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/ps-ref-policies-session-reliability.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/ps-ref-policies-session-reliability.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/ps-ref-policies-session-reliability.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop Administration Guide, Page 191&lt;br/&gt;

&lt;a href=&quot;http://citrix.edocspdf.com/media/output/en.xendesktop.cds-xd-7landing-page.pdf&quot; class=&quot;urlextern&quot; title=&quot;http://citrix.edocspdf.com/media/output/en.xendesktop.cds-xd-7landing-page.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrix.edocspdf.com/media/output/en.xendesktop.cds-xd-7landing-page.pdf&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.7&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot user connectivity issues related to Application and Desktop launch&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
With first time users, to avoid a machine taking an extra-long time before the login screen appears…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Select the Microsoft SVGA video driver for new dedicated virtual desktops.&lt;br/&gt;

 When the WDDM video driver is installed and used on certain VDMs, users might experience:&lt;br/&gt;

 a blank screen.&lt;br/&gt;

 being unable to connect.&lt;br/&gt;

 connecting briefly and then losing connection.&lt;br/&gt;

 a long startup time if it’s their first time logging in Logging on to Windows 8.&lt;br/&gt;

 a black screen might be presented to users during this process before the Start screen appears.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 These issues will most likely be experienced with dedicated desktops when they are first assigned or with pooled-random desktops created with Provisioning Services.&lt;br/&gt;

 To resolve any of these issues, uninstall the WDDM video driver and use the Windows SVGA video driver instead.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; About this release &amp;gt; Known issues&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Unable to Connect to XenDesktop Virtual Desktop Agent on Vista or Windows 7 with WDDM Driver&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX124877&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX124877&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX124877&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.8&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot Citrix policies&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How they are taking effect&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If a policy is configured that doesn’t allow connections to client drives for an OU group and no one can connect to client drives… &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The policy was probably configured with ‘Assign to all objects in a site’.&lt;br/&gt;

 When assigning a policy to a defined group, avoid using ‘Assign to all objects in a site’ option.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; Manage &amp;gt; Manage Citrix policies &amp;gt; Create policies&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-creating-rho.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-creating-rho.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-policies-creating-rho.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Image&lt;br/&gt;

&lt;a href=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/11/assign-to-all-objects-in-site.jpg&quot; class=&quot;urlextern&quot; title=&quot;https://citrixxperience.com/content/wp-content/uploads/2013/11/assign-to-all-objects-in-site.jpg&quot; rel=&quot;ugc nofollow&quot;&gt;https://citrixxperience.com/content/wp-content/uploads/2013/11/assign-to-all-objects-in-site.jpg&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.9&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot issues with application performance&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If a user tries launching an application hosted on a XenDesktop 7 App Edition Server and they receive an error that informs them that the application failed to start, a likely cause is… &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Third-party software is using cmstart.exe and it modified environment variables to point to that executable.&lt;br/&gt;

 Because XenDesktop 7 uses an executable named cmstart.exe for the launch of published applications, it might confuse and locate the cmstart.exe of the third party software instead.&lt;br/&gt;

 By using the wrong version of cmstart.exe the launch process breaks.&lt;br/&gt;

 XenDesktop 7 also modifies the environment variables to locate cmstart.exe for published application launch process.&lt;br/&gt;

 The variables provided by the third party software get the priority.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Application Launch Error: The Citrix server is unable to process your request to start this published application at this time.&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX132243&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX132243&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX132243&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.10&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot XenServer networking issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When a XenServer host is added to a pool, it inherits most network settings from the pool, particularly:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 VLANs&lt;br/&gt;

 bonds&lt;br/&gt;

 external networks&lt;br/&gt;

 A new host can’t have an external network configured with a VLAN different than all other hosts.&lt;br/&gt;

 If connections to VDMs on all the other hosts are working, there is obviously an issue outside of the pool.&lt;br/&gt;

 The issue is most likely on the switch to which the new host is connected.&lt;br/&gt;

 A wrong VLAN on the physical switch or a speed mismatch could be causing the problem.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Network Interface Card Bonds in XenServer&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX137599&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX137599&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX137599&lt;/a&gt;&lt;br/&gt;

Want a PDF of the full 1Y0-200 study guide?&lt;br/&gt;

Enter your email and click Join!&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.11&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot Provisioning Services related issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If a user running a recently rolled out Windows 8 virtual desktop, while waiting for a virtual desktop machine (VDM) to start…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 It might take an extra-long time&lt;br/&gt;

 The user might be staring at a blank screen, not sure if it the desktop is starting up.&lt;br/&gt;

 A likely issue is that:&lt;br/&gt;

 The virtual desktop was created with Provisioning Services.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 This issue will likely be experienced with:&lt;br/&gt;

 dedicated desktops when they are first assigned.&lt;br/&gt;

 pooled-random desktops created with Provisioning Services.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; About this release &amp;gt; Known issues&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.12&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot Provisioning Services related issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If a Citrix administrator is using the Provisioning Services Streamed VM Setup Wizard to deploy a streamed vDisk to several cloned virtual machines on a XenServer host and is unable to create new computer accounts in Active Directory (AD)…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 An Active Directory administrator will need to delegate rights to the Citrix administrator to allow Active Directory account creation.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Provisioning Services &amp;gt; Provisioning Services 7.x &amp;gt; Provisioning Services Administration &amp;gt; Using the Streamed VM Setup Wizard&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-vm-wizard-using.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-vm-wizard-using.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/provisioning-7/pvs-vm-wizard-using.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.13&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot personal vDisk failures&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If the value of the Personal vDisk registry key EnableProfileRedirection is set to 1 or ON, and later, while updating the image, it is changed to 0 or OFF…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 the entire Personal vDisk space might get allocated to user-installed applications.&lt;br/&gt;

 Leaves no space for user profiles.&lt;br/&gt;

 The profiles remain on the vDisk, not being redirected to a file server.&lt;br/&gt;

 To prevent this issue, do not adjust the registry key when updating the image.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop &amp;gt; XenDesktop 7 &amp;gt; About this release &amp;gt; Known issues&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-70-known-issues.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.14&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot Machine Creation Services&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
A requirement to utilize MCS is that a master image must be on each shared storage.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 An NFS share is OK for MCS.&lt;br/&gt;

 FC storage is OK for MCS.&lt;br/&gt;

 Intellicache utilizes local storage on the hosts so is not OK.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Machine Creation Services Primer – Part 1&lt;br/&gt;

&lt;a href=&quot;http://blogs.citrix.com/2011/06/28/machine-creation-services-primer-part-1&quot; class=&quot;urlextern&quot; title=&quot;http://blogs.citrix.com/2011/06/28/machine-creation-services-primer-part-1&quot; rel=&quot;ugc nofollow&quot;&gt;http://blogs.citrix.com/2011/06/28/machine-creation-services-primer-part-1&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.15&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshooting Machine Creation Services&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
One of the most overlooked design elements involving IntelliCache is XenServer host local storage.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 When IntelliCache is enabled…&lt;br/&gt;

 most of the I/O is shifted from the enterprise storage array to local host storage.&lt;br/&gt;

 resulting in I/O bottleneck if there is a high density of running VMs on each host.&lt;br/&gt;

 Low resource utilization (10%) on enterprise storage array shows an indication of I/Os that are shifted to the hosts’ local storage.&lt;br/&gt;

 An indication that IntelliCache is enabled.&lt;br/&gt;

 To resolve the issue, an administrator should:&lt;br/&gt;

 replace local storage with SSD drives to handle the I/O demand.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
OR&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 disable IntelliCache so the VDI will utilize the enterprise storage array, which is being underutilized.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Troubleshooting and identifying data storage performance bottlenecks&lt;br/&gt;

&lt;a href=&quot;http://searchstorage.techtarget.com/report/Troubleshooting-and-identifying-data-storage-performance-bottlenecks&quot; class=&quot;urlextern&quot; title=&quot;http://searchstorage.techtarget.com/report/Troubleshooting-and-identifying-data-storage-performance-bottlenecks&quot; rel=&quot;ugc nofollow&quot;&gt;http://searchstorage.techtarget.com/report/Troubleshooting-and-identifying-data-storage-performance-bottlenecks&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.16&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot issues related to user being unable to access desktops and/or apps through StoreFront&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When accessing a store website on StoreFront and the following error message is displayed: ‘Cannot complete your request. You can log on and try again, or contact your help desk for assistance’…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 A likely cause is that the Citrix Credential Wallet Service is not started.&lt;br/&gt;

 Ensure the Citrix Credential Wallet Service is started on the StoreFront server.&lt;br/&gt;

 If it is already started, restart the service.&lt;br/&gt;

 Note: Change this service Startup Type to Automatic (Delayed Start) and restart the server.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
StoreFront Error: Cannot complete your request&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX133904&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX133904&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX133904&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.17&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot issues related to user being unable to access desktops and/or apps through StoreFront&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To integrate pass-through authentication through StoreFront:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Enable the Domain Pass-through authentication method in StoreFront.&lt;br/&gt;

 On the domain workstation, install CitrixReceiver.exe with the /includeSSON switch from the command line.&lt;br/&gt;

 Install the icaclient.adm template.&lt;br/&gt;

 Configure ‘Enable pass-through authentication’.&lt;br/&gt;

 ‘Allow pass-through authentication for all ICA connections’.&lt;br/&gt;

 After enabling the policies in the icaclient.adm template, run the command ‘gpupdate/force’.&lt;br/&gt;

 Add the StoreFront FQDN to the Local Intranet zone in Internet Explorer.&lt;br/&gt;

 Restart the workstation.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
How to Configure Desktop Pass-Through with StoreFront and Receiver 3.x&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX133855&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX133855&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX133855&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.18&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot issues related to NetScaler and load balancing StoreFront servers&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
While monitoring back end servers, NetScaler uses various probes, with ping being one of them.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Ping is not recommended to monitor a server as it doesn’t account for applications running on the server.&lt;br/&gt;

 StoreFront relies on Internet Information Services (IIS).&lt;br/&gt;

 If IIS is down and ping is running, NetScaler will continue to send traffic to the server and users may be unable to connect.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Citrix StoreFront 2.0 Proof of Concept Implementation Guide&lt;br/&gt;

&lt;a href=&quot;http://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/citrix-storefront-2.0.pdf&quot; class=&quot;urlextern&quot; title=&quot;http://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/citrix-storefront-2.0.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/citrix-storefront-2.0.pdf&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.19&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot Receiver issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: What is the root cause&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If a user tries to add a StoreFront &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; “&lt;a href=&quot;http://thecx-storefront.com&quot; class=&quot;urlextern&quot; title=&quot;http://thecx-storefront.com&quot; rel=&quot;ugc nofollow&quot;&gt;http://thecx-storefront.com&lt;/a&gt;” to Citrix Receiver but fails and receives the following warning: The specified &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; is not secure…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The cause of the failure of adding the &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; is most likely:&lt;br/&gt;

 The default configuration requires SSL communication to a store.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Citrix Receiver 3.1 does not allow a non-secure &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; to StoreFront by default.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 To force Receiver to allow a non-secure &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;, the client registry must be modified.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Citrix Receiver 3.1 does not Allow you to Add Non-Secure &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX131857&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX131857&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX131857&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.20&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot Receiver issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
If a user running Citrix Receiver on a Windows machine is connected to a published desktop and is unable to save a file to a folder on the local hard drive but is able to copy files to the folder when disconnected from the published desktop, two ways an administrator can resolve the issue are:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 On the client machine:&lt;br/&gt;

 Configure Read and Write in Desktop Viewer Preferences &amp;gt; File Access.&lt;br/&gt;

 Configure Full Access in Citrix Connections Center &amp;gt; Session Security &amp;gt; Files.&lt;br/&gt;

 Users sometimes unknowingly change the settings on their local machine.&lt;br/&gt;

 Although an error message might seem to be user permission related, it is not.&lt;br/&gt;

 The user most likely received a pop-up message asking to choose the level of access to grant to local files and the user selected ‘Read-only access.’&lt;br/&gt;

 This would not allow files to be saved to the client drive.&lt;br/&gt;

 This access issue can be resolved either by configuring Read and Write in Desktop Viewer Preferences &amp;gt; Files.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 OR&lt;br/&gt;

 Configuring Full Access in Citrix Connections Center &amp;gt; Session Security &amp;gt; Files.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
How to Configure Default Device Access Behavior of Receiver 3.x, XenDesktop and XenApp&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX133565&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX133565&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX133565&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.21&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot user profile issues&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When changes are made to a Group Policy setting but it is not operative on the server running the Citrix Profile Management Service…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 This might be because Group Policy does not refresh immediately.&lt;br/&gt;

 Instead it is based on events or intervals specified in the deployment.&lt;br/&gt;

 To refresh the Group Policy immediately:&lt;br/&gt;

 Run gpupdate /force on the Profile Management server.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Technologies &amp;gt; Profile Management &amp;gt; Profile Management 5.x &amp;gt; Troubleshoot &amp;gt; Troubleshooting Common Issues Technologies &amp;gt; Profile Management &amp;gt; Profile Management 5.x &amp;gt; Troubleshoot &amp;gt; Troubleshooting Common Issues&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-5-x/upm-troubleshoot-specifics.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-5-x/upm-troubleshoot-specifics.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/user-profile-manager-5-x/upm-troubleshoot-specifics.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Windows Library: Gpupdate&lt;br/&gt;

&lt;a href=&quot;http://technet.microsoft.com/en-us/library/bb490983.aspx&quot; class=&quot;urlextern&quot; title=&quot;http://technet.microsoft.com/en-us/library/bb490983.aspx&quot; rel=&quot;ugc nofollow&quot;&gt;http://technet.microsoft.com/en-us/library/bb490983.aspx&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.22&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Task Description: Troubleshoot issues related to NetScaler and ICA proxy&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Testing Aspect: How to resolve the issue&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When ICA proxy is enabled on Access Gateway, if users connecting to XenDesktop attempt to open a published application…&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The Secure Ticket Authority (STA) issues a session ticket with an invalid format.&lt;br/&gt;

 The connection fails.&lt;br/&gt;

 To resolve this issue:&lt;br/&gt;

 Disable ICA proxy on Access Gateway.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
NetScaler Gateway &amp;gt; Access Gateway 10 &amp;gt; About This Release &amp;gt; Known Issues&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/access-gateway-10/agee-known-issues-10-con.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/access-gateway-10/agee-known-issues-10-con.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/access-gateway-10/agee-known-issues-10-con.html&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u043c\u0430\u0448\u0438\u043d \u0434\u043e \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 XenDesktop 7.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e_\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430_\u043c\u0430\u0448\u0438\u043d_\u0434\u043e_\u043d\u043e\u0432\u043e\u0439_\u0432\u0435\u0440\u0441\u0438\u0438_xendesktop_7&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;260-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>armbian_install_xfce_desktop</title>
            <link>https://wiki.autosys.tk/android/armbian_install_xfce_desktop</link>
            <description>&lt;pre class=&quot;code&quot;&gt;sudo apt-get update &amp;amp;&amp;amp; sudo apt-get install armbian-jammy-desktop-xfce
[sudo] password for mike: 
Hit:1 http://ports.ubuntu.com jammy InRelease
Hit:2 http://ports.ubuntu.com jammy-security InRelease                                          
Hit:3 http://ports.ubuntu.com jammy-updates InRelease                                           
Hit:5 http://ports.ubuntu.com jammy-backports InRelease             
Hit:6 http://deb.volian.org/volian scar InRelease                   
Hit:4 http://armbian.12z.eu/apt jammy InRelease   
Hit:7 https://ryanfortner.github.io/box64-debs/debian ./ InRelease
Reading package lists... Done                            
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libexpat1:armhf libffi8:armhf libmpdec3:armhf libpython3-stdlib:armhf libpython3.10-minimal:armhf libpython3.10-stdlib:armhf libreadline8:armhf libsqlite3-0:armhf libstdc++6:armhf
Use &amp;#039;sudo apt autoremove&amp;#039; to remove them.
The following additional packages will be installed:
  accountsservice accountsservice-ubuntu-schemas adwaita-icon-theme aglfn anacron apg apparmor apport apport-gtk apport-symptoms appstream apt-config-icons aptdaemon armbian-bsp-cli-odroidhc4 armbian-bsp-desktop-odroidhc4 aspell aspell-en at-spi2-core
  avahi-daemon avahi-utils bamfdaemon binfmt-support blueman bluez bluez-cups bluez-obexd bluez-tools brltty brltty-x11 bubblewrap ca-certificates-mono cheese-common cifs-utils cli-common colord cups cups-browsed cups-bsd cups-client cups-common
  cups-core-drivers cups-daemon cups-filters cups-filters-core-drivers cups-ipp-utils cups-pk-helper cups-ppdc cups-server-common dbus-x11 dc dconf-cli dconf-gsettings-backend dconf-service desktop-base desktop-file-utils dictionaries-common diffstat
  distro-info dmidecode dmz-cursor-theme doc-base docbook-xml elementary-xfce-icon-theme emacsen-common enchant-2 espeak-ng-data evince evince-common evolution-data-server evolution-data-server-common exo-utils fontconfig fontconfig-config
  fonts-arphic-ukai fonts-arphic-uming fonts-dejavu-core fonts-droid-fallback fonts-freefont-ttf fonts-guru fonts-guru-extra fonts-kacst fonts-kacst-one fonts-khmeros-core fonts-lato fonts-liberation fonts-lohit-guru fonts-nanum fonts-noto-mono
  fonts-opensymbol fonts-quicksand fonts-stix fonts-symbola fonts-ubuntu-console fonts-urw-base35 foomatic-db-compressed-ppds fwupd gcr gdb gdebi gdebi-core gdm3 gedit gedit-common geoclue-2.0 gettext ghostscript ghostscript-x
  gir1.2-accountsservice-1.0 gir1.2-adw-1 gir1.2-atk-1.0 gir1.2-atspi-2.0 gir1.2-ayatanaappindicator3-0.1 gir1.2-freedesktop gir1.2-gck-1 gir1.2-gcr-3 gir1.2-gdkpixbuf-2.0 gir1.2-gdm-1.0 gir1.2-geoclue-2.0 gir1.2-gnomebluetooth-3.0
  gir1.2-gnomedesktop-3.0 gir1.2-goa-1.0 gir1.2-graphene-1.0 gir1.2-gstreamer-1.0 gir1.2-gtk-3.0 gir1.2-gtk-4.0 gir1.2-gtksource-4 gir1.2-gweather-3.0 gir1.2-handy-1 gir1.2-harfbuzz-0.0 gir1.2-ibus-1.0 gir1.2-javascriptcoregtk-4.0 gir1.2-json-1.0
  gir1.2-keybinder-3.0 gir1.2-libxfce4util-1.0 gir1.2-mutter-10 gir1.2-nma-1.0 gir1.2-notify-0.7 gir1.2-pango-1.0 gir1.2-peas-1.0 gir1.2-polkit-1.0 gir1.2-rsvg-2.0 gir1.2-secret-1 gir1.2-snapd-1 gir1.2-soup-2.4 gir1.2-upowerglib-1.0 gir1.2-vte-2.91
  gir1.2-webkit2-4.0 gir1.2-wnck-3.0 gir1.2-xfconf-0 gist gkbd-capplet glib-networking glib-networking-common glib-networking-services gnome-bluetooth gnome-control-center gnome-control-center-data gnome-desktop3-data gnome-font-viewer
  gnome-icon-theme gnome-keyring gnome-keyring-pkcs11 gnome-menus gnome-online-accounts gnome-power-manager gnome-remote-desktop gnome-screensaver gnome-screenshot gnome-session-bin gnome-settings-daemon gnome-settings-daemon-common gnome-shell
  gnome-shell-common gnome-software gnome-software-plugin-snap gnome-startup-applications gnome-system-monitor gnome-terminal gnome-terminal-data gnome-user-docs gnome-user-docs-de gnome-user-docs-es gnome-user-docs-it gnome-user-docs-pt
  gnome-user-docs-ru gnome-user-docs-sl gnuplot-data gnuplot-x11 greybird-gtk-theme gsettings-desktop-schemas gsettings-ubuntu-schemas gstreamer1.0-clutter-3.0 gstreamer1.0-gl gstreamer1.0-packagekit gstreamer1.0-pipewire gstreamer1.0-plugins-base
  gstreamer1.0-plugins-base-apps gstreamer1.0-plugins-good gstreamer1.0-pulseaudio gstreamer1.0-tools gstreamer1.0-x gtk-update-icon-cache gtk2-engines gtk2-engines-murrine gtk2-engines-pixbuf gvfs gvfs-backends gvfs-common gvfs-daemons gvfs-libs
  hicolor-icon-theme hplip humanity-icon-theme hunspell-en-us ibus ibus-data ibus-gtk ibus-gtk3 ibus-gtk4 iio-sensor-proxy im-config indicator-applet indicator-application indicator-appmenu indicator-bluetooth indicator-common indicator-datetime
  indicator-keyboard indicator-messages indicator-power indicator-printers indicator-session indicator-sound inputattach intltool-debian inxi ipp-usb javascript-common kerneloops keyutils language-pack-de language-pack-de-base language-pack-en
  language-pack-en-base language-pack-es language-pack-es-base language-pack-fr language-pack-fr-base language-pack-gnome-de language-pack-gnome-de-base language-pack-gnome-en language-pack-gnome-en-base language-pack-gnome-es
  language-pack-gnome-es-base language-pack-gnome-fr language-pack-gnome-fr-base language-pack-gnome-it language-pack-gnome-it-base language-pack-gnome-pt language-pack-gnome-pt-base language-pack-gnome-ru language-pack-gnome-ru-base
  language-pack-gnome-sl language-pack-gnome-sl-base language-pack-it language-pack-it-base language-pack-pt language-pack-pt-base language-pack-ru language-pack-ru-base language-pack-sl language-pack-sl-base language-selector-common
  language-selector-gnome laptop-detect libaa1 libabsl20210324 libaccountsservice0 libadwaita-1-0 libaliased-perl libao-common libao4 libapt-pkg-perl libarchive-zip-perl libarchive13 libasound2-plugins libaspell15 libasyncns0 libatk-adaptor
  libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatkmm-1.6-1v5 libatspi2.0-0 libauthen-sasl-perl libavahi-client3 libavahi-common-data libavahi-common3 libavahi-core7 libavahi-glib1 libavc1394-0 libayatana-appindicator3-1 libayatana-ido3-0.4-0
  libayatana-indicator3-7 libb-hooks-endofscope-perl libb-hooks-op-check-perl libbabeltrace1 libbamf3-2 libboost-regex1.74.0 libbrlapi0.8 libc6-dbg libcairo-gobject-perl libcairo-gobject2 libcairo-perl libcairo-script-interpreter2 libcairo2
  libcairomm-1.0-1v5 libcamel-1.2-63 libcanberra-gtk3-0 libcanberra-gtk3-module libcanberra-pulse libcanberra0 libcapture-tiny-perl libcdio-cdda2 libcdio-paranoia2 libcdio19 libcdparanoia0 libcheese-gtk25 libcheese8 libclass-data-inheritable-perl
  libclass-method-modifiers-perl libclass-xsaccessor-perl libclone-perl libclutter-1.0-0 libclutter-1.0-common libclutter-gst-3.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libcolord-gtk1 libcolord2 libcolorhug2
  libconfig-tiny-perl libconst-fast-perl libcpanel-json-xs-perl libcups2 libcupsfilters1 libcupsimage2 libdata-dpath-perl libdata-dump-perl libdata-messagepack-perl libdata-optlist-perl libdata-validate-domain-perl libdata-validate-ip-perl
  libdata-validate-uri-perl libdatrie1 libdbus-glib-1-2 libdbusmenu-glib4 libdbusmenu-gtk3-4 libdconf1 libdebuginfod-common libdebuginfod1 libdeflate0 libdevel-callchecker-perl libdevel-size-perl libdevel-stacktrace-perl libdjvulibre-text
  libdjvulibre21 libdotconf0 libdouble-conversion3 libdrm-amdgpu1 libdrm-common libdrm-nouveau2 libdrm-radeon1 libdrm2 libdv4 libdynaloader-functions-perl libebackend-1.2-10 libebook-1.2-20 libebook-contacts-1.2-3 libecal-2.0-1 libedata-book-1.2-26
  libedata-cal-2.0-1 libedataserver-1.2-26 libedataserverui-1.2-3 libegl-mesa0 libegl1 libemail-address-xs-perl libenchant-2-2 libencode-locale-perl libepoxy0 libespeak-ng1 libevdev2 libevdocument3-4 libevview3-3 libexception-class-perl libexif12
  libexiv2-27 libexo-2-0 libexo-common libexporter-tiny-perl libextutils-depends-perl libfcitx-config4 libfcitx-gclient1 libfcitx-utils0 libfile-basedir-perl libfile-desktopentry-perl libfile-find-rule-perl libfile-listing-perl libfile-mimeinfo-perl
  libflac8 libflashrom1 libfont-afm-perl libfont-ttf-perl libfontconfig1 libfontembed1 libfontenc1 libfreerdp-client2-2 libfreerdp-server2-2 libfreerdp2-2 libfreetype6 libfribidi0 libftdi1-2 libfwupd2 libfwupdplugin5 libgail-common libgail18
  libgarcon-1-0 libgarcon-common libgarcon-gtk3-1-0 libgbm1 libgck-1-0 libgcr-base-3-1 libgcr-ui-3-1 libgd3 libgdata-common libgdata22 libgdiplus libgdk-pixbuf-2.0-0 libgdk-pixbuf-xlib-2.0-0 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-common libgdm1
  libgee-0.8-2 libgeoclue-2-0 libgeocode-glib0 libgif7 libgjs0g libgl1 libgl1-amber-dri libgl1-mesa-dri libglapi-mesa libgles2 libglib-object-introspection-perl libglib-perl libglib2.0-cil libglibmm-2.4-1v5 libglu1-mesa libglvnd0 libglx-mesa0 libglx0
  libgnome-autoar-0-0 libgnome-bluetooth-3.0-13 libgnome-bluetooth13 libgnome-desktop-3-19 libgnome-panel0 libgnomekbd-common libgnomekbd8 libgoa-1.0-0b libgoa-1.0-common libgoa-backend-1.0-1 libgphoto2-6 libgphoto2-port12 libgraphene-1.0-0
  libgraphite2-3 libgs9 libgs9-common libgsettings-qt1 libgsound0 libgspell-1-2 libgspell-1-common libgssdp-1.2-0 libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-0 libgstreamer-plugins-good1.0-0 libgtk-3-0 libgtk-3-bin libgtk-3-common libgtk-4-1
  libgtk-4-bin libgtk-4-common libgtk2.0-0 libgtk2.0-bin libgtk2.0-cil libgtk2.0-common libgtk3-perl libgtkmm-2.4-1v5 libgtkmm-3.0-1v5 libgtksourceview-4-0 libgtksourceview-4-common libgtop-2.0-11 libgtop2-common libgupnp-1.2-1 libgupnp-dlna-2.0-4
  libgutenprint-common libgutenprint9 libgweather-3-16 libgweather-common libgxps2 libhandy-1-0 libharfbuzz-icu0 libharfbuzz0b libhpmud0 libhtml-form-perl libhtml-format-perl libhtml-html5-entities-perl libhtml-parser-perl libhtml-tagset-perl
  libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libhunspell-1.7-0 libhyphen0 libibus-1.0-5 libical3 libice6 libidn12 libido3-0.1-0 libiec61883-0 libijs-0.35 libimagequant0
  libimport-into-perl libindicator3-7 libinput-bin libinput10 libio-html-perl libio-interactive-perl libio-prompt-tiny-perl libio-socket-ssl-perl libio-string-perl libio-stringy-perl libipc-run3-perl libipc-system-simple-perl libiterator-perl
  libiterator-util-perl libjack-jackd2-0 libjavascriptcoregtk-4.0-18 libjbig0 libjbig2dec0 libjcat1 libjpeg-turbo-progs libjpeg-turbo8 libjpeg8 libjs-jquery libjson-glib-1.0-0 libjson-glib-1.0-common libjson-maybexs-perl libkeybinder-3.0-0
  libkpathsea6 liblcms2-2 liblcms2-utils libldb2 liblightdm-gobject-1-0 liblist-compare-perl liblist-moreutils-perl liblist-moreutils-xs-perl liblist-someutils-perl liblist-someutils-xs-perl liblist-utilsby-perl libllvm13 liblouis-data liblouis20
  liblouisutdml-bin liblouisutdml-data liblouisutdml9 libltdl7 liblua5.4-0 liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmanette-0.2-0 libmarkdown2 libmath-base85-perl libmd4c0 libmediaart-2.0-0 libmessaging-menu0
  libmodule-implementation-perl libmodule-runtime-perl libmono-addins-gui0.2-cil libmono-addins0.2-cil libmono-btls-interface4.0-cil libmono-cairo4.0-cil libmono-corlib4.5-cil libmono-corlib4.5-dll libmono-i18n-west4.0-cil libmono-i18n4.0-cil
  libmono-posix4.0-cil libmono-security4.0-cil libmono-sharpzip4.84-cil libmono-system-configuration4.0-cil libmono-system-core4.0-cil libmono-system-drawing4.0-cil libmono-system-numerics4.0-cil libmono-system-security4.0-cil
  libmono-system-xml4.0-cil libmono-system4.0-cil libmoo-perl libmoox-aliases-perl libmouse-perl libmousepad0 libmp3lame0 libmpg123-0 libmtdev1 libmutter-10-0 libnamespace-clean-perl libnautilus-extension1a libnet-dbus-perl libnet-domain-tld-perl
  libnet-http-perl libnet-ipv6addr-perl libnet-netmask-perl libnet-smtp-ssl-perl libnet-ssleay-perl libnetaddr-ip-perl libnfs13 libnma-common libnma0 libnotify-bin libnotify4 libnss-mdns libnumber-compare-perl libogg0 libopengl0 libopenjp2-7 libopus0
  liborc-0.4-0 libpackage-stash-perl libpackage-stash-xs-perl libpam-gnome-keyring libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpangomm-1.4-1v5 libpangoxft-1.0-0 libpaper-utils libpaper1 libparams-classify-perl libparams-util-perl
  libpath-tiny-perl libpcaudio0 libpciaccess0 libpeas-1.0-0 libperlio-gzip-perl libperlio-utf8-strict-perl libphonenumber8 libpipewire-0.3-0 libpipewire-0.3-common libpipewire-0.3-modules libpixman-1-0 libpoppler-cpp0v5 libpoppler-glib8 libpoppler118
  libprotobuf23 libproxy1-plugin-gsettings libproxy1-plugin-networkmanager libproxy1v5 libpulse-mainloop-glib0 libpulse0 libpulsedsp libqalculate-data libqalculate22 libqpdf28 libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5 libqt5svg5
  libqt5widgets5 libraqm0 libraw1394-11 librest-0.7-0 librole-tiny-perl librsvg2-2 librsvg2-common libruby3.0 librygel-core-2.6-2 librygel-db-2.6-2 librygel-renderer-2.6-2 librygel-server-2.6-2 libsane-hpaio libsane1 libsbc1 libsecret-1-0
  libsecret-common libsereal-decoder-perl libsereal-encoder-perl libshout3 libsm6 libsmbclient libsnapd-glib1 libsndfile1 libsnmp-base libsnmp40 libsocket6-perl libsonic0 libsort-versions-perl libsoup-gnome2.4-1 libsoup2.4-1 libsoup2.4-common
  libsource-highlight-common libsource-highlight4v5 libsoxr0 libspa-0.2-modules libspectre1 libspeechd2 libspeex1 libspeexdsp1 libstartup-notification0 libstrictures-perl libsub-exporter-perl libsub-exporter-progressive-perl libsub-identify-perl
  libsub-install-perl libsub-name-perl libsub-quote-perl libsynctex2 libsyntax-keyword-try-perl libtag1v5 libtag1v5-vanilla libtalloc2 libtdb1 libterm-readkey-perl libtevent0 libtext-glob-perl libtext-iconv-perl libtext-levenshteinxs-perl
  libtext-markdown-discount-perl libtext-xslate-perl libthai-data libthai0 libtheora0 libthunarx-3-0 libtie-ixhash-perl libtiff5 libtime-duration-perl libtime-moment-perl libtimedate-perl libtry-tiny-perl libtumbler-1-0 libtwolame0 libu2f-udev
  libunicode-utf8-perl libunity-gtk2-parser0 libunity-gtk3-parser0 libunity-settings-daemon1 libupower-glib3 liburi-perl libuuid-perl libv4l-0 libv4lconvert0 libvariable-magic-perl libvisual-0.4-0 libvncserver1 libvorbis0a libvorbisenc2 libvorbisfile3
  libvpx7 libvte-2.91-0 libvte-2.91-common libvulkan1 libwacom-bin libwacom-common libwacom9 libwavpack1 libwayland-client0 libwayland-cursor0 libwayland-egl1 libwayland-server0 libwbclient0 libwebkit2gtk-4.0-37 libwebp7 libwebpdemux2 libwebpmux3
  libwebrtc-audio-processing1 libwhoopsie-preferences0 libwhoopsie0 libwmf-0.2-7 libwmf-0.2-7-gtk libwmf0.2-7-gtk libwmflite-0.2-7 libwnck-3-0 libwnck-3-common libwoff1 libwww-perl libwww-robotrules-perl libwxbase3.0-0v5 libwxgtk3.0-gtk3-0v5 libx11-6
  libx11-data libx11-protocol-perl libx11-xcb1 libxapp1 libxau6 libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-present0 libxcb-randr0 libxcb-render-util0 libxcb-render0 libxcb-res0 libxcb-shape0
  libxcb-shm0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb-xinput0 libxcb-xkb1 libxcb-xv0 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfce4panel-2.0-4 libxfce4ui-2-0 libxfce4ui-common libxfce4ui-utils
  libxfce4util-bin libxfce4util-common libxfce4util7 libxfconf-0-3 libxfixes3 libxfont2 libxft2 libxi6 libxinerama1 libxkbcommon-x11-0 libxkbcommon0 libxkbfile1 libxkbregistry0 libxklavier16 libxml-libxml-perl libxml-namespacesupport-perl
  libxml-parser-perl libxml-sax-base-perl libxml-sax-expat-perl libxml-sax-perl libxml-twig-perl libxml-xpathengine-perl libxmu6 libxmuu1 libxpm4 libxpresent1 libxrandr2 libxrender1 libxres1 libxs-parse-keyword-perl libxshmfence1 libxslt1.1 libxss1
  libxt6 libxtst6 libxv1 libxxf86dga1 libxxf86vm1 libyaml-libyaml-perl libyaml-tiny-perl libyelp0 lightdm lightdm-settings lintian lm-sensors lxtask lzip lzop mailcap mesa-utils mesa-utils-bin mesa-vulkan-drivers mime-support mono-4.0-gac mono-gac
  mono-runtime mono-runtime-common mono-runtime-sgen mousepad mousetweaks mscompress mutter-common nautilus-data nautilus-extension-gnome-terminal network-manager-gnome network-manager-ssh network-manager-ssh-gnome network-manager-vpnc numix-gtk-theme
  numix-icon-theme numix-icon-theme-circle openprinting-ppds orca p11-kit p11-kit-modules p7zip p7zip-full pamix pasystray patchutils pavucontrol pavucontrol-qt pavucontrol-qt-l10n pavumeter perl-openssl-defaults pinentry-gnome3 pinta pipewire
  pipewire-bin pipewire-media-session plymouth plymouth-label plymouth-theme-ubuntu-text policykit-desktop-privileges poppler-data poppler-utils power-profiles-daemon printer-driver-all printer-driver-brlaser printer-driver-c2050 printer-driver-c2esp
  printer-driver-cjet printer-driver-dymo printer-driver-escpr printer-driver-foo2zjs printer-driver-foo2zjs-common printer-driver-fujixerox printer-driver-gutenprint printer-driver-hpcups printer-driver-indexbraille printer-driver-m2300w
  printer-driver-min12xxw printer-driver-oki printer-driver-pnm2ppa printer-driver-postscript-hp printer-driver-ptouch printer-driver-pxljr printer-driver-sag-gdi printer-driver-splix profile-sync-daemon pulseaudio pulseaudio-module-bluetooth
  pulseaudio-utils python3-apport python3-aptdaemon python3-aptdaemon.gtk3widgets python3-brlapi python3-cairo python3-certifi python3-chardet python3-click python3-colorama python3-configobj python3-cups python3-cupshelpers python3-dateutil
  python3-debconf python3-debian python3-distupgrade python3-gi-cairo python3-gpg python3-ibus-1.0 python3-idna python3-ldb python3-louis python3-macaroonbakery python3-nacl python3-olefile python3-pexpect python3-pil python3-problem-report
  python3-protobuf python3-psutil python3-ptyprocess python3-pyatspi python3-pymacaroons python3-renderpm python3-reportlab python3-reportlab-accel python3-requests python3-rfc3339 python3-samba python3-setproctitle python3-speechd python3-systemd
  python3-talloc python3-tdb python3-tz python3-update-manager python3-urllib3 python3-xapp python3-xdg python3-yaml qalc qalculate-gtk qt5-gtk-platformtheme qttranslations5-l10n rake redshift rtkit ruby ruby-json ruby-net-telnet ruby-rubygems
  ruby-webrick ruby-xmlrpc ruby3.0 rubygems-integration rygel samba-common samba-common-bin samba-dsdb-modules samba-libs sane-airscan sane-utils session-migration sgml-base sgml-data shared-mime-info slick-greeter smbclient snapd
  software-properties-gtk sound-icons sound-theme-freedesktop speech-dispatcher speech-dispatcher-audio-plugins speech-dispatcher-espeak-ng spice-vdagent squashfs-tools sshpass ssl-cert switcheroo-control system-config-printer
  system-config-printer-common system-config-printer-udev t1utils tango-icon-theme terminator thunar thunar-data thunar-volman tree tumbler tumbler-common ubuntu-advantage-desktop-daemon ubuntu-advantage-tools ubuntu-docs ubuntu-drivers-common
  ubuntu-mono ubuntu-release-upgrader-core ubuntu-release-upgrader-gtk ubuntu-session unity-greeter unity-gtk-module-common unity-gtk2-module unity-gtk3-module unity-settings-daemon unity-settings-daemon-schemas update-inetd update-manager
  update-manager-core update-notifier update-notifier-common upower viewnior wamerican wbrazilian wbritish wfrench whoopsie whoopsie-preferences witalian wportuguese wspanish wswiss x11-apps x11-common x11-session-utils x11-utils x11-xkb-utils
  x11-xserver-utils xapp xapps-common xarchiver xauth xbacklight xbitmaps xbrlapi xcursor-themes xdg-dbus-proxy xdg-desktop-portal xdg-desktop-portal-gtk xdg-user-dirs xdg-user-dirs-gtk xdg-utils xfce4 xfce4-appfinder xfce4-helpers xfce4-notifyd
  xfce4-panel xfce4-pulseaudio-plugin xfce4-screensaver xfce4-screenshooter xfce4-session xfce4-settings xfce4-terminal xfconf xfdesktop4 xfdesktop4-data xfonts-100dpi xfonts-75dpi xfonts-base xfonts-encodings xfonts-scalable xfonts-utils xfwm4 xiccd
  xinit xinput xml-core xorg xorg-docs-core xscreensaver xscreensaver-data xserver-common xserver-xephyr xserver-xorg xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-libinput xserver-xorg-input-wacom xserver-xorg-legacy
  xserver-xorg-video-all xserver-xorg-video-amdgpu xserver-xorg-video-ati xserver-xorg-video-fbdev xserver-xorg-video-nouveau xserver-xorg-video-radeon xserver-xorg-video-vesa xwallpaper xwayland yelp yelp-xsl zenity zenity-common
Suggested packages:
  default-mta | mail-transport-agent powermgmt-base apparmor-profiles-extra apparmor-utils aspell-doc spellutils brltty-speechd winbind cups-pdf inetutils-inetd | inet-superserver antiword docx2txt imagemagick lynx shunit2 docbook docbook-dsssl
  docbook-xsl docbook-defguide nautilus-sendto unrar evolution fonts-noto fonts-texgyre hplip-cups gir1.2-fwupd-2.0 gdb-doc gdbserver libpam-fprintd gedit-plugins gettext-doc autopoint libasprintf-dev libgettextpo-dev gnome-user-share
  libcanberra-gtk-module usbguard gir1.2-telepathyglib-0.12 gir1.2-telepathylogger-0.2 gnome-shell-extension-prefs chrome-gnome-shell apt-config-icons-hidpi gnome-software-plugin-flatpak gnuplot-doc murrine-themes hplip-doc hplip-gui python3-notify2
  hunspell openoffice.org-hunspell | openoffice.org-core ibus-clutter unity-greeter-session-broadcast libxml-dumper-perl apache2 | lighttpd | httpd kerneloops-applet libaudio2 libsndio6.1 lrzip libdigest-hmac-perl libgssapi-perl libfont-freetype-perl
  libcanberra-gtk0 libdv-bin oss-compat libenchant-2-voikko exiv2 fcitx freerdp2-x11 libgd-tools monodoc-gtk2.0-manual gphoto2 libvisual-0.4-plugins libgtk-4-media-gstreamer | libgtk-4-media-ffmpeg gutenprint-locales jackd2 ooo2dbk rtf2xml
  libcrypt-ssleay-perl libmono-i18n4.0-all libgamin0 opus-tools libscalar-number-perl qt5-image-formats-plugins qtwayland5 libraw1394-doc librsvg2-bin snmp-mibs-downloader speex libbareword-filehandles-perl libindirect-perl libmultidimensional-perl
  libbusiness-isbn-perl gstreamer1.0-libav gstreamer1.0-plugins-bad gstreamer1.0-alsa libauthen-ntlm-perl devhelp libxml-sax-expatxs-perl libunicode-map8-perl libunicode-string-perl xml-twig-tools binutils-multiarch libtext-template-perl fancontrol
  read-edid network-manager-openconnect-gnome network-manager-openvpn-gnome network-manager-vpnc-gnome network-manager-pptp-gnome hpijs-ppds p7zip-rar paman paprefs pulseaudio-module-zeroconf pinentry-doc plymouth-themes fonts-japanese-mincho
  | fonts-ipafont-mincho fonts-japanese-gothic | fonts-ipafont-gothic psutils foomatic-db-engine | apsfilter hannah-foo2zjs tix tk gutenprint-doc magicfilter | apsfilter ubuntu-sounds python-configobj-doc python-nacl-doc python-pexpect-doc
  python-pil-doc python-psutil-doc python3-egenix-mxtexttools python-reportlab-doc python3-openssl python3-socks python-requests-doc ri ruby-dev bundler gstreamer1.0-plugins-ugly rygel-playbin rygel-preferences rygel-ruih rygel-tracker heimdal-clients
  python3-markdown python3-dnspython unpaper sgml-base-doc perlsgml w3-recs opensp libxml2-utils libttspico-utils espeak mbrola speech-dispatcher-doc-cs speech-dispatcher-festival speech-dispatcher-cicero speech-dispatcher-flite
  speech-dispatcher-espeak python3-smbc kdelibs-data thunar-archive-plugin thunar-media-tags-plugin tumbler-plugins-extra python3-aptdaemon.pkcompat gir1.2-dbusmenu-glib-0.4 gir1.2-unity-5.0 nickle cairo-5c arj lbzip2 lhasa liblz4-tool ncompress
  pbzip2 pigz plzip rar unar xdg-desktop-portal-gnome xfce4-goodies xfce4-power-manager fortunes-mod debhelper xorg-docs x11-xfs-utils fortune qcam | streamer www-browser xdaliclock xfishtank xscreensaver-data-extra xscreensaver-gl
  xscreensaver-gl-extra firmware-amd-graphics xserver-xorg-video-r128 xserver-xorg-video-mach64 firmware-misc-nonfree
Recommended packages:
  google-chrome-stable libgtk2-perl appmenu-qt jayatana systemd-services
The following NEW packages will be installed:
  accountsservice accountsservice-ubuntu-schemas adwaita-icon-theme aglfn anacron apg apparmor apport apport-gtk apport-symptoms appstream apt-config-icons aptdaemon armbian-bsp-cli-odroidhc4 armbian-bsp-desktop-odroidhc4 armbian-jammy-desktop-xfce
  aspell aspell-en at-spi2-core avahi-daemon avahi-utils bamfdaemon binfmt-support blueman bluez bluez-cups bluez-obexd bluez-tools brltty brltty-x11 bubblewrap ca-certificates-mono cheese-common cifs-utils cli-common colord cups cups-browsed cups-bsd
  cups-client cups-common cups-core-drivers cups-daemon cups-filters cups-filters-core-drivers cups-ipp-utils cups-pk-helper cups-ppdc cups-server-common dbus-x11 dc dconf-cli dconf-gsettings-backend dconf-service desktop-base desktop-file-utils
  dictionaries-common diffstat distro-info dmidecode dmz-cursor-theme doc-base docbook-xml elementary-xfce-icon-theme emacsen-common enchant-2 espeak-ng-data evince evince-common evolution-data-server evolution-data-server-common exo-utils fontconfig
  fontconfig-config fonts-arphic-ukai fonts-arphic-uming fonts-dejavu-core fonts-droid-fallback fonts-freefont-ttf fonts-guru fonts-guru-extra fonts-kacst fonts-kacst-one fonts-khmeros-core fonts-lato fonts-liberation fonts-lohit-guru fonts-nanum
  fonts-noto-mono fonts-opensymbol fonts-quicksand fonts-stix fonts-symbola fonts-ubuntu-console fonts-urw-base35 foomatic-db-compressed-ppds fwupd gcr gdb gdebi gdebi-core gdm3 gedit gedit-common geoclue-2.0 gettext ghostscript ghostscript-x
  gir1.2-accountsservice-1.0 gir1.2-adw-1 gir1.2-atk-1.0 gir1.2-atspi-2.0 gir1.2-ayatanaappindicator3-0.1 gir1.2-freedesktop gir1.2-gck-1 gir1.2-gcr-3 gir1.2-gdkpixbuf-2.0 gir1.2-gdm-1.0 gir1.2-geoclue-2.0 gir1.2-gnomebluetooth-3.0
  gir1.2-gnomedesktop-3.0 gir1.2-goa-1.0 gir1.2-graphene-1.0 gir1.2-gstreamer-1.0 gir1.2-gtk-3.0 gir1.2-gtk-4.0 gir1.2-gtksource-4 gir1.2-gweather-3.0 gir1.2-handy-1 gir1.2-harfbuzz-0.0 gir1.2-ibus-1.0 gir1.2-javascriptcoregtk-4.0 gir1.2-json-1.0
  gir1.2-keybinder-3.0 gir1.2-libxfce4util-1.0 gir1.2-mutter-10 gir1.2-nma-1.0 gir1.2-notify-0.7 gir1.2-pango-1.0 gir1.2-peas-1.0 gir1.2-polkit-1.0 gir1.2-rsvg-2.0 gir1.2-secret-1 gir1.2-snapd-1 gir1.2-soup-2.4 gir1.2-upowerglib-1.0 gir1.2-vte-2.91
  gir1.2-webkit2-4.0 gir1.2-wnck-3.0 gir1.2-xfconf-0 gist gkbd-capplet glib-networking glib-networking-common glib-networking-services gnome-bluetooth gnome-control-center gnome-control-center-data gnome-desktop3-data gnome-font-viewer
  gnome-icon-theme gnome-keyring gnome-keyring-pkcs11 gnome-menus gnome-online-accounts gnome-power-manager gnome-remote-desktop gnome-screensaver gnome-screenshot gnome-session-bin gnome-settings-daemon gnome-settings-daemon-common gnome-shell
  gnome-shell-common gnome-software gnome-software-plugin-snap gnome-startup-applications gnome-system-monitor gnome-terminal gnome-terminal-data gnome-user-docs gnome-user-docs-de gnome-user-docs-es gnome-user-docs-it gnome-user-docs-pt
  gnome-user-docs-ru gnome-user-docs-sl gnuplot-data gnuplot-x11 greybird-gtk-theme gsettings-desktop-schemas gsettings-ubuntu-schemas gstreamer1.0-clutter-3.0 gstreamer1.0-gl gstreamer1.0-packagekit gstreamer1.0-pipewire gstreamer1.0-plugins-base
  gstreamer1.0-plugins-base-apps gstreamer1.0-plugins-good gstreamer1.0-pulseaudio gstreamer1.0-tools gstreamer1.0-x gtk-update-icon-cache gtk2-engines gtk2-engines-murrine gtk2-engines-pixbuf gvfs gvfs-backends gvfs-common gvfs-daemons gvfs-libs
  hicolor-icon-theme hplip humanity-icon-theme hunspell-en-us ibus ibus-data ibus-gtk ibus-gtk3 ibus-gtk4 iio-sensor-proxy im-config indicator-applet indicator-application indicator-appmenu indicator-bluetooth indicator-common indicator-datetime
  indicator-keyboard indicator-messages indicator-power indicator-printers indicator-session indicator-sound inputattach intltool-debian inxi ipp-usb javascript-common kerneloops keyutils language-pack-de language-pack-de-base language-pack-en
  language-pack-en-base language-pack-es language-pack-es-base language-pack-fr language-pack-fr-base language-pack-gnome-de language-pack-gnome-de-base language-pack-gnome-en language-pack-gnome-en-base language-pack-gnome-es
  language-pack-gnome-es-base language-pack-gnome-fr language-pack-gnome-fr-base language-pack-gnome-it language-pack-gnome-it-base language-pack-gnome-pt language-pack-gnome-pt-base language-pack-gnome-ru language-pack-gnome-ru-base
  language-pack-gnome-sl language-pack-gnome-sl-base language-pack-it language-pack-it-base language-pack-pt language-pack-pt-base language-pack-ru language-pack-ru-base language-pack-sl language-pack-sl-base language-selector-common
  language-selector-gnome laptop-detect libaa1 libabsl20210324 libaccountsservice0 libadwaita-1-0 libaliased-perl libao-common libao4 libapt-pkg-perl libarchive-zip-perl libarchive13 libasound2-plugins libaspell15 libasyncns0 libatk-adaptor
  libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatkmm-1.6-1v5 libatspi2.0-0 libauthen-sasl-perl libavahi-client3 libavahi-common-data libavahi-common3 libavahi-core7 libavahi-glib1 libavc1394-0 libayatana-appindicator3-1 libayatana-ido3-0.4-0
  libayatana-indicator3-7 libb-hooks-endofscope-perl libb-hooks-op-check-perl libbabeltrace1 libbamf3-2 libboost-regex1.74.0 libbrlapi0.8 libc6-dbg libcairo-gobject-perl libcairo-gobject2 libcairo-perl libcairo-script-interpreter2 libcairo2
  libcairomm-1.0-1v5 libcamel-1.2-63 libcanberra-gtk3-0 libcanberra-gtk3-module libcanberra-pulse libcanberra0 libcapture-tiny-perl libcdio-cdda2 libcdio-paranoia2 libcdio19 libcdparanoia0 libcheese-gtk25 libcheese8 libclass-data-inheritable-perl
  libclass-method-modifiers-perl libclass-xsaccessor-perl libclone-perl libclutter-1.0-0 libclutter-1.0-common libclutter-gst-3.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libcolord-gtk1 libcolord2 libcolorhug2
  libconfig-tiny-perl libconst-fast-perl libcpanel-json-xs-perl libcups2 libcupsfilters1 libcupsimage2 libdata-dpath-perl libdata-dump-perl libdata-messagepack-perl libdata-optlist-perl libdata-validate-domain-perl libdata-validate-ip-perl
  libdata-validate-uri-perl libdatrie1 libdbus-glib-1-2 libdbusmenu-glib4 libdbusmenu-gtk3-4 libdconf1 libdebuginfod-common libdebuginfod1 libdeflate0 libdevel-callchecker-perl libdevel-size-perl libdevel-stacktrace-perl libdjvulibre-text
  libdjvulibre21 libdotconf0 libdouble-conversion3 libdrm-amdgpu1 libdrm-common libdrm-nouveau2 libdrm-radeon1 libdrm2 libdv4 libdynaloader-functions-perl libebackend-1.2-10 libebook-1.2-20 libebook-contacts-1.2-3 libecal-2.0-1 libedata-book-1.2-26
  libedata-cal-2.0-1 libedataserver-1.2-26 libedataserverui-1.2-3 libegl-mesa0 libegl1 libemail-address-xs-perl libenchant-2-2 libencode-locale-perl libepoxy0 libespeak-ng1 libevdev2 libevdocument3-4 libevview3-3 libexception-class-perl libexif12
  libexiv2-27 libexo-2-0 libexo-common libexporter-tiny-perl libextutils-depends-perl libfcitx-config4 libfcitx-gclient1 libfcitx-utils0 libfile-basedir-perl libfile-desktopentry-perl libfile-find-rule-perl libfile-listing-perl libfile-mimeinfo-perl
  libflac8 libflashrom1 libfont-afm-perl libfont-ttf-perl libfontconfig1 libfontembed1 libfontenc1 libfreerdp-client2-2 libfreerdp-server2-2 libfreerdp2-2 libfreetype6 libfribidi0 libftdi1-2 libfwupd2 libfwupdplugin5 libgail-common libgail18
  libgarcon-1-0 libgarcon-common libgarcon-gtk3-1-0 libgbm1 libgck-1-0 libgcr-base-3-1 libgcr-ui-3-1 libgd3 libgdata-common libgdata22 libgdiplus libgdk-pixbuf-2.0-0 libgdk-pixbuf-xlib-2.0-0 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-common libgdm1
  libgee-0.8-2 libgeoclue-2-0 libgeocode-glib0 libgif7 libgjs0g libgl1 libgl1-amber-dri libgl1-mesa-dri libglapi-mesa libgles2 libglib-object-introspection-perl libglib-perl libglib2.0-cil libglibmm-2.4-1v5 libglu1-mesa libglvnd0 libglx-mesa0 libglx0
  libgnome-autoar-0-0 libgnome-bluetooth-3.0-13 libgnome-bluetooth13 libgnome-desktop-3-19 libgnome-panel0 libgnomekbd-common libgnomekbd8 libgoa-1.0-0b libgoa-1.0-common libgoa-backend-1.0-1 libgphoto2-6 libgphoto2-port12 libgraphene-1.0-0
  libgraphite2-3 libgs9 libgs9-common libgsettings-qt1 libgsound0 libgspell-1-2 libgspell-1-common libgssdp-1.2-0 libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-0 libgstreamer-plugins-good1.0-0 libgtk-3-0 libgtk-3-bin libgtk-3-common libgtk-4-1
  libgtk-4-bin libgtk-4-common libgtk2.0-0 libgtk2.0-bin libgtk2.0-cil libgtk2.0-common libgtk3-perl libgtkmm-2.4-1v5 libgtkmm-3.0-1v5 libgtksourceview-4-0 libgtksourceview-4-common libgtop-2.0-11 libgtop2-common libgupnp-1.2-1 libgupnp-dlna-2.0-4
  libgutenprint-common libgutenprint9 libgweather-3-16 libgweather-common libgxps2 libhandy-1-0 libharfbuzz-icu0 libharfbuzz0b libhpmud0 libhtml-form-perl libhtml-format-perl libhtml-html5-entities-perl libhtml-parser-perl libhtml-tagset-perl
  libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libhunspell-1.7-0 libhyphen0 libibus-1.0-5 libical3 libice6 libidn12 libido3-0.1-0 libiec61883-0 libijs-0.35 libimagequant0
  libimport-into-perl libindicator3-7 libinput-bin libinput10 libio-html-perl libio-interactive-perl libio-prompt-tiny-perl libio-socket-ssl-perl libio-string-perl libio-stringy-perl libipc-run3-perl libipc-system-simple-perl libiterator-perl
  libiterator-util-perl libjack-jackd2-0 libjavascriptcoregtk-4.0-18 libjbig0 libjbig2dec0 libjcat1 libjpeg-turbo-progs libjpeg-turbo8 libjpeg8 libjs-jquery libjson-glib-1.0-0 libjson-glib-1.0-common libjson-maybexs-perl libkeybinder-3.0-0
  libkpathsea6 liblcms2-2 liblcms2-utils libldb2 liblightdm-gobject-1-0 liblist-compare-perl liblist-moreutils-perl liblist-moreutils-xs-perl liblist-someutils-perl liblist-someutils-xs-perl liblist-utilsby-perl libllvm13 liblouis-data liblouis20
  liblouisutdml-bin liblouisutdml-data liblouisutdml9 libltdl7 liblua5.4-0 liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmanette-0.2-0 libmarkdown2 libmath-base85-perl libmd4c0 libmediaart-2.0-0 libmessaging-menu0
  libmodule-implementation-perl libmodule-runtime-perl libmono-addins-gui0.2-cil libmono-addins0.2-cil libmono-btls-interface4.0-cil libmono-cairo4.0-cil libmono-corlib4.5-cil libmono-corlib4.5-dll libmono-i18n-west4.0-cil libmono-i18n4.0-cil
  libmono-posix4.0-cil libmono-security4.0-cil libmono-sharpzip4.84-cil libmono-system-configuration4.0-cil libmono-system-core4.0-cil libmono-system-drawing4.0-cil libmono-system-numerics4.0-cil libmono-system-security4.0-cil
  libmono-system-xml4.0-cil libmono-system4.0-cil libmoo-perl libmoox-aliases-perl libmouse-perl libmousepad0 libmp3lame0 libmpg123-0 libmtdev1 libmutter-10-0 libnamespace-clean-perl libnautilus-extension1a libnet-dbus-perl libnet-domain-tld-perl
  libnet-http-perl libnet-ipv6addr-perl libnet-netmask-perl libnet-smtp-ssl-perl libnet-ssleay-perl libnetaddr-ip-perl libnfs13 libnma-common libnma0 libnotify-bin libnotify4 libnss-mdns libnumber-compare-perl libogg0 libopengl0 libopenjp2-7 libopus0
  liborc-0.4-0 libpackage-stash-perl libpackage-stash-xs-perl libpam-gnome-keyring libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpangomm-1.4-1v5 libpangoxft-1.0-0 libpaper-utils libpaper1 libparams-classify-perl libparams-util-perl
  libpath-tiny-perl libpcaudio0 libpciaccess0 libpeas-1.0-0 libperlio-gzip-perl libperlio-utf8-strict-perl libphonenumber8 libpipewire-0.3-0 libpipewire-0.3-common libpipewire-0.3-modules libpixman-1-0 libpoppler-cpp0v5 libpoppler-glib8 libpoppler118
  libprotobuf23 libproxy1-plugin-gsettings libproxy1-plugin-networkmanager libproxy1v5 libpulse-mainloop-glib0 libpulse0 libpulsedsp libqalculate-data libqalculate22 libqpdf28 libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5 libqt5svg5
  libqt5widgets5 libraqm0 libraw1394-11 librest-0.7-0 librole-tiny-perl librsvg2-2 librsvg2-common libruby3.0 librygel-core-2.6-2 librygel-db-2.6-2 librygel-renderer-2.6-2 librygel-server-2.6-2 libsane-hpaio libsane1 libsbc1 libsecret-1-0
  libsecret-common libsereal-decoder-perl libsereal-encoder-perl libshout3 libsm6 libsmbclient libsnapd-glib1 libsndfile1 libsnmp-base libsnmp40 libsocket6-perl libsonic0 libsort-versions-perl libsoup-gnome2.4-1 libsoup2.4-1 libsoup2.4-common
  libsource-highlight-common libsource-highlight4v5 libsoxr0 libspa-0.2-modules libspectre1 libspeechd2 libspeex1 libspeexdsp1 libstartup-notification0 libstrictures-perl libsub-exporter-perl libsub-exporter-progressive-perl libsub-identify-perl
  libsub-install-perl libsub-name-perl libsub-quote-perl libsynctex2 libsyntax-keyword-try-perl libtag1v5 libtag1v5-vanilla libtalloc2 libtdb1 libterm-readkey-perl libtevent0 libtext-glob-perl libtext-iconv-perl libtext-levenshteinxs-perl
  libtext-markdown-discount-perl libtext-xslate-perl libthai-data libthai0 libtheora0 libthunarx-3-0 libtie-ixhash-perl libtiff5 libtime-duration-perl libtime-moment-perl libtimedate-perl libtry-tiny-perl libtumbler-1-0 libtwolame0 libu2f-udev
  libunicode-utf8-perl libunity-gtk2-parser0 libunity-gtk3-parser0 libunity-settings-daemon1 libupower-glib3 liburi-perl libuuid-perl libv4l-0 libv4lconvert0 libvariable-magic-perl libvisual-0.4-0 libvncserver1 libvorbis0a libvorbisenc2 libvorbisfile3
  libvpx7 libvte-2.91-0 libvte-2.91-common libvulkan1 libwacom-bin libwacom-common libwacom9 libwavpack1 libwayland-client0 libwayland-cursor0 libwayland-egl1 libwayland-server0 libwbclient0 libwebkit2gtk-4.0-37 libwebp7 libwebpdemux2 libwebpmux3
  libwebrtc-audio-processing1 libwhoopsie-preferences0 libwhoopsie0 libwmf-0.2-7 libwmf-0.2-7-gtk libwmf0.2-7-gtk libwmflite-0.2-7 libwnck-3-0 libwnck-3-common libwoff1 libwww-perl libwww-robotrules-perl libwxbase3.0-0v5 libwxgtk3.0-gtk3-0v5 libx11-6
  libx11-data libx11-protocol-perl libx11-xcb1 libxapp1 libxau6 libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-present0 libxcb-randr0 libxcb-render-util0 libxcb-render0 libxcb-res0 libxcb-shape0
  libxcb-shm0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb-xinput0 libxcb-xkb1 libxcb-xv0 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfce4panel-2.0-4 libxfce4ui-2-0 libxfce4ui-common libxfce4ui-utils
  libxfce4util-bin libxfce4util-common libxfce4util7 libxfconf-0-3 libxfixes3 libxfont2 libxft2 libxi6 libxinerama1 libxkbcommon-x11-0 libxkbcommon0 libxkbfile1 libxkbregistry0 libxklavier16 libxml-libxml-perl libxml-namespacesupport-perl
  libxml-parser-perl libxml-sax-base-perl libxml-sax-expat-perl libxml-sax-perl libxml-twig-perl libxml-xpathengine-perl libxmu6 libxmuu1 libxpm4 libxpresent1 libxrandr2 libxrender1 libxres1 libxs-parse-keyword-perl libxshmfence1 libxslt1.1 libxss1
  libxt6 libxtst6 libxv1 libxxf86dga1 libxxf86vm1 libyaml-libyaml-perl libyaml-tiny-perl libyelp0 lightdm lightdm-settings lintian lm-sensors lxtask lzip lzop mailcap mesa-utils mesa-utils-bin mesa-vulkan-drivers mime-support mono-4.0-gac mono-gac
  mono-runtime mono-runtime-common mono-runtime-sgen mousepad mousetweaks mscompress mutter-common nautilus-data nautilus-extension-gnome-terminal network-manager-gnome network-manager-ssh network-manager-ssh-gnome network-manager-vpnc numix-gtk-theme
  numix-icon-theme numix-icon-theme-circle openprinting-ppds orca p11-kit p11-kit-modules p7zip p7zip-full pamix pasystray patchutils pavucontrol pavucontrol-qt pavucontrol-qt-l10n pavumeter perl-openssl-defaults pinentry-gnome3 pinta pipewire
  pipewire-bin pipewire-media-session plymouth plymouth-label plymouth-theme-ubuntu-text policykit-desktop-privileges poppler-data poppler-utils power-profiles-daemon printer-driver-all printer-driver-brlaser printer-driver-c2050 printer-driver-c2esp
  printer-driver-cjet printer-driver-dymo printer-driver-escpr printer-driver-foo2zjs printer-driver-foo2zjs-common printer-driver-fujixerox printer-driver-gutenprint printer-driver-hpcups printer-driver-indexbraille printer-driver-m2300w
  printer-driver-min12xxw printer-driver-oki printer-driver-pnm2ppa printer-driver-postscript-hp printer-driver-ptouch printer-driver-pxljr printer-driver-sag-gdi printer-driver-splix profile-sync-daemon pulseaudio pulseaudio-module-bluetooth
  pulseaudio-utils python3-apport python3-aptdaemon python3-aptdaemon.gtk3widgets python3-brlapi python3-cairo python3-certifi python3-chardet python3-click python3-colorama python3-configobj python3-cups python3-cupshelpers python3-dateutil
  python3-debconf python3-debian python3-distupgrade python3-gi-cairo python3-gpg python3-ibus-1.0 python3-idna python3-ldb python3-louis python3-macaroonbakery python3-nacl python3-olefile python3-pexpect python3-pil python3-problem-report
  python3-protobuf python3-psutil python3-ptyprocess python3-pyatspi python3-pymacaroons python3-renderpm python3-reportlab python3-reportlab-accel python3-requests python3-rfc3339 python3-samba python3-setproctitle python3-speechd python3-systemd
  python3-talloc python3-tdb python3-tz python3-update-manager python3-urllib3 python3-xapp python3-xdg python3-yaml qalc qalculate-gtk qt5-gtk-platformtheme qttranslations5-l10n rake redshift rtkit ruby ruby-json ruby-net-telnet ruby-rubygems
  ruby-webrick ruby-xmlrpc ruby3.0 rubygems-integration rygel samba-common samba-common-bin samba-dsdb-modules samba-libs sane-airscan sane-utils session-migration sgml-base sgml-data shared-mime-info slick-greeter smbclient snapd
  software-properties-gtk sound-icons sound-theme-freedesktop speech-dispatcher speech-dispatcher-audio-plugins speech-dispatcher-espeak-ng spice-vdagent squashfs-tools sshpass ssl-cert switcheroo-control system-config-printer
  system-config-printer-common system-config-printer-udev t1utils tango-icon-theme terminator thunar thunar-data thunar-volman tree tumbler tumbler-common ubuntu-advantage-desktop-daemon ubuntu-advantage-tools ubuntu-docs ubuntu-drivers-common
  ubuntu-mono ubuntu-release-upgrader-core ubuntu-release-upgrader-gtk ubuntu-session unity-greeter unity-gtk-module-common unity-gtk2-module unity-gtk3-module unity-settings-daemon unity-settings-daemon-schemas update-inetd update-manager
  update-manager-core update-notifier update-notifier-common upower viewnior wamerican wbrazilian wbritish wfrench whoopsie whoopsie-preferences witalian wportuguese wspanish wswiss x11-apps x11-common x11-session-utils x11-utils x11-xkb-utils
  x11-xserver-utils xapp xapps-common xarchiver xauth xbacklight xbitmaps xbrlapi xcursor-themes xdg-dbus-proxy xdg-desktop-portal xdg-desktop-portal-gtk xdg-user-dirs xdg-user-dirs-gtk xdg-utils xfce4 xfce4-appfinder xfce4-helpers xfce4-notifyd
  xfce4-panel xfce4-pulseaudio-plugin xfce4-screensaver xfce4-screenshooter xfce4-session xfce4-settings xfce4-terminal xfconf xfdesktop4 xfdesktop4-data xfonts-100dpi xfonts-75dpi xfonts-base xfonts-encodings xfonts-scalable xfonts-utils xfwm4 xiccd
  xinit xinput xml-core xorg xorg-docs-core xscreensaver xscreensaver-data xserver-common xserver-xephyr xserver-xorg xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-libinput xserver-xorg-input-wacom xserver-xorg-legacy
  xserver-xorg-video-all xserver-xorg-video-amdgpu xserver-xorg-video-ati xserver-xorg-video-fbdev xserver-xorg-video-nouveau xserver-xorg-video-radeon xserver-xorg-video-vesa xwallpaper xwayland yelp yelp-xsl zenity zenity-common
0 upgraded, 1166 newly installed, 0 to remove and 9 not upgraded.
Need to get 330 MB/454 MB of archives.
After this operation, 1,783 MB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.&lt;/pre&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Wed, 27 Jul 2022 14:21:11 +0000</pubDate>
        </item>
        <item>
            <title>citrix_vdi_handbook_2017_v.2.01</title>
            <link>https://wiki.autosys.tk/citrix/citrix_vdi_handbook_2017_v.2.01</link>
            <description>
&lt;p&gt;
перевод &lt;a href=&quot;http://docs.citrix.com/content/dam/docs/en-us/xenapp-xendesktop/7-15-ltsr/downloads/Citrix%20VDI%20Handbook%207.15%20LTSR.pdf&quot; class=&quot;urlextern&quot; title=&quot;http://docs.citrix.com/content/dam/docs/en-us/xenapp-xendesktop/7-15-ltsr/downloads/Citrix%20VDI%20Handbook%207.15%20LTSR.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;Citrix VDI Handbook 2017 v.2.01&lt;/a&gt;. При копировании ссылка на оригинал обязательна. 
&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;citrix_consulting_methodology&quot;&gt;Citrix Consulting Methodology&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В рамках методологии &lt;strong&gt;Citrix Consulting&lt;/strong&gt; выделяется 5 этапов развертывания и подержки решения VDI. &lt;br/&gt;

&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology.jpeg?w=600&amp;amp;tok=70bde7&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt; &lt;br/&gt;

1. &lt;strong&gt;Определение потребностей (Define)&lt;/strong&gt;. Формулирование и изучение бизнес-кейса. Составление роадмапа внедрения высокого уровня (с низкой детализацией). &lt;br/&gt;

2. &lt;strong&gt;Оценка (Assess)&lt;/strong&gt;. Выработка требований к решению VDI. Оценка задач и приоретизация усилий. Оценка текущей инфраструктуры для определения круга задач внедрения и выявления потенциальных проблем. &lt;br/&gt;

3. &lt;strong&gt;Разработка решения (Design)&lt;/strong&gt;. Определение архитектуры будущего решения, удовлетворяющее задачам бизнеса и требованиям, выработанным на этапе оценки. Также, на этом этапе прорабатываются требования к масштабируемости и отказоустойчивости.  &lt;br/&gt;

4. &lt;strong&gt;Развертывание (Deploy)&lt;/strong&gt;. Фаза развертывания включает в себя реализацию решений и требований, сформулированных на этапах оценки и разработки. Компоненты инфраструктуры должны быть обособлены. Перед запуском в эксплуатацию должно быть проведено тестирование отказоустойчивости. &lt;br/&gt;

5. &lt;strong&gt;Контроль (Monitor)&lt;/strong&gt;. Формирование регламента и процедур обслуживания системы. &lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Citrix Consulting Methodology&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;citrix_consulting_methodology&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;270-2288&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;оценка_assess&quot;&gt;Оценка (Assess)&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/consulting_methodology_assess_process.jpeg&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;br/&gt;

Процесс оценки включает в себя: &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0446\u0435\u043d\u043a\u0430 (Assess)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0446\u0435\u043d\u043a\u0430_assess&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;2289-2450&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;определение_круга_решаемых_с_помощью_vdi_задач_и_требований_менеджмента_к_решению_vdi&quot;&gt;1. Определение круга решаемых с помощью VDI задач и требований менеджмента к решению VDI.&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Лучший сбособ сбора сведений - опросники. &lt;br/&gt;

Примеры задач и требований: &lt;br/&gt;

&lt;br/&gt;

Со стороны менеджеров от бизнеса:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Agilty&lt;/strong&gt;. Более высокая гибкость инфраструктуры IT. Способность подстроиться под быстро появляющиеся задачи. Например - открытие новых офисов организации.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;BYOD&lt;/strong&gt;. Использоваие сотрудниками тех устройств, которые в данный момент наиболее эффективны. В том числе и их собственных.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Эффективная совместная работа сотрудников из разных географических локаций.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;  Возможность работать откуда угодно.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Со стороны принимающих решения IT-менеджеров:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Высокая управляемость инфраструктуры рабочих столов.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Высокая безопасность. Защита данных от потери.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Расширение жизненного цикла оборудования (настольные компьютеры).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Уменьшение круга рутинных задач IT-подразделения за счет использования облачных вычислительных ресурсов.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Увеличение производительности рабочих мест пользователей и возможность использования ранее недоступных технологий.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1. \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043a\u0440\u0443\u0433\u0430 \u0440\u0435\u0448\u0430\u0435\u043c\u044b\u0445 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e VDI \u0437\u0430\u0434\u0430\u0447 \u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u043c\u0435\u043d\u0442\u0430 \u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044e VDI.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435_\u043a\u0440\u0443\u0433\u0430_\u0440\u0435\u0448\u0430\u0435\u043c\u044b\u0445_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_vdi_\u0437\u0430\u0434\u0430\u0447_\u0438_\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439_\u043c\u0435\u043d\u0435\u0434\u0436\u043c\u0435\u043d\u0442\u0430_\u043a_\u0440\u0435\u0448\u0435\u043d\u0438\u044e_vdi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2451-4374&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;определение_групп_пользователей_и_их_потребностей&quot;&gt;2. Определение групп пользователей и их потребностей.&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Пользователей логично делить на группы в соотвествии с их функциональными обязанностями, подразумевая, что функциональные обязанности определяют круг необходимых для работы приложений.&lt;br/&gt;

&lt;br/&gt;

Среди потребностей пользователей выделяют: &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2. \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0433\u0440\u0443\u043f\u043f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438 \u0438\u0445 \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u0435\u0439.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435_\u0433\u0440\u0443\u043f\u043f_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439_\u0438_\u0438\u0445_\u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;4375-4921&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;уровень_персонализации_рабочего_места&quot;&gt;Уровень персонализации рабочего места.&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Возможные уровни персонализации - никакая (пользователь не имеет прав менять настройки), базовая (можно менять параметры рабочего стола) и полная персонализация (любые настройки, в том числе установка ПО).&lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0440\u043e\u0432\u0435\u043d\u044c \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043c\u0435\u0441\u0442\u0430.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0440\u043e\u0432\u0435\u043d\u044c_\u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438_\u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e_\u043c\u0435\u0441\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;4922-5384&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;уровень_безопасности&quot;&gt;Уровень безопасности.&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Низкая безопасность - пользователю можно выгружать данные с виртуального рабочего места и загружать их туда. &lt;br/&gt;

Средняя безопасность - трафик виртульного рабочего места шифруется и контролируется. Пользователю нельзя изменять параметры рабочего окружения. &lt;br/&gt;

Высокая безопасность - Трафик шифруется. Любой вывод информации (копирование, печать) зпрещен. Все изменения виртуальной среды журналируются.&lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0440\u043e\u0432\u0435\u043d\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0440\u043e\u0432\u0435\u043d\u044c_\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;5385-6176&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;уровень_мобильности&quot;&gt;Уровень мобильности&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Локальный пользователь - Всегда работает за локальным рабочим местом. &lt;br/&gt;

Перемещающийся локальный пользователь - Работает за разными рабочими местами в пределах высокоскоростной локальной сети. &lt;br/&gt;

Удаленный пользователь -  Иногда подключается с помощью незащищенных каналов с различной скоростью. &lt;br/&gt;

Мобильный - Нуждается в доступе к приложениям в условиях отсутствия подключения. &lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0440\u043e\u0432\u0435\u043d\u044c \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0440\u043e\u0432\u0435\u043d\u044c_\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;6177-6929&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit8&quot; id=&quot;критичность_неработоспособности_рабочего_места&quot;&gt;Критичность неработоспособности рабочего места&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Эта метрика определяет необходимость резервирования элементов инфраструктуры VDI и балансировки нагрузки.
Низкая критичность - В случае неработосопсобности VDI риск для бизнес-процессов отсуствует. &lt;br/&gt;

Средняя критичность- В случае неработосопсобности VDI существует потенциальный риск для бизнес-процессов. &lt;br/&gt;

Высокая критичность- В случае неработосопсобности VDI бизнес-процессы останавливаются либо подвургаются существенным рискам.&lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0440\u0438\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u044c \u043d\u0435\u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043c\u0435\u0441\u0442\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0440\u0438\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u044c_\u043d\u0435\u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438_\u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e_\u043c\u0435\u0441\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;6930-7831&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;рабочая_нагрузка&quot;&gt;Рабочая нагрузка&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Тип и число приложений, влияющих на плотность сессий и выбор типа VDI. &lt;br/&gt;

Легкая нагрузка - 1-2 офисных приложения или информационный киоск. &lt;br/&gt;

Средняя нагрузка - 2-10 приложений с небольши количеством мультимедиа. &lt;br/&gt;

Высокая нагрузка - Тяжелые мультимедийные приложения. &lt;br/&gt;

&lt;br/&gt;

Расчет нагрузки не должен включать в себя критерии загрузки процессора, оперативной памяти и дисковой подсистемы, поскольку эти метрики существенно зависят от оптимизации тех или иных операций внутри ПО. Напротив - предполагаемая нагрузка расчитывается исходя из числа и типа приложений запускаемых каждым пользователем.
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0431\u043e\u0447\u0430\u044f \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0431\u043e\u0447\u0430\u044f_\u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;7832-8958&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit10&quot; id=&quot;модели_vdi&quot;&gt;3. Модели VDI&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Различные типы нагрузки скорее всего потребуют применения различных типов VDI. Применение единой модели VDI для разных типов нагрузки в рамках крупного внедрения скорее всего не приведет к хорошим результатам. &lt;br/&gt;

Citrix предлагает полный спектр технологических решений VDI,которые объединяются в интегрированное решение: &lt;br/&gt;

&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Опубликованные приложения&lt;/strong&gt; (&lt;strong&gt;Hosted Apps&lt;/strong&gt;). Среди них можно выделить:
&lt;/div&gt;&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Windows-приложения, развернутые на Windows Server. В этом случае много пользователей могут работать на одном сервере (физическом или виртуальном).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Windows-приложения, развернутые на виртуальных машинах с десктопной версией Windows. В этом случае каждый пользователь получает доступ к приложению, работающему на выделенной виртуальной (или физической) машине.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Linux-приложения, развернутые на сервере Linux.  В этом случае много пользователей могут работать на одном сервере (физическом или виртуальном).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Приложения с Web-интерфейсом. Приложение, развернутое на Windows-сервере доставляется во вкладку локального браузера (&lt;abbr title=&quot;Internet Explorer&quot;&gt;IE&lt;/abbr&gt;, Chrome или Firefox).
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Опубликованный рабочий стол&lt;/strong&gt; (&lt;strong&gt;Shared desktop&lt;/strong&gt;). Рабочий стол опубликованный на серверной ОС (Windows или Linux). 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Пул рабочих столов&lt;/strong&gt; (&lt;strong&gt;Pooled Desktop&lt;/strong&gt;). Пользователю предоствляется динамичейский доступ к случайной неизменяемой виртуальной машине из определенного пула машин. Возможная плотность размещения несколько уступает &lt;strong&gt;Shared Desktop&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Персональный рабочий стол&lt;/strong&gt; (&lt;strong&gt;Personal Desktop&lt;/strong&gt;) - Пользователь получает доступ к статически выделенной машине, которая сохраняет произведенные им изменения. Возможная плотность размещения несколько уступает &lt;strong&gt;Shared Desktop&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Рабочий стол с поддержкой GPU&lt;/strong&gt; (&lt;strong&gt;Pro Graphics Desktop&lt;/strong&gt;) - виртуальная машина для работы с 3D-графикой.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Образ ОС, загружаемый по сети&lt;/strong&gt; (&lt;strong&gt;Local Streamed Desktop&lt;/strong&gt;)- Централизованно поддерживаемый образ машины загружается по сети и работает на локальной машине пользователя.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Локальная виртуальная машина&lt;/strong&gt; (&lt;strong&gt;Local VM Desktop&lt;/strong&gt;) - Централизованно распространяемый локально исполняемый образ виртуальной машины, способный работать без доступа к сети предприятия.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Удаленный доступ к рабочему месту&lt;/strong&gt; - удаленный доступ к физической машине.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_vdi_model_capability.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_vdi_model_capability.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_vdi_model_capability.jpeg?w=800&amp;amp;tok=b4eac0&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;800&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3. \u041c\u043e\u0434\u0435\u043b\u0438 VDI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u043e\u0434\u0435\u043b\u0438_vdi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;8959-12863&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit11&quot; id=&quot;рекомендации_citrix_по_выбору_модели_vdi&quot;&gt;Рекомендации Citrix  по выбору модели VDI&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 В большинстве случаев следует рассматривать один из трех вариантов: &lt;strong&gt;Опубликованные приложения&lt;/strong&gt; (&lt;strong&gt;Hosted Apps&lt;/strong&gt;), развернутые на Windows Server, &lt;strong&gt;Пул рабочих столов&lt;/strong&gt; (&lt;strong&gt;Pooled Desktop&lt;/strong&gt;) или &lt;strong&gt;Опубликованный рабочий стол&lt;/strong&gt; (&lt;strong&gt;Shared desktop&lt;/strong&gt;). Варианты &lt;strong&gt;Local Streamed Desktop&lt;/strong&gt; и &lt;strong&gt;Local VM Desktop&lt;/strong&gt; следует рассматривать в исключительных случаях.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Возможно, для какой-то группы пользователей требования будут противоречивы и не удастся однозначно определиться с вариантом модели VDI.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Критичность неработоспособности рабочего места - только три модели VDI имеют резервирование и допускают быстрое восстановление работоспособности - &lt;strong&gt;Hosted Apps&lt;/strong&gt;, &lt;strong&gt;Pooled Desktop&lt;/strong&gt; и &lt;strong&gt;Shared desktop&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 При выборе модели VDI в каждом случае следует учитывать сложность обслуживания. Например - в случае исползования &lt;strong&gt;Pooled Desktop&lt;/strong&gt; виртуальную машину достаточно просто перезагрузить, чтобы она вернулась в нормальное (первоначальное) состояние, что может может не сработаь в случае с &lt;strong&gt;Personal Desktop&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 Citrix  \u043f\u043e \u0432\u044b\u0431\u043e\u0440\u0443 \u043c\u043e\u0434\u0435\u043b\u0438 VDI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438_citrix_\u043f\u043e_\u0432\u044b\u0431\u043e\u0440\u0443_\u043c\u043e\u0434\u0435\u043b\u0438_vdi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;12864-14611&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit12&quot; id=&quot;приложения&quot;&gt;4. Приложения&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Оценка количества и качества приложений включает два этапа:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Инвентаризация текущего набора приложений и оптимизация этого списка.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Привязка приложений к группам пользователей.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4. \u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;14612-14982&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit13&quot; id=&quot;инвентаризация_приложений&quot;&gt;Инвентаризация приложений&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
При инвентаризации важно учитывать:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Наличие многих версий одного и того же приложения. Причин для этого может быть много.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Приложения не актуальные для бизнеса.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Старые (уже не используемые) приложения.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Инфраструктурные приложения (антивирусы, бекапы и прочие).
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Общие пожелания - максимальное сокращение списка виртуализируемых приложений.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u043d\u0432\u0435\u043d\u0442\u0430\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043d\u0432\u0435\u043d\u0442\u0430\u0440\u0438\u0437\u0430\u0446\u0438\u044f_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;14983-15679&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit14&quot; id=&quot;категоризация_приложений&quot;&gt;Категоризация приложений&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Все виртуализируемые приложения следует категоризировать и выбрать для каждого наиболее подходящий способ доставки:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Приложение может быть установлено непосредственно в образ.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Приложение может быть упакованно в контейнер &lt;strong&gt;Microsoft App-V&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Приложение может быть выделено в собственный слой - &lt;strong&gt;Citrix App Layering&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Приложение может работать на локальной машине пользователя и бесшовно интегрироваться в виртуальный рабочий стол - &lt;strong&gt;Citrix Local App Access&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Для каждого приложения следует определить характеристику, которая поможет выбрать способ доставки:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Сложные приложения&lt;/strong&gt; - приложения сложные в техническом отношении, требующие увязывания многих компонент в единый комплекс. Как правило успешно доставляются как &lt;strong&gt;Hosted Apps&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Приложения требовательные к ресурсам&lt;/strong&gt; - следует корректно опредлелять требования приложений к ресурсам для их своевременного выделения. Например требовательные приложения не следует публиковать в &lt;strong&gt;pooled/personal desktop&lt;/strong&gt; средах, поскольку в этом случае невозможно адекватно контролировать выделение необходимых ресурсов.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Мобильные приложения&lt;/strong&gt; - некоторые приложения должны исполняться в условиях отсутствия доступа к сети и доствляться с помощью &lt;strong&gt;Microsoft App-V&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Приложения работающие с периферией&lt;/strong&gt; - приложения, работающие с периферией должны иметь доступ к локально установленным устройствам из виртуальной среды. Часто реализовать такой сценарий удается с помощью бесшовной интеграции приложения в виртуальный рабочий стол - &lt;strong&gt;Citrix Local App Access&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Приложения, использовапние которых ограничено&lt;/strong&gt; - например, приложения с ограниченным числом лицензий не следует устанавливать в образ &lt;strong&gt;polled desktop&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;15680-18704&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit15&quot; id=&quot;роли_в_команде_внедрения&quot;&gt;Роли в команде внедрения&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Напишу как-нибудь потом. Когда сделаюсь архитектором :)
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u043e\u043b\u0438 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u043e\u043b\u0438_\u0432_\u043a\u043e\u043c\u0430\u043d\u0434\u0435_\u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:15,&amp;quot;range&amp;quot;:&amp;quot;18705-18865&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit16&quot; id=&quot;разработка_решения_design&quot;&gt;Разработка решения (Design)&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В качестве стандарта разработки рекомендуется использовать пятиуровневую модель:
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_five-layer_design_model.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
Три верхних уровня - разрабатываются индивидуально для каждой группы пользователей в соответсвтии с критериями, определенными на этапе оценки (assess). Эти уровни опеределяют ресурсы, доступные пользователям, и способ доступа к ним.&lt;br/&gt;

Два нижних уровня - управление и аппаратный уровень разрабатываются для всего внедрения вцелом. &lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0440\u0435\u0448\u0435\u043d\u0438\u044f (Design)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430_\u0440\u0435\u0448\u0435\u043d\u0438\u044f_design&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:16,&amp;quot;range&amp;quot;:&amp;quot;18866-19765&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit17&quot; id=&quot;уровень_0концепция_архитектуры&quot;&gt;Уровень 0: Концепция архитектуры&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
На первом этапе важно выбрать стратегию, основанную на целях заказчика и организационной структуре.&lt;br/&gt;

Необходимо определить лучшую модель доставки приложений и физическое (географическое) распределение вычислительных ресурсов.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0440\u043e\u0432\u0435\u043d\u044c 0: \u041a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0440\u043e\u0432\u0435\u043d\u044c_0\u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f_\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:17,&amp;quot;range&amp;quot;:&amp;quot;19766-20259&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit18&quot; id=&quot;размещение_вычислительных_ресурсов&quot;&gt;Размещение вычислительных ресурсов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Независимо от выбранного способа размещения вычислительных ресурсов, инфраструктура остается той же самой, а меняются только подходы к управлению ею.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;On premises&lt;/strong&gt;. Вычислительные ресурсы размещены на площадке заказчика (&lt;strong&gt;on premises&lt;/strong&gt;). IT-команда заказчика полностью обеспечивает работоспособность решения.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_architect_on-premises.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Public Cloud&lt;/strong&gt;. Вычислительные ресурсы размещены (арендованы) в публичном облаке (&lt;strong&gt;IaaS&lt;/strong&gt;). IT-команда заказчика не отвечает за аппаратные средства.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_architect_iaas.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Hybrid Cloud&lt;/strong&gt;. Вычислительные ресурсы размещены как на площадке заказчика (&lt;strong&gt;on premises&lt;/strong&gt;), так и в публичном облаке (&lt;strong&gt;IaaS&lt;/strong&gt;).
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_architect_hybrid_cloud.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Citrix Cloud&lt;/strong&gt;. В этом случае управляющие элементы инфраструктуры &lt;strong&gt;XenApp&lt;/strong&gt; и &lt;strong&gt;XenDesktop&lt;/strong&gt; работают в Облаке &lt;strong&gt;Citrx&lt;/strong&gt; (&lt;strong&gt;Citrix Cloud&lt;/strong&gt;), а слой ресурсов доступных пользователю (&lt;strong&gt;resource layer&lt;/strong&gt;) управляется IT-командой заказчика. &lt;strong&gt;Citrix&lt;/strong&gt; берет на себя обслуживание аппаратных средств, масштабирование и поддержание в актуальном состоянии управляющих элементов инфраструктуры.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_architect_citrix_cloud.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u0435_\u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445_\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:18,&amp;quot;range&amp;quot;:&amp;quot;20260-22305&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit19&quot; id=&quot;выбор_топологии&quot;&gt;Выбор топологии&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В рамках архитектуры &lt;strong&gt;XenApp&lt;/strong&gt; и &lt;strong&gt;XenDesktop&lt;/strong&gt; сайтом (site) называется группа рабочих столов и приложений, управляемых как единая сущность. Вся информация о текущей конфигурации, выделенных ресурсах и подключениях хранится в базе данных сайта. &lt;br/&gt;

Компоненты сайта &lt;strong&gt;XenDesktop&lt;/strong&gt; могут быть физически размещены в одном или нескольких локациях. Нагрузочное тестирование показывает, что один сайт способен одновременно обслуживать более 40 000 сессий. &lt;br/&gt;

&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_site_design_examples.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
Сайт может быть разделен на зоны в соотвествии с географическим принципом разделения ресурсов.
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_zones_inside_site.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
При планировании топологии сайта учитываются несколько факторов:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Отказоустойчивость&lt;/strong&gt; (&lt;strong&gt;Risk Tolerance&lt;/strong&gt;). Создание нескольких сайтов позволит минимизировать влияние отказов на бизнес-процессы. Например - повреждение базы данных одного сайта не повлияет на другие сайты.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Безопасность&lt;/strong&gt; (&lt;strong&gt;Security&lt;/strong&gt;). В некоторых случаях регулирующие органы могут предъявлять требования, которые подразумевают физическое разделение вычислительных ресурсов, обрабатывающих критичные и некритичные данные. Например - разделение складского и финансового учета. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Административные границы&lt;/strong&gt; (&lt;strong&gt;Administrative Boundaries&lt;/strong&gt;). В пределах компании IT-ресурсы могут быть разделены административно и управляться различными IT-командами.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Географическая связанность&lt;/strong&gt; (&lt;strong&gt;Geographical Connectivity&lt;/strong&gt;). В общем случае - реализация зон не подразумевает распределения инфраструктуры сайта по нескольким географическим локациям (потому что база все равно одна), однако если между локациями (основной и дополнительными зонами) существует достаточно производительный и стабильный канал связи, то реализация зон может быть оправдана. Большой размер зоны и высокие задержки в канале связи отражаются на времени отклика для пользователя. 
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&quot;table sectionedit20&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;thead&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;                               &lt;/td&gt;&lt;th class=&quot;col1&quot;&gt; XenApp/XenDesktop 7.13 &lt;/th&gt;&lt;th class=&quot;col2&quot;&gt; XenApp/XenDesktop 7.11 &lt;/th&gt;
	&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; Latency (ms)                  &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 90                     &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 250                    &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; Concurrent Requests           &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 48                     &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 48                     &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; Average Response Time         &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 3.7                    &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 7.6                    &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; Brokering Requests per second &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 12.6                   &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 6.3                    &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row5&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; Time to launch 10,000 users   &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 13 minutes             &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 26 minutes             &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;secid&amp;quot;:20,&amp;quot;range&amp;quot;:&amp;quot;25624-26127&amp;quot;} --&gt;
&lt;p&gt;
&lt;strong&gt;Производительность зон Citrix Xendesktop&lt;/strong&gt;
&lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit21&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;thead&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; Session count  &lt;/th&gt;&lt;th class=&quot;col1&quot;&gt; Max concurrent session launches &lt;/th&gt;&lt;th class=&quot;col2&quot;&gt; Min zone-to-zone bandwidth &lt;/th&gt;&lt;th class=&quot;col3&quot;&gt; Max zone-to-zone round trip latency &lt;/th&gt;
	&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; Less than 50   &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 20                              &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 1 Mpbs                     &lt;/td&gt;&lt;td class=&quot;col3 leftalign&quot;&gt; 250 ms                              &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; 50 to 500      &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 25                              &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 1.5 Mbps                   &lt;/td&gt;&lt;td class=&quot;col3 leftalign&quot;&gt; 100 ms                              &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; 500 to 1,000   &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 30                              &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 2 Mbps                     &lt;/td&gt;&lt;td class=&quot;col3 leftalign&quot;&gt; 50 ms                               &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; 1,000 to 3,000 &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 60                              &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 8 Mbps                     &lt;/td&gt;&lt;td class=&quot;col3 leftalign&quot;&gt; 10 ms                               &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row5&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt; Over 3,000     &lt;/th&gt;&lt;td class=&quot;col1 leftalign&quot;&gt; 60                              &lt;/td&gt;&lt;td class=&quot;col2 leftalign&quot;&gt; 8 Mbps                     &lt;/td&gt;&lt;td class=&quot;col3 leftalign&quot;&gt; 5 ms                                &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table1&amp;quot;,&amp;quot;secid&amp;quot;:21,&amp;quot;range&amp;quot;:&amp;quot;26200-26951&amp;quot;} --&gt;
&lt;p&gt;
&lt;strong&gt;Требования к каналам связи для реализации зон&lt;/strong&gt;
&lt;br/&gt;

&lt;br/&gt;

В общем случае - администраторам следует минимизировать количество сайтов и зон для упрощения структуры.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:19,&amp;quot;range&amp;quot;:&amp;quot;22306-27241&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit22&quot; id=&quot;выбор_стратегии_управления_мастер-образами&quot;&gt;Выбор стратегии управления мастер-образами&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
При развертывании &lt;strong&gt;XenApp&lt;/strong&gt; или &lt;strong&gt;XenDesktop&lt;/strong&gt;, как правило, создаются мастер-образы (master images). Важно зараее определиться со стратегией управления мастер-образами. Возможные варианты:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Установленный образ&lt;/strong&gt; (&lt;strong&gt;Installed Image&lt;/strong&gt;). В таком варианте администратор устанавливает ОС и прикладное ПО при создании каждого мастер-образа. Это самый простой вариант, однако в этом случае при создании и обновлении каждого мастер-образа администратор вынужден повторять одни и те же действия, что может быть очень затратно по времени.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Мастер-образ формируемый скриптом&lt;/strong&gt; (&lt;strong&gt;Scripted Image&lt;/strong&gt;). Образ формируемый скриптом (настройки и установка ПО).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Многослойный образ&lt;/strong&gt; (&lt;strong&gt;Layered Image&lt;/strong&gt;). В этом варианте - ОС и прикладное ПО рассматриваются в качестве элементов многослойной структуры. В этом случае любой элемент (слой) доступен любому мастер-образу и может быть добавлен при необходимости. 
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043c\u0430\u0441\u0442\u0435\u0440-\u043e\u0431\u0440\u0430\u0437\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438_\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f_\u043c\u0430\u0441\u0442\u0435\u0440-\u043e\u0431\u0440\u0430\u0437\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:22,&amp;quot;range&amp;quot;:&amp;quot;27242-28892&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit23&quot; id=&quot;уровень_1пользователи&quot;&gt;Уровень 1: Пользователи&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Верхним уровнем методологии дизайна является пользовательский уровень. На этом уровне определяются потребности различных групп пользователей и стратегии их реализации. Решения, принимаемые на этом этапе в конечном счете оказывают сильное влияние на функциональность &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0440\u043e\u0432\u0435\u043d\u044c 1: \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0440\u043e\u0432\u0435\u043d\u044c_1\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:23,&amp;quot;range&amp;quot;:&amp;quot;28893-29448&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit24&quot; id=&quot;выбор_пользовательского_устройства&quot;&gt;Выбор пользовательского устройства&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В качестве пользовательского устройтсва могут выступать:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Планшет
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Ноутбук
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Настольный ПК
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Тонкий клиент
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Смартфон
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
В любом случае - пользовательское устройство должно удовлетворять требованиям.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:24,&amp;quot;range&amp;quot;:&amp;quot;29449-29899&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit25&quot; id=&quot;владелец_конечного_устройства&quot;&gt;Владелец конечного устройства&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Обычно - пользовательские устройства принадлежат и управляются компанией. Альтенативный подход - &lt;strong&gt;BYOD&lt;/strong&gt;, когда пользователь подключается к корпоративным ресурсам с помощью личного устройства. Критерии допустимости &lt;strong&gt;BYOD&lt;/strong&gt; зависят от сценария использования:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Безопасность&lt;/strong&gt;. В случае обработки критичных данных личные устройства недопустимы. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Мобильность&lt;/strong&gt;. Если пользовательработает без доступа к сети, то при использовании личного устройства, скорее всего, ему будет недоступен сценарий &lt;strong&gt;local VM desktop&lt;/strong&gt;, предъявляющий определенные требования к аппаратным возможностям устройства.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Критичность отказа&lt;/strong&gt;. Если отказ критичен, то должно быть предусмотрено резервирование пользовательского устройства, что может быть непросто в случае &lt;strong&gt;BYOD&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Модель VDI&lt;/strong&gt; - При использовании &lt;strong&gt;local VDI&lt;/strong&gt; (&lt;strong&gt;streamed desktop&lt;/strong&gt; или &lt;strong&gt;local VM desktop&lt;/strong&gt;) предъявляются определенные требования к аппаратным возможностям устройства.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_byod_or_corporate.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043b\u0430\u0434\u0435\u043b\u0435\u0446 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043b\u0430\u0434\u0435\u043b\u0435\u0446_\u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:25,&amp;quot;range&amp;quot;:&amp;quot;29900-31674&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit26&quot; id=&quot;жизненный_цикл_конечных_устройств&quot;&gt;Жизненный цикл конечных устройств&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Современные устройства могут с успехом выходить за рамки типичного трехгодичного жизненного цикла и использоваться гораздо дольше в качестве конечных устройств при доступе к ресурсам VDI. Конечные устроства должны соотвествовать нескольким критериям:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Минимальные требования&lt;/strong&gt;. В общем случае для нормальной работы достаточно конфигурации - 1GHz, 1Gb RAM, 16Gb HDD.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Корпоративные цели&lt;/strong&gt;. Если приоритет - сокращение затрат, то расширение жизненного цикла оборудования - благо,  но если приоритет - удобство и сокращение энергопотребления, то нет.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Сценарий использования&lt;/strong&gt;. Если предполагается активно использовать локально исполняющиеся приложения, то оборудование должно соответствовать задачам.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0416\u0438\u0437\u043d\u0435\u043d\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0436\u0438\u0437\u043d\u0435\u043d\u043d\u044b\u0439_\u0446\u0438\u043a\u043b_\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0445_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:26,&amp;quot;range&amp;quot;:&amp;quot;31675-33026&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit27&quot; id=&quot;управление_мобильными_пользовательскими_устройствами&quot;&gt;Управление мобильными пользовательскими устройствами&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Вследствие того, что VDI позволяет получать доступ к корпоративным ресурсам с любых (в том числе мобильных) устройств, возникает потребность управления этими устройствами и контроля их состояния:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Удаленно уничтожать информацию на потеряных или украденых устройствах.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Соблюдать регламент паролей.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Устанавливать ограничения в соответствии с географическим положением устройств.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Упрощать конфигурацию &lt;strong&gt;Exchange ActiveSync&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Настраивать конфигурацию Wi-Fi.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Распространять сертификаты безопасности.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Также важно разграничивать уровни безопасности в зависимости от различных условий:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Доступ к опубликованным ресурсам со “взломанных” устройств (rooted Android &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; или jailbroken iOS).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Копирование/Вставка данных между опубликованными и локальными приложениями.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Доступ к опубликованным ресурсам с устройств незащищенных паролем.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Доступ к корпоративной почте небезопасными почтовыми клиентами.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Доступ к корпоративным сайтам с помощьюб мобильных браузеров или с помощью опубликованного настольного браузера.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;strong&gt;Citrix&lt;/strong&gt; предлагает решение для унификации управления пользовательскими устройствами &lt;strong&gt;Unified Endpoint Management (UEM)&lt;/strong&gt; для приложений или &lt;strong&gt;Mobile Device Management (MDM)&lt;/strong&gt; для корпоративных мобильных устройств или &lt;strong&gt;Mobile Application Management (MAM)&lt;/strong&gt; для личных мобильных устройств - &lt;strong&gt;Citrix XenMobile&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u043c\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u043c\u0438_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u043c\u0438_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:27,&amp;quot;range&amp;quot;:&amp;quot;33027-35452&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit28&quot; id=&quot;выбор_формфактора_конечных_устройств&quot;&gt;Выбор формфактора конечных устройств&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_endpoint_formfactor.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;strong&gt;V&lt;/strong&gt; - рекомендовано,  &lt;strong&gt;X&lt;/strong&gt; - не рекомендуется, &lt;strong&gt;o&lt;/strong&gt; - допустимо.
&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

В общем случае - конечное устройство должно соответствовать задачам. Плохой идеей может оказаться установка тупого тонкого клиента, если на рабочем месте нужно работать с мультимедией или большим количеством локальных периферийных устройств.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u0444\u043e\u0440\u043c\u0444\u0430\u043a\u0442\u043e\u0440\u0430 \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u0444\u043e\u0440\u043c\u0444\u0430\u043a\u0442\u043e\u0440\u0430_\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0445_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:28,&amp;quot;range&amp;quot;:&amp;quot;35453-36172&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit29&quot; id=&quot;выбор_citrix_receiver&quot;&gt;Выбор Citrix Receiver&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Citrix Receiver&lt;/strong&gt; - клиент для доступа к опубликованным ресурсам. &lt;br/&gt;

При установке &lt;strong&gt;Citrix Receiver&lt;/strong&gt; в рамках организации возможны различные варианты как в части функциональности, так и в части способа распространения и конфигурирования.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 Citrix Receiver&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_citrix_receiver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:29,&amp;quot;range&amp;quot;:&amp;quot;36173-36621&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit30&quot; id=&quot;распространение_citrix_receiver&quot;&gt;Распространение Citrix Receiver&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Как правило - лучшим вариантом является установка полной версии &lt;strong&gt;Citrix Receiver&lt;/strong&gt;, совместимой с клиентским устройством. Для случаев, когда установка невозможна существует версия &lt;strong&gt;HTML5 Receiver&lt;/strong&gt; (раньше его место занимал Java-клиент). &lt;strong&gt;HTML5 Receiver&lt;/strong&gt; не рекомендуется для масштабных внедрений из-за ограниченной функциональности и ограничений в современных браузерах.
Для распространения &lt;strong&gt;Citrix Receiver&lt;/strong&gt; могут использоваться следующие механизмы:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Store Front&lt;/strong&gt;. При наличии &lt;strong&gt;Store Front&lt;/strong&gt; можно включить опцию “Client Detection”, которая сможет автоматически определять наличие климента и при необходимости предлагать установку &lt;strong&gt;Citrix Receiver for Web&lt;/strong&gt;. Этот функционал совместим не со всеми браузерами и зависит от настроек &lt;strong&gt;ActiveX&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Корпоративный сайт&lt;/strong&gt;. Дистрибутив &lt;strong&gt;Citrix Receiver&lt;/strong&gt; может быть размещен для скачивания и установки на локальном корпоративном сайте.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Магазины приложений&lt;/strong&gt; различных ОС (Windows, Android, iOS и т.д).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Корпоративные системы распространения ПО&lt;/strong&gt; - &lt;strong&gt;Enterprise software deployment deployment (ESD)&lt;/strong&gt; или &lt;strong&gt;Mobile Application Management (MAM)&lt;/strong&gt; для корпоративных мобильных устройств.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Citrix Receiver&lt;/strong&gt; может быть встроен в предустанавливаемый корпоративный образ ОС.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Групповые политики AD&lt;/strong&gt;. В ситуациях, коргда отсутствуют специализированные &lt;strong&gt;Корпоративные системы распространения ПО&lt;/strong&gt; можно использовать функционал &lt;strong&gt;Групповых политик AD&lt;/strong&gt;. Простые скрипты для установки доступны в каждом &lt;strong&gt;*.iso&lt;/strong&gt; образе &lt;strong&gt;XenApp&lt;/strong&gt; или &lt;strong&gt;XenDesktop&lt;/strong&gt; - &lt;strong&gt;X:\Citrix Receiver and Plugins\Windows\Receiver\Startup_Logon_Scripts&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Установка вручную&lt;/strong&gt;. Просто скачать с сайта &lt;a href=&quot;http://receiver.citrix.com/&quot; class=&quot;urlextern&quot; title=&quot;http://receiver.citrix.com/&quot; rel=&quot;ugc nofollow&quot;&gt;http://receiver.citrix.com/&lt;/a&gt; и установить.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_receiver_deployment_options.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 Citrix Receiver&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435_citrix_receiver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:30,&amp;quot;range&amp;quot;:&amp;quot;36622-39482&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit31&quot; id=&quot;выбор_механизма_начальной_конфигурации_citrix_receiver&quot;&gt;Выбор механизма начальной конфигурации Citrix Receiver&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Citrix Receiver&lt;/strong&gt; перед началом работы должен быть сконфигурирован. Способ конфигурации может зависеть от типа пользовательского устройства, версии &lt;strong&gt;Citrix Receiver&lt;/strong&gt; и способа подключения (локальный или удаленный):
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Получение настроек при введении адреса e-mail&lt;/strong&gt;. ( &lt;strong&gt;Email based discovery&lt;/strong&gt;). Для того, чтобы этот способ работал необходимо настроить &lt;strong&gt;StoreFront&lt;/strong&gt; и соотвествующую &lt;strong&gt;SRV&lt;/strong&gt;-запись на &lt;strong&gt;&lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;&lt;/strong&gt;-сервере - &lt;a href=&quot;https://www.citrix.com/blogs/2013/04/01/configuring-email-based-account-discovery-for-citrix-receiver/&quot; class=&quot;urlextern&quot; title=&quot;https://www.citrix.com/blogs/2013/04/01/configuring-email-based-account-discovery-for-citrix-receiver/&quot; rel=&quot;ugc nofollow&quot;&gt;Configuring Email-Based Account Discovery for Citrix Receiver&lt;/a&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Групповая политика AD&lt;/strong&gt;. В центральное хранилище шаблонов групповых политик &lt;strong&gt;ADMX/ADML&lt;/strong&gt; импортируется шаблон, входящий в состав &lt;strong&gt;Citrix Receiver&lt;/strong&gt;, и настраивается политика. Способ применим при доступе к ресурсам из корпоративной сети.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Настройки распространяются с помощью StoreFront&lt;/strong&gt; (&lt;strong&gt;Provisioning File&lt;/strong&gt;). В случаях, когда развернут &lt;strong&gt;StoreFront&lt;/strong&gt;, пользователю можно предоставлять конфигурационный файл &lt;strong&gt;*.cr&lt;/strong&gt;, который можно просто открыть на пользовательском устройстве с помощью &lt;strong&gt;Citrix Receiver&lt;/strong&gt;. Файл доступен по сслыке &lt;strong&gt;Activate&lt;/strong&gt; в &lt;strong&gt;Web Interface&lt;/strong&gt;. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Конфигурирование вручную&lt;/strong&gt; - при запуске &lt;strong&gt;Citrix Receiver&lt;/strong&gt; вводится адрес сервера &lt;strong&gt;StoreFront&lt;/strong&gt; или &lt;strong&gt;Web Interface&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Citrix Studio&lt;/strong&gt;. &lt;strong&gt;Citrix Receiver&lt;/strong&gt;, установленный на виртуальных машинах, доступ к которым предоставляется через &lt;strong&gt;Citrix XenDesktop&lt;/strong&gt;, можно сконфигурировать в свойствах &lt;strong&gt;Delivery Group&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Citrix Receiver&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430_\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438_citrix_receiver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:31,&amp;quot;range&amp;quot;:&amp;quot;39483-41869&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit32&quot; id=&quot;обновления_citrix_receiver&quot;&gt;Обновления Citrix Receiver&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Обновления &lt;strong&gt;Citrix Receiver&lt;/strong&gt; могут выполнятьтяр тремя способами:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Автоматически (начиная с версии 4.8).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 В помощью корпоративной системы распространения ПО. (&lt;strong&gt;Enterprise software deployment deployment (ESD)&lt;/strong&gt;).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Вручную.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f Citrix Receiver&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f_citrix_receiver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:32,&amp;quot;range&amp;quot;:&amp;quot;41870-42268&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit33&quot; id=&quot;уровень_2доступ_к_ресурсам&quot;&gt;Уровень 2: Доступ к ресурсам&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Второй уровень методологии разработки решения - разграничение доступ к ресурсам. На этом этапе рассматриваются способы авторизации всех групп пользователей при доступе к ресурсам.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0440\u043e\u0432\u0435\u043d\u044c 2: \u0414\u043e\u0441\u0442\u0443\u043f \u043a \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0440\u043e\u0432\u0435\u043d\u044c_2\u0434\u043e\u0441\u0442\u0443\u043f_\u043a_\u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:33,&amp;quot;range&amp;quot;:&amp;quot;42269-42665&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit34&quot; id=&quot;аутентификация&quot;&gt;Аутентификация&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для авторизованного доступа к ресурсам пользователь должен быть аутентифицирован :)&lt;br/&gt;
Для начала следует определиться со стратегией аутентификации.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:34,&amp;quot;range&amp;quot;:&amp;quot;42666-42978&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit35&quot; id=&quot;выбор_провайдера_аутентификации&quot;&gt;Выбор провайдера аутентификации&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Обычно, для доступа к ресурсам пользователь предоставляет свои учетные данные Active Directory (логин и пароль). В большинстве случаев - инфраструктура AD уже существует на предприятии и этот этап внедрения сложностей не предстваляет.&lt;br/&gt;

Также, могут встречаться более экзотичные варианты - аутентификация пользователей с помощью внешний провайдеров - &lt;strong&gt;Azure Active Directory&lt;/strong&gt;, &lt;strong&gt;Google&lt;/strong&gt;, &lt;strong&gt;LinkedIn&lt;/strong&gt; и других. Внешние провайдеры аутентификации поддерживаются с помощью компонента &lt;strong&gt;Citrix Federated Authentication&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u0430_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:35,&amp;quot;range&amp;quot;:&amp;quot;42979-43915&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit36&quot; id=&quot;выбор_точки_аутентификации&quot;&gt;Выбор точки аутентификации&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В XenDesktop пользователь может аутентифицироваться в двух точках:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Citrix StoreFront&lt;/strong&gt; (ранее - &lt;strong&gt;Web Interface&lt;/strong&gt;) - явялется веб-интерфейсом для доступа к ресурсам и применяется внутри корпоративной сети.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; - инструмент для безопасного доступа к ресурсам из незащищенных сегментов сети Internet. Реализует различные политики безопасности при доступе к ресурсам и позволяет проверять состояние канала связи и клиентского устройства перед предоставлением доступа.  
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_preffered_authentication_point.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
Желательно, чтобы аутентификация удаленных клиентов всегда проходила на &lt;strong&gt;Netscaler Gateway&lt;/strong&gt;, однако в некоторых случаях, аутентификация удаленных клиентов может происходить и на &lt;strong&gt;StoreFront&lt;/strong&gt;. Например - если политики безопасности исключают подключение &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; к &lt;strong&gt;Active Directory&lt;/strong&gt;, то на &lt;strong&gt;Netscaler&lt;/strong&gt; может реализован виртуальный сервер, предоставляющий доступ к корпоративному &lt;strong&gt;StoreFront&lt;/strong&gt; (NetScaler SSL_BRIDGE).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u0442\u043e\u0447\u043a\u0438 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u0442\u043e\u0447\u043a\u0438_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:36,&amp;quot;range&amp;quot;:&amp;quot;43916-45597&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit37&quot; id=&quot;выбор_способа_политики_аутентификации&quot;&gt;Выбор способа (политики) аутентификации&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
После выбора точки аутентификации следует выбрать способ аутентификации. &lt;br/&gt;

&lt;strong&gt;StoreFront&lt;/strong&gt; поддерживает следующие типы:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Имя и пароль&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Сквозная доменная аутентификация&lt;/strong&gt; (&lt;strong&gt;Domain pass-through&lt;/strong&gt;). Пользователь логинится на своё устойство, и далее его учетные данные прозрачно используются для аутентификации на &lt;strong&gt;StoreFront&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Сквозная аутентифиакция на Netscaler Gateway&lt;/strong&gt; (&lt;strong&gt;NetScaler Gateway pass-through&lt;/strong&gt;). Пользователь вводит логин и пароль на &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; и далее его учетные данные прозрачно используются для аутентификации на &lt;strong&gt;StoreFront&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Смарт-карты&lt;/strong&gt;. Пользователь может аутентифициоваться с помощью смарт-карты на &lt;strong&gt;Citrix Receiver&lt;/strong&gt; или &lt;strong&gt;Netscaler Gateway&lt;/strong&gt;. Для использования этого типа аутентификации учетные записи пользователей должны быть сконфигурированы в домене &lt;strong&gt;AD&lt;/strong&gt; в котором находится сервер &lt;strong&gt;Storefront&lt;/strong&gt;, либо в домене, который имеет двусторонние доверительные отношения (two-way trust)с доменом, в котором находится сервер &lt;strong&gt;Storefront&lt;/strong&gt;. Конфигурации с односторонними доверительными отношениями не поддерживаются.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
  &lt;strong&gt;Анонимный доступ&lt;/strong&gt;. При анонимном доступе от пользователей не требуется предоставлять учетные данные, а временные локальные учетные записи автоматически создаются в момент подключения на сервере, к которому происходит подключение.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;strong&gt;NetScaler Gateway&lt;/strong&gt; поддерживает несколько методов аутентификации:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;LDAP&lt;/strong&gt; - используется для аутентификации в &lt;strong&gt;Active Directory&lt;/strong&gt; и других подобных службах каталога, поддерживающих протокол &lt;strong&gt;LDAP&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;RADIUS (token)&lt;/strong&gt; - протокол, работающий на базе UDP и обеспечивающий аутентификацию, авторизацию и учет пользователей. Шлюз &lt;strong&gt;Citrix&lt;/strong&gt; (&lt;strong&gt;Netscaler gateway&lt;/strong&gt; или старый &lt;strong&gt;Web Interface&lt;/strong&gt;), к которому подключается пользователь, направляет учетные данные серверу &lt;strong&gt;RADIUS&lt;/strong&gt;, который проверяет их локально или в службе каталога (&lt;strong&gt;AD&lt;/strong&gt;).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Клиентские сертификаты&lt;/strong&gt; - при подключении к &lt;strong&gt;Netscaler gateway&lt;/strong&gt; производится проверка аттрибутов сертификата клиента. Обычно клиентские сертификаты выпускаются в виде смарт-карт (или других аппаратных устройств) и считываются специальным считывателем.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_authentication_policy_guide.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u0441\u043f\u043e\u0441\u043e\u0431\u0430 (\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438) \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u0441\u043f\u043e\u0441\u043e\u0431\u0430_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:37,&amp;quot;range&amp;quot;:&amp;quot;45598-49310&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit38&quot; id=&quot;citrix_storefront&quot;&gt;Citrix StoreFront&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Citrix StoreFront&lt;/strong&gt; аутентифицирует пользователей для доступа к ресурсам &lt;strong&gt;XenApp&lt;/strong&gt; и &lt;strong&gt;XenDesktop&lt;/strong&gt;. &lt;strong&gt;StoreFront&lt;/strong&gt; предоставляет пользователю единый интерфейс для доступа к ресурсам &lt;strong&gt;XenApp&lt;/strong&gt; и &lt;strong&gt;XenDesktop&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Citrix StoreFront&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;citrix_storefront&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:38,&amp;quot;range&amp;quot;:&amp;quot;49311-49661&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit39&quot; id=&quot;обеспечение_высокой_доступности_storefront&quot;&gt;Обеспечение высокой доступности Storefront&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При недоступности сервера &lt;strong&gt;Citrix Storefront&lt;/strong&gt; пользователи не смогут получить доступ к ресурсам. Следовательно, для исключения этой точки отказа необходимо разворачивать не менее двух серверов &lt;strong&gt;Storefront&lt;/strong&gt;, а также балансировку нагрузки между ними. Тут доступны следующие варианты:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Аппаратные средства балансировки&lt;/strong&gt;. &lt;strong&gt;Citrix Netscaler&lt;/strong&gt; способен отслеживать состояние балансируемых серверов &lt;strong&gt;Storefront&lt;/strong&gt; и распределять нагрузку между работоспособными серверами. Рекомендовано к применению.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Балансировака на уровне &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;&lt;/strong&gt;. Простейший вариант балансировки. В этом случае никакой проверки работоспособности серверов &lt;strong&gt;Storefront&lt;/strong&gt; не производится и в случае выхода севрера из строя к нему все равно будут производиться попытки подключения. Не рекомендуется к применению.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Балансировка на уровне сетевых интерфейсов средствами Windows&lt;/strong&gt;. Сетевые средства балансировки &lt;strong&gt;Windows&lt;/strong&gt; позволяют производить простейшую проверку доступности сервера, но не могут оценить работоспособность сервисов &lt;strong&gt;Storefront&lt;/strong&gt;. Не рекомендуется к применению.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 Storefront&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435_\u0432\u044b\u0441\u043e\u043a\u043e\u0439_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438_storefront&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:39,&amp;quot;range&amp;quot;:&amp;quot;49662-51579&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit40&quot; id=&quot;обеспечение_высокой_доступности_контроллеров_ddc&quot;&gt;Обеспечение высокой доступности контроллеров DDC&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Citrix Storefront&lt;/strong&gt; получает список доступных пользователю ресурсов от контроллеров доставки - &lt;strong&gt;Desktop Delivery Controler (DDC)&lt;/strong&gt;. Для обеспечения отказоустойчивости необходимо разворачивать несколько &lt;strong&gt;DDC&lt;/strong&gt; и возможны два варианта балансировки &lt;strong&gt;XML&lt;/strong&gt;-сервисов, предоставляемых &lt;strong&gt;DDC&lt;/strong&gt;:  средствами &lt;strong&gt;Citrix NetScaler&lt;/strong&gt; в режиме &lt;strong&gt;active/active&lt;/strong&gt;, либо - встроенные в &lt;strong&gt;Storefront&lt;/strong&gt; средства обеспечения отказоустойчивости &lt;strong&gt;DDC&lt;/strong&gt;, которые могут работать как в режиме &lt;strong&gt;active/passive&lt;/strong&gt;, так и в режиме &lt;strong&gt;active/active&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 DDC&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435_\u0432\u044b\u0441\u043e\u043a\u043e\u0439_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438_\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432_ddc&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:40,&amp;quot;range&amp;quot;:&amp;quot;51580-52498&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit41&quot; id=&quot;точки_покдлючения_beacons&quot;&gt;Точки покдлючения (beacons)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Пользователь может подключаться из внутренней (локальной) сети непосредственно к &lt;strong&gt;Storefront&lt;/strong&gt; или из внешней сети через &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; и в зависимости от этого, ему может быть предоставлен различный набор ресурсов. При первичном подключении &lt;strong&gt;Citrix Receiver&lt;/strong&gt; получает список доступных точек подключения (beacons) в который входят имена внутреннего сайта &lt;strong&gt;Storefront&lt;/strong&gt; и внешних &lt;strong&gt;Citrix Netscaler Gateway&lt;/strong&gt;. &lt;br/&gt;

Во время работы &lt;strong&gt;Citrix Receiver&lt;/strong&gt; постоянно отслеживает состояние сетевого подключения и при его изменении (отключение, подключение, изменение дефолтного шлюза) сначала проверяет доступность локальной точки подключения &lt;strong&gt;Storefront&lt;/strong&gt; и если она недоступна - перебирает доступные адреса внешних точек подключения &lt;strong&gt;Citrix Netscaler Gateway&lt;/strong&gt;. Для обеспечения отказоустойчивости необходимо, чтобы было сконфигурировано как минимум две точки подключения из внешних сетей &lt;strong&gt;Citrix Netscaler Gateway&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u043e\u0447\u043a\u0438 \u043f\u043e\u043a\u0434\u043b\u044e\u0447\u0435\u043d\u0438\u044f (beacons)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u043e\u0447\u043a\u0438_\u043f\u043e\u043a\u0434\u043b\u044e\u0447\u0435\u043d\u0438\u044f_beacons&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:41,&amp;quot;range&amp;quot;:&amp;quot;52499-54085&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit42&quot; id=&quot;представление_списка_ресурсов&quot;&gt;Представление списка ресурсов&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
По-умолчанию пользователь выбирает (self-service) из списка ресурсов те, которыми он планирует пользоваться и они помещаются в главное окно &lt;strong&gt;Citrix Receiver&lt;/strong&gt;. Список ресурсов, выбранных пользователем хранится на группе серверов &lt;strong&gt;Storefront&lt;/strong&gt; для того, чтобы, независимо от того с какого устройства пользователь производит подключение, список его “избранных” приложений сохранялся. Также списки избранных ресурсов могут сихронизироваться между двумя магазинами (store) в пределах одной серверной группы или между двумя магазинами с одинаковыми именами находящимися в разных серверных группах. &lt;br/&gt;

Администратор может задать какие приложения должны всегда отображаться в окне &lt;strong&gt;Citrix Receiver&lt;/strong&gt;. Представление приложения по-умолчанию задается с помощью ключесого слова в строчке &lt;strong&gt;Description&lt;/strong&gt; в свойствах приложения.
&lt;/p&gt;
&lt;div class=&quot;table sectionedit43&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;thead&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 rightalign&quot;&gt;  Ключевое слово &lt;/th&gt;&lt;th class=&quot;col1&quot;&gt; Описание &lt;/th&gt;
	&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt; &lt;strong&gt;Auto&lt;/strong&gt;            &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; Ярлык приложения автоматическим появится в окне &lt;strong&gt;Citrix Receiver&lt;/strong&gt;. Пользователь может удалить приложение из окна.&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt; &lt;strong&gt;Mandatory&lt;/strong&gt;       &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; Начиная со &lt;strong&gt;Storefront 2.5&lt;/strong&gt; при использовании этого ключевого слова ярлык приложения автоматически появится в окне &lt;strong&gt;Citrix Receiver&lt;/strong&gt; и пользователь не сможет его удалить.&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt; &lt;strong&gt;Featured&lt;/strong&gt;        &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; Приложение будет рекомендовано пользователю через список &lt;strong&gt;Citrix Receiver Featured &lt;/strong&gt; &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt; &lt;strong&gt;Prefer&lt;/strong&gt;          &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; При использовании этого ключевого слова &lt;strong&gt;Citrix Receiver&lt;/strong&gt; будет искать локальное приложение по пути опубликованного приложения. Если локальное найдется - ярлык будет автоматически создан, но при запуске приложения из &lt;strong&gt;Citrix Receiver&lt;/strong&gt; будет запускаться локальное приложение. Если локальное приложение будет удалено (uninstall), то &lt;strong&gt;Citrix Receiver&lt;/strong&gt; удалит ярлык при первом обновлении приложений. &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row5&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt; TreatAsApp          &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; При использовании этого ключевого слова опубликованные рабочие столы (desktops) будут появляться на вкладке &lt;strong&gt;Applications&lt;/strong&gt;, а не на вкладке &lt;strong&gt;Desktops&lt;/strong&gt; в интерфейсе &lt;strong&gt;Receiver for Web&lt;/strong&gt;. &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row6&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt; Primary             &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; В многосайтовой инфраструктуре, если приложение опубликовано с одинаковым именем на нескольких площадках, то у пользователя будет отображаться только ярлык именно этого (основного) приложения. Если &lt;strong&gt;primary&lt;/strong&gt; приложение не доступно, то будет отбражаться приложение с доступной площадки. &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row7&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt; Secondary           &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; Используется аналогично слову &lt;strong&gt;Primary&lt;/strong&gt;, но для обозначения неосновного приложения. &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table2&amp;quot;,&amp;quot;secid&amp;quot;:43,&amp;quot;range&amp;quot;:&amp;quot;55589-58102&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0441\u043f\u0438\u0441\u043a\u0430_\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:42,&amp;quot;range&amp;quot;:&amp;quot;54086-58103&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit44&quot; id=&quot;группировка_ресурсов_-_aggregation_groups&quot;&gt;Группировка ресурсов - Aggregation Groups&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если в инфраструктуре &lt;strong&gt;Citrix&lt;/strong&gt; есть несколько ферм, то &lt;strong&gt;Storefront&lt;/strong&gt; объединит все доступные пользователю ресурсы в единый интерфейс. Однако, если на разных фермах есть приложения с одинаковыми названиями - это может привести пользователя в замешательство. &lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_user_expierence_without_aggregation.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
Группировка ресурсов(&lt;strong&gt;Storefront Aggregation Groups&lt;/strong&gt;) позволяет объединить приложения нескольких ферм в единый интерфейс для лучшего восприятия, напрмиер - исключив дублирование ярлыков одинаковых приложений. 
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_user_expierence_with_aggregation.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
При включении группировки ресурсов на &lt;strong&gt;Storefront&lt;/strong&gt; необходимо задать способ распределения пользователей между фермами:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Балансировка нагрузки (&lt;strong&gt;Load Balancing&lt;/strong&gt;) - Если большие фермы соотвествуют рекомендациям по количеству пользователей и предоставляют одинаковые ресурсы. В этом случае  &lt;strong&gt;Storefront&lt;/strong&gt; равномерно распределяет нагрузку по доступным фермам.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Обработка отказа (&lt;strong&gt;Failover&lt;/strong&gt;) - при недоступности основной (локальной) фермы пользователям предоставляются ресурсы резервной (удаленной).
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0413\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 - Aggregation Groups&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430_\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432_-_aggregation_groups&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:44,&amp;quot;range&amp;quot;:&amp;quot;58104-60059&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit45&quot; id=&quot;масштабируемость&quot;&gt;Масштабируемость&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Число пользователей, которое может обработать один сервер &lt;strong&gt;Storefront&lt;/strong&gt; зависит от аппаратных ресурсов сервера. При большом количестве пользователей Web-интерфейса возрастает потребление опреативной памяти (RAM). Минимальное рекомендованное количество памяти - 4Gb. 
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_storefront_scalability.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
тестироание покащзывает,что эффективность масштабирования заметно падает при увеличении числа &lt;strong&gt;Storefront&lt;/strong&gt; до 3-4, а максимальное рекомендуемое число серверов в группе - 5-6.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u044c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u044c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:45,&amp;quot;range&amp;quot;:&amp;quot;60060-60964&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit46&quot; id=&quot;netscaler_gateway&quot;&gt;NetScaler Gateway&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://docs.citrix.com/en-us/netscaler.html&quot; class=&quot;urlextern&quot; title=&quot;https://docs.citrix.com/en-us/netscaler.html&quot; rel=&quot;ugc nofollow&quot;&gt;https://docs.citrix.com/en-us/netscaler.html&lt;/a&gt; &lt;br/&gt;

При разработке решения, включающего &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; следует учитывать несколько особенностей, не возникающих при аутентификации на &lt;strong&gt;Storefront&lt;/strong&gt;:
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;NetScaler Gateway&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;netscaler_gateway&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:46,&amp;quot;range&amp;quot;:&amp;quot;60965-61294&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit47&quot; id=&quot;топология&quot;&gt;Топология&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Выбор сетевой топологии является важнейшим решением, принимаемым при планировании удаленного доступа к опубликованным ресурсам. Разработка решения для удаленного доступа должна проводиться совместно с подразделением, обеспечивающим информационную безопасность. Существует два основных варианта топологии, отличающихся обеспечиваемым уровнем безопасности:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;1-Arm&lt;/strong&gt;. Нормальный уровень безопасности. В этом случае &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; использует единственный сетевой интерфейс (один VLAN и одна IP-подсеть) как для внешнего, так и для внутреннего траффика.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_1-arm_netscaler_topology.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_1-arm_netscaler_topology.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_1-arm_netscaler_topology.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;2-Arm&lt;/strong&gt;. Высокий уровень безопасности. В этом случае &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; использует два или более сетевых интерфейса и соответвующие VLANы и IP-подсети для внутреннего и внешнего траффика. Таким образом удается полностью изолировать внутренние ресурсы сети и обеспечить полный контроль над траффиком.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_2-arm_netscaler_topology.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_2-arm_netscaler_topology.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_2-arm_netscaler_topology.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:47,&amp;quot;range&amp;quot;:&amp;quot;61295-63029&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit48&quot; id=&quot;высокая_доступность&quot;&gt;Высокая доступность&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При недоступности &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; удаленные пользователи не смогут получить доступ к опубликованным ресурсам. Для отказоустойчивости необходимо иметь как минимум два хоста &lt;strong&gt;NetScaler Gateway&lt;/strong&gt;.&lt;br/&gt;

Два хоста &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; могут работать в режиме кластера &lt;strong&gt;active/passive&lt;/strong&gt;. В таком режиме один основной хост принимает подключения (active), а второй резервный хост (passive) следит за состоянием основного хоста с помощью &lt;strong&gt;heartbeat&lt;/strong&gt;-сообщений. Если основной хост не отвечает на &lt;strong&gt;heartbeat&lt;/strong&gt;-сообщение, то резервный хост повторяет проверку через заданный интервал а, в случае неудачи, фиксирует отказ основного хоста и сам становится основным и принимает подключения. &lt;br/&gt;

Версии &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; 10.5 и более новые поддерживают кластер из большего числа хостов. В зависимости от версии &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; поддерживаются кластеризации в вариантах &lt;strong&gt;Spotted&lt;/strong&gt; и &lt;strong&gt;Stripped&lt;/strong&gt;. &lt;br/&gt;

В варианте &lt;strong&gt;Spotted&lt;/strong&gt; IP-адрес назначен единственной ноде в каждый момент времени и используется в кластерах &lt;strong&gt;active/passive&lt;/strong&gt;, а в варианте &lt;strong&gt;Stripped&lt;/strong&gt; IP-адрес назначается одновременно нескольким нодам и используется для балансировки нагрузки. &lt;br/&gt;

&lt;a href=&quot;http://docs.citrix.com/en-us/netscaler/11-1/clustering/cluster-features-supported.html&quot; class=&quot;urlextern&quot; title=&quot;http://docs.citrix.com/en-us/netscaler/11-1/clustering/cluster-features-supported.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.citrix.com/en-us/netscaler/11-1/clustering/cluster-features-supported.html&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0441\u043e\u043a\u0430\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0441\u043e\u043a\u0430\u044f_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:48,&amp;quot;range&amp;quot;:&amp;quot;63030-65065&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit49&quot; id=&quot;платформа_netscaler_gateway&quot;&gt;Платформа NetScaler Gateway&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для правильного выбора платформы &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; нужно правильно оценить предполагаемую нагрузку. Для оценки требуемой производительности используются две метрики:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Пропускная способность SSL&lt;/strong&gt; (&lt;strong&gt;SSL throughput &lt;/strong&gt;). С какой скорость &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; может генерировать SSL-траффик.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Количество SSL-транзакций в секунду&lt;/strong&gt; (&lt;strong&gt;SSL transactions per second (TPS)&lt;/strong&gt;). Эта величина сильно зависит от длинны ключа шифрования. Метрика существенно ограничивает число SSL-сессий, которые могут быть одновременно инициированы и не существенно влияет на число одновременно поддерживаемых сессий.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Таким образом, требуемая &lt;strong&gt;пропускная способность SSL&lt;/strong&gt; является основной метрикой, применяемой при выборе платформы &lt;strong&gt;Citrix Netscaler&lt;/strong&gt;. &lt;br/&gt;

Использование протокола SSL немного (примерно на 2%) увеличивает количество передаваемых данных. Таким образом, максимальная требуемая пропускная способность SSL будет равна максимальной загрузке внешнего канала фермы + 2%. &lt;br/&gt;

Используются три основных платформы &lt;strong&gt;NetScaler Gateway&lt;/strong&gt;:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;VPX&lt;/strong&gt; - виртуальная машина &lt;strong&gt;NetScaler Gateway&lt;/strong&gt;, которая функционально полностью идентична аппаратным решениям, но может работать на стандартных серверах. Подходит для обслуживания внедрений до 500 пользователей.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;MPX&lt;/strong&gt; - аппаратное решение &lt;strong&gt;NetScaler Gateway&lt;/strong&gt;, в котором применено аппаратное ускорение обработки SSL-траффика. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;SDX&lt;/strong&gt; - платформа для виртуализации &lt;strong&gt;NetScaler Gateway&lt;/strong&gt;, котрая позволяет в запустить несколько &lt;strong&gt;VPX&lt;/strong&gt; с аппаратной поддержкой шифрования SSL и большой пропускной способностью. Предназначено для крупных внедрений, нуждающихся в большом числе &lt;strong&gt;NetScaler Gateway&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Конкретные характеристики различных платформ можно найти тут: &lt;a href=&quot;https://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/netscaler-data-sheet.pdf&quot; class=&quot;urlextern&quot; title=&quot;https://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/netscaler-data-sheet.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/netscaler-data-sheet.pdf&lt;/a&gt;.&lt;br/&gt;

Следует учесть, что реальная пропускная способность SSL может существенно отличаться от заявленной, поскольку зависит от требований безопасности - длинны ключей шифрования и используемых алгоритмов. В даташитах указывается максимальная пропускная способность SSL, достижимая в идеальных с точки зрения производительности условиях. Например - при использовании шифрования по алгоритму &lt;strong&gt;RC4&lt;/strong&gt; с ключем длинной &lt;strong&gt;1024&lt;/strong&gt; бит, платформа &lt;strong&gt;VPX&lt;/strong&gt; может обеспечить работу более 500 подключений с использованием &lt;strong&gt;HDX&lt;/strong&gt;. Однако, если использовать алогритм &lt;strong&gt;3DES&lt;/strong&gt; и ключ длинной &lt;strong&gt;2048&lt;/strong&gt; бит, то количество одновременно поддерживаемых подключений упадет вдвое.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 NetScaler Gateway&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430_netscaler_gateway&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:49,&amp;quot;range&amp;quot;:&amp;quot;65066-69256&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit50&quot; id=&quot;политики_пользовательских_устройств_pre-authentication_policy_и_smart_access&quot;&gt;Политики пользовательских устройств (Pre-Authentication Policy и Smart Access)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если &lt;strong&gt;Netscaler&lt;/strong&gt; используется для аутентификации пользователей, то к ним могут применяться политики, которые проверяют соответствие пользовательского устройства корпоративным политикам с помощью &lt;strong&gt;Endpoint Analysis Scan (EPA Scan)&lt;/strong&gt; и ограничивают доступ к корпоративной среде при несоответствии устройства политикам. &lt;br/&gt;

Политики &lt;strong&gt;Endpoint Analysis Scan&lt;/strong&gt; могу проверять наличие и состояние антивируса, файервола, операционной системы и даже записей реестра. Эти политик могут либо полностью блокировать доступ к ресурсам при несоответствии, либо блокировать заданную функциональность &lt;strong&gt;XenDesktop&lt;/strong&gt; (например - буфер обмена, принтеры а также доступ к приложениям и десктопам и прочие). Например - если у пользователя нет антивируса,то политика может скрыть опеределенные приложения. &lt;br/&gt;

Приведенная ниже схема демонстрирует применение политик в зависимости от результатов проверок &lt;strong&gt;Endpoint Analysis Scan&lt;/strong&gt;:
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_smart_access_decision_logic.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_smart_access_decision_logic.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_smart_access_decision_logic.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 (Pre-Authentication Policy \u0438 Smart Access)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432_pre-authentication_policy_\u0438_smart_access&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:50,&amp;quot;range&amp;quot;:&amp;quot;69257-71047&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit51&quot; id=&quot;сеансовые_политики_session_policy&quot;&gt;Сеансовые политики (Session Policy)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для того, чтобы пользователи могли аутентифицироваться на &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; необходимо, чтобы для групп пользователей были созданы сеансовые политики (&lt;strong&gt;session policy&lt;/strong&gt;).&lt;br/&gt;

Политики сеансов могут применяться в зависимости от версии &lt;strong&gt;Citrix Receiver&lt;/strong&gt;. Для привязки политик сеансов, устройства обычно группируются по принципу мобильности - мобильные (&lt;strong&gt;iOS&lt;/strong&gt;, &lt;strong&gt;Android&lt;/strong&gt; и другие) и немобильные (&lt;strong&gt;Windows&lt;/strong&gt;, &lt;strong&gt;Mac&lt;/strong&gt; и &lt;strong&gt;Linux&lt;/strong&gt;). &lt;br/&gt;

Для идентификации типа устройства (и возможностей &lt;strong&gt;Citrix Receiver&lt;/strong&gt;) используются выражения, проверящие заголовки HTTP, предоставляемые клиентским устройством: &lt;a href=&quot;http://docs.citrix.com/en-us/netscaler-gateway/11-1/storefront-integration/ng-clg-session-policies-overview-con.html&quot; class=&quot;urlextern&quot; title=&quot;http://docs.citrix.com/en-us/netscaler-gateway/11-1/storefront-integration/ng-clg-session-policies-overview-con.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.citrix.com/en-us/netscaler-gateway/11-1/storefront-integration/ng-clg-session-policies-overview-con.html&lt;/a&gt; &lt;br/&gt;

Также, политики сеансов можно использовать для применения политик пользовательских устройств. То есть политики сеансов могут имитировать работу политик пользовательских устойств. Политики сеансов могу использоваться в качестве резервного сценария для пользовательских устройств, которые не удовлетворяют требованиям безопасности (например - предоставление доступа только для чтения для заданных приложений).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0435\u0430\u043d\u0441\u043e\u0432\u044b\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 (Session Policy)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0435\u0430\u043d\u0441\u043e\u0432\u044b\u0435_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438_session_policy&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:51,&amp;quot;range&amp;quot;:&amp;quot;71048-72978&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit52&quot; id=&quot;профиль_сеанса&quot;&gt;Профиль сеанса&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
К каждой сеансовой политике должен быть привязан сеансовый профиль. Сеансовый профиль опеределяет конкретные критерии, которые должны удовлетворяться для предоставления доступа. Существует два основных вида сеансовых профилей, которые опеределяют способ доступа к опубликованным ресурсам:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;SSLVPN&lt;/strong&gt; - Пользовательское устройство создает VPN-туннель и траффик перенаправляется во внутреннюю сеть компании. Пользователь получае доступ к корпоративным ресурсам (ресурсам &lt;strong&gt;Citrix XenDesktop&lt;/strong&gt;, файловым ресурсам, сайтам в корпоративной сети и т.д) так же как это происходило бы в корпоративной сети. &lt;br/&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Данный вариант расматривается как потенциально небезопасный, поскольку пользователь получает прямой доступ к корпоративной сети, минуя виртуальную инфраструктуру. Возможные риски включают в себя атаки на приложения и серверы, возможность распространения вирусов, троянов и другого нежелательного ПО.&lt;br/&gt;

Для предотвращения этих рисков существует опция ограничения туннелируемого траффика (&lt;strong&gt;split tunneling&lt;/strong&gt;), которая дает администратору возможность предоставить доступ только к требуемым маршрутам, ресурсам и портам.  Включение &lt;strong&gt;split tunneling&lt;/strong&gt; позволяет обеспечить требуемый уровне безопасности, в то же время отключение &lt;strong&gt;split tunneling&lt;/strong&gt; и направление пользовательского траффика во внутреннюю сеть позволяет производить мониторинг содержимого траффика - фильтровать web-ресурсы и использовать системы обнаружения проникновения (intrusion detection systems).
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_ssl_vpn.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_ssl_vpn.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_ssl_vpn.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;HDX Proxy&lt;/strong&gt; - с профилем &lt;strong&gt;HDX proxy&lt;/strong&gt; пользователь подключается только к опубликованным приложениям и рабочим столам &lt;strong&gt;Citrix XenDesktop&lt;/strong&gt;, и пользовательское устройство не имеет сетевого доступа ни к каким другим ресурсам внутренней сети. Доступ к корпоративным ресурсам осуществляется только в рамках сессии &lt;strong&gt;Citrix XenDesktop&lt;/strong&gt;. Решение об использовании этого профиля принимается для каждой группы пользователей, учитывая тип конечного устройства и вариант &lt;strong&gt;Citrix Receiver&lt;/strong&gt;. Этот сеансовый профиль является предпочтительным:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_hdx_proxy.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_hdx_proxy.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_hdx_proxy.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0444\u0438\u043b\u044c \u0441\u0435\u0430\u043d\u0441\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0444\u0438\u043b\u044c_\u0441\u0435\u0430\u043d\u0441\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:52,&amp;quot;range&amp;quot;:&amp;quot;72979-76683&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit53&quot; id=&quot;распределение_подключений_между_датацентрами&quot;&gt;Распределение подключений между датацентрами&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Довольно часто, для обеспечения отказоустойчивости критичные опубликованные приложения могут быть размещены в двух и более датацентрах, но в то же время некритичные приложения могут быть опубликованы только в одном датацентре. Таким образом, в конфигурации с несколькими активными &lt;strong&gt;Citrix Netscaler&lt;/strong&gt; может возникнуть ситуация, когда пользователь аутентифицировался на &lt;strong&gt;Netscaler&lt;/strong&gt;, находящемся в одном датацентре, а приложение опубликовано в другом. В таком случае  &lt;strong&gt;Citrix Storefront&lt;/strong&gt; способен определить расположение запрошенного ресурса и направить сессию HDX по назначению. Однако, результирующий путь может быть не оптимальным и доступ опубликованного приложения к данным может осуществляться по медленным WAN-каналам, а не быстрым &lt;abbr title=&quot;Local Area Network&quot;&gt;LAN&lt;/abbr&gt;. &lt;br/&gt;

Существуют динамические и статические методы для подключения сессии пользователя к ресурсам в его основном датацентре через &lt;strong&gt;Netscaler Gateway&lt;/strong&gt;. Выбор метода в каждом конкретном случае определяется технологическими возможностями - &lt;strong&gt;Global Server Load Balancing&lt;/strong&gt; (GSLB позволяет динамически изменять ответ на &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;-запросы клиентов, напрявляя их в нужный датацентр), правильной оценкой пропускной способностей каналов связи и возможностями &lt;strong&gt;QoS&lt;/strong&gt;. &lt;a href=&quot;http://support.citrix.com/proddocs/topic/netscaler-traffic-management-10-map/ns-gslb-config-proxmt-con.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/netscaler-traffic-management-10-map/ns-gslb-config-proxmt-con.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/netscaler-traffic-management-10-map/ns-gslb-config-proxmt-con.html&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;

&lt;h5 id=&quot;статические_методы&quot;&gt;Статические методы&lt;/h5&gt;
&lt;div class=&quot;level5&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Прямая привязка пользователей&lt;/strong&gt; (Direct) - &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; в каждом датацентре имеет собственное &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;-имя и каждый пользователь подключается к ресурсам используя &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;-имя &lt;strong&gt;Netscaler Gateway&lt;/strong&gt;, расположенного в его основном датацентре. Никакого динамического направления пользователей не происходит. Это самый простой метод, однако он не реализует никакой отказоустойчивости.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;

&lt;h5 id=&quot;динамические_методы&quot;&gt;Динамические методы&lt;/h5&gt;
&lt;div class=&quot;level5&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Intranet&lt;/strong&gt; - В большинстве случаев, при реализации динамической балансировки, пользователь подключается к &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; в ближайшем датацентре. Например - при использовании  &lt;strong&gt;GSLB dynamic proximity&lt;/strong&gt; - к &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; в датацентре с минимальным временем отклика по сети. После подключения, &lt;strong&gt;HDX&lt;/strong&gt;-сессия пользователя направляется к ресурсам через тот же &lt;strong&gt;Netscaler Gateway&lt;/strong&gt;, не зависимо от того, в каком  датацентре расположены ресурсы. В результате данные будут передаваться по корпоративным WAN-каналам, в которых можно использовать &lt;strong&gt;QoS&lt;/strong&gt;.  
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_intranet_connection.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_intranet_connection.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_intranet_connection.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Internet&lt;/strong&gt; - альтернативный вариант - пользователь аутентифицируется в ближайшем &lt;strong&gt;Netscaler Gateway&lt;/strong&gt;, но затем &lt;strong&gt;HDX&lt;/strong&gt;-сессия динамически передается на &lt;strong&gt;Netscaler Gateway&lt;/strong&gt;, который расположен в основном датацентре пользователя (в котором расположены ресурсы к которым подключается пользователь). Такой метод снижает нагрузку на корпоративные WAN-каналы и рекомендуется в случаях, когда надежность корпоративных WAN-каналов сравнима или ниже, чем надежность подключения пользователя к сети &lt;strong&gt;Internet&lt;/strong&gt;. 
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_internet_connection.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_internet_connection.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_internet_connection.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;br/&gt;

Возможно использоватнеи сочетания этих методов, например - для определенного географического региона используются динамические &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;, таким образом обеспечивается отказоустойчивости в пределах региона, без использования глобального &lt;strong&gt;GSLB&lt;/strong&gt;.  
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u043c\u0435\u0436\u0434\u0443 \u0434\u0430\u0442\u0430\u0446\u0435\u043d\u0442\u0440\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435_\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439_\u043c\u0435\u0436\u0434\u0443_\u0434\u0430\u0442\u0430\u0446\u0435\u043d\u0442\u0440\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:53,&amp;quot;range&amp;quot;:&amp;quot;76684-82146&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit54&quot; id=&quot;взаимодействие_между_сайтами&quot;&gt;Взаимодействие между сайтами&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Инфраструктура &lt;strong&gt;Citrix XenDesktop&lt;/strong&gt; и &lt;strong&gt;XenApp&lt;/strong&gt; может быть распределена по нескольким площадкам (sites). Для того, чтобы успешно реализовать многосайтовое решение нужно на этапе проектирования уделить внимание связям между сайтами и маршрутизации сессий.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0441\u0430\u0439\u0442\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435_\u043c\u0435\u0436\u0434\u0443_\u0441\u0430\u0439\u0442\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:54,&amp;quot;range&amp;quot;:&amp;quot;82147-82654&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit55&quot; id=&quot;оптимизация_маршрутизации_сессий_hdx&quot;&gt;Оптимизация маршрутизации сессий HDX&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В многосайтовой конфигурации для правильной маршрутизации сессий учитываются несколько критериев (например - минимальная задержка в сети). Эти алгоритмы не учитывают особенности ресурсов, к которым осуществляется доступ. &lt;br/&gt;

Неоптимизированная маршрутизация сессий может приводить к таким результатам:
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_optimized_and_not_optimized_hdx_session_routing.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_optimized_and_not_optimized_hdx_session_routing.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_optimized_and_not_optimized_hdx_session_routing.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
1. Пользователь авторизуется на ближайшем &lt;strong&gt;Citrix Netscaler Gateway&lt;/strong&gt; с минимальной сетевой задержкой. &lt;br/&gt;

2. &lt;strong&gt;Citrix Netscaler Gateway&lt;/strong&gt; проксирует HDX-сессию к ресурсам, находящимся в другом датацентре через корпоративные WAN-каналы. &lt;br/&gt;

&lt;br/&gt;

Оптимизированная маршрутизация выглядит так:
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_optimized_hdx_session_routing.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_optimized_hdx_session_routing.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_optimized_hdx_session_routing.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
1. Пользователь авторизуется на ближайшем &lt;strong&gt;Citrix Netscaler Gateway&lt;/strong&gt; с минимальной сетевой задержкой. &lt;br/&gt;

2. Ближайший &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; перенаправляет сессию в основной (preffered) датацентр пользователя, в котором расположен запрошенный ресурс.&lt;br/&gt;

3. &lt;strong&gt;Netscaler Gateway&lt;/strong&gt; основного (preffered) датацентра пользователя проксирует ICA-траффик к ресурсам, расположенным в основном датацентре по локальной сети &lt;abbr title=&quot;Local Area Network&quot;&gt;LAN&lt;/abbr&gt;.&lt;br/&gt;

Использование опции оптимизированной маршрутизации HDX в &lt;strong&gt;Citrix Storefront&lt;/strong&gt; позволяет разгрузить корпоративные WAN-каналы связи и перенести этот траффик в публичные каналы.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0435\u0441\u0441\u0438\u0439 HDX&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f_\u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438_\u0441\u0435\u0441\u0441\u0438\u0439_hdx&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:55,&amp;quot;range&amp;quot;:&amp;quot;82655-84933&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit56&quot; id=&quot;виртуальные_wan-каналы&quot;&gt;Виртуальные WAN-каналы&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При разработке решения следует обращать внимание на скорость и качество каналов связи между датацентром и офисами, в которых размещены пользователи. Если у компании есть несколько крупных офисов, то скорость и качество каналов связи будет оказывать существенное влияние на качество доступа к опубликованным в датацентре ресурсам.   &lt;br/&gt;

Существует два основных способа масштабирования каналов связи между офисами и датацентром:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Экстенсивный (Scale Up)&lt;/strong&gt; - при нехватке пропускной способности можно просто расширить пропускную способность канала.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Интенсивный (Scale Out)&lt;/strong&gt; - Можно увеличить число каналов связи между офисами и датацентром и объединить их в виртуальный канал WAN (&lt;strong&gt;virtual WAN&lt;/strong&gt;). В результате создается программно определяемый виртуальный канал, например - на базе технологии &lt;strong&gt;Netscaler SD-WAN&lt;/strong&gt; (&lt;strong&gt;software defined WAN&lt;/strong&gt;). В таком случае &lt;strong&gt;Netscaler&lt;/strong&gt; одновременно посылает пакеты по всем доступным каналам связи, на другом конце &lt;strong&gt;Netscaler&lt;/strong&gt; реконструирует траффик используя пакеты, пришедшие первыми, а остальные пакеты отбрасываются. В результате удается достичь максимальной производительности каналов связи, которая независит от состояния и загрузки каналов в течение дня. 
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_netscaler_software_defined_wan.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_netscaler_software_defined_wan.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_netscaler_software_defined_wan.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 WAN-\u043a\u0430\u043d\u0430\u043b\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435_wan-\u043a\u0430\u043d\u0430\u043b\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:56,&amp;quot;range&amp;quot;:&amp;quot;84934-87187&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit57&quot; id=&quot;уровень_3_ресурсы&quot;&gt;Уровень 3. Ресурсы&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Уровень ресурсов - третий уровень методологии разработкию &lt;br/&gt;

Общее впечатление пользователей от работы с продуктиами &lt;strong&gt;Citrix&lt;/strong&gt; определяется решениями, принятыми на уровне ресурсов.
Профили, печать, приложения и общий дизайн рабочего стола должны соответствовать требованиям, оперделенным на этапе оценки.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0440\u043e\u0432\u0435\u043d\u044c 3. \u0420\u0435\u0441\u0443\u0440\u0441\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0440\u043e\u0432\u0435\u043d\u044c_3_\u0440\u0435\u0441\u0443\u0440\u0441\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:57,&amp;quot;range&amp;quot;:&amp;quot;87188-87789&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit58&quot; id=&quot;впечатления_пользователя_от_работы_user_experience&quot;&gt;Впечатления пользователя от работы (User Experience)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Впечатления пользователя от работы - наиболее важный аспект при проектировании VDI. Пользователи ожидают от VDI ощущений на уровне настольного компьютера. &lt;br/&gt;

Кодеки,транспортные протоклы и средства самообслуживания влияют на общее впечатление. Низкое качество картинки, лагающие видеоролики или двухминутное ожидание при подключении к рабочему месту могут сильно ухудшить отношение пользователей к VDI.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043f\u0435\u0447\u0430\u0442\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043e\u0442 \u0440\u0430\u0431\u043e\u0442\u044b (User Experience)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043f\u0435\u0447\u0430\u0442\u043b\u0435\u043d\u0438\u044f_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f_\u043e\u0442_\u0440\u0430\u0431\u043e\u0442\u044b_user_experience&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:58,&amp;quot;range&amp;quot;:&amp;quot;87790-88621&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit59&quot; id=&quot;выбор_протокола_передачи_изображения_display_protocol&quot;&gt;Выбор протокола передачи изображения (Display Protocol)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Выбор протокола передачи изображения определяет качество статических изображений, видео и текста при работе с VDI, а также влияет на количество пользователей, которое сможет нормально работать на одном физическом сервере.&lt;br/&gt;

В распоряжении администратора есть следующие варианты:&lt;br/&gt;

&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Legacy&lt;/strong&gt; - оптимизированный для &lt;strong&gt;Windows 7&lt;/strong&gt; и &lt;strong&gt;Windows 2008R2&lt;/strong&gt; (&lt;strong&gt;GDI&lt;/strong&gt;/&lt;strong&gt;GDI+&lt;/strong&gt;).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Desktop Composition Redirection&lt;/strong&gt; - позволяет разгрузить менеджер окон (Windows manager) сервера, направляя на пользовтельское устройство только команды для формирования изображения, а не растровую картинку. Этот протокол поддерживается только VDA для Windows и в &lt;strong&gt;Citrix XenDesktop 7.15 LTSR&lt;/strong&gt; уже считается устаревшим.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Framehawk&lt;/strong&gt; - протокол, использующий UDP для передачи данных и обеспечивающий высокую скорость обновления изображения (refresh rate) в условиях нестабильных каналов связи с высокими задержками и высоким уровнем потерь пакетов, компенсируя наличие этих недостатков более высокими требованиями к пропускной способности канала связи. Эти условия характерны для широкополосных и мобильных каналов связи.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;H.264&lt;/strong&gt; - Эта аббревиатура часто используется для обозначения видеокодека, которы обеспечивает высокое качечтво картинки при невысоком битрейте. Этот протокол потребляет много процессорного времени сервера и снижает максимальное количество пользователей, работающих на одном физическом сервере, однако именно он рекомендуется для применения в случаях, когда пользователь работает с мультимедийными приложениями.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
  &lt;strong&gt;ThinWire&lt;/strong&gt; - протокол основанный на ранних патентах &lt;strong&gt;Citrix&lt;/strong&gt;, который позволяет передавать картинку при минимальной пропускной способности канала связи. Использование этого протокола в большинстве случаев обеспечивает приемлемое качество картинки при минимальных требованиях к ресурсам сервера. Существует две разновидности &lt;strong&gt;ThinWire&lt;/strong&gt;:
&lt;/div&gt;&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Legacy&lt;/strong&gt; - оптимизированный для &lt;strong&gt;Windows 7&lt;/strong&gt; и &lt;strong&gt;Windows 2008R2&lt;/strong&gt; (&lt;strong&gt;GDI&lt;/strong&gt;/&lt;strong&gt;GDI+&lt;/strong&gt;).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;ThinWire+&lt;/strong&gt; - оптимизированный для &lt;strong&gt;Desktop Windows Manager (DWM)&lt;/strong&gt;, входящего в состав &lt;strong&gt;Winodows 8&lt;/strong&gt;, &lt;strong&gt;Windows 10&lt;/strong&gt;, &lt;strong&gt;Windows 2012&lt;/strong&gt; и &lt;strong&gt;Windows 2016&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Selective H.264 (Adaptive Display)&lt;/strong&gt; - использует несколько кодеков (&lt;strong&gt;H.264&lt;/strong&gt; и &lt;strong&gt;ThinWire+&lt;/strong&gt;) для разных участков экрана. Возможны три опции:
&lt;/div&gt;&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Не использовать &lt;strong&gt;Adaptive Display&lt;/strong&gt; - используется только &lt;strong&gt;ThinWire+&lt;/strong&gt;. Лучший вариант для пользователей приложений с преимущественно статичной картинкой.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Для всего экрана целиком (&lt;strong&gt;For entire screen&lt;/strong&gt;) - Используется только протокол &lt;strong&gt;H.264&lt;/strong&gt;. Рекомендуется для мультимедийных и 3D приложений, особенно на каналах связи с низкой пропускной способностью.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Для активно меняющихся участков экрана (&lt;strong&gt;For actively changing regions&lt;/strong&gt;) - Для обработки активно меняющихся участков используется &lt;strong&gt;H.264&lt;/strong&gt;, а для статичных участков - &lt;strong&gt;ThinWire+&lt;/strong&gt;. Оптимальный вариант для любых приложений.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Выбор правильного кодека (протокола) не только влияет на ощещения пользователя от работы, но  влияет и на максимальное количество пользователей, работающих на одном физическом сервере.
&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_codec_single_server_scalability.jpeg&quot; class=&quot;media&quot; title=&quot;citrix:citrix_consulting_methodology_codec_single_server_scalability.jpeg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_codec_single_server_scalability.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f (Display Protocol)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430_\u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438_\u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f_display_protocol&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:59,&amp;quot;range&amp;quot;:&amp;quot;88622-93919&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit60&quot; id=&quot;выбор_сетевого_транспортного_протокола&quot;&gt;Выбор сетевого транспортного протокола&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Трафик HDX может передаваться с помощью одного из трех сетевых протоколов транспортного уровня:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;TCP&lt;/strong&gt; - Протокол является индустриальным стандартом. Применяется в локальных сетях и каналях связи с невысокими задержками. При увеличении дистанции и задержек становится неэффективным из-за высокого числа повторных передач.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;EDT( Enlightened Data Transport)&lt;/strong&gt; - Проприетарный протокол &lt;strong&gt;Citrix&lt;/strong&gt;, основанный на UDP. Подходит для каналов связи с высоким уровнем потерь и высокими задержками. Обеспечивает приемлемую скорость работы без существенной нагрузки на сервер, при некотором увеличении требований к пропускной способности канала связи.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Адаптивный протокол (&lt;strong&gt;Adaptive Transport&lt;/strong&gt;) - протокол сочетающий &lt;strong&gt;TCP&lt;/strong&gt; и &lt;strong&gt;EDT&lt;/strong&gt;. Если возможно используется &lt;strong&gt;EDT&lt;/strong&gt;, а если использование &lt;strong&gt;EDT&lt;/strong&gt; невозможно - используется &lt;strong&gt;TCP&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
В большинстве случаев рекомендуется использовать адаптивный протокол (&lt;strong&gt;Adaptive Transport&lt;/strong&gt;). 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e_\u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u043e\u0433\u043e_\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:60,&amp;quot;range&amp;quot;:&amp;quot;93920-95595&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit61&quot; id=&quot;выбор_оптимизации_входа_logon_optimization&quot;&gt;Выбор оптимизации входа (Logon Optimization)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При каждом подключении пользователя (если это не переподключение - reconnection) должен завершиться процесс входа (logon process), который включает в себя инициализацию сессии, загрузку профиля пользователя, применение политик, подключение сетевых дисков и принтеров, выполнение логон-скриптов и инициализацию рабочего окружения. Каждый из этих элементов занимет время и удлинняет процесс входа. 
 &lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_logon_process_script_duration.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;strong&gt;Citrix Workspace Environment Management&lt;/strong&gt; позволяет существенно оптимизировать процесс входа и ускорить его. При иcпользовании &lt;strong&gt;WEM&lt;/strong&gt; во время входа не мапятся диски и принтеры, не выпоняются логон-скрипты и не загружается перемещаемый профиль. Все эти действия производятся в многопоточном фоновом режиме после инициализации сессии и рабочего стола. Таким образом, пользователь получает доступ к своему рабочему месту значительно быстрее. &lt;br/&gt;

В большинстве случаев оптимизацию входа следует включать по-умолчанию.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0445\u043e\u0434\u0430 (Logon Optimization)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438_\u0432\u0445\u043e\u0434\u0430_logon_optimization&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:61,&amp;quot;range&amp;quot;:&amp;quot;95596-97376&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit62&quot; id=&quot;средства_самообслуживания_пользователей&quot;&gt;Средства самообслуживания пользователей&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Средства самообслуживания позволяют пользователям изменять параметры рабочего окружения и самостоятельно решать возникающие проблемы. Например - в большинстве организаций политка паролей предусматривает периодическую смену паролей. Если у пользователя есть несколько устройств, на которых пароли сохранены, то обновить пароли придется на каждом устройстве. В противном случае - очень вероятно, что при смене пароля учетка заблокируется, потому что каждое устройство попытается залогиниться со старым паролем.  &lt;br/&gt;

&lt;strong&gt;StoreFront&lt;/strong&gt; позволяет облегчить работу администратора предоставляя следующие функции:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Разблокировка учетной записи (&lt;strong&gt;Account Unlock&lt;/strong&gt;). Если пользователь знает ответ на секретный вопрос - он сможет самостоятельно разблокировать свою учетную запись через интерфейс &lt;strong&gt;StoreFront&lt;/strong&gt;/
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Сброс пароля (&lt;strong&gt;Password Reset&lt;/strong&gt;). Если пользователь знает ответ на секретный вопрос - он сможет самостоятельно сбросить забытый пароль.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Архетектура подсистемы самообслуживания пользователей (&lt;strong&gt;self-service password reset&lt;/strong&gt; - &lt;strong&gt;SSPR&lt;/strong&gt;) включает в себя: &lt;strong&gt;SSPR Service&lt;/strong&gt;, &lt;strong&gt;Central Store&lt;/strong&gt; (хранилище ответов на контрольные вопросы) и пару учетных записей:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Data Proxy Account&lt;/strong&gt; - учетная запись, используемая для доступа к &lt;strong&gt;Central Store&lt;/strong&gt;, в котором хранятся зашифрованные ответы на контрольные вопросы.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Self Service Account &lt;/strong&gt; - учетная запись в AD, которая имеет права на сброс паролей и разблокировку учетных записей пользователей.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_sspr_architecture.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
Кроме того, сервис &lt;strong&gt;SSPR&lt;/strong&gt; требует составления секретных вопросов. Лучше всего, если будут созданы группы вопросов группы вопросов на разные темы. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0441\u0430\u043c\u043e\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430_\u0441\u0430\u043c\u043e\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:62,&amp;quot;range&amp;quot;:&amp;quot;97377-100286&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit63&quot; id=&quot;пользовательские_профили&quot;&gt;Пользовательские профили&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Пользовательский профиль играет важнейшую роль. Даже если вам удалось идеально настроить инфраструктуру, все впечатление от использования &lt;strong&gt;VDI&lt;/strong&gt; может быть испорчено очень долгим входом из-за некорректно настроенного профиля. &lt;br/&gt;

Тип применяемого профиля пользователя должен соотвествовать задачам определенным на этапе оценки.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0435_\u043f\u0440\u043e\u0444\u0438\u043b\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:63,&amp;quot;range&amp;quot;:&amp;quot;100287-100947&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit64&quot; id=&quot;тип_профиля&quot;&gt;Тип профиля&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Локальный профиль (&lt;strong&gt;Local Profile&lt;/strong&gt;) - локальные профили создаются на базе дефолтногопрофиля и хранятся непосредственно на сервере или виртуальной машине, к которой подключается пользователь. Таким образом, если пользователь подключается к нескольким машинам, то на каждой будет создан локальный профиль. Изменения, произведенные пользователем сохраняются, однако доступны только на машине на которой были произведены. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Перемещаемый профиль (&lt;strong&gt;Roaming Profile&lt;/strong&gt;) - перемещаемые профили хранятся на сетевом ресурсе. Информация, хранящаяся в перемещаемом профиле доступна пользователю при работе на нескольких машинах. Для настройки перемещаемого профиля администратору необходимо прописать путь к профилю в настройках пользовательской учетной записи. При первом входе пользователя его профиль создается на базе дефолтного профиля. При выходе пользователя из системы содержимое папки профиля копируется на заданный сетевой ресурс. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Неизменяемые профили (&lt;strong&gt;Mandatory Profiles&lt;/strong&gt;) - неизменяемые профили обычно хранятся централизованно на сетевом ресурсе. При выходе пользователя из системы изменения в профиле не сохраняются. Сделать из обычного профиля неизменяемый можно просто переименовав файл профиля &lt;strong&gt;NTUSER.DAT&lt;/strong&gt; в &lt;strong&gt;NTUSER.MAN&lt;/strong&gt;. Также неизменяемые профили можно конфигурировать с помощью групповых политик или &lt;strong&gt;Citrix Profile Management&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Гибридные профили (&lt;strong&gt;Hybrid Profiles&lt;/strong&gt;) - в рамках гибридного профиля объединяются “ядро” профиля на базе дефолтного (или кастомизированного) профиля и настройки реестра и файлы, подключаемые при логоне. Этот метод позволяет администраторам контролировать то, какие изменения сохранятся в профиле, а какие будут оставаться неизменными. Таким образом, размер профиля будет оставаться в пределах разумного. Кроме того, гибридные профили позволяют использовать функцию &lt;strong&gt;last writes wins&lt;/strong&gt;, которая отслеживает все записи в профиль из нескольких сеансов и позволяет избежать коллизий. Также в профиль записываются только изменения, что позволяет сократить время выхода из системы. Хорошим примером системы управления гибридными профилями является &lt;strong&gt;Citrix Profile Management&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
В таблице сравниваются возможности различных профилей:
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_profile_type_capablity_comparison.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
Для того, чтобы правильно выбрать тип профиля для каждой группы важно понять их требования к персонализации в рамках выбранной модели VDI. &lt;br/&gt;

В таблице ниже приведены рекомендации по выбору типа профиля в зависимости от типа ресурсов VDI:
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_profile_type_selection_.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0438\u043f \u043f\u0440\u043e\u0444\u0438\u043b\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0438\u043f_\u043f\u0440\u043e\u0444\u0438\u043b\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:64,&amp;quot;range&amp;quot;:&amp;quot;100948-105463&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit65&quot; id=&quot;перенаправление_папок&quot;&gt;Перенаправление папок&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Перенаправаление папок может дополнить любой из типов профилей. Перенаправление папок это хорошее решение, которое позволяет подключать выбранные папки как сетевые ресурсы и тем самым существенно уменьшает размеры пользовательского профиля. Однако, следует избегать перенаправления папок в которые постоянно производится интенсивная запись или чтение (например - AppData), потому что это может приводить к замедлению работы приложений и неоправданной нагрузки на сервер. При планировании перенаправления папок важно исследовать активность приложений при чтении/записи данных во избежание проблем. Например - &lt;strong&gt;Microsoft Outlook&lt;/strong&gt; постоянно выполняет чтение подписи пользователя из профиля при создани сообщений. &lt;br/&gt;

В таблице приведены рекомендации по перенаправлению папок:
&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/citrix_consulting_methodology_folder_redirection_matrix.jpeg&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043f\u043e\u043a&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043f\u0430\u043f\u043e\u043a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:65,&amp;quot;range&amp;quot;:&amp;quot;105464-107006&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit66&quot; id=&quot;исключение_папок_из_профиля&quot;&gt;Исключение папок из профиля&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Некоторые папки нужно исключать из профилей пользователей для уменьшения размеров профилей. По умолчанию, Windows не хранит в перемещаемых и гибридных профилях папки &lt;strong&gt;AppData\Local&lt;/strong&gt; и &lt;strong&gt;AppData\LocalLow&lt;/strong&gt;, в том числе  &lt;strong&gt;History&lt;/strong&gt;, &lt;strong&gt;Temp&lt;/strong&gt; и &lt;strong&gt;Temporary Internet Files&lt;/strong&gt;. Кроме того, следует исключать и другие папки, например &lt;strong&gt;Downloads&lt;/strong&gt; и прочие. Все перенаправляемые папки нужно исключать из перемещаемых и гибридных профилей.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u043f\u043e\u043a \u0438\u0437 \u043f\u0440\u043e\u0444\u0438\u043b\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043f\u0430\u043f\u043e\u043a_\u0438\u0437_\u043f\u0440\u043e\u0444\u0438\u043b\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:66,&amp;quot;range&amp;quot;:&amp;quot;107007-107769&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit67&quot; id=&quot;кеширование_профиля&quot;&gt;Кеширование профиля&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Кешировани перемещаемого или гибридного профиля на локальном диске может существенно снизить время входа и нагрузку на сеть. При использовании кеширования на сетевой ресурс сохраняются только изменения в профиле. Недостатком включения кеширования профилей является существенное повышение требований к дисковой подсистеме и объему незанятого места на диске. &lt;br/&gt;

В некоторых вариантах внедрения VDI, при завершении работы пользователя состояние виртуальной машины приводится в исходное состояние. В такой конфигурации удаление локально кешированных профилей - это бессысленная трата ресурсов. НЕ рекомендуется удалять локально кешированные профили в следующих конфигурациях:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Пул рабочих столов (Hosted Pooled Desktops)&lt;/strong&gt; (можно не удалять, если виртуальная машина принудительно перезагружается при выходе пользователя).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Персональный рабочий стол (Hosted Personal Desktops)&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Локальная виртуальная машина (Local VM Desktop)&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Удаленный доступ к рабочему месту (Remote PC Access)&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Для ускорения завершения сеанса пользователя существует опция политик &lt;strong&gt;Citrix - “Delay before deleting cached profiles”&lt;/strong&gt;. Включение этой опции позволяет завершить сеанс, а также дать возможность завершиться процессам, работающим с файлами профиля, отложив удаление локально кешированного профиля на заданное время.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043f\u0440\u043e\u0444\u0438\u043b\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:67,&amp;quot;range&amp;quot;:&amp;quot;107770-110114&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit68&quot; id=&quot;размещение_профилей_profile_path&quot;&gt;Размещение профилей (Profile Path)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Выбор сетевого ресурса для размещения профилей - важный этап. В общем случае - рекомендуется размещать профили на высокопроизводительных NAS или файловых серверах. &lt;br/&gt;

При выборе сетевого ресурса важно учитывать четыре момента:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Производительность (Performance)&lt;/strong&gt; - В крупных инфраструктурах файловый сервер будет испытывать пиковые нагрузки при массовом подключении и отключении пользователей и скорее всего для нормальной работы потребуется создание кластера файловых серверов для балансировки нагрузки. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Физическое расположение (Location)&lt;/strong&gt; - Доступ к профилям осуществляется по протоколу &lt;strong&gt;SMB&lt;/strong&gt;, для которого очень критична величина задержки в локальной сети. Кроме того, пропускная способность WAN-каналов обычно ограничена, что может вызывать существенные задержки в процессе доступа к файлам профиля. Таким образом - файловый сервер должен быть размещен поблизости от серверов приложений и рабочих столов.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Операционные системы (Operating system platforms)&lt;/strong&gt; - профили, созданные в разных версиях ОС &lt;strong&gt;Windows&lt;/strong&gt;(различные поколения и разрядность), как правило не совместимы между собой. Таким образом, для ресурсов с различными ОС следует предусмотреть отдельные папки профилей.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Индексирование (Index capabilities)&lt;/strong&gt; - Для того, чтобы пользоваться преимуществами &lt;strong&gt;Windows Search&lt;/strong&gt; профили следует размещать на файловых серверах Windows с поддержкой индексирования.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Путь к перемещаемому профилю можно задать двумя способами:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;User object&lt;/strong&gt; - с помощью соответствующего поля в параметрах свойств учетной записи пользователя. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Computer GPO variables&lt;/strong&gt; - с помощью групповой политики компьютера к которому производится подключение. В этому случае можно разным группам компьютеров (с разными версиями ОС) назначить различные пути к профилям. Для балансировки нагрузки на файловые серверы нужно учитывать, что объект политики, которая настраивает &lt;strong&gt;Citrix Profile Manager&lt;/strong&gt;, привязана к &lt;strong&gt;OU&lt;/strong&gt; в &lt;strong&gt;AD&lt;/strong&gt;, соответственно, для балансировки достаточно, чтобы компьютеры к которым подключаются пользователи находились в разных &lt;strong&gt;OU&lt;/strong&gt;. Также логично выделять на каждую &lt;strong&gt;Delivery Group&lt;/strong&gt; собственный файловый сервер.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Примечание: Microsoft не поддерживает связку &lt;strong&gt;DFS-N&lt;/strong&gt; + &lt;strong&gt;DFS-R&lt;/strong&gt; для хранения активно используемых профилей. Дополнительную информацию можно найти в статьях:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;a href=&quot;http://support.microsoft.com/kb/2533009&quot; class=&quot;urlextern&quot; title=&quot;http://support.microsoft.com/kb/2533009&quot; rel=&quot;ugc nofollow&quot;&gt; Information about Microsoft support policy for a DFS-R and DFS-N deployment scenario&lt;/a&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;a href=&quot;http://blogs.technet.com/b/askds/archive/2010/09/01/microsoft-s-support-statement-around-replicated-user-profile-data.aspx&quot; class=&quot;urlextern&quot; title=&quot;http://blogs.technet.com/b/askds/archive/2010/09/01/microsoft-s-support-statement-around-replicated-user-profile-data.aspx&quot; rel=&quot;ugc nofollow&quot;&gt; Microsoft’s Support Statement Around Replicated User Profile Data&lt;/a&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
При использовании &lt;strong&gt;Citrix Profile Manager&lt;/strong&gt; возможно использование третьего способа указания пути к профилям:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Аттрибуты и переменные объекта пользователя (User object attributes and variables)&lt;/strong&gt; - &lt;strong&gt;Citrix Profile Manager&lt;/strong&gt; позволяет сконфигурировать путь к профилю в объекте &lt;strong&gt;GPO&lt;/strong&gt;, используя аттрибуты объекта пользователя в &lt;strong&gt;AD&lt;/strong&gt;. Для этого нужно:
&lt;/div&gt;&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Создать &lt;strong&gt;&lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;&lt;/strong&gt;-алиас (например - &lt;strong&gt;fileserver1&lt;/strong&gt;), который ссылается на реальный файловый сервер.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Занести имя &lt;strong&gt;&lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;&lt;/strong&gt;-алиаса в &lt;strong&gt;LDAP&lt;/strong&gt;-аттрибут, который не имеет значения (например - I или UID).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Сконфигурировать &lt;strong&gt;Citrix Profile Manager&lt;/strong&gt; с помощью объекта &lt;strong&gt;GPO&lt;/strong&gt;, а в пути к профилям указать ссылку на этот аттрибут. Например, если имя сервера прописано в аттрибуте UID, то путь в настройках &lt;strong&gt;GPO&lt;/strong&gt; будет выглядеть так: &lt;strong&gt;\\#UID#\profiles\&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Кроме того, &lt;strong&gt;Citrix Profile Manager&lt;/strong&gt; предоставляет доступ к переменным, значения которых соответствуют параметрам системы. Таким образом можно динамически строить путь к нужному профилю в зависимости от того на какую систему заходит пользователь. Доступны такие переменные:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;!CTX_PROFILEVER!&lt;/strong&gt; - содержит версию профиля - &lt;strong&gt;v1&lt;/strong&gt; или &lt;strong&gt;v2&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;!CTX_OSBITNESS!&lt;/strong&gt; - содержит битность ОС -  &lt;strong&gt;x86&lt;/strong&gt; или &lt;strong&gt;x64&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;!CTX_OSNAME!&lt;/strong&gt; - содержит краткое наименование ОС, напрмиер - &lt;strong&gt;Win7&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
таким образом, сочетая эти приемы можно добиться формирования полностью динамического пути к профилю, который позволит балансировать нагрузку между файловыми серверами и иметь для каждой версии &lt;strong&gt;ОС&lt;/strong&gt; собственный путь к профилю:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;\\#UID#\profiles$\%USERNAME%.%USERDOMAIN%\!CTX_OSNAME!!CTX_OSBITNESS!&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439 (Profile Path)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u0435_\u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439_profile_path&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:68,&amp;quot;range&amp;quot;:&amp;quot;110115-117114&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit69&quot; id=&quot;profile_streaming&quot;&gt;Profile Streaming&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Функция &lt;strong&gt;Profile Streaming&lt;/strong&gt; доступна при использовании &lt;strong&gt;Citrix Profile Manager&lt;/strong&gt; и позволяет значительно уменьшить время входа пользователя на компьютер. При использовании &lt;strong&gt;Profile Streaming&lt;/strong&gt; система получает сообщение об окончании загрузки профиля сразу после входа пользователя, а файлы копируются на компьютер по мере необходимости (при доступе к ним).&lt;br/&gt;

&lt;strong&gt;Citrix&lt;/strong&gt; рекомендует использовать &lt;strong&gt;Profile Streaming&lt;/strong&gt; во всех сценариях развертывания. Если необходимо всегда иметь локальный кеш профиля (для увеличения быстродействия), то следует включать опцию &lt;strong&gt;Always Cache&lt;/strong&gt; и устанавливать размер 0. В этом случае профиль пользователя будет скопирован на компьютер в фоновом режиме и система сможет пользоваться кешированной копией. Это может быть полезно в случае, если приложение пытается получить данные из папки &lt;strong&gt;AppData&lt;/strong&gt; раньше, чем они были скопированы. Включение &lt;strong&gt;Always Cache&lt;/strong&gt; позволяет увеличить быстродействие в случае когда папка &lt;strong&gt;AppData&lt;/strong&gt; не перенаправлена (not redirected).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Profile Streaming&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;profile_streaming&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:69,&amp;quot;range&amp;quot;:&amp;quot;117115-118835&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit70&quot; id=&quot;active_write_back&quot;&gt;Active Write Back&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Функция &lt;strong&gt;Profile Streaming&lt;/strong&gt; доступна при использовании &lt;strong&gt;Citrix Profile Manager&lt;/strong&gt;. Она следит за открытыми файлами и при закрытии файла копирует его на  сетевой ресурс в фоновом режиме. Эта функция может быть очень полезна в сценариях, когда пользователь одновременно работает на нескольких рабочих столах. Однако, копируются только файлы, но не записи реестра.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Active Write Back&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;active_write_back&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:70,&amp;quot;range&amp;quot;:&amp;quot;118836-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>мультизагрузочная_флешка_с_помощью_grub</title>
            <link>https://wiki.autosys.tk/linux_faq/%D0%BC%D1%83%D0%BB%D1%8C%D1%82%D0%B8%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BE%D1%87%D0%BD%D0%B0%D1%8F_%D1%84%D0%BB%D0%B5%D1%88%D0%BA%D0%B0_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_grub</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;мультизагрузочная_linux-флешка&quot;&gt;Мультизагрузочная Linux-флешка&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Тут описана процедура создания флешки для загрузки множества &lt;strong&gt;iso&lt;/strong&gt;-образов на компьютерах с &lt;strong&gt;BIOS&lt;/strong&gt;. На компьютерах с &lt;strong&gt;UEFI&lt;/strong&gt; она не работает. Для компов с &lt;strong&gt;UEFI&lt;/strong&gt; я делал &lt;a href=&quot;https://wiki.autosys.tk/linux_faq/universal_multiboot_grub_bios_uefi&quot; class=&quot;wikilink1&quot; title=&quot;linux_faq:universal_multiboot_grub_bios_uefi&quot; data-wiki-id=&quot;linux_faq:universal_multiboot_grub_bios_uefi&quot;&gt;Универсальную загрузочную флешку для BIOS/UEFI&lt;/a&gt;.&lt;br/&gt;

Хорошо иметь под рукой флешку, с которой можно загрузиться для восстановления или установки системы. Также хорошо бы чтобы на ней помещались несколько разных образов &lt;strong&gt;ISO&lt;/strong&gt;, доступных из меню.
Создать такую флешку можно с помощью специализированных программных средств как под Linux ( &lt;a href=&quot;http://liveusb.info/dotclear&quot; class=&quot;urlextern&quot; title=&quot;http://liveusb.info/dotclear&quot; rel=&quot;ugc nofollow&quot;&gt;Multisystem&lt;/a&gt;) так и под Windows (&lt;a href=&quot;http://sites.google.com/site/shamurxboot/&quot; class=&quot;urlextern&quot; title=&quot;http://sites.google.com/site/shamurxboot/&quot; rel=&quot;ugc nofollow&quot;&gt;XBOOT&lt;/a&gt;), и даже мультиплатформенных (&lt;a href=&quot;http://www.pendrivelinux.com/yumi-multiboot-usb-creator/&quot; class=&quot;urlextern&quot; title=&quot;http://www.pendrivelinux.com/yumi-multiboot-usb-creator/&quot; rel=&quot;ugc nofollow&quot;&gt;Yumi&lt;/a&gt;).
Но можно пойти &lt;strong&gt;true linux way™&lt;/strong&gt; и использовать &lt;strong&gt;GRUB&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041c\u0443\u043b\u044c\u0442\u0438\u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u0430\u044f Linux-\u0444\u043b\u0435\u0448\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u0443\u043b\u044c\u0442\u0438\u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u0430\u044f_linux-\u0444\u043b\u0435\u0448\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1342&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;создание_и_форматирование_раздела&quot;&gt;Создание и форматирование раздела&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Сначала нужно создать на флешке раздел и сделать его загрузочным.
Запускаем &lt;strong&gt;fdisk&lt;/strong&gt; и натравливаем его на нашу флешку. Нижеприведенные команды делаем с правами &lt;strong&gt;root&lt;/strong&gt;.
Список дисков смотрим командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;fdisk -l&lt;/pre&gt;

&lt;p&gt;
Запускаем &lt;strong&gt;fdisk&lt;/strong&gt; (указав свою флешку):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;fdisk /dev/sdx&lt;/pre&gt;

&lt;p&gt;
Если на диске есть разделы, то ликвидируем их. Для этого жмем &lt;strong&gt;d&lt;/strong&gt; &lt;br/&gt;

После удаления разделов жмем &lt;strong&gt;n&lt;/strong&gt; и создаем новый.&lt;br/&gt;

В процессе создания указваем что раздел &lt;strong&gt;p&lt;/strong&gt; (primary).&lt;br/&gt;

После создания жмем &lt;strong&gt;a&lt;/strong&gt;, чтобы сделать раздел активным.&lt;br/&gt;

Затем жмем &lt;strong&gt;t&lt;/strong&gt;, чтобы задать тип раздела и вводим тип &lt;strong&gt;c&lt;/strong&gt; (FAT32).&lt;br/&gt;

Жмем &lt;strong&gt;w&lt;/strong&gt; и записываем изменения на флешку. &lt;br/&gt;

&lt;br/&gt;

Теперь надо отформатировать созданный раздел в FAT32:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;umount /dev/sdx1
mkfs.vfat -F 32 -n MULTIBOOT /dev/sdx1&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0438_\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0440\u0430\u0437\u0434\u0435\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1343-2636&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;установка_загрузчика_grub&quot;&gt;Установка загрузчика GRUB&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Дальше ставим GRUB2 на флешку.&lt;br/&gt;

Создаем точку монтирования и монтируем флешку (не забываем &lt;strong&gt;sdx&lt;/strong&gt; менять на актуальные буквы, соотвествующие флешке):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mkdir /mnt/USB &amp;amp;&amp;amp; sudo mount /dev/sdx1 /mnt/USB&lt;/pre&gt;

&lt;p&gt;
Устанавливаем GRUB (выполняем с правами root):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo grub-install --force --no-floppy --boot-directory=/mnt/USB/boot /dev/sdx &lt;/pre&gt;

&lt;p&gt;
Старые версии GRUB вместо &lt;strong&gt;–boot-directory&lt;/strong&gt; используют &lt;strong&gt;-root-directory&lt;/strong&gt;. Если что-то не так, то установщик GRUB скажет что &lt;strong&gt;“Installation is impossible. Aborting”&lt;/strong&gt;.&lt;br/&gt;

&lt;br/&gt;

Создаем на флешку файлик &lt;strong&gt;grub.cfg&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;nano /mnt/USB/boot/grub/grub.cfg&lt;/pre&gt;

&lt;p&gt;
И заполняем его примерно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;set timeout=10
set default=0

menuentry &amp;quot;KNOPPIX_V7.2.0CD-2013-06-16-EN LiveCD&amp;quot; {
loopback loop /KNOPPIX_V7.2.iso
#linux (loop)/boot/isolinux/linux bootfrom=/KNOPPIX_V7.2.iso acpi=off keyboard=us language-us
linux (loop)/boot/isolinux/linux bootfrom=/KNOPPIX_V7.2.iso keyboard=us language-us
initrd (loop)/boot/isolinux/minirt.gz
}

menuentry &amp;quot;SystemRescueCd 4.6.1 Live (64bit, cache all files in memory and startX)&amp;quot; {
 loopback loop /systemrescuecd.4.6.1.iso
 linux (loop)/isolinux/rescue64 isoloop=/systemrescuecd.4.6.1.iso setkmap=us docache dostartx
 initrd (loop)/isolinux/initram.igz
}

menuentry &amp;quot;SystemRescueCd 4.6.1 Live (64bit, default boot options)&amp;quot; {
 loopback loop /systemrescuecd.4.6.1.iso
 linux (loop)/isolinux/rescue64 isoloop=/systemrescuecd.4.6.1.iso setkmap=us
 initrd (loop)/isolinux/initram.igz
}
  
menuentry &amp;quot;SystemRescueCd 4.6.1 Live (32bit, default boot options)&amp;quot; {
 loopback loop /systemrescuecd.4.6.1.iso
 linux (loop)/isolinux/rescue32 isoloop=/systemrescuecd.4.6.1.iso setkmap=us
 initrd (loop)/isolinux/initram.igz
}

menuentry &amp;quot;Ubuntu 14.04.3 x64 Desktop with GNOME. Live and Install&amp;quot; {
 loopback loop /ubuntu-14.04.3-desktop-amd64.iso
 linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=/ubuntu-14.04.3-desktop-amd64.iso quiet splash
 initrd (loop)/casper/initrd.lz
}

menuentry &amp;quot;Kubuntu 14.04.3 x64 Desktop with KDE. Live and Install&amp;quot; {
 loopback loop /kubuntu-14.04.3-desktop-amd64.iso
 linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=/kubuntu-14.04.3-desktop-amd64.iso quiet splash
 initrd (loop)/casper/initrd.lz
}

menuentry &amp;quot;Xubuntu 14.04.3 x64 Desktop with LXDE. Live and Install&amp;quot; {
        loopback loop /xubuntu-14.04.3-desktop-amd64.iso
        linux   (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=/xubuntu-14.04.3-desktop-amd64.iso quiet splash --
        initrd  (loop)/casper/initrd.lz 
}

menuentry &amp;quot;Ubuntu 14.04.3 x64 Server&amp;quot; {
        loopback loop /ubuntu-14.04.3-server-amd64.iso
	linux	(loop)/install/vmlinuz iso-scan/filename=/ubuntu-14.04.3-server-amd64.iso quiet --
	initrd	(loop)/install/initrd.gz
}

menuentry &amp;quot;CentOS 7 03.15 x64 Install&amp;quot; {
        loopback loop /CentOS-7-x86_64-Minimal-1503-01.iso
	linux	(loop)/isolinux/vmlinuz noeject inst.stage2=hd:LABEL=MIKEBOOT:/CentOS-7-x86_64-Minimal-1503-01.iso
	initrd	(loop)/isolinux/initrd.img
}

menuentry &amp;quot;SystemRescueCd 4.8.1 Live (64bit, default boot options)&amp;quot; {
 loopback loop /systemrescuecd-x86-4.8.1.iso
 linux (loop)/isolinux/rescue64 isoloop=/systemrescuecd-x86-4.8.1.iso setkmap=us
 initrd (loop)/isolinux/initram.igz
}

menuentry &amp;quot;Try Xubuntu x64 16.04.1 without installing&amp;quot; {
        loopback loop /xubuntu-16.04.1-desktop-amd64.iso
	set gfxpayload=keep
	linux	(loop)/casper/vmlinuz.efi iso-scan/filename=/xubuntu-16.04.1-desktop-amd64.iso file=(loop)/preseed/xubuntu.seed boot=casper quiet splash ---
	initrd	(loop)/casper/initrd.lz
}
menuentry &amp;quot;Install Xubuntu 16.04.1 x64&amp;quot; {
        loopback loop /xubuntu-16.04.1-desktop-amd64.iso
	set gfxpayload=keep
	linux	(loop)/casper/vmlinuz.efi iso-scan/filename=/xubuntu-16.04.1-desktop-amd64.iso file=(loop)/preseed/xubuntu.seed boot=casper only-ubiquity quiet splash ---
	initrd	(loop)/casper/initrd.lz
}

menuentry &amp;quot;Install Xubuntu 16.04.1 i386&amp;quot; {
        loopback loop /xubuntu-16.04.1-desktop-i386.iso
	set gfxpayload=keep
	linux	(loop)/casper/vmlinuz iso-scan/filename=/xubuntu-16.04.1-desktop-i386.iso file=(loop)/preseed/xubuntu.seed boot=casper only-ubiquity quiet splash ---
	initrd	(loop)/casper/initrd.lz
}

menuentry &amp;quot;Install Ubuntu Server 16.04.2 {
    loopback loop /ubuntu-16.04.2-server-amd64.iso
	set gfxpayload=keep
	linux	(loop)/install/vmlinuz file=/cdrom/preseed/ubuntu-server.seed quiet ---
	initrd	(loop)/install/initrd.gz
}

menuentry &amp;quot;Fedora-Workstation-Live 25&amp;quot; {
 loopback loop /Fedora-Workstation-Live-x86_64-25-1.3.iso
 linux (loop)/isolinux/vmlinuz iso-scan/filename=/Fedora-Workstation-Live-x86_64-25-1.3.iso root=live:CDLABEL=Fedora-WS-Live-25-1-3 rd.live.image quiet rootfstype=auto ro rhgb rd.luks=0 rd.md=0 rd.dm=0
 initrd (loop)/isolinux/initrd.img
}

menuentry &amp;quot;Fedora-KDE-Live 25&amp;quot; {
 loopback loop /Fedora-KDE-Live-x86_64-25-1.3.iso
 linux (loop)/isolinux/vmlinuz iso-scan/filename=/Fedora-KDE-Live-x86_64-25-1.3.iso root=live:CDLABEL=Fedora-KDE-Live-25-1-3 rd.live.image quiet rootfstype=auto ro rhgb rd.luks=0 rd.md=0 rd.dm=0
 initrd (loop)/isolinux/initrd.img
}

menuentry &amp;quot;Install Kubnuntu 16.04.2 Desktop&amp;quot; {
        loopback loop /kubuntu-16.04.2-desktop-amd64.iso
	set gfxpayload=keep
	linux	(loop)/casper/vmlinuz.efi  iso-scan/filename=/kubuntu-16.04.2-desktop-amd64.iso file=(loop)/preseed/kubuntu.seed boot=casper only-ubiquity quiet splash oem-config/enable=true ---
	initrd	(loop)/casper/initrd.lz
}

&lt;/pre&gt;

&lt;p&gt;
Этот содержит конфигурацию для загрузки с флешки &lt;strong&gt;KNOPPIX 7.2&lt;/strong&gt;, &lt;strong&gt;SystemRescueCd 4.6.1&lt;/strong&gt;, различных вариантов &lt;strong&gt;Ubuntu&lt;/strong&gt; и &lt;strong&gt;CentOS 7&lt;/strong&gt;. 
А дальше осталось просто положить указанные в &lt;strong&gt;grub.cfg&lt;/strong&gt; образы ISO в корневую директорию флешки и переименовать их как указано в файле.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 GRUB&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430_grub&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2637-8771&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;еще_немного_примеров&quot;&gt;Еще немного примеров&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;menuentry &amp;quot;Linux Mint ISO&amp;quot; {
 loopback loop /linuxmint.iso
 linux (loop)/casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper initrd=/casper/initrd.l iso-scan/filename=/linuxmint.iso noeject noprompt splash --
 initrd (loop)/casper/initrd.lz
}

menuentry &amp;quot;DBAN ISO&amp;quot; {
 loopback loop /dban.iso
 linux (loop)/DBAN.BZI nuke=&amp;quot;dwipe&amp;quot; iso-scan/filename=/dban.iso silent --
}
                                                                                                                                                                            
menuentry &amp;quot;Tinycore ISO&amp;quot; {                                                                                                                                                                      
 loopback loop /tinycore.iso 
 linux (loop)/boot/bzImage --
 initrd (loop)/boot/tinycore.gz
}

menuentry &amp;quot;Memtest 86+&amp;quot; {
 linux16 /memtest86+.bin
}

menuentry &amp;quot;Debian 9.5 i386 Install&amp;quot; {
    set background_color=black
    loopback loop /debian-9.5.0-i386-netinst.iso
    linux    (loop)/install.386/vmlinuz vga=788 --- quiet 
    initrd   (loop)/install.386/initrd.gz
}

menuentry &amp;quot;Install Kubnuntu 19.04 Desktop&amp;quot; {
    loopback loop /kubuntu-19.04-desktop-amd64.iso
	set gfxpayload=keep
	linux	(loop)/casper/vmlinuz  iso-scan/filename=/kubuntu-19.04-desktop-amd64.iso file=(loop)/preseed/kubuntu.seed boot=casper only-ubiquity quiet splash oem-config/enable=true ---
	initrd	(loop)/casper/initrd
}

menuentry &amp;quot;Install Ubnuntu 20.04 Server&amp;quot; {
    insmod part_gpt
    insmod ext2
    insmod search_fs_uuid
    rmmod tpm

    search --no-floppy --set=root --fs-uuid 36c1a912-77c7-4cec-8120-c2088e1e131c
    
    set isofile=&amp;quot;/ubuntu-20.04-live-server-amd64.iso&amp;quot;
    set gfxpayload=keep
    
    loopback loop ($root)$isofile

	linux	(loop)/casper/vmlinuz iso-scan/filename=${isofile} quiet ---
	initrd	(loop)/casper/initrd
}

menuentry &amp;quot;Install Ubnuntu 21.10 Server&amp;quot; {
    set gfxpayload=keep
    set isofile=&amp;quot;/ubuntu-21.10-live-server-amd64.iso&amp;quot;
    
    loopback loop ($root)$isofile

	linux	(loop)/casper/vmlinuz iso-scan/filename=${isofile} quiet ---
	initrd	(loop)/casper/initrd
}

menuentry &amp;quot;Install Ubuntu Server 16.04 i386&amp;quot; {
    loopback loop /ubuntu-16.04.6-server-i386.iso
	set gfxpayload=keep
	linux	(loop)/install/vmlinuz isoloop=/ubuntu-16.04.6-server-i386.iso file=/cdrom/preseed/ubuntu-server.seed quiet splash ---
	initrd	(loop)/install/initrd.gz
}

menuentry &amp;#039;Debian 10 i386 Install&amp;#039; {
    set background_color=black
    loopback loop /debian-edu-10.0.0-i386-netinst.iso
    linux    (loop)/install.386/gtk/vmlinuz findiso=/debian-edu-10.0.0-i386-netinst.iso modules=debian-edu-install-udeb desktop=xfce vga=788 --- quiet 
    initrd   (loop)/install.386/gtk/initrd.gz
}&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0415\u0449\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0435\u0449\u0435_\u043d\u0435\u043c\u043d\u043e\u0433\u043e_\u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;8772-11565&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit5&quot; id=&quot;добавление_других_образов_iso&quot;&gt;Добавление других образов ISO&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Для добавления других образов ISO нужно в файлик &lt;strong&gt;/boot/grub/grub.cfg&lt;/strong&gt; прописывать параметры, которые обычно можно найти в файлах &lt;strong&gt;grub.cfg&lt;/strong&gt;, &lt;strong&gt;syslinux.cfg&lt;/strong&gt; и других, входящих в состав образа ISO. &lt;br/&gt;

То есть создаем новый раздел меню в &lt;strong&gt;/boot/grub/grub.cfg&lt;/strong&gt; (копируя уже существующий), затем указываем файл ISO в строке &lt;strong&gt;loopback&lt;/strong&gt;, а в строку &lt;strong&gt;linux&lt;/strong&gt; указываем путь к ядру (то что &lt;strong&gt;append&lt;/strong&gt; из &lt;strong&gt;syslinux.cfg&lt;/strong&gt;). В строке &lt;strong&gt;initrd&lt;/strong&gt; указываем путь к файлу &lt;strong&gt;initrd&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
Скорее всего, в строке &lt;strong&gt;linux&lt;/strong&gt; после пути к файлу ядра придется указать параметры загрузки ядра, которые позволят ядру работать с loop-устройством, на которое монтируется файл ISO. Для систем со схожим ядром, параметры, как правило, одинаковые. Например, для загрузки &lt;strong&gt;Fedora&lt;/strong&gt; подойдут параметры от &lt;strong&gt;CentOS&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
Много обновляемой информации о загрузке ISO образов с помощью GRUB можно тут: &lt;a href=&quot;https://wiki.archlinux.org/index.php/Multiboot_USB_drive&quot; class=&quot;urlextern&quot; title=&quot;https://wiki.archlinux.org/index.php/Multiboot_USB_drive&quot; rel=&quot;ugc nofollow&quot;&gt;https://wiki.archlinux.org/index.php/Multiboot_USB_drive&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0440\u0443\u0433\u0438\u0445 \u043e\u0431\u0440\u0430\u0437\u043e\u0432 ISO&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0434\u0440\u0443\u0433\u0438\u0445_\u043e\u0431\u0440\u0430\u0437\u043e\u0432_iso&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;11566-13100&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit6&quot; id=&quot;загрузка_установочных_образов_windows_7_и_windows_10_c_помощью_grub&quot;&gt;Загрузка установочных образов Windows 7 и Windows 10 c помощью GRUB&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Монтируем iso-образ &lt;strong&gt;Windows 7&lt;/strong&gt; или &lt;strong&gt;Windows 10&lt;/strong&gt;, копируем с него все файлы на флешку с помощью &lt;strong&gt;cp&lt;/strong&gt; или &lt;strong&gt;rsync&lt;/strong&gt; и дописываем в &lt;strong&gt;grub.cfg&lt;/strong&gt; такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;set timeout=10
set default=0

menuentry &amp;quot;Windows 7 or Windows 10 installer&amp;quot; --class windows --class os {
    insmod part_msdos
    insmod ntfs
    insmod ntldr
    search --no-floppy --label MULTIBOOT --set=root
    ntldr /bootmgr
}&lt;/pre&gt;

&lt;p&gt;
Тут &lt;strong&gt;grub&lt;/strong&gt; будет загружать модули с помощью &lt;strong&gt;insmod&lt;/strong&gt;, потом &lt;strong&gt;search&lt;/strong&gt; - искать раздел с меткой &lt;strong&gt;MULTIBOOT&lt;/strong&gt; и когда найдет - с помощью &lt;strong&gt;–set&lt;/strong&gt; укажет, что &lt;strong&gt;root&lt;/strong&gt; находится на этом разделе, а затем передаст управление &lt;strong&gt;/bootmgr&lt;/strong&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В принципе, для красоты и удобства, было бы неплохо создать отдельный раздел на флешке (так я поступил при создании нового варианта флешки - &lt;a href=&quot;https://wiki.autosys.tk/linux_faq/universal_multiboot_grub_bios_uefi&quot; class=&quot;wikilink1&quot; title=&quot;linux_faq:universal_multiboot_grub_bios_uefi&quot; data-wiki-id=&quot;linux_faq:universal_multiboot_grub_bios_uefi&quot;&gt;Универсальная загрузочная флешка для BIOS/UEFI&lt;/a&gt;), отформатировать его с меткой &lt;strong&gt;Win7&lt;/strong&gt;, распаковать файлы из iso-образа туда и указывать &lt;strong&gt;–label Win7&lt;/strong&gt;. Просто в дистрибутиве &lt;strong&gt;windows&lt;/strong&gt; также есть директоррия &lt;strong&gt;boot&lt;/strong&gt; и если понадобится очистить флешку от инсталлятора &lt;strong&gt;windows&lt;/strong&gt;, не затрагивая остальные ОС, то из этой директории файлы придется удалять вручную.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043e\u0447\u043d\u044b\u0445 \u043e\u0431\u0440\u0430\u0437\u043e\u0432 Windows 7 \u0438 Windows 10 c \u043f\u043e\u043c\u043e\u0449\u044c\u044e GRUB&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043e\u0447\u043d\u044b\u0445_\u043e\u0431\u0440\u0430\u0437\u043e\u0432_windows_7_\u0438_windows_10_c_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_grub&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;13101-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Thu, 11 May 2023 11:22:44 +0000</pubDate>
        </item>
        <item>
            <title>подготовка-к-экзамену-xendesktop</title>
            <link>https://wiki.autosys.tk/citrix/%D0%BF%D0%BE%D0%B4%D0%B3%D0%BE%D1%82%D0%BE%D0%B2%D0%BA%D0%B0-%D0%BA-%D1%8D%D0%BA%D0%B7%D0%B0%D0%BC%D0%B5%D0%BD%D1%83-xendesktop</link>
            <description>
&lt;p&gt;
Тут собрана информация из видеокурса по Citrix XenDesktop и сведения из официальной документации с сайта &lt;a href=&quot;http://support.citrix.com/&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;разделы_курса_обучения&quot;&gt;Разделы курса обучения&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
2.	XenDesktop Components, Architecture, and Prerequisites&lt;br/&gt;

3.	Preparing for and Installing the XenDesktop Controller&lt;br/&gt;

4.	Configuring and Licensing a XenDesktop Site&lt;br/&gt;

5.	Creating a Catalog and Provisioning VMs&lt;br/&gt;

6.	Managing Desktops with Citrix Desktop Studio&lt;br/&gt;

7.	Connecting to Desktops: Plugins, Receiver, and Web Interface&lt;br/&gt;

8.	Configuring XenDesktop Policies&lt;br/&gt;

9.	Best Practices in Implementing XenDesktop Policies&lt;br/&gt;

10.	XenDesktop Roles and Permissions&lt;br/&gt;

11.	Preparing for and Installing Citrix Provisioning Services&lt;br/&gt;

12.	Creating and Managing Private vDisks&lt;br/&gt;

13.	Creating and Managing Standard vDisks&lt;br/&gt;

14.	Updating Standard Mode vDisks&lt;br/&gt;

15.	Managing the Boot Process for Devices&lt;br/&gt;

16.	Additional Management Tasks in Provisioning Services&lt;br/&gt;

17.	Integrating XenApp with XenDesktop&lt;br/&gt;

18.	Delegating Daily Activities with Desktop Director&lt;br/&gt;

19.	Troubleshooting XenDesktop and Provisioning Services&lt;br/&gt;

20.	Building a Highly-Available XenDesktop Infrastructure&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b\u044b \u043a\u0443\u0440\u0441\u0430 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b\u044b_\u043a\u0443\u0440\u0441\u0430_\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;214-1238&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;разделы_экзамена&quot;&gt;Разделы экзамена&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Приведены темы, которые охватывают разделы экзамена и относительное количество вопросов на данную тему. Всего вопросов в экзамене 53. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
■	14% - &lt;strong&gt;Системные требования для установки XenDesktop&lt;/strong&gt;&lt;br/&gt;

о Требования к серверу и базе данных SQL в зависимости от условий. &lt;br/&gt;

о Оптимальное размещение кеша записи (write cache location).&lt;br/&gt;

о Требования к системе хранения данных. &lt;br/&gt;

о Определение количества контроллеров и/или серверов обеспечения (Provisioning services servers).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
■	13% - &lt;strong&gt;Установка и настройка инфраструктуры&lt;/strong&gt;&lt;br/&gt;

о Установка и конфигурирование серверов обеспечения (Provisioning services)&lt;br/&gt;

о Установка и конфигурирование контроллера XenDesktop (Controller).&lt;br/&gt;

о Создание шаблона (образа) Windows 7.&lt;br/&gt;

о Настройка исключений файервола в зависимости от условий.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
■ 35% - &lt;strong&gt;Начальное конфигурирование XenDesktop&lt;/strong&gt;&lt;br/&gt;

о Конфигурирование мастер-образа (master image).&lt;br/&gt;

о Определение оптимального способа доставки приложения, который будет учтен при установке приложения в мастер-образ (golden image).&lt;br/&gt;

о Конвертирование мастер-обрахза (golden image) в формат &lt;strong&gt;vDisk&lt;/strong&gt;.&lt;br/&gt;

о Создание каталога или группы рабочих столов (desktop group).&lt;br/&gt;

о Настройка планов электропитания. &lt;br/&gt;

о Использование функций HDX и конфигурирование политик HDX. &lt;br/&gt;

о	Конфигурирование функций интергации клиента (client integration).&lt;br/&gt;

о	Конфигурирование политик Citrix в соответствии с требованиями. &lt;br/&gt;

о	Конфигурирование стримминга (streaming) на физическое устройство.  &lt;br/&gt;

о	Конфигурирование удаленного доступа. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
■      17% - &lt;strong&gt;Управление инфраструктурой XenDesktop&lt;/strong&gt;&lt;br/&gt;

о Управление политиками Citrix в соответствии с требованиями. &lt;br/&gt;

о Способы управления группами рабочих столов (desktop groups).&lt;br/&gt;

о Анализ данных, поступающих от Virtual Desktop Agent. &lt;br/&gt;

о Обновление образов &lt;strong&gt;vDisks&lt;/strong&gt; вручную или автоматически в соответствии с текущими требованиями. &lt;br/&gt;

о Конфигурирование ролей (roles).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
■      21% - &lt;strong&gt;Решение проблем&lt;/strong&gt;&lt;br/&gt;

о Решение проблем с контроллером (Controller) по описанию проблемы&lt;br/&gt;

о Обнаружение причин проблем с Provisioning services. &lt;br/&gt;

о Обнаружение причин проблем в Virtual Desktop Agent/client. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Полезные статьи:&lt;br/&gt;

■	Руководство по разработке и внедрению решения XenDesktop масштаба предприятия  - &lt;a href=&quot;http://support.citrix.com/article/CTX121478&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX121478&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX121478&lt;/a&gt;&lt;br/&gt;

■	Включение журналирования для Desktop Delivery Controller и Virtual Desktop Agent  - &lt;a href=&quot;http://support.citrix.com/article/CTX117452&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX117452&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX117452&lt;/a&gt;&lt;br/&gt;

■	Решение проблем с XenDesktop Deployments - &lt;a href=&quot;http://support.citrix.com/article/CTX125177&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX125177&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX125177&lt;/a&gt;&lt;br/&gt;

■	Мониторинг функций HDX  - &lt;a href=&quot;http://support.citrix.com/article/CTX123058&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX123058&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX123058&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b\u044b \u044d\u043a\u0437\u0430\u043c\u0435\u043d\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b\u044b_\u044d\u043a\u0437\u0430\u043c\u0435\u043d\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1239-5334&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;терминология_xendesktop_5x&quot;&gt;Терминология XenDesktop 5.x&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
•	Теперь то что называлось &lt;strong&gt;фермы&lt;/strong&gt; (&lt;strong&gt;Farms&lt;/strong&gt;) называется &lt;strong&gt;сайтами&lt;/strong&gt; (&lt;strong&gt;Sites&lt;/strong&gt;). То ест географически обособленные инсталляции XenDesktop.&lt;br/&gt;

•	&lt;strong&gt;Каталог (Catalog)&lt;/strong&gt; - это набор виртуальных рабочих мест пользователей, управляемый как единое целое. Принадлежность к какому-либо каталогу указывает на то где исполняется это рабочее место. Например - “каталог виртуальных машин, работающих на VSphere”, или  “каталог виртуальных машин, работающих на XenDesktop” и т.д.&lt;br/&gt;

•	&lt;strong&gt;Группы рабочих столов (Desktop Groups)&lt;/strong&gt; - это набор виртуальных рабочих мест, принадлежащих одному или нескольким каталогам и доступных определенным группам пользователей. Например - группа рабочих мест, исполняемых на VSphere и доступных торговым агентам. Группа рабочих столов также указывает на характер использования рабочих мест - они могут быть персонализированными, либо разворачиваемыми из общего шаблона. &lt;br/&gt;

•	&lt;strong&gt;Хосты (Hosts)&lt;/strong&gt; - это серверы, на которых исполняются виртуальные рабочие места. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u044f XenDesktop 5.x&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u044f_xendesktop_5x&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;5335-7082&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;ключевые_отличия_от_предыдущих_выпусков&quot;&gt;Ключевые отличия от предыдущих выпусков&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
•	XenDesktop больше не использует хранилище &lt;strong&gt;IMA&lt;/strong&gt; (&lt;strong&gt;IMA store&lt;/strong&gt;), больше нет выделенного мастера зоны (dedicated Zone master) или сборщика данных (Data Collector). Вместо этого все данных хранятся в базе данных SQL. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
•	XenDesktop теперь очень полагается на базу SQL и она является потенциально единственной точкой отказа.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
•	Базы данных Microsoft Access и Oracle больше не поддерживаются. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
•	На контроллерах (Controllers) больше не нужны службы терминалов и удаленных рабочих столов (TS/RDS).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
•	Обнаружение контроллера (Controller) теперь по-умолчанию происходит на основании записей реестра (Registry-based), с воможностью включить обнаружение в Active Directory. То есть хосты должны знать где находится контроллер и он может быть жестко прописан в реестрах хостов (что есть хорошо), либо может обнаруживаться в AD.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
•	XenDesktop теперь содержит SDK на базе &lt;strong&gt;PowerShell&lt;/strong&gt;, что позволяет производить некоторые операции, недоступные из графической консоли. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
•	Некоторые утилиты командной строки больше недоступны. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u043e\u0442\u043b\u0438\u0447\u0438\u044f \u043e\u0442 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435_\u043e\u0442\u043b\u0438\u0447\u0438\u044f_\u043e\u0442_\u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445_\u0432\u044b\u043f\u0443\u0441\u043a\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;7083-8874&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit5&quot; id=&quot;установка_xendesktop&quot;&gt;Установка XenDesktop&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Ниже приведена простая схема взаимодействия компонентов XenDesktop&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/xendesktop_simple_scheme.jpg&quot; class=&quot;media&quot; title=&quot;citrix:xendesktop_simple_scheme.jpg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/citrix/xendesktop_simple_scheme.jpg&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 XenDesktop&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_xendesktop&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;8875-9089&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;требования_к_серверу_на_котором_будет_работать_контроллер_controller&quot;&gt;Требования к серверу, на котором будет работать Контроллер (Controller)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
XenDesktop Controller Requirements&lt;br/&gt;

■ Windows Server 2008 SP2 or R2, Standard or Enterprise Edition.&lt;br/&gt;

о .NET Framework v3.5 SP1&lt;br/&gt;

о IIS 7.0 or 7.5 with ASP.NET 2.0 (Web Interface, License Server, and/or&lt;br/&gt;

Desktop Director).&lt;br/&gt;

о Microsoft Visual J# 2.0 Redistributable, Second Edition (Web Interface)&lt;br/&gt;

о Microsoft Visual С++ 2008 with SP1 Redistributable&lt;br/&gt;

о Microsoft Windows PowerShell 2.0&lt;br/&gt;

о Internet Explorer 7.0 or later (License Server)&lt;br/&gt;

о Disk Space: 100MB for Controller and SDKs, 50MB for Desktop Studio,&lt;br/&gt;

50MB for Desktop Director, 40MB for licensing components, 100MB for&lt;br/&gt;

Web Interface and clients.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
XenDesktop Controller Database Requirements&lt;br/&gt;

о Microsoft SQL Server 2008 R2 Express Edition&lt;br/&gt;

о Microsoft SQL Server 2008 R2&lt;br/&gt;

о Microsoft SQL Server 2008 SP1 (or later)&lt;br/&gt;

■ Поддерживаются как x86, так и x64 версии SQL Server в режимах одиночного сервера, кластера или зеркалирования. Аутентификация - Windows.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 (Controller)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f_\u043a_\u0441\u0435\u0440\u0432\u0435\u0440\u0443_\u043d\u0430_\u043a\u043e\u0442\u043e\u0440\u043e\u043c_\u0431\u0443\u0434\u0435\u0442_\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c_\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440_controller&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;9090-10280&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit7&quot; id=&quot;терминология_xendesktop_7&quot;&gt;Терминология XenDesktop 7&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Терминология XenDesktop 7 немного отличается от 5.x&lt;br/&gt;

Некоторые термины:&lt;br/&gt;

&lt;strong&gt;Каталог машин&lt;/strong&gt; (machine catalog) - набор виртуальных и физических машин, управляемых как единое целое. Для определения каталога машин нужно:&lt;br/&gt;

 - Физические  или виртуальные машины. &lt;br/&gt;

 - Учетные записи в Active Directory этих физических  или виртуальных машин. &lt;br/&gt;

 - В некоторых случаях - мастер-образ, копируемый при создании виртуальных машин.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Группа доставки&lt;/strong&gt; (Delivery Group) - это группа пользователей, которой доступен набор приложений. Одной группе доставки могут быть доступны приложения из нескольких &lt;strong&gt;каталогов машин&lt;/strong&gt;, а не из одного пула. Также единственная Delivery Group может быть опубликована для пользователя, таким образом пользователь получит доступ к приложениям группы.&lt;/em&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u044f XenDesktop 7&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u044f_xendesktop_7&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;10281-11665&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit8&quot; id=&quot;ключевые_различия_xenapp_и_xendesktop&quot;&gt;Ключевые различия **XenApp** и **XenDesktop**&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Для настройки параметров окружения и публикации приложений используется &lt;strong&gt;Citrix Studio&lt;/strong&gt;. &lt;br/&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;
Например, вместо папок приложений (folders) и Worker Groups в &lt;strong&gt;Studio&lt;/strong&gt; ресурсы организуются с помощью комбинации каталогов машин (machine catalogs), меток (tags), групп доставки (Delivery Groups), и делегирования административных прав (Delegated Administrators).&lt;br/&gt;

&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Делегирование администратативных прав (Delegated Administration) — в &lt;strong&gt;XenDesktop&lt;/strong&gt; можно создавать администраторов, права которых регулируются ролями (role) и областями влияния (scope). Роль - это набор функций и прав на их выполнение. Область влияния (scope) - это набор объектов. Области влияния создаются в соответствии со структурой предприятия (например набор групп доставки, используемых командой продавцов). Кроме того, доступны несколько строенных административных ролей - администраторы службы поддержки, администраторы приложений, администраторы серверов и каталога. Каждая встроенная роль имеет определенный набор прав. &lt;br/&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;
 - Отсутствует хранилище IMA (IMA data store) — данном релизе (XenDesktop 7) нет централизованного хранилища IMA (data store), хранящего информацию о конфигурации. Вместо этого используется база данных Microsoft SQL Server, в которой хранится как иформацтя о конфигурации. так и информация о текущих сессиях. Это означает что:&lt;br/&gt;

&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Требования к базе данных отличаются. Не поддерживаются Microsoft Access и Oracle. &lt;br/&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Службы удаленных рабочих столов (Terminal Services - Remote Desktop Services) больше не нужны на серверах, на которых работает &lt;strong&gt;Controller&lt;/strong&gt;. При этом, лицензии для удаленных рабочих столов по прежнему (Terminal Services Client Access Licenses - TS CALs) нужны. &lt;br/&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Теперь нет выделенного мастера зоны (dedicated zone master). В XenApp было понятие мастера зоны (zone master) или сборщика данных (data collector), который отвечал на запросы пользователей и взаимодейтсвовал с гипервизорами. Теперь эти функции распределены равномерно по всем контроллерам (Controllers).&lt;br/&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 При необходимости обеспечения отказоустойчивости Microsoft SQL Server, можно сконфигурировать кластер или репликацию (clustering или mirroring). Или же просто разместить сервер с базой данных в виртуальной машине и использовать функкции гипервизора для обеспечения отказоустойчивости. &lt;br/&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;
 - Архитектура &lt;strong&gt;FlexCast Management Architecture&lt;/strong&gt; (FMA) — FMA требует наличия домена. Напрмер, для установки серверов нужно иметь права как локального администратора, так и администратора домена Active Directory.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Вместо понятия &lt;strong&gt;ферма&lt;/strong&gt; (Farm) в XenDesktop используется понятие сайта (Site). Сайт должен размещаться в пределах одного ЦОД. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - &lt;strong&gt;Citrix Director&lt;/strong&gt; - это средство мониторинга, по-умолчанию устанавливаемое как web-сайт на контроллере доставки (Delivery Controller). Из консоли &lt;strong&gt;Citrix Director&lt;/strong&gt; администратор (в соотвествии со своей ролью) может следить за состоянием инфраструктуры, устройств пользователей и решать проблемы, возникающие при работе. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Для удаленного взаимодействия с сеансами пользователей в консоли &lt;strong&gt;Citrix Director&lt;/strong&gt; есть функция удаленного помощника (shadow), которая работает на базе Microsoft Remote Assistance. Remote Assistance устанавливается по-умолчанию и включается/отключается соответствующей галочкой. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;

&lt;h5 id=&quot;компоненты_xendesktop&quot;&gt;Компоненты XenDesktop&lt;/h5&gt;
&lt;div class=&quot;level5&quot;&gt;

&lt;p&gt;
На рисунке ниже приведена схема взаимодействия компонентов Citrix XenDesktop:&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/cds-overview-xd-components.png&quot; class=&quot;media&quot; title=&quot;cds-overview-xd-components.png&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/cds-overview-xd-components.png?w=200&amp;amp;tok=0d1fc9&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

 &lt;br/&gt;

&lt;strong&gt;Director&lt;/strong&gt; — средство мониторинга с web-интерфейсом. Director позволяет службам поддержки выявлять и решать проблемы, возникающие как в инфраструктуре, так и у конечных пользователей. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Receiver&lt;/strong&gt; — Это приложение установленное на компьютерах пользователей для доступа к сервиса Citrix XenDesktop. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;StoreFront&lt;/strong&gt; — этот компонент аутентифицирует пользователей и предоставляет им доступ к рабочим столам и приложениям. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Studio&lt;/strong&gt; — это единая консоль управления инфраструктурой XenDesktop. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Delivery Controller&lt;/strong&gt; — компонент, устанавливаемый на серверы, который взаимодейтсвует с гипервизорами, распределяя приложения и виртуальные рабочие столы, аутентифицирует пользователей, управляет подключениями пользователей к их приложениям. &lt;strong&gt;Controller&lt;/strong&gt; управляет состоянием виртуальных рабочих мест, запускает и останавливает их по мере необходимости в соответствии с конфигурацией. В некоторых редакциях продукта &lt;strong&gt;Controller&lt;/strong&gt; позволяет установить компонент &lt;strong&gt;Profile management&lt;/strong&gt;, который управляет персональными настройками рабочих мест пользователей. На каждом сайте XenDesktop есть как минимум один &lt;strong&gt;Delivery Controller&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;XenServer&lt;/strong&gt; — это гипервизор, на котором запускаются виртуальные рабочие места пользователей (виртуальные машины). &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Virtual Delivery Agent (VDA)&lt;/strong&gt; — компонент. устанавливаемый на серверы и рабочие станции, позволяющий подключаться к рабочим станциям и приложениям. Для удаленного доступа к ПК следует установить на нем VDA.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Machine Creation Services (MCS)&lt;/strong&gt; — набор служб, по требованию создающих виртуальные серверы и рабочие места из мастер-образов. Также эти службы оптимизируют хранение образов. &lt;strong&gt;Machine Creation Services&lt;/strong&gt; полностью интегрированы в &lt;strong&gt;Citrix Studio&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Windows Server &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; machines&lt;/strong&gt; — виртуальные или физические машины под управлением серверной ОС Windows Server, на которых исполняются приложения и виртуальные рабочие места. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Desktop &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; machines&lt;/strong&gt; — виртуальные или физические машины под управлением настольной ОС Windows Desktop, на которых исполняются приложения, работающие в настольной ОС или персонализированные виртуальные рабочие места. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Дополнительные компоненты предоставляют следующие функции:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Безопасная доставка (&lt;strong&gt;Secure delivery&lt;/strong&gt;) — Для безопасного подключения пользователей из внешней сети (интернет) может использоваться Citrix NetScaler Gateway (ранее - Access Gateway).  &lt;strong&gt;NetScaler Gateway&lt;/strong&gt; или виртуальное приложение &lt;strong&gt;NetScaler VPX&lt;/strong&gt; - это приложение SSL VPN, размещаемое в DMZ и предоставляющее единую точку безопасного подключения через корпоративный фаейрвол. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Оптимизация WAN&lt;/strong&gt; - в случаях, когда виртуальные рабочие места доставляются удаленным пользователям, для повышения производительности может использоваться &lt;strong&gt;Citrix CloudBridge&lt;/strong&gt; (ранее - Citrix Branch Repeater или WANScaler). Репитеры (Repeaters) повышают производительность при работе в глобальных сетях. &lt;strong&gt;CloudBridge&lt;/strong&gt; приоретизирует трафик для максимального комфорта пользователей. HDX WAN Optimization с CloudBridge обеспечивают сжатие и дедупликацию данных, существенно уменьшая необходимую полосу пропускания сетевых интерфейсов. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u044f **XenApp** \u0438 **XenDesktop**&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435_\u0440\u0430\u0437\u043b\u0438\u0447\u0438\u044f_xenapp_\u0438_xendesktop&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;11666-22527&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;доставка_приложений&quot;&gt;Доставка приложений&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В XenApp для подготовки приложений и доставки их пользователям применяется мастер доставки (&lt;strong&gt;Publish Application wizard&lt;/strong&gt;). В XenDesktop для создания приложений и публикации их пользователям, принадлежащим группам доставки (Delivery Group), используются компоненты Studio. С помощью Studio сначала конфигурируется сайт (site), затем создается каталог машин (machine catalogs), а затем в рамках этого каталога машин создаются группы доставки (Delivery Groups). После этого Delivery Groups используется для определения прав пользователей на доступ к приложениям. Дополнительно тут: &lt;a href=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-create-update-desktops-wrapper-rho.html#cds-distribute-update-desktops-wrapper-rho&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-create-update-desktops-wrapper-rho.html#cds-distribute-update-desktops-wrapper-rho&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xendesktop-7/cds-create-update-desktops-wrapper-rho.html#cds-distribute-update-desktops-wrapper-rho&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После создания групп доставки можно создать приложение и указать какие группы доставки будут иметь доступ к этим приложениям. В Studio можно посмотреть какие приложения назначены группе доставки, а также включить или отключить приложения. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для доставки приложений используются следующие методы:&lt;br/&gt;

&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
&lt;p&gt;
Hosted applications and desktops&lt;strong&gt; — Этот метод доставки аналогичен функциям XenApp. Приложение устанавливается и исполняется на сервере XenDesktop. &lt;br/&gt;

    &lt;/strong&gt;Local App Access&lt;strong&gt; - Этот метод доставки позволяет интегрировать локальные приложения пользователя (установленные на его рабочем месте) и приложения, опубликованные в XenDesktop. То есть пользователь получает доступ и к локальным и к опубликованным в XenDesktop. Ярлыки локальных приложений публикуются на виртуальном десктопе. При запуске локального приложения в виртуальном рабочем месте окно приложения отображается на виртуальном рабочем столе, хотя само приложение исполняется на локальном компьютере пользователя. &lt;br/&gt;

    &lt;/strong&gt;Streamed applications** — в этом выпуске XenDesktop использует App-V 5.0 в качестве основной технологии доставки потоковых (streamed) приложений. Для профилирования приложений можно использовать те же средства, что и для XenApp - Streaming Profiler и Offline Plug-in. &lt;br/&gt;

&lt;/p&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Manage multiple versions of XenApp and XenDesktop&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
There is no XenApp to XenDesktop 7 upgrade. Citrix will support customers in their migration from XenApp 6.5 to XenDesktop in a future release and plans to release tools and or scripts to assist in this transition.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
The Studio management and Director can monitor and manage only XenDesktop 7 sites. The monitoring and management tools do not support past versions of XenDesktop or XenApp.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
For example, XenDesktop 7 Director requires a XenDesktop 7 Delivery Controller. Director 7 can monitor XenDesktop 5.x VDAs; however, some data, including logon duration, will not be available with the XenDesktop 5.x VDAs.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Citrix recommends that if you continue running deployments of past versions of XenApp or XenDesktop, you run them in parallel with the XenDesktop 7 Site and continue running the management consoles with each release for that site.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
For example, in a mixed environment, to continue using Desktop Director 2.1 to monitor XenApp 6.5, make sure that Desktop Director 2.1 is installed on a separate server from Director 7.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Use StoreFront to aggregate applications and desktops from the different versions of XenApp and XenDesktop. For details, see the StoreFront section.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0441\u0442\u0430\u0432\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0430_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;22528-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 16 Dec 2019 12:38:57 +0000</pubDate>
        </item>
        <item>
            <title>universal_multiboot_grub_bios_uefi</title>
            <link>https://wiki.autosys.tk/linux_faq/universal_multiboot_grub_bios_uefi</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;универсальная_загрузочная_флешка_для_biosuefi&quot;&gt;Универсальная загрузочная флешка для BIOS/UEFI&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В один прекрасный момент я стал обладателем машинки, которая загружалась только с помощью &lt;strong&gt;UEFI&lt;/strong&gt;. Переключателя на классический режим загрузки в &lt;strong&gt;BIOS&lt;/strong&gt; не обнаружилось. Загрузиться с моей любимой &lt;a href=&quot;https://wiki.autosys.tk/linux_faq/%D0%BC%D1%83%D0%BB%D1%8C%D1%82%D0%B8%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BE%D1%87%D0%BD%D0%B0%D1%8F_%D1%84%D0%BB%D0%B5%D1%88%D0%BA%D0%B0_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_grub&quot; class=&quot;wikilink1&quot; title=&quot;linux_faq:мультизагрузочная_флешка_с_помощью_grub&quot; data-wiki-id=&quot;linux_faq:мультизагрузочная_флешка_с_помощью_grub&quot;&gt;Мультизагрузочной Linux-флешки&lt;/a&gt; оказалось невозможно. Более того - оказалось невозможно загрузиться и с помощью многих других образов, загрузчик в которых не работал с &lt;strong&gt;EFI&lt;/strong&gt;. &lt;br/&gt;

Настало время переделать мультизагрузочную флешку, чтобы она работала на любых системах! &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
По мотивам &lt;a href=&quot;https://wiki.archlinux.org/index.php/Multiboot_USB_drive#Hybrid_UEFI_GPT_.2B_BIOS_GPT.2FMBR_boot&quot; class=&quot;urlextern&quot; title=&quot;https://wiki.archlinux.org/index.php/Multiboot_USB_drive#Hybrid_UEFI_GPT_.2B_BIOS_GPT.2FMBR_boot&quot; rel=&quot;ugc nofollow&quot;&gt;https://wiki.archlinux.org/index.php/Multiboot_USB_drive#Hybrid_UEFI_GPT_.2B_BIOS_GPT.2FMBR_boot&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u0430\u044f \u0444\u043b\u0435\u0448\u043a\u0430 \u0434\u043b\u044f BIOS\/UEFI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u0430\u044f_\u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u0430\u044f_\u0444\u043b\u0435\u0448\u043a\u0430_\u0434\u043b\u044f_biosuefi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1138&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;подготовка&quot;&gt;Подготовка&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
На &lt;strong&gt;Ubuntu&lt;/strong&gt; надо поставить такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo add-apt-repository universe
sudo apt-get install grub-efi-amd64-bin exfat-fuse exfat-utils&lt;/pre&gt;

&lt;p&gt;
или, если exfat-utils в вашем дистрибутиве нет, то:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install grub-efi-amd64-bin exfat-fuse exfatprogs &lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1139-1477&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;разметка_флешки&quot;&gt;Разметка флешки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Полностью переразмечаем диск. Создадим четыре раздела.
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Раздел с данными, на котором будут лежать ISO-образы и конфигурация &lt;strong&gt;grub&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Раздел 8Gb для распакованного дистрибутива &lt;strong&gt;Windows&lt;/strong&gt; (или образа &lt;strong&gt;WinPE&lt;/strong&gt;).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Загрузочный раздел &lt;strong&gt;EFI&lt;/strong&gt; (размер - 48 Мб).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Загрузочный раздел &lt;strong&gt;BIOS&lt;/strong&gt; (размер 1 Мб).
&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;pre class=&quot;code&quot;&gt;disk=&amp;#039;/dev/sdX&amp;#039;
disk_size=`expr $(sudo sgdisk -p $disk | awk &amp;#039;/Disk \// {print($3)}&amp;#039;)`
sudo sgdisk --zap-all $disk
sudo sgdisk --mbrtogpt --clear $disk
sudo sgdisk --new=1:2048:$(expr $disk_size - 16877568) $disk
sudo sgdisk --typecode=1:0700 $disk
sudo sgdisk --new=2:$(expr $disk_size - 16875520):$(expr $disk_size - 102401) $disk
sudo sgdisk --typecode=2:0700 $disk
sudo sgdisk --new=3:$(expr $disk_size - 102400):$(expr $disk_size - 4097) $disk
sudo sgdisk --typecode=3:EF00 $disk
sudo sgdisk --new=4:$(expr $disk_size - 4096):$(expr $disk_size - 34) $disk
sudo sgdisk --typecode=4:EF02 $disk
sudo sgdisk --attributes=4:set:2 $disk&lt;/pre&gt;

&lt;p&gt;
Отформатируем разделы и смонтируем их. &lt;br/&gt;

Разделы с данными будем форматировать в &lt;strong&gt;NTFS&lt;/strong&gt;. Это позволит работать с флехой из-под &lt;strong&gt;Windows&lt;/strong&gt; и заливать большие файлы (больше 4-х Гб). &lt;br/&gt;

Как ни странно, и &lt;strong&gt;KNOPPIX&lt;/strong&gt; и &lt;strong&gt;SystemRescueCD&lt;/strong&gt; нормально загрузились с помощью образов, размещенных на разделах, отформатированных в &lt;strong&gt;NTFS&lt;/strong&gt;!!! &lt;br/&gt;

Стоит отметить, что при использовании &lt;strong&gt;ntfs-3g&lt;/strong&gt;, запись на разделы отформатированные в &lt;strong&gt;NTFS&lt;/strong&gt; в &lt;strong&gt;Linux&lt;/strong&gt; происходит гораздо медленнее, чем на разделы &lt;strong&gt;FAT32&lt;/strong&gt; или &lt;strong&gt;ExFAT&lt;/strong&gt;. Однако, с этим можно смириться - ведь образы заливаешь один раз, но при этом - сохраняется возможность работать с флехой под виндой и загружаться с больших образов. 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mkfs.vfat -F 32 ${disk}3
sudo mkfs.ntfs -f ${disk}1
sudo mkfs.ntfs -f ${disk}2

sudo mkdir /mnt/usb_efi
sudo mkdir /mnt/usb_data/

sudo mount  -o async,big_writes,noatime ${disk}1 /mnt/usb_data/
sudo mount ${disk}3 /mnt/usb_efi/&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u043c\u0435\u0442\u043a\u0430 \u0444\u043b\u0435\u0448\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0430_\u0444\u043b\u0435\u0448\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1478-4075&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;установка_grub_и_efi&quot;&gt;Установка grub и EFI&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;sudo grub-install --target=x86_64-efi --recheck --removable --efi-directory=/mnt/usb_efi/ --boot-directory=/mnt/usb_data/boot-grub ${disk}
sudo grub-install --target=i386-pc --recheck --boot-directory=/mnt/usb_data/boot-grub --force ${disk}&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 grub \u0438 EFI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_grub_\u0438_efi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;4076-4378&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit5&quot; id=&quot;grubcfg&quot;&gt;grub.cfg&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Ну и дальше настраиваем &lt;strong&gt;grub&lt;/strong&gt;, редактируя файлик &lt;strong&gt;/mnt/usb_data/boot-grub/grub/grub.cfg&lt;/strong&gt;: &lt;br/&gt;

&lt;a href=&quot;http://trcmdisk01.tripod.com/linux/s_mmlf01.html&quot; class=&quot;urlextern&quot; title=&quot;http://trcmdisk01.tripod.com/linux/s_mmlf01.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://trcmdisk01.tripod.com/linux/s_mmlf01.html&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;set gfxmode=auto
insmod all_video

# https://github.com/dwarmstrong/grubs/blob/master/boot/grub/grub.cfg.sample
submenu &amp;quot;Ubuntu -&amp;gt;&amp;quot; {
	set menu_color_normal=white/black
	set menu_color_highlight=white/green

	menuentry &amp;quot;Try or Install Xubnuntu 24.04.01 Minimal&amp;quot; {
		set iso=&amp;quot;/xubuntu-24.04.1-minimal-amd64.iso&amp;quot;
		loopback loop ${iso}
		linux   (loop)/casper/vmlinuz iso-scan/filename=${iso} file=(loop)/cdrom/preseed/xubuntu.seed maybe-ubiquity quiet splash ---
		initrd  (loop)/casper/initrd
	}
	menuentry &amp;quot;Try or Install Kubuntu 24.04.1&amp;quot; {
		set iso=&amp;quot;/kubuntu-24.04.1-desktop-amd64.iso&amp;quot;
		loopback loop ${iso}
		linux	(loop)/casper/vmlinuz  iso-scan/filename=${iso}  --- quiet splash
		initrd	(loop)/casper/initrd
	}
	menuentry &amp;quot;Try or Install Linux Mint 21.3 Cinnamon 64-bit&amp;quot; {
		set iso=&amp;quot;/linuxmint-21.3-cinnamon-64bit.iso&amp;quot;
		loopback loop ${iso}
		linux	(loop)/casper/vmlinuz  iso-scan/filename=${iso} boot=casper username=mint hostname=mint quiet splash --
		initrd	(loop)/casper/initrd.lz
	}
	menuentry &amp;quot;Try or Install Kubnuntu 19.04 Desktop&amp;quot; {
		set iso=&amp;quot;/kubuntu-19.04-desktop-amd64.iso&amp;quot;
		loopback loop ${iso}
		set gfxpayload=keep
		linux	(loop)/casper/vmlinuz  iso-scan/filename=${iso} file=(loop)/preseed/kubuntu.seed boot=casper only-ubiquity quiet splash oem-config/enable=true ---
		initrd	(loop)/casper/initrd
	}
	menuentry &amp;quot;Install Kubnuntu 18.04.1 Desktop&amp;quot; {
		set iso=&amp;quot;/kubuntu-18.04.1-desktop-amd64.iso&amp;quot;
	    	loopback loop ${iso}
		set gfxpayload=keep
		linux	(loop)/casper/vmlinuz  iso-scan/filename=${iso} file=(loop)/preseed/kubuntu.seed boot=casper only-ubiquity quiet splash oem-config/enable=true ---
		initrd	(loop)/casper/initrd
	}
}
submenu &amp;quot;Debian -&amp;gt;&amp;quot; {
	menuentry &amp;quot;Live system (amd64)&amp;quot; --hotkey=l {
		set iso=&amp;quot;/debian-live-12.9.0-amd64-xfce.iso&amp;quot;
		loopback loop ${iso}
		linux	(loop)/live/vmlinuz-6.1.0-29-amd64 boot=live components quiet splash iso-scan/filename=${iso} findiso=${iso}
		initrd	(loop)/live/initrd.img-6.1.0-29-amd64
	}
	menuentry &amp;quot;Live system (amd64 fail-safe mode) ????&amp;quot; {
		set iso=&amp;quot;/debian-live-12.9.0-amd64-xfce.iso&amp;quot;
		loopback loop ${iso}
		linux	(loop)/live/vmlinuz-6.1.0-29-amd64 boot=live components memtest noapic noapm nodma nomce nosmp nosplash vga=788 iso-scan/filename=${iso} findiso=${iso}
		initrd	(loop)/live/initrd.img-6.1.0-29-amd64
	}
	menuentry &amp;#039;Start Debian 12.9.0 installer&amp;#039; {
		set iso=&amp;quot;/debian-live-12.9.0-amd64-xfce.iso&amp;quot;
		loopback loop ${iso}
		linux	(loop)/install/gtk/vmlinuz iso-scan/filename=${iso} vga=788  --- quiet
		initrd	(loop)/install/gtk/initrd.gz
	}
	menuentry &amp;#039;Debian 12.9.0 i386 Graphical install&amp;#039; {
		set iso=&amp;quot;/debian-12.9.0-i386-DVD-1.iso&amp;quot;
		loopback loop ${iso}
		set background_color=black
		linux    (loop)/install.386/vmlinuz iso-scan/filename=${iso} vga=788 --- quiet 
		initrd   (loop)/install.386/gtk/initrd.gz
	}
}
submenu &amp;quot;KNOPPIX -&amp;gt;&amp;quot; {
	set menu_color_normal=white/black
	set menu_color_highlight=white/green
	menuentry &amp;quot;KNOPPIX_V9.1DVD-2021-01-25-EN LiveCD 64-bit Linux Kernel v.5.10.10&amp;quot; {
		set iso=&amp;quot;/KNOPPIX_V9.1DVD-2021-01-25-EN.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/boot/isolinux/linux64 bootfrom=${iso} keyboard=us language-us
		initrd (loop)/boot/isolinux/minirt.gz
	}
	menuentry &amp;quot;KNOPPIX_V8.6.1-2019-10-14-EN LiveCD 32-bit Linux Kernel v5.3.5&amp;quot; {
		set iso=&amp;quot;/KNOPPIX_V8.6.1-2019-10-14-EN.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/boot/isolinux/linux bootfrom=${iso} keyboard=us language-us
		initrd (loop)/boot/isolinux/minirt.gz
	}
	menuentry &amp;quot;KNOPPIX_V7.2.0CD-2013-06-16-EN LiveCD NOT WORKING. Kernel panic. No init found. Try passing init= option to kernel&amp;quot; {
		set iso=&amp;quot;/KNOPPIX_V7.2.0CD-2013-06-16-EN.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/boot/isolinux/linux bootfrom=${iso} keyboard=us language-us
		initrd (loop)/boot/isolinux/minirt.gz
	}
}
submenu &amp;quot;SystemRescueCD -&amp;gt;&amp;quot; {
	set menu_color_normal=white/black
	set menu_color_highlight=white/green
	menuentry &amp;#039;Boot SystemRescue 11.03 using default options&amp;#039; {
		set gfxpayload=keep
		probe --set devuuid --fs-uuid (hd0,gpt1)
		set iso=&amp;quot;/systemrescue-11.03-amd64.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/sysresccd/boot/x86_64/vmlinuz archisobasedir=sysresccd img_dev=/dev/disk/by-uuid/${devuuid} img_loop=${iso} iomem=relaxed 
		initrd (loop)/sysresccd/boot/intel_ucode.img (loop)/sysresccd/boot/amd_ucode.img (loop)/sysresccd/boot/x86_64/sysresccd.img
	}

	menuentry &amp;#039;Boot SystemRescue 11.03 and copy system to RAM (copytoram)&amp;#039; {
		set gfxpayload=keep
		probe --set devuuid --fs-uuid (hd0,gpt1)
		set iso=&amp;quot;/systemrescue-11.03-amd64.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/sysresccd/boot/x86_64/vmlinuz archisobasedir=sysresccd iomem=relaxed img_dev=/dev/disk/by-uuid/${devuuid} img_loop=${iso} copytoram
		initrd (loop)/sysresccd/boot/intel_ucode.img (loop)/sysresccd/boot/amd_ucode.img (loop)/sysresccd/boot/x86_64/sysresccd.img 
	}

	menuentry &amp;#039;Boot SystemRescue 11.03 using basic display drivers (nomodeset)&amp;#039; {
		set gfxpayload=keep
		probe --set devuuid --fs-uuid (hd0,gpt1)
		set iso=&amp;quot;/systemrescue-11.03-amd64.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/sysresccd/boot/x86_64/vmlinuz archisobasedir=sysresccd img_dev=/dev/disk/by-uuid/${devuuid} img_loop=${iso} iomem=relaxed nomodeset
		initrd (loop)/sysresccd/boot/intel_ucode.img (loop)/sysresccd/boot/amd_ucode.img (loop)/sysresccd/boot/x86_64/sysresccd.img
	}
	menuentry &amp;quot;SystemRescueCD 5.3.1 Live, linux kernel v.4.14 (64bit, cache all files in memory and startX) wont start X on AMD Ryzen 4000 series. Shell seems to work.&amp;quot; {
		set iso=&amp;quot;/systemrescuecd-x86-5.3.1.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/isolinux/rescue64 isoloop=${iso} setkmap=us docache dostartx nomodeset
		initrd (loop)/isolinux/initram.igz
	}
	menuentry &amp;quot;SystemRescueCD 5.3.1 Live (64bit, default boot options)&amp;quot; {
		set iso=&amp;quot;/systemrescuecd-x86-5.3.1.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/isolinux/rescue64 isoloop=${iso} setkmap=us nomodeset
		initrd (loop)/isolinux/initram.igz
	}
	menuentry &amp;quot;SystemRescueCd 5.3.1 Live (32bit, default boot options)&amp;quot; {
		set iso=&amp;quot;/systemrescuecd-x86-5.3.1.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/isolinux/rescue32 isoloop=${iso} setkmap=us docache nomodeset
		initrd (loop)/isolinux/initram.igz
	}
}
submenu &amp;quot;Windows -&amp;gt;&amp;quot; {
	set menu_color_normal=white/black
	set menu_color_highlight=white/green
	menuentry &amp;quot;Windows 10 Installer&amp;quot; {
		insmod ntfs
		search --set=root --file /bootmgr
		ntldr /bootmgr
		boot
	}

	menuentry &amp;quot;Windows 7 or Windows 10 installer&amp;quot; --class windows --class os {
		insmod part_msdos
		insmod ntfs
		insmod ntldr
		search --no-floppy --file /bootmgr --set=root
		ntldr /bootmgr
		boot
	}
}
submenu &amp;#039;Utilities...&amp;#039; {
	menuentry &amp;#039;Memtest86+ memory tester for UEFI from SystemRescueCD 11.03&amp;#039; {
		insmod fat
		set gfxpayload=800x600,1024x768
		set iso=&amp;quot;/systemrescue-11.03-amd64.iso&amp;quot;
		loopback loop ${iso}
		linux (loop)/EFI/memtest.efi keyboard=both
	}
	menuentry &amp;quot;Memtest 86+ (from Kubnuntu 24.04.1)&amp;quot; {
		loopback loop /kubuntu-24.04.1-desktop-amd64.iso
		set gfxpayload=keep
		linux16	(loop)/boot/memtest86+x64.bin
	}
	menuentry &amp;#039;Start EFI Shell&amp;#039; {
		insmod fat
		insmod chain
		terminal_output console
		set iso=&amp;quot;/systemrescue-11.03-amd64.iso&amp;quot;
		loopback loop ${iso}
		chainloader (loop)/EFI/shell.efi
	}
}&lt;/pre&gt;

&lt;p&gt;
ну и старая версия
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;if [ x$feature_all_video_module = xy ]; then
    insmod all_video
else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
fi

menuentry &amp;quot;Install Kubnuntu 21.04 Desktop&amp;quot; {
    loopback loop /kubuntu-21.04-desktop-amd64.iso
    set gfxpayload=keep
    linux	(loop)/casper/vmlinuz  iso-scan/filename=/kubuntu-21.04-desktop-amd64.iso file=(loop)/preseed/kubuntu.seed maybe-ubiquity quiet splash ---
    initrd	(loop)/casper/initrd
}

menuentry &amp;quot;KNOPPIX_V8.2-2018-05-10-EN LiveCD&amp;quot; {
loopback loop /KNOPPIX_V8.2-2018-05-10-EN.iso
linux (loop)/boot/isolinux/linux bootfrom=/KNOPPIX_V8.2-2018-05-10-EN.iso keyboard=us language-us
initrd (loop)/boot/isolinux/minirt.gz
}

menuentry &amp;quot;KNOPPIX_V7.2.0CD-2013-06-16-EN LiveCD&amp;quot; {
loopback loop /KNOPPIX_V7.2.0CD-2013-06-16-EN.iso
linux (loop)/boot/isolinux/linux bootfrom=/KNOPPIX_V7.2.0CD-2013-06-16-EN.iso keyboard=us language-us
initrd (loop)/boot/isolinux/minirt.gz
}

menuentry &amp;quot;SystemRescueCd 5.3.1 Live (64bit, cache all files in memory and startX)&amp;quot; {
 loopback loop /systemrescuecd-x86-5.3.1.iso
 linux (loop)/isolinux/rescue64 isoloop=/systemrescuecd-x86-5.3.1.iso setkmap=us docache dostartx
 initrd (loop)/isolinux/initram.igz
}

menuentry &amp;quot;SystemRescueCd 5.3.1 Live (64bit, default boot options)&amp;quot; {
 loopback loop /systemrescuecd-x86-5.3.1.iso
 linux (loop)/isolinux/rescue64 isoloop=/systemrescuecd-x86-5.3.1.iso setkmap=us
 initrd (loop)/isolinux/initram.igz
}

menuentry &amp;quot;SystemRescueCd 5.3.1 Live (32bit, default boot options)&amp;quot; {
 loopback loop /systemrescuecd-x86-5.3.1.iso
 linux (loop)/isolinux/rescue32 isoloop=/systemrescuecd-x86-5.3.1.iso setkmap=us
 initrd (loop)/isolinux/initram.igz
}

menuentry &amp;quot;Install Kubnuntu 18.04.1 Desktop&amp;quot; {
    loopback loop /kubuntu-18.04.1-desktop-amd64.iso
	set gfxpayload=keep
	linux	(loop)/casper/vmlinuz  iso-scan/filename=/kubuntu-18.04.1-desktop-amd64.iso file=(loop)/preseed/kubuntu.seed boot=casper only-ubiquity quiet splash oem-config/enable=true ---
	initrd	(loop)/casper/initrd
}

menuentry &amp;quot;Install Kubnuntu 18.04.2 Server&amp;quot; {
    set isofile=&amp;quot;/ubuntu-18.04.2-live-server-amd64.iso&amp;quot;
    loopback loop $isofile
    linux (loop)/casper/vmlinuz iso-scan/filename=$isofile boot=casper quiet ---
    initrd (loop)/casper/initrd
}

menuentry &amp;quot;Install Kubnuntu 19.04 Desktop&amp;quot; {
    loopback loop /kubuntu-19.04-desktop-amd64.iso
	set gfxpayload=keep
	linux	(loop)/casper/vmlinuz  iso-scan/filename=/kubuntu-19.04-desktop-amd64.iso file=(loop)/preseed/kubuntu.seed boot=casper only-ubiquity quiet splash oem-config/enable=true ---
	initrd	(loop)/casper/initrd
}

menuentry &amp;quot;Install Ubnuntu 20.04 Server&amp;quot; {
    insmod part_gpt
    insmod ext2
    insmod search_fs_uuid
    rmmod tpm

    search --no-floppy --set=root --fs-uuid 36c1a912-77c7-4cec-8120-c2088e1e131c
    
    set isofile=&amp;quot;/ubuntu-20.04-live-server-amd64.iso&amp;quot;
    set gfxpayload=keep
    
    loopback loop ($root)$isofile

	linux	(loop)/casper/vmlinuz iso-scan/filename=${isofile} quiet ---
	initrd	(loop)/casper/initrd
}

menuentry &amp;quot;Install Ubuntu Server 16.04 i386&amp;quot; {
    loopback loop /ubuntu-16.04.6-server-i386.iso
	set gfxpayload=keep
	linux	(loop)/install/vmlinuz isoloop=/ubuntu-16.04.6-server-i386.iso file=/cdrom/preseed/ubuntu-server.seed quiet splash ---
	initrd	(loop)/install/initrd.gz
}

menuentry &amp;quot;Install Ubuntu Server 16.04 x64&amp;quot; {
    loopback loop /ubuntu-16.04.6-server-amd64.iso
	set gfxpayload=keep
	linux	(loop)/install/vmlinuz iso-scan/filename=/ubuntu-16.04.6-server-amd64.iso file=/cdrom/preseed/ubuntu-server.seed quiet splash ---
	initrd	(loop)/install/initrd.gz
}

menuentry &amp;#039;Debian 10 i386 Install&amp;#039; {
    set background_color=black
    loopback loop /debian-edu-10.0.0-i386-netinst.iso
    linux    (loop)/install.386/gtk/vmlinuz findiso=/debian-edu-10.0.0-i386-netinst.iso modules=debian-edu-install-udeb desktop=xfce vga=788 --- quiet 
    initrd   (loop)/install.386/gtk/initrd.gz
}

menuentry &amp;quot;Memtest 86+ (from Kubnuntu 19.04)&amp;quot; {
    loopback loop /kubuntu-19.04-desktop-amd64.iso
	set gfxpayload=keep
	linux16	(loop)/install/mt86plus
}&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;grub.cfg&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;grubcfg&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;4379-15955&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit6&quot; id=&quot;загрузка_образов_дискет_freedos_memtest_mhdd_etc&quot;&gt;Загрузка образов дискет (FreeDOS, MemTest, MHDD, etc...)&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В образе &lt;strong&gt;SystemRescueCD&lt;/strong&gt; в папке &lt;strong&gt;/bootdisk&lt;/strong&gt; есть образы дискет &lt;strong&gt;DOS&lt;/strong&gt; с разными утилитами. Пока что мне не удалось запустить ни один из таких образов. Однако, известно, что для их запуска используется утилита &lt;a href=&quot;https://www.syslinux.org/wiki/index.php?title=MEMDISK&quot; class=&quot;urlextern&quot; title=&quot;https://www.syslinux.org/wiki/index.php?title=MEMDISK&quot; rel=&quot;ugc nofollow&quot;&gt;memdisk&lt;/a&gt;, которая лежит в папке &lt;strong&gt;/isolinux&lt;/strong&gt;. &lt;br/&gt;

Немного информации есть тут: &lt;a href=&quot;https://www.linux.org.ru/forum/general/9653654&quot; class=&quot;urlextern&quot; title=&quot;https://www.linux.org.ru/forum/general/9653654&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.linux.org.ru/forum/general/9653654&lt;/a&gt; &lt;br/&gt;

Общий принцип - в качестве ядра указывается &lt;strong&gt;memdisk&lt;/strong&gt;, а в качестве &lt;strong&gt;initrd&lt;/strong&gt; - образ дискеты
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;linux16 (loop)/isolinux/memdisk
initrd16 (loop)/isolinux/fdboot.img&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043e\u0431\u0440\u0430\u0437\u043e\u0432 \u0434\u0438\u0441\u043a\u0435\u0442 (FreeDOS, MemTest, MHDD, etc...)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430_\u043e\u0431\u0440\u0430\u0437\u043e\u0432_\u0434\u0438\u0441\u043a\u0435\u0442_freedos_memtest_mhdd_etc&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;15956-16870&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit7&quot; id=&quot;установка_windows_с_такой_uefi-флешки&quot;&gt;Установка Windows с такой UEFI-флешки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
После копирования файлов iso-образа на раздел:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;rsync -av /mnt/cdrom/ /mnt/flash/&lt;/pre&gt;

&lt;p&gt;
Выяснилось, что стандартный способ загрузки Windows из &lt;strong&gt;grub&lt;/strong&gt; на такой флешке не работает! &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;menuentry &amp;quot;Windows 10 Installer&amp;quot; {
    insmod ntfs
    search --set=root --file /bootmgr
    ntldr /bootmgr
    boot
}&lt;/pre&gt;

&lt;p&gt;
Оказалось, что &lt;strong&gt;bootmgr&lt;/strong&gt;, используемый для загрузки компьютеров с &lt;strong&gt;BIOS&lt;/strong&gt; не загружается с &lt;strong&gt;GPT&lt;/strong&gt;-разделов.  С &lt;strong&gt;GPT&lt;/strong&gt;-разделов может загружаться только &lt;strong&gt;bootx64.efi&lt;/strong&gt;, для работы которого нужен &lt;strong&gt;EFI&lt;/strong&gt;. &lt;br/&gt;

Если попытаться загрузить &lt;strong&gt;bootmgr&lt;/strong&gt; с такой флешки, то комп просто перезагрузится. Без всяких сообщений. &lt;br/&gt;

Вариантов загрузки &lt;strong&gt;Windows&lt;/strong&gt; на &lt;strong&gt;BIOS&lt;/strong&gt;-компьютере с &lt;strong&gt;GPT&lt;/strong&gt;-диском несколько. &lt;br/&gt;

Первый - &lt;strong&gt;DUET&lt;/strong&gt; (Developer’s UEFI Environment). В этом случае, сначала загружается эмулятор &lt;strong&gt;EFI&lt;/strong&gt;, который загружает &lt;strong&gt;bootx64.efi&lt;/strong&gt;. &lt;br/&gt;

Второй - использование режима &lt;strong&gt;hybrid MBR&lt;/strong&gt;. Это можно сделать утилитой &lt;strong&gt;gdisk&lt;/strong&gt;. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Windows \u0441 \u0442\u0430\u043a\u043e\u0439 UEFI-\u0444\u043b\u0435\u0448\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_windows_\u0441_\u0442\u0430\u043a\u043e\u0439_uefi-\u0444\u043b\u0435\u0448\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:6,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;16871-18341&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;hybrid_mbr_-_гибридный_mbr&quot;&gt;Hybrid MBR - гибридный MBR&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.rodsbooks.com/gdisk/hybrid.html&quot; class=&quot;urlextern&quot; title=&quot;https://www.rodsbooks.com/gdisk/hybrid.html&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.rodsbooks.com/gdisk/hybrid.html&lt;/a&gt; &lt;br/&gt;

Обычный &lt;strong&gt;GPT&lt;/strong&gt;-диск имеет запись &lt;strong&gt;MBR&lt;/strong&gt; с единственным разделом типа &lt;strong&gt;0xEE (EFI GPT)&lt;/strong&gt;, внутри которого размещаются разделы &lt;strong&gt;GPT&lt;/strong&gt;. &lt;br/&gt;

Гибридный &lt;strong&gt;MBR&lt;/strong&gt;, помимо основного раздела типа &lt;strong&gt;0xEE (EFI GPT)&lt;/strong&gt; может содержать сведения о дополнительных (до трех штук) разделах, границы которых совпадают с границами разделов, описанных в &lt;strong&gt;GPT&lt;/strong&gt;. &lt;br/&gt;

Таким образом, операционки и утилиты, которые не знают ничего про &lt;strong&gt;GPT&lt;/strong&gt; смогут работать и с &lt;strong&gt;GPT&lt;/strong&gt;-разделов. Просто сведения о них они будут получать из &lt;strong&gt;MBR&lt;/strong&gt;. &lt;br/&gt;

Очень важно, не давать таким утилитам и операционкам изменять таблицу разделов. В противном случае - они просто порушат &lt;strong&gt;GPT&lt;/strong&gt;. &lt;br/&gt;

Такая конфигурация не описана стандартами и разные ОС обрабатывают её по разному. Поведение различных ОС при встрече с таким чудом &lt;a href=&quot;https://www.rodsbooks.com/gdisk/hybrid.html#reactions&quot; class=&quot;urlextern&quot; title=&quot;https://www.rodsbooks.com/gdisk/hybrid.html#reactions&quot; rel=&quot;ugc nofollow&quot;&gt;описано тут&lt;/a&gt;. &lt;br/&gt;

Запускаем &lt;strong&gt;gdisk&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo gdisk $disk&lt;/pre&gt;

&lt;p&gt;
Переходим в &lt;strong&gt;Recovery/transformation&lt;/strong&gt; меню:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;r&lt;/pre&gt;

&lt;p&gt;
Теперь создаем гибридную запись &lt;strong&gt;MBR&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;h&lt;/pre&gt;

&lt;p&gt;
Программа спросит - какие разделы должны быть добавлены в таблицу разделов гибридной записи вводим их номера через пробел:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Type from one to three GPT partition numbers, separated by spaces, to be
added to the hybrid MBR, in sequence:1 2 3 4&lt;/pre&gt;

&lt;p&gt;
Дальше - система спросит хотим ли мы разместить первой таблицу &lt;strong&gt;EFI&lt;/strong&gt;, чтобы работал &lt;strong&gt;GRUB&lt;/strong&gt;. Отвечаем &lt;strong&gt;yes&lt;/strong&gt;. &lt;br/&gt;

А также - какие коды типов присвоить разделам гибридной таблицы и делать ли их загрузочными. &lt;br/&gt;

Загрузочной делаем только 4-ю партицию. &lt;br/&gt;

Записываем изменения &lt;strong&gt;w&lt;/strong&gt;. &lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В двух словах - диск с гибридизированными разделами нельзя модифицировать утилитами, которые к этому не готовы (fdisk).   
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Hybrid MBR - \u0433\u0438\u0431\u0440\u0438\u0434\u043d\u044b\u0439 MBR&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;hybrid_mbr_-_\u0433\u0438\u0431\u0440\u0438\u0434\u043d\u044b\u0439_mbr&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:7,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;18342-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Thu, 16 Jan 2025 20:38:58 +0000</pubDate>
        </item>
        <item>
            <title>подготовка-к-экзамену-1y0-a20-citrix-xenapp-6-5</title>
            <link>https://wiki.autosys.tk/citrix/%D0%BF%D0%BE%D0%B4%D0%B3%D0%BE%D1%82%D0%BE%D0%B2%D0%BA%D0%B0-%D0%BA-%D1%8D%D0%BA%D0%B7%D0%B0%D0%BC%D0%B5%D0%BD%D1%83-1y0-a20-citrix-xenapp-6-5</link>
            <description>
&lt;p&gt;
Компиляция и перевод - Усик Михаил aka Mike - mike@autosys.tk&lt;br/&gt;

Публикация и тиражирование только с разрешения. :)&lt;br/&gt;

Экзамен сдан с первой попытки. Результат - 88%.&lt;br/&gt;

&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;подготовка_к_экзамену_1y0-a20_citrix_xenapp_65&quot;&gt;Подготовка к экзамену 1Y0-A20 Citrix® XenApp 6.5&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Основана на гайде Jeffrey C Rohrer (Jeff Rohrer), сайт Citrixxperience.com.&lt;br/&gt;

&lt;a href=&quot;http://citrixxperience.com/free/A20ResourceGuide.pdf&quot; class=&quot;urlextern&quot; title=&quot;http://citrixxperience.com/free/A20ResourceGuide.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrixxperience.com/free/A20ResourceGuide.pdf&lt;/a&gt;&lt;br/&gt;

Гайд содержит ссылки в документации на 53 топика.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Дампы &lt;del&gt;реальных&lt;/del&gt; пробных экзаменов можно взять тут: &lt;a href=&quot;https://wiki.autosys.tk/_media/exam_dumps_1y-a20.rar&quot; class=&quot;media mediafile mf_rar&quot; title=&quot;exam_dumps_1y-a20.rar (18.8 MB)&quot;&gt;Дампы экзаменов 1Y-A20&lt;/a&gt;&lt;br/&gt;

&lt;del&gt;Вопросы, которые попались мне на экзамене все были в этих дампах :) &lt;/del&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u043a \u044d\u043a\u0437\u0430\u043c\u0435\u043d\u0443 1Y0-A20 Citrix\u00ae XenApp 6.5&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430_\u043a_\u044d\u043a\u0437\u0430\u043c\u0435\u043d\u0443_1y0-a20_citrix_xenapp_65&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;272-906&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;общие_сведения_и_подготовка_стенда&quot;&gt;Общие сведения и подготовка стенда&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0449\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u0442\u0435\u043d\u0434\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0449\u0438\u0435_\u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f_\u0438_\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430_\u0441\u0442\u0435\u043d\u0434\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;907-983&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;об_инфраструктуре&quot;&gt;Об инфраструктуре&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
В рамках Citrix XenApp можно говорить о двух типах инфраструктуры:&lt;br/&gt;

1. Инфраструктура виртуализации, которая включает в себя серверы на которых исполняются приложения и серверы-контроллеры, которые обеспечивают создание сессий и администрирование -  хранилище (data store) статичной информации, сборщик (data collector) хранилище динамической информации, брокер XML, сервер лицензий, база данных изменений конфигурации(опционально), компоненты мониторинга.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2.   Инфраструктура предоставления и администрирования доступа к приложениям - Web-интерфейс, Шлюз безопасности Secure Gateway (опционально), Шлюз доступа  Access Gateway (опционально).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Функции контроллеров могут объединяться в рамках одного сервера, в зависимости от размеров фермы и нагрузки. &lt;br/&gt;

Принцип объединения - общие функции. Например - data collector объединяется с data store и XML broker, а также, возможно, с сервером лицензий и web-интрефейсом.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431_\u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;984-2611&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;компоненты&quot;&gt;Компоненты&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Data Store&lt;/strong&gt;&lt;br/&gt;

База данных MS SQL или Oracle, хранящая статическую информациюб о конфигурации фермы -  приложениях, пользователях, принтерах и т.д. Каждая ферма XenApp имеет единственный Data Store. Первый конфигурируемый в ферме сервер становится по-умолчанию data store.    &lt;br/&gt;

Не следует устанавливать XenApp на сервер с базой данных!&lt;br/&gt;

Скорость сервера с базой данных влияет на:&lt;br/&gt;

 - Скорость запуска многих серверов &lt;strong&gt;одновременно&lt;/strong&gt;.&lt;br/&gt;

 - Скорость добавления/удаления серверов из фермы.&lt;br/&gt;

 - Скорость работы инструментов администрирования.&lt;br/&gt;

При этом, скорость работы других функций, например запуск IMA на одном сервере и обновление его кеша будет гораздо сильнее зависеть от размеров фермы, чем от производительности Data Store.&lt;br/&gt;

Размер базы варьируется от 32 Мб для фермы из 50 серверов и до 211 для фермы из 1000 серверов. &lt;br/&gt;

Двухъядерного процессора и 2 Гб RAM достаточно для Data Store фермы из 250 серверов, 4 Гб Ram для фермы от 500 серверов.&lt;br/&gt;

БОльшая честь операций с Data Store - это чтение. &lt;br/&gt;

Более чем 1 DataStore и репликация актуальны в распределенных конфигурациях, где компоненты связаны каналами с высокой задержкой.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Data Collector&lt;/strong&gt;&lt;br/&gt;

Это база данных, работающая в оперативной памяти, которая хранит динамически изменяемую информацию - о текущей нагрузке, состоянии сессий, опубликованных приложениях, подключенных пользователях и использовании лицензий. Первый конфигурируемый в ферме сервер становится по-умолчанию data store. По-умолчанию все серверы в ферме конфигурируются как Data Collector с равными правами. При выходе из строя текущего основного Data Collector для продолжения нормальной работы происходят выборы нового Data Collector. Обычно на сервере с Data Collector не публикуют приложения.&lt;br/&gt;

Потребление памяти Data Collector возрастает по мере роста фермы. Для фермы из 1000 серверов потребление составит порядка 300 Мб.&lt;br/&gt;

Ресурсы процессора также потребляются незначительно и для фермы из 1000 серверов достаточно двухъядерного процессора Data Collector.&lt;br/&gt;

Так как взаимодействие DataCollector между собой создает трафик следует стремиться к уменьшению количества зон и Data Collector. Для зоны из 100 серверов, расположенных на одной площадке достаточно будет одного выделенного Data Collector, хотя не исключается и существование резервных Data Collector.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Zone&lt;/strong&gt;&lt;br/&gt;

 Зона это группа серверов, объединенных общим Data Collector. В фермах, где больше одной зоны, Data Collector работают как шлюзы между зонами.&lt;br/&gt;

Для нормальной работы зоны критичны высокая пропускная способность и низкая задержка сети. Наиболее критична - задержка. Каждый Data Collector постоянно держит открытое соединение с каждым Data Collector в зоне. Рекомендуется минимально возможное количество зон.&lt;br/&gt;

Несколько зон рекомендуется только в случае, когда серверы в одной ферме географически распределены по нескольким площадкам, связанным каналами с низкой пропускной способностью (например на разных континентах). &lt;br/&gt;

Не рекомендуется создавать более 5 зон.&lt;br/&gt;

Площадки с малым количеством серверов следует включать в зону с наибольшим количеством серверов.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Citrix XML Service и Citrix XML Broker&lt;/strong&gt;&lt;br/&gt;

Citrix XML Service устанавливается на каждый сервер в ферме. XML Broker определяет, какие приложения будут отображаться в web-интерфейсе пользователя, в зависимости от разрешений. Когда пользователь аутентифицируется на web-сервере, XML Broker:&lt;br/&gt;

 - Получает учетные данные от пользователи делает запрос к Independent Management Architecture (IMA) и формирует список опубликованных приложений, доступных пользователю и возвращает список в web-интерфейс. &lt;br/&gt;

 - При получении запроса от пользователя на запуск приложения XML Broker находит серверы с этим приложением, выбирает подходящий и возвращает его адрес Web-интерфейсу.&lt;br/&gt;

Рекомендуется размещать XML Broker на одном сервере с Data Collector.&lt;br/&gt;

Не рекомендуется публиковать приложения на сервере с XML Broker.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;2612-9249&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;методы_доставки_приложений&quot;&gt;Методы доставки приложений&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Приложения бывают streamed - упакованные в контейнер и hosted - установленные на сервер XenApp. &lt;br/&gt;

Для streamed приложений создается &lt;strong&gt;профиль приложения&lt;/strong&gt;, который размещается на сервере профилей или web-сервере и содержит XML-файл манифеста (.profile), файлы приожения, контрольную сумму, иконки (Icondata.bin), и скрипты исполняемые перед запуском и после завершения приложения.&lt;br/&gt;

Приложения могут быть опубликованы тремя разными способами, либо их сочетанием:&lt;br/&gt;

1. &lt;strong&gt;Installed on server&lt;/strong&gt; - приложение устанавливается как на сервер терминалов. Преимущества - независимость от пользовательского устройства, централизация.&lt;br/&gt;

2. &lt;strong&gt;Streamed to server&lt;/strong&gt; - приложение инкапсулируется в профиль приложения, хранится на сервере и при запуске обрабатывается на сервере. Преимущества - возможность запуска разных версий приложений на одном сервере, удобный централизованный апдейт приложений, независимость от  пользовательского устройства. Недостатки - некоторые приложения будут неправильно работать из профиля (например .NET). &lt;br/&gt;

3. &lt;strong&gt;Streamed to desktop&lt;/strong&gt; - приложение инкапсулируется в профиль приложения, хранится на сервере, а при запуске обрабатывается на компьютере пользователя. Преимущества - ресурсоемкие приложения используют ресурсы десктопа, возможность работы off-line. Недостатки - пользовательское устройство должно работать под управлением WIndows и иметь достаточные ресурсы.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Опубликовать можно как целиком рабочий стол, так и отдельное приложение. &lt;br/&gt;

Профили Streamed-приложений должны размещаться на файловом сервере с доступом CIFS либо HTTP/HTTPS. HTTP-доступ работает быстрее и может применяться для централизованной публикации для удаленных филиалов.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041c\u0435\u0442\u043e\u0434\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u0435\u0442\u043e\u0434\u044b_\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;9250-12223&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;группировка_приложений_на_серверах&quot;&gt;Группировка приложений на серверах&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Приложения могут размещаться по принципу одно приложение - на один или несколько серверов. Это называется &lt;strong&gt;siloing&lt;/strong&gt;. Каждое приложение запускается четко на заранее заданных серверах. Рекомендуется для критичных высоконагруженных приложений.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Напротив - &lt;strong&gt;non siloing&lt;/strong&gt; - это когда все приложения опубликованы на всех серверах. Не рекомендуется в случае конфликта приложений в рамках одного сервера. Для предотвращения конфликтов можно публиковать приложения как streamed. В этом случае приложение эффективно изолируется и конфиликтующие приложения нормально исполняются на одном сервере.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Рекомендуется тесно взаимодействующие между собой приложения публиковать на одном сервере. Это ускорит работу и снизит нагрузки на сети. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0413\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439_\u043d\u0430_\u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;12224-13623&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;балансировка_нагрузки&quot;&gt;Балансировка нагрузки&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Балансировка нагрузки может приследовать следующие цели: увеличение коэффициента использования серверов, обеспечение работы критичных приложений, обеспечение высокой доступности. &lt;br/&gt;

XenApp предлагает два метода балансировки:&lt;br/&gt;

1. &lt;strong&gt;Load Manager&lt;/strong&gt; - этот метод распределяет новые подключения к ферме. При запуске первого приложения, сессия пользователя будет размещена на наименее загруженном сервере фермы, в соответствии с заданными критериями. При запуске последующего приложения, если оно опубликовано на том же сервере, то распределения нагрузки происходить не будет. Если запускаемое приложение опубликовано на другом сервере, то сессия будет расшарена между серверами и будет будет произведено распределение. &lt;br/&gt;

2. &lt;strong&gt;Preferential Load Balancing&lt;/strong&gt; - балансировка на основе предпочтений. Для каждого приложения или пользователя можно задать лимиты потребления ресурсов CPU или уровень важности (Low, Normal, or High). По-умолчанию, всем приложениям и пользователям дается уровень важности Normal. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Различие между &lt;strong&gt;Load Manager&lt;/strong&gt; и &lt;strong&gt;Preferential Load Balancing&lt;/strong&gt; состоит в том, что для &lt;strong&gt;Load Manager&lt;/strong&gt; все сессии одинаковые, а  &lt;strong&gt;Preferential Load Balancing&lt;/strong&gt;  позволяет задавать для каждой сессии свои настройки. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для балансировки нагрузки, приложения, опубликованные на разных серверах, должны иметь одинаковые настройки. Этого можно добиться либо с помощью скриптов установки, либо Installation Manager, либо Microsoft System Center Configuration Manager, либо сделав приложения streamed.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0411\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430_\u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;13624-16212&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;сколько_нужно_серверов&quot;&gt;Сколько нужно серверов&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Для правильного определения нужного количества серверов в ферме используется инструмент &lt;strong&gt;Load Testing Services&lt;/strong&gt;, которые позволяет сымитировать запуск приложений пользователями и отследить важные параметры производительности -  Total Processor Time, Thread Queue Length, Memory Consumption и Pages Per Second.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0443\u0436\u043d\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043a\u043e\u043b\u044c\u043a\u043e_\u043d\u0443\u0436\u043d\u043e_\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;16213-16760&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit9&quot; id=&quot;планирование_инфраструктуры&quot;&gt;Планирование инфраструктуры&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;16761-16824&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;планирование_контроллеров&quot;&gt;Планирование контроллеров&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Независимо от размеров фермы понадобится как минимум один сервер-контроллер. На контроллере не рекомендуется публиковать приложения, хотя это и не запрещено. Запуск высоконагруженных опубликованных приложений на контроллере замедлит перечисление приложений. &lt;br/&gt;

Состояние контроллера следует оценивать по счетчикам производительности windows:&lt;br/&gt;

&lt;strong&gt;CPU 	- &amp;gt; 85% - 90%&lt;br/&gt;

Memory 	- &amp;gt; 80%&lt;br/&gt;

ResolutionWorkItemQueueReadyCount 	- &amp;gt; 0 for extended periods of time&lt;br/&gt;

WorkItemQueueReadyCount 	- &amp;gt; 0 for extended periods of time&lt;br/&gt;

LastRecordedLicenseCheck-OutResponseTime 	- &amp;gt; 5000 ms&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;16825-17749&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit11&quot; id=&quot;установка&quot;&gt;Установка&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt;ВАЖНО!&lt;br/&gt;

XenApp нельзя устанавливать на контроллер домена.&lt;br/&gt;

В одной ферме нельзя сочетать XenApp 6 XenApp более ранних версий.&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;ВАЖНО!!&lt;br/&gt;

Необходимо присвоить серверу имя перед началом установки XenApp.&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://habrahabr.ru/post/134334/&quot; class=&quot;urlextern&quot; title=&quot;http://habrahabr.ru/post/134334/&quot; rel=&quot;ugc nofollow&quot;&gt;http://habrahabr.ru/post/134334/&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1. Ставим и обновляем Windows Server 2008 R2. Ставим Microsoft NetFramework 4 и снова обновляем систему. &lt;br/&gt;

2. В папке с дистрибутивом XenApp запускаем &lt;strong&gt;autorun.exe&lt;/strong&gt;.&lt;br/&gt;

После этого установщик предложит нам установить NetFramework 3.5 с первым сервиспаком.&lt;br/&gt;

3.Далее необходимо установить роли. Нажимаем кнопку с &lt;strong&gt;Add server roles&lt;/strong&gt;.&lt;br/&gt;

Выбираем роли:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;License server&lt;br/&gt;

XenApp&lt;br/&gt;

Web Interface&lt;br/&gt;

&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Жмём «далее» на следующей вкладке выбираем&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;XML Service IIS Integration&lt;/strong&gt; - (обязательная компонента!).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Больше НИЧЕГО выбирать не надо!&lt;br/&gt;

Два раза жмём Next, Install и ждём, чем закончится.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После непродолжительной установки XenApp выдаст окно с кучей восклицательных знаков и кнопкой «Finish».&lt;br/&gt;

В этом нет ничего страшного, просто нужна перезагрузка. Закрываем все окна и перезагружаем сервак. После перезагрузки setup возобновит свою работу автоматически, нужно выбрать «Resume install».&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
ВНИМАНИЕ! Все компоненты должны установиться без ошибок!&lt;br/&gt;

Т.е. все пункты должны быть отмечены зелёной галочкой! В противном случае придётся сносить и ставить систему заново!&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В итоге всех телодвижений у нас должно появиться окно установщика со списком установленных компонент, напротив каждой из которых появится слово «configure».&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;17750-20217&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit12&quot; id=&quot;настройка&quot;&gt;Настройка&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Итак, XenApp установился и предлагает нам его настроить. В окне программы мы видим:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;XenApp — Specify Licensing&lt;br/&gt;

Web Interface — Configure&lt;br/&gt;

License Server — Configure&lt;br/&gt;

&lt;/strong&gt;&lt;br/&gt;

Начать надо с License Server — Configure.&lt;br/&gt;

По умолчанию предполагается наличие у вас лицензий Citrix XenApp Platinum Edition. Жмём Configure. Он предлагает настроить порты:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;License Server Port: 27000&lt;br/&gt;

Vendor Daemon Port: 7279&lt;br/&gt;

Management Console Web Port: 8082&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Порты менять не следует!&lt;br/&gt;

Задаём пароль админа и жмём ОК. &lt;strong&gt;License Server&lt;/strong&gt; помечен зелёной галочкой и перешёл в состояние &lt;strong&gt;Configured&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После этого нужно добавить лицензию в сервер лицензирования. Для этого идём Пуск — Все программы — Citrix — Management Consoles — License Administration Console.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В открывшемся Web-интерфейсе, справа в углу жмём &lt;strong&gt;Administration&lt;/strong&gt;, и вводим пароль админа, который мы указали ранее. Затем слева внизу переходим в раздел Vendor Daemon Configuration, и жмём кнопку Import License. Выбираем наш файл лицензии, ставим галку Overwrite License File (ведь лицензия у нас только эта), и жмём Import License. Далее жмём ОК, в списке лицензий выбираем нашу лицензию, и жмём кнопку Reread License.&lt;br/&gt;

image&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
На этом настройка лицензий завершена. Закрываем Web-интерфейс и переходим обратно к установщику.&lt;br/&gt;

В установщике нам нужно нажать Specify Licensing, чтобы XenApp увидел сервер лицензий и рабочие лицензии.&lt;br/&gt;

image&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вводим имя компьютера (тот, на котором мы и производим установку), жмём Test Connection, и жмём Next.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если XenApp распознал лицензии, то ничего менять не надо, он укажет параметры автоматом. Если не распознал — значит все предыдущие шаги нужно проделать заново. Жмём Apply и видим, что Specify Licensing перешло в состояние Configured и помечено зелёной галочкой. &lt;br/&gt;

Теперь сконфигурируем сам сервер &lt;strong&gt;XenApp&lt;/strong&gt;, нажав на &lt;strong&gt;Configure&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Т.к. это единственный и новый сервер XenApp в нашей сети, мы выбираем пункт &lt;strong&gt;Create a new server farm&lt;/strong&gt;, т.е. создаём новую ферму серверов XenApp.&lt;br/&gt;

Указываем имя фермы, остальные параметры на этой вкладке оставляем по умолчанию. Дальше установщик предлагает выбор: Создать новую базу Data Store или использовать существующую. Т.к. предполагается, что никаких баз у нас нет, мы жмём &lt;strong&gt;New Database&lt;/strong&gt;.&lt;br/&gt;

После этого вводим логин и пароль администратора сервера (только локального, даже если сервер в домене!), всё время жмём Next, оставляя параметры по умолчанию, и после нажатия Apply видим процесс настройки базы данных. Жмём Finish и Reboot.&lt;br/&gt;

В результате установится экземпляр Microsoft SQL Server Express с именем &lt;strong&gt;CITRIX_METAFRAME&lt;/strong&gt; и создастся база данных с именем &lt;strong&gt;MF20&lt;/strong&gt; с аутентификацией Windows.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После перезагрузки мы видим, что несконфигурированным у нас остался только Web-Interface. Перед его конфигурацией ОБЯЗАТЕЛЬНО нужно сделать следующее:&lt;br/&gt;

&lt;strong&gt;&lt;br/&gt;

cmd: altaddr /SET ВАШ_ВНЕШНИЙ_АЙПИ&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Сворачиваем установщик и запускаем:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Пуск — Все программы — Администрирование — Citrix — Management Consoles — CitrixApp Center&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В открывшемся окне выбираем:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Disable Authenticode Signature Checking&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Откроется окно настройки фермы XenApp, жмём Далее, снимаем галочку с позиции Single Sign-On, жмём Далее, жмём Add Local Computer — тут мы добавляем серверы, где установлен XenApp.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В нашем случае это локальный комп, его и добавляем.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Потом всё время далее, установщик дисковерит сеть и сервер на предмет соответствия всем указанным параметрам, и, если его всё устраивает, то предлагает нажать Apply. Жмём, и вот мы в консоли управления XenApp.&lt;br/&gt;

В целом на этом настройка самого XenApp закончена.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;20218-25915&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit13&quot; id=&quot;раздел_1_-_введение_в_архитектуру_citrix&quot;&gt;Раздел 1 - Введение в архитектуру Citrix&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 1 - \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 Citrix&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_1_-_\u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435_\u0432_\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443_citrix&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;25916-25994&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit14&quot; id=&quot;начало_конфигурирования_как_создать_и_выбрать_выделенный_контроллер&quot;&gt;1.1 - Начало конфигурирования. Как создать и выбрать выделенный контроллер.&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-install/ps-config-prep.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-install/ps-config-prep.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-install/ps-config-prep.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При конфигурировании фермы XenApp задается тип базы данных, используемый для Data Store.&lt;br/&gt;

Если выбран вариант базы данных  Microsoft SQL Server Express, то он будет установлен автоматически в процессе конфигурирования.&lt;br/&gt;

Если выбран вариант базы данных Microsoft SQL Server или Oracle, то перед началом конфигурирования следует создать базу, а в случае использования Oracle - установить соответствующий клиент и перезапустить сервер.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если осуществляется установка с помощью сценария командной строки и используется вариант базы данных Microsoft SQL Server или Oracle, то перед началом конфигурирования следует создать файл Data Source Name (DSN). Каждый сервер фермы должен иметь файл DSN, доступны либо локально, либо на сетевом ресурсе. Для указания месторасположения файла используется опция &lt;strong&gt;/DsnFile:dsn_file &lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если используется опция Configuration Logging и необходимо зашифровать журналируемые данные, то на серверы, присоединяемые к ферме, следует установить ключи шифрования. Это необходимо сделать после конфигурирования, но до перезагрузки сервера.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.1 - \u041d\u0430\u0447\u0430\u043b\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0447\u0430\u043b\u043e_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f_\u043a\u0430\u043a_\u0441\u043e\u0437\u0434\u0430\u0442\u044c_\u0438_\u0432\u044b\u0431\u0440\u0430\u0442\u044c_\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439_\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;25995-28120&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit15&quot; id=&quot;режим_работы_сервера_xenapp&quot;&gt;Режим работы сервера XenApp&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Все серверы XenApp могут обрабатывать сессии пользователей. Режим работы сервера определяет, будет ли сервер только обрабатывать сессии пользователей (режим session-only), либо кроме того будет выполнять функции сборщика данных(data collector) и на нем будет выполняться XML broker (режим controller and session-host).&lt;br/&gt;

Конфигурирование сервера в режим session-only может увеличить производительность, особенно в больших фермах с несколькими зонами. Количество серверов, сконфигурированных в режиме контроллера должно гарантировать бесперебойную работу фермы, при выходе одного из контроллеров из строя.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Сервер XenApp в режиме контроллера следит за состоянием других контроллеров в ферме и инициирует выборы сборщика данных (data collector), в случае необходимости.&lt;br/&gt;

 - Citrix XML Service должен запускаться на сервере, сконфигурированном в режиме контроллера.&lt;br/&gt;

 - Перечисление приложений выполняется только сервером в режиме контроллера.&lt;br/&gt;

 - AppCenter может обнаружить и подключить только серверы в режиме контроллера.&lt;br/&gt;

 - В каждой ферме и в каждой зоне должен быть как минимум один сервер в режиме контроллера.&lt;br/&gt;

 - Если выполняется миграция с XenApp ранних версий, то процердура миграции должна запускаться на сервере в режие контроллера XenApp 6.5.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При создании новой фермы, утилита XenApp Server Configuration Tool автоматически конфигурирует сервер в режиме контроллера. Первый сервер в ферме не может быть сконфигурирован в режиме session-only. Это гарантирует, что в ферме будет хотя бы один сборщика данных (data collector). При присоединении к ферме новых серверов можно выбрать режим. По-умолчанию сервер присоединяется к ферме в режиме контроллера. В предыдущих версиях XenApp была недоступна опция выбора режима сервера - все серверы работали в режиме контроллера.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При конфигурировании в режиме командной строки следует указать опцию &lt;strong&gt;/ImaWorkerMode:False &lt;/strong&gt; для работы в режиме контроллера (по-умолчанию)  или &lt;strong&gt;/ImaWorkerMode:True&lt;/strong&gt; для работы в режиме session-only.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы изменить режим работы уже сконфигурированного сервера следует отключить его от фермы и присоединить заново.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-zones-config-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-zones-config-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-zones-config-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u0430 XenApp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0436\u0438\u043c_\u0440\u0430\u0431\u043e\u0442\u044b_\u0441\u0435\u0440\u0432\u0435\u0440\u0430_xenapp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:15,&amp;quot;range&amp;quot;:&amp;quot;28121-32000&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit16&quot; id=&quot;конфигурирование_зон_и_сборщиков_данных&quot;&gt;Конфигурирование зон и сборщиков данных.&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Зона это группа серверов XenApp. Создавать зоны можно как во время инсталляции фермы, так и после. &lt;br/&gt;

По-умолчанию - все серверы фермы принадлежат одной зоне - &lt;strong&gt;Default Zone&lt;/strong&gt;. Каждая зона имеет один сервер, который хранит информацию о серверах и опубликованных приложениях зоны - это сборщик данных зоны (data collector).&lt;br/&gt;

В фермах, где зона не одна, сборщики данных функционируют как шлюзы между зонами.&lt;br/&gt;

В AppCenter список зон можно просматривать и при необходимости создавать новые зоны. В каждой зоне должен быть хотя бы один сервер. Пустые зоны удаляются автоматически.&lt;br/&gt;

При создании зоны или при присоединении к зоне нового сервера происходят выборы сборщика данных для данной зоны. Если текущий сборщик данных станет недоступным, то производятся новые выборы.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit17&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО: Никогда не следует делать сборщиком данных контроллер домена Windows. Эта ситуация может возникнуть при установке XenApp на контроллер домена. Citrix не поддерживает установку XenApp на контроллер домена.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;secid&amp;quot;:17,&amp;quot;range&amp;quot;:&amp;quot;33445-33815&amp;quot;} --&gt;
&lt;p&gt;
1. В AppCenter выберите ферму.&lt;br/&gt;

2. В панели слева раскройте дерево зон, чтобы увидеть текущие зоны.&lt;br/&gt;

3. Для создания новой зоны  - кликните Zones в левой панели, в меню &lt;strong&gt;Действие&lt;/strong&gt; (&lt;strong&gt;Actions&lt;/strong&gt;), кликните New &amp;gt; Create a new zone(эти опции меню доступны только если ферма содержит два или более серверов). Откроется мастер создания зоны. Следуйте инструкциям - задайте имя зоны и добавьте или удалите серверы.&lt;br/&gt;

4. На странице управления предпочтениями выбора серверов &lt;strong&gt;Election Preference&lt;/strong&gt; выберите сервер, кликните правой кнопкой и выберите &lt;strong&gt;Set server&amp;#039;s zone election preference&lt;/strong&gt; для того чтобы выбрать какое место сервер займет в ранге:&lt;br/&gt;

 - &lt;strong&gt;Most Preferred&lt;/strong&gt;. Сервер всегда будет первым в списке на выборах нового сборщика данных (data collector). Рекомендуется, чтобы только один сервер в зоне имел такой статус.&lt;br/&gt;

 - &lt;strong&gt;Preferred&lt;/strong&gt;. При выборе нового сборщика данных XenApp выберет сервер с этим статусом, если север &lt;strong&gt;Most Preferred&lt;/strong&gt; недоступен.&lt;br/&gt;

 - &lt;strong&gt;Default Preference&lt;/strong&gt;. Настройка по-умолчанию для всех серверов. Если при выборах недоступны &lt;strong&gt;Most Preferred&lt;/strong&gt; и &lt;strong&gt;Preferred&lt;/strong&gt;, то будет выбран сервер с этим статусом.&lt;br/&gt;

 - &lt;strong&gt;Not Preferred&lt;/strong&gt; - При этой настройке сервер будет участвовать в выборах только если нет других кандидатов на роль сборщика данных со статусами &lt;strong&gt;Most Preferred&lt;/strong&gt;, &lt;strong&gt;Preferred&lt;/strong&gt; или &lt;strong&gt;Default Preference&lt;/strong&gt;.&lt;br/&gt;

5. Перезагрузите серверы с измененными настройками, чтобы они вступили в силу. Это необходимо, чтобы настройки были обновлены на текущих сборщиках данных в зонах.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Список зон отображается на центральной панели в соответствии с предпочтениями выборов.&lt;br/&gt;

Для изменения настроек существующих зон:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Для того чтобы переименовать зону кликните в панели слева по ней правой кнопкой мыши и выберите &lt;strong&gt;Переименовать&lt;/strong&gt; (&lt;strong&gt;Rename&lt;/strong&gt;).&lt;br/&gt;

 - Для того чтобы изменить настройки выборов сборщика данных выберите зону, затем в центральной панели выберите вкладку &lt;strong&gt;Election Preference&lt;/strong&gt;, кликните правой кнопкой по серверу в центральной панели и выберите &lt;strong&gt;Set server&amp;#039;s zone election preference&lt;/strong&gt;.&lt;br/&gt;

 - Для того чтобы переместить сервер в другую зону кликните правой кнопкой по серверу в центральной панели и выберите &lt;strong&gt;Change server&amp;#039;s zone membership&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u043e\u043d \u0438 \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0437\u043e\u043d_\u0438_\u0441\u0431\u043e\u0440\u0449\u0438\u043a\u043e\u0432_\u0434\u0430\u043d\u043d\u044b\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:16,&amp;quot;range&amp;quot;:&amp;quot;32001-37408&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit18&quot; id=&quot;определение_типа_хранилища_для_data_store_в_соответствии_с_требованиями_и_его_установка&quot;&gt;1.2 - Определение типа хранилища для Data Store в соответствии с требованиями и его установка&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-datastore-intro-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-datastore-intro-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-datastore-intro-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для создании фермы XenApp должно быть создано хранилище конфигурации, к которому обращаются сервера при загрузке. В хранилище содержатся следующая информация:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Сведения о конфигурации фермы&lt;br/&gt;

 - Сведения об опубликованных приложениях&lt;br/&gt;

 - Конфигурации серверов&lt;br/&gt;

 - Учетные записи администраторов Citrix&lt;br/&gt;

 - Информация о конфигурации принтеров&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.2 - \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0434\u043b\u044f Data Store \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c\u0438 \u0438 \u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435_\u0442\u0438\u043f\u0430_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_\u0434\u043b\u044f_data_store_\u0432_\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438_\u0441_\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c\u0438_\u0438_\u0435\u0433\u043e_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:18,&amp;quot;range&amp;quot;:&amp;quot;37409-38304&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit19&quot; id=&quot;выбор_базы_данных&quot;&gt;Выбор базы данных&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
При выборе базы данных следует учитывать следующие факторы:&lt;br/&gt;

 - Количество серверов в ферме и перспективы его увеличения&lt;br/&gt;

 - Компетентность администратора баз данных. (MS SQL или Oracle)&lt;br/&gt;

 - Перспектива расширения предприятия и соответствующего расширения базы данных и усложнения обслуживания&lt;br/&gt;

 - Требования к обслуживанию базы данных - резервное копирование, избыточность для отказоустойчивости, репликация&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Основные рекомендации по размерам БД приведены в таблице:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;/em&gt;&lt;em class=&quot;u&quot;&gt;&lt;/em&gt;&lt;em class=&quot;u&quot;&gt;&lt;/em&gt;&lt;em class=&quot;u&quot;&gt;&lt;/em&gt;Маленькая&lt;em class=&quot;u&quot;&gt;|&lt;/em&gt;Средняя&lt;em class=&quot;u&quot;&gt;|&lt;/em&gt;Большая&lt;em class=&quot;u&quot;&gt;|&lt;/em&gt;Очень большая&lt;br/&gt;

Серверов&lt;em class=&quot;u&quot;&gt;&lt;/em&gt;&lt;em class=&quot;u&quot;&gt;&lt;/em&gt;|&lt;em class=&quot;u&quot;&gt;1-50&lt;/em&gt;&lt;em class=&quot;u&quot;&gt;|&lt;/em&gt;25-100&lt;em class=&quot;u&quot;&gt;_|&lt;/em&gt;50-100&lt;em class=&quot;u&quot;&gt;_|&lt;/em&gt;100 или больше&lt;br/&gt;

Пользователей&lt;em class=&quot;u&quot;&gt;_|_&amp;lt; 150&lt;/em&gt;&lt;em class=&quot;u&quot;&gt;|&lt;/em&gt;&amp;lt; 3000&lt;em class=&quot;u&quot;&gt;_|&lt;/em&gt;&amp;lt; 5000&lt;em class=&quot;u&quot;&gt;_|&lt;/em&gt;&amp;gt; 3000&lt;br/&gt;

Приложений&lt;em class=&quot;u&quot;&gt;&lt;/em&gt;&lt;em class=&quot;u&quot;&gt;|&lt;/em&gt;&amp;lt; 100&lt;em class=&quot;u&quot;&gt;_|&lt;/em&gt;&amp;lt; 100&lt;em class=&quot;u&quot;&gt;&lt;/em&gt;|&lt;em class=&quot;u&quot;&gt;&amp;lt; 500&lt;/em&gt;&lt;em class=&quot;u&quot;&gt;|&lt;/em&gt;&amp;lt; 2000&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Microsoft SQL Server и Oracle подходят инсталляций для любого размера. При их использовании в распределенных фермах можно добиться прироста производительности с помощью репликации и распределения нагрузки по нескольким серверам баз данных.&lt;br/&gt;

 - Не устанавливайте XenApp на серверах SQL Server или Oracle&lt;br/&gt;

 - SQL Server Express подходит для маленьких, большинства средних инсталляций, физически размещенных в одном месте &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u0431\u0430\u0437\u044b_\u0434\u0430\u043d\u043d\u044b\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:19,&amp;quot;range&amp;quot;:&amp;quot;38305-40263&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit20&quot; id=&quot;определение_необходимых_служб_протоколов_и_сетевых_портов&quot;&gt;1.3 - Определение необходимых служб, протоколов и сетевых портов&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.3 - \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0441\u043b\u0443\u0436\u0431, \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432 \u0438 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u043e\u0440\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435_\u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445_\u0441\u043b\u0443\u0436\u0431_\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432_\u0438_\u0441\u0435\u0442\u0435\u0432\u044b\u0445_\u043f\u043e\u0440\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:20,&amp;quot;range&amp;quot;:&amp;quot;40264-40390&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit21&quot; id=&quot;номера_портов&quot;&gt;Номера портов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-securing-cfg-tcp-ports.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-securing-cfg-tcp-ports.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-securing-cfg-tcp-ports.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В таблице приведены номера сетевых портов, используемые службами XenApp. Эта информация полезна для конфигурирования межсетевых экранов.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Citrix AppCenter&lt;/strong&gt; - порт &lt;strong&gt;135&lt;/strong&gt;, не конфигурируется&lt;br/&gt;

&lt;strong&gt;Citrix SSL Relay &lt;/strong&gt; - порт &lt;strong&gt;443&lt;/strong&gt;, конфигурируется в настройках Microsoft Internet Information Service (IIS)&lt;br/&gt;

&lt;strong&gt;Citrix XML Service&lt;/strong&gt; - порт &lt;strong&gt;80&lt;/strong&gt;, конфигурируется при установке&lt;br/&gt;

&lt;strong&gt;Client-to-server (directed UDP)&lt;/strong&gt; - порт &lt;strong&gt;1604&lt;/strong&gt;, не конфигурируется&lt;br/&gt;

&lt;strong&gt;ICA sessions (входящий clients to servers)&lt;/strong&gt; - порт &lt;strong&gt;1494&lt;/strong&gt; 	See ICAPORT&lt;br/&gt;

&lt;strong&gt;License Management Console&lt;/strong&gt; - порт &lt;strong&gt;8082&lt;/strong&gt;, 	See the licensing documentation&lt;br/&gt;

&lt;strong&gt;Server to license server&lt;/strong&gt; - порт &lt;strong&gt;27000&lt;/strong&gt;, для изменения в консоли откройте свойства фермы или сервера и выберите &lt;strong&gt;License Server&lt;/strong&gt;&lt;br/&gt;

&lt;strong&gt;Server to Microsoft SQL Server or Oracle server&lt;/strong&gt; - порты &lt;strong&gt;139, 1433, or 443&lt;/strong&gt; for MS-SQL, за дополнительно инфрмацией обращаться в документацию сервера баз данных&lt;br/&gt;

&lt;strong&gt;Server to server&lt;/strong&gt; - порт &lt;strong&gt;2512&lt;/strong&gt; 	See IMAPORT&lt;br/&gt;

&lt;strong&gt;Remote AppCenter to server&lt;/strong&gt; - порт &lt;strong&gt;2513 &lt;/strong&gt;	See IMAPORT&lt;br/&gt;

&lt;strong&gt;Session reliability&lt;/strong&gt; - порт &lt;strong&gt;2598&lt;/strong&gt;, конфигурируется с помощью политики Citrix Computer.&lt;br/&gt;

—————————————&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u043e\u043c\u0435\u0440\u0430 \u043f\u043e\u0440\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u043e\u043c\u0435\u0440\u0430_\u043f\u043e\u0440\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:21,&amp;quot;range&amp;quot;:&amp;quot;40391-42103&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit22&quot; id=&quot;конфигурирование_средств_поддержания_сессий_-_session_reliability&quot;&gt;Конфигурирование средств поддержания сессий - &amp;#039;&amp;#039;&amp;#039;Session Reliability&amp;#039;&amp;#039;&amp;#039;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-sess-rel-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-sess-rel-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-sess-rel-v2.html&lt;/a&gt;&lt;br/&gt;

Средства поддержания сессий (Session Reliability) поддерживает сессии пользователей в рабочем состоянии на устройстве пользователя при разрывах сетевого соединения. Пользователи продолжают видеть приложения, с которыми они работают пока не наладится связь.&lt;br/&gt;

Принцип действия - на сервере есть специальный сервис - XTE, который продолжает взаимодействие с сессией пользователя на сервере. Таким образом сервер не считает, что пользователь отключился.&lt;br/&gt;

Этот функционал особенно полезен для мобильных пользователей, использующих беспроводные подключения.&lt;br/&gt;

С функцией &lt;strong&gt;Session Reliabilit&lt;/strong&gt;y, сессия пользователя остается активной на сервере. Для индикации того что связь разорвана, экран пользователя замирает, а курсор принимает вид песочных часов до тех пор, пока связь не восстановится. Переподключение к сеcсии производится без запроса учетных данных.&lt;br/&gt;

Пользователи &lt;strong&gt;Citrix Receiver &lt;/strong&gt;не могут повлиять на настройки, сделанные на сервере.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit23&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: доступно использование &lt;strong&gt;Session Reliability&lt;/strong&gt; с &lt;strong&gt;Secure Sockets Layer (SSL)&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table1&amp;quot;,&amp;quot;secid&amp;quot;:23,&amp;quot;range&amp;quot;:&amp;quot;43998-44126&amp;quot;} --&gt;
&lt;p&gt;
По умолчанию &lt;strong&gt;Session Reliability&lt;/strong&gt; включена с помощью политик на сервере. Вы можете изменить эту политику нужным образом. Можно задать сетевой порт, который прослушивается сервером XenApp для реализации Session Reliability и задать время, в течение которого сохраняется сессия пользователя на сервере.&lt;br/&gt;

Можно задать три параметра политики (&lt;strong&gt;Citrix Computer → ICA → Session reliability&lt;/strong&gt;):&lt;br/&gt;

 - Параметр политики &lt;strong&gt;Session reliability connections &lt;/strong&gt;включает или отключает этот функционал.&lt;br/&gt;

 - Параметр &lt;strong&gt;Session reliability port number&lt;/strong&gt; - задает номер порта. на котром будет прослушивать сервис XTE&lt;br/&gt;

 - Параметр &lt;strong&gt;Session reliability timeout&lt;/strong&gt; по-умолчанию составляет 180 секунд. Он задает, сколько времени сессия может висеть на сервере, при переподключении пользователя. В течение этого времени не потребуется вводить учетные данные. Слишком большой интервал создает потенциальную угрозу безопасности - если пользователь покинет клиентское устройство, то неавторизованный пользователь может получить доступ к сессии.&lt;br/&gt;

Для входящего трафик сервис Session reliability по-умолчанию использует порт 2598, если данная настройка не была изменена с помощью политик.&lt;br/&gt;

Если требуется включить повторную аутентификацию при разрывах связи, то следует включить функцию &lt;strong&gt;Auto Client Reconnect&lt;/strong&gt; с помощью политики &lt;strong&gt;Citrix Computer&lt;/strong&gt;.&lt;br/&gt;

Если включены обе политики - &lt;strong&gt;Session Reliability&lt;/strong&gt; и &lt;strong&gt;Auto Client Reconnect&lt;/strong&gt;, то они сработают последовательно - политика Session Reliability закроет или отключит сессию пользователя по истечении заданного времени. После этого в силу вступает политика Auto Client Reconnect, которая будет пытаться переподключить пользователя к отключенной сессии.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u0441\u0435\u0441\u0441\u0438\u0439 - &amp;#039;&amp;#039;&amp;#039;Session Reliability&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0440\u0435\u0434\u0441\u0442\u0432_\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f_\u0441\u0435\u0441\u0441\u0438\u0439_-_session_reliability&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:22,&amp;quot;range&amp;quot;:&amp;quot;42104-46909&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit24&quot; id=&quot;как_работает_ica_session_reliability_и_common_gateway_protocol_cgp&quot;&gt;Как работает ICA Session Reliability и Common Gateway Protocol (CGP)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX104147&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX104147&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX104147&lt;/a&gt;&lt;br/&gt;

Клиент Citrix XenApp, сконфигурированный с Session Reliability устанавливает подключения на порт 2598, а не на 1494. При этом ранние версии клиентов (версии до 7.х) даже при использовании Session Reliability подключались на порт 1494.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Порт 2598 прослушивается для переподключения сброшенных подключений. При включенной Session Reliability клиент ICA тунеллирует трафик протокола ICA в протокол Common Gateway Protocol, который как раз и работает на порту 2598. Сервис XTE работает как транслятор, извлекая трафик ICA из пакетов протокла Common Gateway Protocol затем перенаправляя его на порт 1494.&lt;br/&gt;

Аналогично и сервер XenApp посылает трафик ICA к клиенту через сервис XTE. Таким образом, при разрыве соединения, сервер XenApp продолжает слать трафик сервису XTE, который буферизует до момента переподключения клиента. Сессия пользователя на сервер XenApp остается в активном состоянии до тех пор, пока сервис XTE буферизует трафик от сервера XenApp.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 ICA Session Reliability \u0438 Common Gateway Protocol (CGP)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442_ica_session_reliability_\u0438_common_gateway_protocol_cgp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:24,&amp;quot;range&amp;quot;:&amp;quot;46910-48625&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit25&quot; id=&quot;ошибка_-_an_error_occurred_when_processing_incoming_cgp&quot;&gt;Ошибка - An error occurred when processing incoming CGP&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX114680&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX114680&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX114680&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В логе ошибок приложения появляетс запись - “An error occurred when processing incoming CGP downstream data.” (Event ID 103)&lt;br/&gt;

Сообщение возникает когда на сервере нет сессий.&lt;br/&gt;

Кроме того, в логе сервися XTE также есть ошибки:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[Fri Jul 20 15:51:14 2007] [notice] Server built: Jan 24 2007 23:31:11
[Fri Jul 20 15:51:14 2007] [notice] Parent: Created child process 4500
[Fri Jul 20 15:50:57 2007] [notice] Child 4500: Child process is running
[Fri Jul 20 15:50:57 2007] [notice] async engine initialized successfully,
8 worker threads started
[Fri Jul 20 15:50:57 2007] [notice] Child 4500: Acquired the start mutex.
[Fri Jul 20 15:50:57 2007] [notice] Child 4500: Starting 150 worker
threads.
[Fri Jul 20 15:53:46 2007] [error] (70014)End of file found: An error
occurred when processing incoming CGP downstream data
[Fri Jul 20 15:53:46 2007] [error] (70014)End of file found: S 0x7AAA08:
ap_get_brigade failed
[Fri Jul 20 15:58:38 2007] [error] (70014)End of file found: An error
occurred when processing incoming CGP downstream data
[Fri Jul 20 15:58:38 2007] [error] (70014)End of file found: S 0x7A9FE8:&lt;/pre&gt;

&lt;p&gt;
Причиной такого поведения может быть сканирование портов. При сканировании сервис XTE получает неопознанные данные и фиксирует ошибку.&lt;br/&gt;

Для исключения такого в будущем следует отключить подробное журналирование XTE.&lt;br/&gt;

Для этого в файле C:\Program Files\Citrix\XTE\conf\httpd.conf с помощью WordPad следует добавить строки:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;    # Log Level
    loglevel emerg
    Following is an excerpt of the file after adding the required content:
    #CGP Listen Port
    Listen 2598

    # Log Level
    loglevel emerg&lt;/pre&gt;

&lt;p&gt;
Затем сохранить файл и закрыть редактор. Перезапустите сервис XTE для вступления изменений в силу.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit26&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table2&amp;quot;,&amp;quot;secid&amp;quot;:26,&amp;quot;range&amp;quot;:&amp;quot;50917-51079&amp;quot;} --&gt;
&lt;p&gt;
Во избежание этого следует установить на файл атрибут Read-only и перезагрузить сервер.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit27&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table3&amp;quot;,&amp;quot;secid&amp;quot;:27,&amp;quot;range&amp;quot;:&amp;quot;51236-51239&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0448\u0438\u0431\u043a\u0430 - An error occurred when processing incoming CGP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0448\u0438\u0431\u043a\u0430_-_an_error_occurred_when_processing_incoming_cgp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:25,&amp;quot;range&amp;quot;:&amp;quot;48626-51241&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit28&quot; id=&quot;практический_случайssl_relay_и_session_reliability&quot;&gt;Практический случай: SSL Relay и Session Reliability&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX128705&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX128705&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX128705&lt;/a&gt;&lt;br/&gt;

&lt;strong&gt;&lt;br/&gt;

Проблема:&lt;/strong&gt;&lt;br/&gt;

Для шифрования XML-трафика Web-интерфейса и трафика ICA между сервером и клиентом используется SSL Relay. У заказчика есть вопрос по работе Session Reliability через SSL Relay.&lt;br/&gt;

Заказчика беспокоило то, что в конфигурации SSL Relay заданы только порты XML (8080) и ICA (1494), а сервис Session Reliability работает на порту 2598, который не прописан в конфигурации SSL Relay. Заказчик хочет знать - работает ли в этой конфигурации Session Reliability ?&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Решение:&lt;/strong&gt;&lt;br/&gt;

Для выяснения, работает ли в данной конфигурации Session Reliability собрана тестовая среда.&lt;br/&gt;

Затем сконфигурирован транспорт трафика XML к SSL Relay, а в свойствах приложения включена опция SSL/TLS.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В конфигурацию SSL Relay добавлены порты 8080 для трафика XML и 1494 для трафика ICA. Для фермы включена Session Reliability и выполнено внутреннее подключение с windows 7 клиентом версии 12.1.&lt;br/&gt;

В Citrix Connection Centre видно, что к приложению созданы два подключенния - одно зашифрованное SSL/TSL, а второе - нет. В свойствах этих подключений отображен используемый уровень шифрования - 128-bit SSL/TSL для зашифрованного и Basic для незашифрованного.&lt;br/&gt;

при запуске TCP view на сервере XenApp видно, что XTE.exe имеет только по одному подключению на порт 2598 для незашифрованного соединения и на порт 443 для зашифрованного SSL. То есть каждая сессия использует только одно соединение только к одному порту.&lt;br/&gt;

Если отключить оба клиента - XTE.exe будет слушать два порта - 443 и 2598.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Т.к. в TCP view не видно, чтобы прослушивался порт 1494 - сразу убираем его из конфигурации SSL/Relay.&lt;br/&gt;

Также убираем и порт 2598, т.к. при SSL-подключении, подключения на 2598 идут через порт 443.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Проверяем - клиент успешно подключается и в свойствах подключения Session Reliability: Enabled, то есть работает!&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В конфигурации SSL Relay остается только порт для XML трафика - 8080.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit29&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table4&amp;quot;,&amp;quot;secid&amp;quot;:29,&amp;quot;range&amp;quot;:&amp;quot;54392-54406&amp;quot;} --&gt;
&lt;p&gt;
Для работы Session Reliability через SSL Relay прописывать порт 2598 не требуется!^&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439: SSL Relay \u0438 Session Reliability&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439_\u0441\u043b\u0443\u0447\u0430\u0439ssl_relay_\u0438_session_reliability&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:28,&amp;quot;range&amp;quot;:&amp;quot;51242-54533&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit30&quot; id=&quot;citrix_license_server&quot;&gt;Citrix License Server&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Citrix License Server&lt;/strong&gt; может быть установлен на любом сервере фермы.&lt;br/&gt;

Для установки - подключитесь к серверу фермы с учетными данными администратора. Из папки дистрибутива запустите autorun.exe и установите компонент Citrix License Server.&lt;br/&gt;

Компоненты срвера лицензирования устанавливаются в папку &lt;strong&gt;C:\Program Files\Citrix\Licensing&lt;/strong&gt; на системе 32-bit и в папку &lt;strong&gt;C:\Program Files (x86)\Citrix\Licensing&lt;/strong&gt; на 64-битной системе.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Порты, на которых по-умолчанию работают сервисы Citrix License Server:&lt;br/&gt;

&lt;strong&gt;&lt;br/&gt;

License server - 27000&lt;br/&gt;

Vendor daemon - 7279&lt;br/&gt;

Web-консоль - 8082&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После установки порты можно настроить как нужно Через Web-консоль.&lt;br/&gt;

Задайте пароль для пользователя admin.&lt;br/&gt;

В Web-консоли &lt;strong&gt;Citrix License Server&lt;/strong&gt; порты задаются в разделах Server Configuration и Vendor Daemon Configuration.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Citrix License Server&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;citrix_license_server&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:30,&amp;quot;range&amp;quot;:&amp;quot;54534-55777&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit31&quot; id=&quot;обзор_сервисов_системных_xenapp_и_учетных_записей_под_которыми_работают_эти_сервисы&quot;&gt;Обзор сервисов системных XenApp и учетных записей, под которыми работают эти сервисы&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-services-overview.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-services-overview.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-services-overview.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Ниже приведены сведения о названии сервиса в оснастках Windows, имени исполняемого файла, зависимости от других сервисов.&lt;br/&gt;

Не приведены сервисы Citrix License Server.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix 64-bit Virtual Memory Optimization &lt;/strong&gt;, имя файла - &lt;strong&gt;ctxsfosvc64.exe&lt;/strong&gt;, запуск - &lt;strong&gt;Local System/ Manual&lt;/strong&gt;, описание - Динамическая оптимизация 64-битных приложений на сервере XenApp. Зависимостей нет.&lt;br/&gt;

&lt;strong&gt;&lt;br/&gt;

- Citrix Client Network (CdmService)&lt;/strong&gt;, имя файла - &lt;strong&gt;cdmsvc.exe&lt;/strong&gt;, запуск - &lt;strong&gt;Local System/ Manual&lt;/strong&gt;, описание - перенаправляет диски и устройства клиента для доступа в сессии. Зависимости - &lt;strong&gt;Client Drive Mapping (CDM), Windows Management Instrumentation Driver Extensions, Workstation&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix CPU Utilization Mgmt/CPU Rebalancer (CTXCPUBal)&lt;/strong&gt;, имя файла - &lt;strong&gt;ctxcpubal.exe&lt;/strong&gt;, запуск - &lt;strong&gt;.\ctx_cpuuser/Manual&lt;/strong&gt;, описание - Улучшает распределение ресурсов на многоядерных CPU. Зависимостей нет.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix CPU Utilization Mgmt/Resource Mgmt (ctxcpuSched)&lt;/strong&gt;, имя файла - &lt;strong&gt;ctxcpusched.exe&lt;/strong&gt;, запуск - &lt;strong&gt;Local System/ Manual&lt;/strong&gt;, описание - Распределяет ресурсы в соответствии с заданными политиками. Зависимости - Remote Procedure Call (RPC)&lt;br/&gt;

&lt;strong&gt;- Citrix Diagnostic Facility COM Server (CdfSvc)&lt;/strong&gt;, имя файла - &lt;strong&gt;CdfSvc.exe&lt;/strong&gt;, запуск - &lt;strong&gt;NT AUTHORITY\ Network Service/Automatic&lt;/strong&gt;, описание - Управляет диагностическими сессиями, которые позволяют обнаружить проблемы на сервере XenApp. Зависимости - Remote Procedure Call (RPC)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix Encryption Service &lt;/strong&gt;, имя файла - &lt;strong&gt;encsvc.exe&lt;/strong&gt;, запуск - &lt;strong&gt;NT AUTHORITY\ Network Service/Automatic&lt;/strong&gt;, описание - Реализует безопасное взаимодействие с 128-бит RC5 шифрованием между Citrix Receiver и XenApp. Зависимости - Windows Management Instrumentation Driver Extensions.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix End User Experience Monitoring (Citrix EUEM)&lt;/strong&gt;, имя файла - &lt;strong&gt;SemsService.exe&lt;/strong&gt;, запуск - &lt;strong&gt;Local System/ Manual&lt;/strong&gt;, описание - Собирает и сопоставляет сведения о использовании системы конечными пользователями. Зависимости - Citrix SMC Support Driver.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix Health Monitoring and Recovery (CitrixHealthMon)&lt;/strong&gt;, имя файла - &lt;strong&gt;HCAService.exe&lt;/strong&gt;, запуск - &lt;strong&gt;NT AUTHORITY\ Local Service/ Automatic&lt;/strong&gt;, описание - Обеспечивает мониторинг состояния и восстановление в случае проблем. Зависимости - &lt;strong&gt;Citrix Independent Management Architecture service&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix Independent Management Architecture (IMAService)&lt;/strong&gt;, имя файла - &lt;strong&gt;maSrv.exe&lt;/strong&gt;, запуск - &lt;strong&gt;NT AUTHORITY\ NetworkService/ Automatic&lt;/strong&gt;, описание - Обеспечивает управление фермой XenApp. Зависимости - Citrix Services Manager service, IPsec Policy Agent, Remote Procedure Call (RPC), TCP/IP Protocol Driver, Server, Windows Management Instrumentation Driver Extensions, Workstation.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
- Citrix MFCOM Service (MFCom), имя файла - mfcom.exe, запуск - NT AUTHORITY\ NetworkService/ Automatic, Описание - Обеспечивает сервис COM, который реализует функции удаленного управления. Зависимости - Remote Procedure Call (RPC), Citrix Independent Management Architecture service, Citrix Services Manager service.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
- Citrix Print Manager Service (cpsvc), имя файла - CpSvc.exe, запуск - Local Service/Automatic, Описание - Управляет созданием принтеров и перенаправлением дисков в сессиях XenApp. Поддерживает функицю Citrix Universal Printing.Зависимости - Print Spooler, Remote Procedure Call (RPC).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
- Citrix Secure Gateway Proxy (CtxSecGwy), имя файла - CtxSGSvc.exe, запуск - NT AUTHORITY\ Network Service/ Automatic. Описание - Proxy для сервера Citrix Secure Gateway. Зависимостей нет.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
- Citrix Services Manager (IMAAdvanceSrv), имя файла - IMAAdvanceSrv.exe, запуск - Local System /Automatic, Описание - Предоставляет XenApp интерфейс к операционной системе. Другие сервисы используют этот для elevated operations. Зависимостей нет.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
- Citrix Streaming Service (RadeSvc), имя файла - RadeSvc.exe, запуск - .\Ctx_StreamingSvc /Automatic, Описание - Управляет плагином Citrix Offline, при стриминге (streaming) приложений. Зависимости - Remote Procedure Call (RPC).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
- Citrix Virtual Memory Optimization, имя файла - CTXSFOSvc.exe, запуск - Local System /Manual, Описание - Динамически оптимизирует приложения, исполняемые на сервере XenApp, высвобождая оперативную память. Зависимостей нет.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix WMI Service (CitrixWMIservice)&lt;/strong&gt;, имя файла - &lt;strong&gt;ctxwmisvc.exe&lt;/strong&gt;, запуск - &lt;strong&gt;NT AUTHORITY\ Local Service/Manual&lt;/strong&gt;, Описание - Предоставляет классы Citrix WMI для мониторинга и управления. Зависимости - Citrix Independent Management Architecture service , Citrix Services Manager service, IPsec Policy Agent, Remote Procedure Call (RPC), TCP/IP Protocol Driver, Server, Windows Management Instrumentation Driver Extensions, Workstation&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix XenApp Commands Remoting Service&lt;/strong&gt;, имя файла - &lt;strong&gt;Citrix.XenApp.Commands.Remoting.Service.exe&lt;/strong&gt;, запуск - &lt;strong&gt;Local System /Automatic&lt;/strong&gt;, Описание - Предоставляет удаленную поддержку XenApp Commands. Зависимостей нет.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix XML Service (CtxHttp)&lt;/strong&gt;, имя файла - &lt;strong&gt;ctxxmlss.exe&lt;/strong&gt;, запуск - &lt;strong&gt;Network Service /Automatic&lt;/strong&gt;, Описание - Обслуживает XML-запросы данных от компонентов XenApp. Зависимостей нет.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;- Citrix XTE Server (CitrixXTEServer)&lt;/strong&gt;, имя файла - &lt;strong&gt;XTE.exe&lt;/strong&gt;, запуск - &lt;strong&gt;NT AUTHORITY\ NetworkService /Manual&lt;/strong&gt;, Описание - Обслуживает сетевые запросы session reliability и SSL от компонентов XenApp. Зависимостей нет.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0437\u043e\u0440 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 XenApp \u0438 \u0443\u0447\u0435\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439, \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u044d\u0442\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0437\u043e\u0440_\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432_\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445_xenapp_\u0438_\u0443\u0447\u0435\u0442\u043d\u044b\u0445_\u0437\u0430\u043f\u0438\u0441\u0435\u0439_\u043f\u043e\u0434_\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438_\u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442_\u044d\u0442\u0438_\u0441\u0435\u0440\u0432\u0438\u0441\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:31,&amp;quot;range&amp;quot;:&amp;quot;55778-63068&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit32&quot; id=&quot;права_учетных_записей_служб_xenapp&quot;&gt;Права учетных записей служб XenApp:&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Local Service&lt;/strong&gt; Ограниченые Права - (NT AUTHORITY\LocalService)&lt;br/&gt;

&lt;strong&gt;Network Service &lt;/strong&gt;Ограниченые Права, сетевой доступ - (NT AUTHORITY\NetworkService)&lt;br/&gt;

&lt;strong&gt;Local System&lt;/strong&gt; Права АДминистратора - (NT AUTHORITY\System)&lt;br/&gt;

&lt;strong&gt;Ctx_StreamingSvc&lt;/strong&gt; Права пользователя (User) локального/доменного.&lt;br/&gt;

&lt;strong&gt;Ctx_ConfigMgr&lt;/strong&gt; Права опытного пользователя (Power User) локального/доменного.&lt;br/&gt;

&lt;strong&gt;Ctx_CpuUser&lt;/strong&gt; Права пользователя (User) локального/доменного.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Привилегии учетных записей служб:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Ctx_ConfigMgr&lt;/strong&gt; - Log on as a batch job, Log on as a service.&lt;br/&gt;

&lt;strong&gt;Ctx_CpuUser&lt;/strong&gt; - Log on as a batch job, Log on as a service, Debug programs, Increase scheduling priority.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если политика организации требует, чтобы учетные записи сервисов были доменные, а не локальные - следует создать учетки Ctx_ConfigMgr и Ctx_CpuUser перед установкой XenApp и назначить им указанные права.&lt;br/&gt;

Citrix не поддерживает изменение учетной записи для Citrix Streaming Service (Ctx_StreamingSvc), которая имеет следующие привилегии: log on as a batch job, log on as a service, backup files and directories, restore files and directories, deny log on locally, deny remote log on, and take ownership of files or other objects&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0430\u0432\u0430 \u0443\u0447\u0435\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441\u043b\u0443\u0436\u0431 XenApp:&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0430\u0432\u0430_\u0443\u0447\u0435\u0442\u043d\u044b\u0445_\u0437\u0430\u043f\u0438\u0441\u0435\u0439_\u0441\u043b\u0443\u0436\u0431_xenapp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:32,&amp;quot;range&amp;quot;:&amp;quot;63069-64746&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit33&quot; id=&quot;для_чего_конфигурировать_worker_groups&quot;&gt;1.4 - Для чего конфигурировать Worker Groups&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX124481&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX124481&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX124481&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Worker Group - это просто способ объединения серверов в ферме, с целью дальнейшего управления ими как единым целым.&lt;br/&gt;

Термин Worker обозначает серверы, сконфигурированные в режиме session-only. Довольно часто ферма XenApp содержит группы серверов, сконфигурированных идентично для выполнения одинаковых приложений.&lt;br/&gt;

Worker Group упрощает создание таких групп, обеспечивая синхронизацию опубликованных приложений и настроек для группы серверов.&lt;br/&gt;

В предыдущих версиях XenApp серверы объединялись в зоны и папки (zones and server folders). Эти контейнеры сохранились в XenApp 6 и были дополнены worker groups.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Worker groups похожи на зоны и папки, но преследуют несколько иные цели.&lt;br/&gt;

Зоны используются в XenApp для управления и объединения данных в ферме. Ферма XenApp делится на зоны в соотвествии с топологией сети. Каждая зона выбирает сборщика данных (data collector), который собирает динамичеки изменяемые данные с серверов зоны и реплицирует эти данные в другие зоны. Однако, Citrix рекомендует создавать зоны для больших площадок, соединенных высокоскоростными каналами. Маленькие площадки следует объединять в зоны для предотвращения большого количества трафика, генерируемого при репликации.&lt;br/&gt;

В последних версиях зоны используются для управления распределением нагрузки с помощью функций Zone Preference и Failover, хотя в версии XenApp 6 эту задачу выполняют политики. Политики делают ненужным объединение серверов в зоны для балансировки нагрузки. Теперь для балансировки нагрузки используются Worker groups, а зоны используются для репликации между сборщиками данных.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Папки серверов (Server folders) используются для двух целей - создают древовидную иерархию в консоли управления и позволяют делегировать административные права. Как и папки, worker groups позволяют произвольно группировать серверы, однако worker groups гораздо более гибкие.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вот преимущества, предоставляемые worker groups:&lt;br/&gt;

- В отличиет от папок, каждый сервер может принадлежать нескольким worker groups. Соотвественно серверы могут быть одновременно объединены как по географическому признаку, так и в соотвествии с исполняемыми приложениям.&lt;br/&gt;

- Worker groups гораздо более мелкие, чем зоны (которых не рекомендуется иметь больше чем 5). Worker group модет состоять даже из одного сервера.&lt;br/&gt;

- Worker groups гораздо более динамичны. Например, при дод\бавлении в Worker group контейнера AD, изменения, вносимые в контейнере AD автоматически отображаются в конфигурации Worker group.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.4 - \u0414\u043b\u044f \u0447\u0435\u0433\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c Worker Groups&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043b\u044f_\u0447\u0435\u0433\u043e_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c_worker_groups&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:33,&amp;quot;range&amp;quot;:&amp;quot;64747-69122&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit34&quot; id=&quot;описание_архитектуры_web-интерфейса_на_примере_с_двойным_пробросом&quot;&gt;Описание архитектуры Web-интерфейса на примере с &amp;quot;двойным пробросом&amp;quot;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-sec/ps-sec-sample-c-sg-double-hop-xa6.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-sec/ps-sec-sample-c-sg-double-hop-xa6.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-sec/ps-sec-sample-c-sg-double-hop-xa6.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Решение использует Secure Gateway обеспечивает шифрование SSL/TLS HTTPS-соединений между Secure Gateway сервером и SSL-плагином, между Secure Gateway и Web-браузером, и между Secure Gateway и Web-интерфейсом (так называемая double-hop configuration). Внутри локальной сети ICA трафик защищен с помощью IPSec.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/fips-deployment-c-xa6-2_s.png&quot; class=&quot;media&quot; title=&quot;fips-deployment-c-xa6-2_s.png&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/fips-deployment-c-xa6-2_s.png?w=200&amp;amp;tok=87fa75&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Ниже приведены компоненты и операционные системы, на которых работают компоненты.&lt;br/&gt;

&lt;strong&gt;Ферма XenApp&lt;/strong&gt;&lt;br/&gt;

Компоненты - &lt;strong&gt;XenApp 6.5 for Microsoft Windows Server 2008 R2&lt;/strong&gt;, работает &lt;strong&gt;SSL Relay&lt;/strong&gt;, на XenApp установлен &lt;strong&gt;Secure Ticket Authority&lt;/strong&gt;.&lt;br/&gt;

ОС - &lt;strong&gt;Windows Server 2008 R2&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Web server&lt;/strong&gt;&lt;br/&gt;

Компоненты - &lt;strong&gt;Web Interface 5.4 for Internet Information Services&lt;/strong&gt;&lt;br/&gt;

ОС -&lt;strong&gt; Windows Server 2008 R2, Windows Server 2008, Windows Server 2003 with Service Pack 2, .NET Framework 3.5 or 2.0 (IIS 6.0 only), Visual J#.NET 2.0 Second Edition &lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Secure Gateway Service, Secure Gateway Proxy&lt;/strong&gt;&lt;br/&gt;

Компоненты - &lt;strong&gt;Secure Gateway 3.3 for Windows&lt;/strong&gt;&lt;br/&gt;

ОС -&lt;strong&gt; Windows Server 2008 R2, Windows Server 2008, Windows Server 2003 with Service Pack 2&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Пользовательские устройства&lt;/strong&gt;&lt;br/&gt;

Компоненты - &lt;strong&gt;Citrix Receiver for Windows 3.0, TLS-enabled Web browser&lt;/strong&gt;&lt;br/&gt;

ОС - &lt;strong&gt;Windows 7, Windows Vista, Windows XP Professional&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b Web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0441 \&amp;quot;\u0434\u0432\u043e\u0439\u043d\u044b\u043c \u043f\u0440\u043e\u0431\u0440\u043e\u0441\u043e\u043c\&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435_\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_\u043d\u0430_\u043f\u0440\u0438\u043c\u0435\u0440\u0435_\u0441_\u0434\u0432\u043e\u0439\u043d\u044b\u043c_\u043f\u0440\u043e\u0431\u0440\u043e\u0441\u043e\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:34,&amp;quot;range&amp;quot;:&amp;quot;69123-70956&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit35&quot; id=&quot;как_взаимодействуют_компоненты&quot;&gt;Как взаимодействуют компоненты?&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для создания безопасного соединения между клиентским устройством и Secure Gateway применяется TLS. Для этого необходимо установить плагины SSL/TLS и сконфгурировать Secure Gateway по периметру сети - как правило в DMZ.&lt;br/&gt;

В данном случае, DMZ разделена на две секции дополнительным файерволом. Сервер, на котором работает сервис Secure Gateway, располагается в первой секции DMZ. Web-интерфейс и Secure Gateway Proxy расположены во второй секции. Трафик между Secure Gateway Proxy и фермой XenApp защищен с помощью IPSec.&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/fips-deployment-cc-xa6-2_s.png&quot; class=&quot;media&quot; title=&quot;fips-deployment-cc-xa6-2_s.png&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/fips-deployment-cc-xa6-2_s.png?w=200&amp;amp;tok=32c4b7&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В этом варианте инсталлиции Secure Gateway позволяет не публиковать адрес каждого сервера фермы и обеспечивает единую точку доступа и шифрования. Secure Gateway представляет собой шлюз, который отделен от серверов фермы и позволяет не транслировать порты для трафика ICA через файервол.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b?&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0442_\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:35,&amp;quot;range&amp;quot;:&amp;quot;70957-72430&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit36&quot; id=&quot;информационная_безопасность_в_данном_приемере&quot;&gt;Информационная безопасность в данном приемере&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u0435\u043c\u0435\u0440\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f_\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c_\u0432_\u0434\u0430\u043d\u043d\u043e\u043c_\u043f\u0440\u0438\u0435\u043c\u0435\u0440\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:36,&amp;quot;range&amp;quot;:&amp;quot;72431-72526&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit37&quot; id=&quot;ipsec&quot;&gt;IPSec&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для того чтобы защитить соединение между Secure Gateway Proxy и фермой XenApp с помощью IPSec необходимо сконфигурировать  IPSec на каждом сервере фермы, включая Secure Gateway Proxy. &lt;br/&gt;

IPSec конфигурируется путем изменения настроек локальной безопасности (Политики IPSec) на всех серверах. В приведенном примере IPSec включен на серверах с Secure Gateway Proxy, Web-интерфейсом и всех серверах фермы XenApp с параметрами шифрования Triple DES encryption и SHA-1 для соотвествия FIPS 140.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;IPSec&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;ipsec&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:37,&amp;quot;range&amp;quot;:&amp;quot;72527-73318&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit38&quot; id=&quot;соответствие_fips_140&quot;&gt;Соответствие FIPS 140&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В данном примере SSL Relay использует службы криптопровайдера Microsoft (cryptographic service providers - CSPs) и алгоритмы Microsoft Windows CryptoAPI для шифрования соединения между клиентскими устройствами и серверами.&lt;br/&gt;

Поддержка SSL/TLS и средства шифрования настраиваются опцией операционной системы “System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing”.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 FIPS 140&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435_fips_140&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:38,&amp;quot;range&amp;quot;:&amp;quot;73319-73942&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit39&quot; id=&quot;поддержка_ssltls&quot;&gt;Поддержка SSL/TLS&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Secure Gateway и Web-интерфейс можно сконфигурировать с поддержкой либо с поддержкой Transport Layer Security 1.0, либо Secure Sockets Layer 3.0. В данном примере используется TLS.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 SSL\/TLS&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430_ssltls&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:39,&amp;quot;range&amp;quot;:&amp;quot;73943-74247&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit40&quot; id=&quot;поддерживаемые_алгоритмы_шифрования_ciphersuites&quot;&gt;Поддерживаемые алгоритмы шифрования (ciphersuites)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В данном примере Secure Gateway, Secure Gateway Proxy и Web-интерфейс необзходимо сконфигурировать с применением надежного алгоритма RSA_WITH_3DES_EDE_CBC_SHA.&lt;br/&gt;

Для TLS-соединений можно выбрать и другие алгоритмы, использующие обмен ключами RSA и стандарт шифрования AES. &lt;br/&gt;

Продукты Citrix испольуют для проверок инфраструктуру публичных ключей (PKI). В данном примере на серверах Secure Gateway, Secure Gateway Proxy, и Web-интерфейса, а также на всех серверах фермы должны быть сформированы сертификаты. На всех клиентских устройствах должны быть установлены корневые сертификаты. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f (ciphersuites)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0435_\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b_\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f_ciphersuites&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:40,&amp;quot;range&amp;quot;:&amp;quot;74248-75308&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit41&quot; id=&quot;поддержка_смарт-карт_smart_card&quot;&gt;Поддержка смарт-карт (Smart Card)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В даном примере аутентификация с помощью смарт-карт не поддерживается. При использовании Secure Gateway между клиентским устройством и Web-интерфейсом смарт-карты использованы быть не могут.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u043c\u0430\u0440\u0442-\u043a\u0430\u0440\u0442 (Smart Card)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430_\u0441\u043c\u0430\u0440\u0442-\u043a\u0430\u0440\u0442_smart_card&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:41,&amp;quot;range&amp;quot;:&amp;quot;75309-75708&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit42&quot; id=&quot;необходимые_плагины&quot;&gt;Необходимые плагины&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В данном примере пользователи получают доступ к своим приложениям с помощью Citrix Receiver. Его плагины описаны тут - &lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-sec/ps-sec-xa-plugins-xa6.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-sec/ps-sec-xa-plugins-xa6.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-sec/ps-sec-xa-plugins-xa6.html&lt;/a&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u043b\u0430\u0433\u0438\u043d\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435_\u043f\u043b\u0430\u0433\u0438\u043d\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:42,&amp;quot;range&amp;quot;:&amp;quot;75709-76049&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit43&quot; id=&quot;пример_с_single-hop_dmz&quot;&gt;Пример с Single-Hop DMZ&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В случае использования одной секции DMZ пользователи могут подключиться к системе двумя способами. Первый - это когда Secure Gateway перехватывает клиентское подключение, производит аутентификацию пользователя и направляет его к Web-интерфейсу. Второй - когда пользователь подключается к Web-интерфейсу и аутентифицируется на нем, а затем Secure Gateway защищает подключение. Первый вариант компоненты работают - последовательно, а второй - параллельно.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u0441 Single-Hop DMZ&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u0441_single-hop_dmz&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:43,&amp;quot;range&amp;quot;:&amp;quot;76050-76895&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit44&quot; id=&quot;необходимые_сертификаты&quot;&gt;Необходимые сертификаты&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если Secure Gateway находится в DMZ, то серверам и клиентам потребуются слудующие сертификаты.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Корневые сертификаты на всех клиентстких устройствах, подключаемых через Secure Gateway.&lt;br/&gt;

 - Корневце сертификаты на всех компонентах Secure Gateway, которые подключаются к защищенному серверу. Например, корневой сертификат должен присутствовать на сервере на котором работает Secure Gateway для проверки сертификата сервера, на котором работает сервер Secure Ticket Authority (STA).&lt;br/&gt;

 - Сертификат сервера на сервере с Secure Gateway.&lt;br/&gt;

 - Опционально - сертификаты сервера на серверах STA. STA устанавливается по-умолчанию, при установке XenApp.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Все компоненты Secure Gateway поддерживают сертификаты. Citrix рекомендует, чтобы все каналы связи между Secure Gateway и другими серверами в DMZ были зашифрованы.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435_\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:44,&amp;quot;range&amp;quot;:&amp;quot;76896-78303&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit45&quot; id=&quot;пример_использования_secure_gateway_в_одной_секции_dmz&quot;&gt;Пример использования Secure Gateway в одной секции DMZ&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/ps-sg-single-hop-2-2.png&quot; class=&quot;media&quot; title=&quot;ps-sg-single-hop-2-2.png&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/ps-sg-single-hop-2-2.png?w=200&amp;amp;tok=683ab6&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
На рисунке приведена схема сети предприятия, отделенная от интернета одной секцией DMZ. Предприятие имеет ферму XenApp с одним сервером, на котором работает Secure Ticket Authority (STA). На файерволе, отделяющем безопасную сеть от DMZ открыты порты  80 (HTTP), 443(HTTPS) и 1494(ICA) и при включенной Session Reliability - порт 2598. &lt;br/&gt;

В DMZ находится единственный сервер, на котором работает Secure Gateway и Web-интерфейс. Трафик к Web-интерфейсу проксируется через  Secure Gateway, который взаимодействует с Web-интерфейсом по HTTP.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
DMZ отделена от интернета файерволом, на котором открыт порт 443. &lt;br/&gt;

Клиенты используют ноутбуки с 32-битной Windows, Internet Explorer и Citrix online plug-in.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Специалист по безопасности рекомендовал зашифровать соединение между Secure Gateway и Secure Ticket Authority (STA).&lt;br/&gt;

Для этого компания приобрела два сертификата для серверов у коммерческого центра сертификации  (certificate authority - CA). На сервере с Secure Gateway и Web-интерфейсом установлен корневой сертификат. Сервер с XenApp имеет свой сертификат.  &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Secure Gateway \u0432 \u043e\u0434\u043d\u043e\u0439 \u0441\u0435\u043a\u0446\u0438\u0438 DMZ&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f_secure_gateway_\u0432_\u043e\u0434\u043d\u043e\u0439_\u0441\u0435\u043a\u0446\u0438\u0438_dmz&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:45,&amp;quot;range&amp;quot;:&amp;quot;78304-80130&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit46&quot; id=&quot;последовательное_взаимодействие_secure_gateway_и_web-интерфейса&quot;&gt;Последовательное взаимодействие Secure Gateway и Web-интерфейса&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В варианте с одной секцией DMZ весь траффик перехватывается Secure Gateway. Web-интерфейс можно установить как на одном сервере с Secure Gateway так и на отдельном. Весь обмен данными между пользовтаельскими устройствами и Web-интерйесом транслируется через Secure Gateway.&lt;br/&gt;

На внешнем интерфейсе файрвола открыт порт 443. Пользователи подключаются к Secure Gateway при помощи &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; вида: &lt;a href=&quot;https://Secure&quot; class=&quot;urlextern&quot; title=&quot;https://Secure&quot; rel=&quot;ugc nofollow&quot;&gt;https://Secure&lt;/a&gt; Gateway FQDN/. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Преимущества этого варинта:&lt;/strong&gt;&lt;br/&gt;

Для двух серверов - Secure Gateway и Web-интерфейса нужен один сертификат.&lt;br/&gt;

На файерволе открыт единственный порт - 443.&lt;br/&gt;

Из интернета нет прямого доступа к Web-интерфейсу, что повышает безопасность.&lt;br/&gt;

&lt;strong&gt;Недостатки:&lt;/strong&gt;&lt;br/&gt;

Работа в таком режиме ограничивает функциональность Web-интерфейса. Во-первых не работает аутентификация с помощью смарт-карт, интегрированная в web-интерфейс. Во-вторых - невозможно определить IP-адрес конкретного пользователя. Все подключения к web-интерфейсу будут исходить от IP-адреса Secure Gateway.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Citrix рекомендует устанавливать Secure Gatewayв такой конфигурации в небольших сетях и сетях среднего размера до нескольких сотен пользователей. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если перечисленные недостатки критичны или имеется большое число пользователей, подключающихся из локальной сети то следует использовать вариант параллельной работы Web-интерфейса и  Secure Gateway.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit47&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Во-избежание недоразумений, на сервере с Secure Gateway следует отключить IIS.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table5&amp;quot;,&amp;quot;secid&amp;quot;:47,&amp;quot;range&amp;quot;:&amp;quot;82511-82661&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 Secure Gateway \u0438 Web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435_\u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435_secure_gateway_\u0438_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:46,&amp;quot;range&amp;quot;:&amp;quot;80131-82664&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit48&quot; id=&quot;раздел_2_-_установка_и_лицензирование&quot;&gt;Раздел 2 - Установка и лицензирование&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 2 - \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_2_-_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u0438_\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:48,&amp;quot;range&amp;quot;:&amp;quot;82665-82745&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit49&quot; id=&quot;установка_xenapp_с_помощью_wizard-based_server_role_manager&quot;&gt;2.1 - Установка XenApp с помощью Wizard-Based Server Role Manager&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Что вообще нужно для установки XenApp с помощью менеджера ролей.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-install/ps-install-wizard.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-install/ps-install-wizard.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-install/ps-install-wizard.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.1 - \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 XenApp \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Wizard-Based Server Role Manager&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_xenapp_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_wizard-based_server_role_manager&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:49,&amp;quot;range&amp;quot;:&amp;quot;82746-83042&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit50&quot; id=&quot;single_sign-on&quot;&gt;Single Sign-on&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/technologies/pm-library-wrapper.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/technologies/pm-library-wrapper.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/technologies/pm-library-wrapper.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Citrix Single Sign-on (бывший Citrix Password Manager) предоставляет сервис единого входа по паролю в Windows, Web-интерфейс и приложения, работающие в окружении Citrix. Пользователь аутентифицируется единожды и затем Single Sign-on обеспечивает автоматический доступ к защищенным системам и приложениям, применяет политики паролей, следит за всеми событиями, связанными с паролями, а также автоматизирует пользовательские задачи, в том числе смену паролей.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Single Sign-on состоит из следующих компонентов:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt; - Центральное хранилище  (central store)&lt;br/&gt;

     - Компонент Single Sign-on в Citrix AppCenter&lt;br/&gt;

     - Single Sign-on Plug-in&lt;br/&gt;

     - Служба Single Sign-on Service (опционально)&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Single Sign-on&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;single_sign-on&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:50,&amp;quot;range&amp;quot;:&amp;quot;83043-84248&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit51&quot; id=&quot;центральное_хранилище&quot;&gt;Центральное хранилище&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Центральное хранилище Single Sign-on обеспечивает хранение и управление пользовательскими (пароли, скретные вопросы) административными (политики паролей, определения приложений, секретные вопросы и пр.) данными. КОгда пользователь входит в систему, Single Sign-on  сравнивает введенные учетные данные с хранимыми в центральном хранилище. По мере того, как пользователь запрашивает доступ к защищенным приложениям или web-страницам, из центрального хранилища извлекаются необходимые учетные данные. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0426\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u043e\u0435_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:51,&amp;quot;range&amp;quot;:&amp;quot;84249-85195&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit52&quot; id=&quot;компонент_single_sign-on_в_citrix_appcenter&quot;&gt;Компонент Single Sign-on в Citrix AppCenter&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Компонент Single Sign-on в Citrix AppCenter это средство управления Single Sign-on. Тут задаются параметры работы Single Sign-on, включенные функции, меры безопасности и другие важные свойства парольной защиты. Средства управления Single Sign-on состоят из четырех основных элементов, доступ к которым осуществляется из левой панели AppCenter:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;User Configurations&lt;/strong&gt;  - тут настраиваются параметры пользователей, основанные на их географическом положении или деловых ролях.&lt;br/&gt;

 &lt;strong&gt;Application Definitions&lt;/strong&gt;  - тут настраиваются параметры, необходимые для работы плагина Single Sign-on Plug-in, который предоставояет приложениям учетные данные пользователя и определяет условия, при которых возникают ошибки. Для облегчения процесса настройки Single Sign-on предусмотрены как предустановленные, так и настраиваемые шаблоны приложений. Дополнительные шаблоны можно найти на сайте &lt;a href=&quot;http://www.citrix.com/passwordmanager/gettingstarted&quot; class=&quot;urlextern&quot; title=&quot;http://www.citrix.com/passwordmanager/gettingstarted&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.citrix.com/passwordmanager/gettingstarted&lt;/a&gt;.&lt;br/&gt;

 &lt;strong&gt;Password Policies&lt;/strong&gt;  - здесь задаются параметры допустимой длины и сложности паролей в соответствии с полотикий информационной безопасности организации. Также политики паролей позволяют запретить повторное использование паролей или исключить из набора символов отдельные символы.&lt;br/&gt;

 &lt;strong&gt;Identity Verification&lt;/strong&gt; - тут задаются - секретные вопросы, которые позволяют пользователю самостоятельно и безопасно восстановить пароль в случае его утраты.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Single Sign-on \u0432 Citrix AppCenter&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442_single_sign-on_\u0432_citrix_appcenter&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:52,&amp;quot;range&amp;quot;:&amp;quot;85196-87578&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit53&quot; id=&quot;плагин_single_sign-on&quot;&gt;Плагин Single Sign-on&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Плагин Single Sign-on предоставляет запускаемым приложениям соответствующие учетные данные, применяет политики безопасности, обеспечивает функции самообслуживания для пользователей и позволяет изменять учетные данные пользователя. Дополнительные функции плагина Single Sign-on настраиваются в конфигурации пользователя.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043b\u0430\u0433\u0438\u043d Single Sign-on&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043b\u0430\u0433\u0438\u043d_single_sign-on&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:53,&amp;quot;range&amp;quot;:&amp;quot;87579-88193&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit54&quot; id=&quot;служба_single_sign-on&quot;&gt;Служба Single Sign-on&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Служба Single Sign-on работает на web-сервере, который обеспечивает работу дополнительных функций. Службу Single Sign-on следует устанавливать если планируется использовать одну из этих функций:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Самообслуживание пользователей. Дает пользователям возможность самостоятельно изменять и сбрасывать пароль от учетных записей Windows&lt;br/&gt;

 - Целостность данных (Data Integrity) - защищает данные от перехвата на пути от центрального хранилища к плагину Single Sign-on&lt;br/&gt;

 - Управление ключами - дает пользователям возможность восстанавливать вспомогательные учетные сведения при изменении основного пароля&lt;br/&gt;

 - Функции управления, которые позволяют использовать компонент Single Sign-on в Citrix AppCenter для добавления, удаления или обновления учетных данных пользователя&lt;br/&gt;

 - Синхронизация учетных данных в домене с помощью Web-интерфейса&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если вы не планируете использовать вышеприведенные функции - устанавливать службу Single Sign-on не нужно.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043b\u0443\u0436\u0431\u0430 Single Sign-on&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043b\u0443\u0436\u0431\u0430_single_sign-on&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:54,&amp;quot;range&amp;quot;:&amp;quot;88194-89869&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit55&quot; id=&quot;развертывание_single_sign-on&quot;&gt;Развертывание Single Sign-on&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0435 Single Sign-on&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0435_single_sign-on&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:55,&amp;quot;range&amp;quot;:&amp;quot;89870-89919&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit56&quot; id=&quot;типы_central_store&quot;&gt;Типы Central Store&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для работы Single Sign-on необходимо хранилище (central store), для хранения и предоставления информации о пользователях и окружении. Создать central store  можно автоматически, на этапе установки Single Sign-on или вручную, с помощью утилит Single Sign-on. Центральное хранилище (central store) Single Sign-on содержит следующую информацию:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Данные о пользователе, включая вспомогательные учетные данные, секретные вопросы и ответы и другие данные, а также данные реестра пользователя Windows, связанные с  Single Sign-on.&lt;br/&gt;

 - Административные данные, включая определения приложений, политики паролей, секретные вопросы и другие настройки, сделанные в консоли Single Sign-on.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Центральное хранилище Single Sign-on взаимодействует с плагином, работающем на пользовательском устройстве и фермой Citrix XenApp и предоставляет учетные данные приложениям, к которым пользователь имеет доступ.&lt;br/&gt;

Плагин имеет собственное локальное хранилище на компьютере пользователя, которое хранит только вспомогательные настройки, информацию для восстановления ключей и секретные вопросы и ответы. Эти сведения синхронизируются с центральным хранилищем, для того чтобы пользователь всегда имел доступ к сохраненным сведениям.&lt;br/&gt;

Центральное хранилище Single Sign-on может быть двух типов:&lt;br/&gt;

 - Active Directory - информация необходимая для работы Single Sign-on хранится в Active Directory.&lt;br/&gt;

 - Сетевая папка NTFS&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При необходимости можно мигрировать с одного типа хранилища на другой.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0438\u043f\u044b Central Store&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0438\u043f\u044b_central_store&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:56,&amp;quot;range&amp;quot;:&amp;quot;89920-92455&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit57&quot; id=&quot;active_directory_central_store&quot;&gt;Active Directory Central Store&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Использование Active Directory Central Store позволяет удобно настраивать политики использования Single Sign-on. Например, их можно применять как на уровне домена, так и на уровне OU или отдельного пользователя.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При использовании Active Directory Central Store в схему будут добавлены два новых класса :&lt;br/&gt;

&lt;strong&gt;citrix-SSOConfig &lt;/strong&gt;	- Класс описывает объект, содержащий данные для плагина - настройки ПО, состояние синхронизации, определения приложений. Этот класс содержит аттрибуты &lt;strong&gt;citrix-SSOConfigData&lt;/strong&gt; - содержащий актуальные данные и &lt;strong&gt;citrix-SSOConfigType&lt;/strong&gt; - указывает тип данных.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;citrix-SSOSecret&lt;/strong&gt;	- Класс описывает объект, используемый для аутентификации пользователя Single Sign-on. Класс содержит аттрибут &lt;strong&gt;citrix-SSOSecretData&lt;/strong&gt; - который хранит зашифрованные учетные данные для приложения и данные для самостоятельно восстановления пароля.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Active Directory Central Store следует выбирать если: &lt;br/&gt;

 - Есть возможность безболезненно расширить схему Active Directory&lt;br/&gt;

 - Вы хотите использовать преимущества высокой доступности Active Directory&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Преимущества Active Directory в качестве Central Store Single Sign-on втом что, AD отказоустойчива (контроллеры доменов резервируются) и масштабируема, благодаря репликации.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Active Directory Central Store&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;active_directory_central_store&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:57,&amp;quot;range&amp;quot;:&amp;quot;92456-94493&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit58&quot; id=&quot;рашаренная_папка_ntfs_в_качестве_single_sign-on_central_store&quot;&gt;Рашаренная папка NTFS в качестве Single Sign-on Central Store&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Использование папка NTFS в качестве Single Sign-on Central Store позволяет использовать существующую инфраструктуру Active Directory, но не вносить изменения в схему AD.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit59&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО: для Single Sign-on Central Store следует создавать скрытую (hidden) расшаренную папку&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table6&amp;quot;,&amp;quot;secid&amp;quot;:59,&amp;quot;range&amp;quot;:&amp;quot;94860-95003&amp;quot;} --&gt;
&lt;p&gt;
Single Sign-on создает папку &lt;strong&gt;CITRIXSYNC$&lt;/strong&gt; с двумя вложенными папками - &lt;strong&gt;People&lt;/strong&gt; и &lt;strong&gt;CentralStoreRoot&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Папка People содержит вложенные папки для каждого пользователя с соответствующими разрешениями на запись для конкретного пользователя.&lt;br/&gt;

Папка CentralStoreRoot содержит административную информацию.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Преимущества сетевой папки NTFS в качестве Single Sign-on Central Store:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Не требуется расширять схему AD, при этом функциональность такая же как и при использовании Active Directory central store&lt;br/&gt;

 ^  ПРИМЕЧАНИЕ: Объединение пользовательских конфигураций в группы возможно только в доменах, использующих аутентификацию Active Directory.^&lt;br/&gt;

 - Данные о пользователях всегда актуальны, потому что не используется репликация и поэтому отсутствует задержка при обновлении данных Active Directory. &lt;br/&gt;

 - Для повышения надежности можно организовать распределение нагрузки (load balance) между несколькими NTFS network share.&lt;br/&gt;

 - Снижается нагрузка на подсистему Active Directory.&lt;br/&gt;

 - Single Sign-on позволяет миграцию central store из NTFS shared folder в Active Directory.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При использовании сетевой папки NTFS в качестве central store следует учесть:&lt;br/&gt;

 - Следует осуществлять резервное копирование файлов central store (в том числе и разрешения)&lt;br/&gt;

 - Если топология сети предполагает наличие каналов WAN между сегментами, то следует использовать DFS - Distributed File System.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0448\u0430\u0440\u0435\u043d\u043d\u0430\u044f \u043f\u0430\u043f\u043a\u0430 NTFS \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 Single Sign-on Central Store&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0448\u0430\u0440\u0435\u043d\u043d\u0430\u044f_\u043f\u0430\u043f\u043a\u0430_ntfs_\u0432_\u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435_single_sign-on_central_store&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:58,&amp;quot;range&amp;quot;:&amp;quot;94494-97237&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit60&quot; id=&quot;использвание_account_association_и_нескольких_central_stores_на_предприятии_с_несколькими_доменами&quot;&gt;Использвание Account Association и нескольких Central Stores на предприятии с несколькими доменами&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если на предприятии используется несколько доменов, то администратор может создать несколько central store для каждого домена. Тип используемого central store может быть разным - то есть один домен может иметь central store в сетевой папке, а второй в Active Directory.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Т.к. в компаниях с несколькими доменами пользователь может иметь в каждом домене отдельную учетную запись, Single Sign-on имеет функцию Account Association, которая позволяет пользователю подключаться к приложению с помощью любой учетной записи.&lt;br/&gt;

Т.к. Single Sign-on обычно привязывает учетные данные к одной учетной записи windows, учетные данные автоматически не синхронизируются, но администратор может настроить синхронизацию учетных данных с помощью модуля Credential Synchronization Module и пользователи получат доступ ко всем своим приложениям с помощью единственной учетной записи. Если изменить учетные данные пользователя в одной учетной записи, то они автоматически синхронизируются и в других.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Без Account Association пользователи с несколькими учетными записями Windows вынуждены использовать правильные учетные данные для каждой учетки.&lt;br/&gt;

Для того, чтобы дать пользователям разрешение использовать Account Association, нужно предоставить доступ к файлу  &lt;strong&gt;AccAssoc.exe &lt;/strong&gt;как к опубликованному приложению.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0432\u0430\u043d\u0438\u0435 Account Association \u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 Central Stores \u043d\u0430 \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u044f\u0442\u0438\u0438 \u0441 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0434\u043e\u043c\u0435\u043d\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0432\u0430\u043d\u0438\u0435_account_association_\u0438_\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445_central_stores_\u043d\u0430_\u043f\u0440\u0435\u0434\u043f\u0440\u0438\u044f\u0442\u0438\u0438_\u0441_\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438_\u0434\u043e\u043c\u0435\u043d\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:60,&amp;quot;range&amp;quot;:&amp;quot;97238-99605&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit61&quot; id=&quot;определение_приложений_application_definition&quot;&gt;Определение приложений (Application Definition)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Функции определения приложений (Application Definition) позволяют плагину Single Sign-on распознавать и автоматически заполнять формы авторизации, генерируемые приложениями. &lt;br/&gt;

Application Definition содержат набор полей, которые необходимо заполнить для авторизации. Мастер создания Application Definition поможет создать правильный набор параметров - он автоматически определяет формы и поля, которые необходимо заполнить в большинстве приложений.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Поддерживаются следующие типы приложений:&lt;br/&gt;

 - 32-bit Windows (в том числе и Java-приложения), например  Microsoft Outlook, Lotus Notes, SAP и любые другие приложения, запрашивающие пароль.&lt;br/&gt;

 - Web-приложения , работающие через Microsoft Internet Explorer(в том числе и  Java-апплеты и SAP).&lt;br/&gt;

 - Приложения, доступ к которым осуществляется с помощью HLLAPI-совместимого эмулятора терминала.(Single Sign-on не поддерживает эмуляторы терминала 64-bit)&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 (Application Definition)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439_application_definition&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:61,&amp;quot;range&amp;quot;:&amp;quot;99606-101161&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit62&quot; id=&quot;смарт-карты&quot;&gt;Смарт-карты&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Компанией Citrix протестированы смарт-карты, удовлетворяющие стандарту ISO 7816 и считываемые с помощью кард-ридера. &lt;br/&gt;

Поддерживаются PC/SC-based криптографичесике карты, поддерживающие операции цифровой подписи и шифрование. Смарт-карты предназначены для безопасного хранения секретных ключей, используемых в PKI-инфраструктуре.&lt;br/&gt;

Эти карты выполняют операции шифрования внутри себя так, что секретные приватные ключи никогда не покидают карту. Кроме того, поддерживается двухфакторная аутентификация, которая повышает безопасность - сама карта и пин-код. Таким образом подтверждается, что тот, у кого сейчас карта является полноправным владельцем карты. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043c\u0430\u0440\u0442-\u043a\u0430\u0440\u0442\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043c\u0430\u0440\u0442-\u043a\u0430\u0440\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:62,&amp;quot;range&amp;quot;:&amp;quot;101162-102383&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit63&quot; id=&quot;требования_к_по&quot;&gt;Требования к ПО&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Дополнительную информацию о необходимом ПО следует уточнять у производителя смарт-карты. На сервере и киленте потребуются следующие компоненты:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 -  программное обеспечение PC/SC&lt;br/&gt;

 -  криптопровайдер (CSP)&lt;br/&gt;

 -  драйверы считывающего устройства для смарт-карт&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вероятно сервер и клиенты под управлением Windows уже имеют необходимое ПО - PC/SC, CSP и драйверы. &lt;br/&gt;

Для правильной работы смарт-карт в конфигурации пользователей следует включить Microsoft Data Protection &lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt; (requires roaming profiles).&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u041f\u041e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f_\u043a_\u043f\u043e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:63,&amp;quot;range&amp;quot;:&amp;quot;102384-103266&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit64&quot; id=&quot;smartauditor_-_запись_сессий_пользователей&quot;&gt;SmartAuditor - запись сессий пользователей&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-w2k8/ps-sa-library-wrapper-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-w2k8/ps-sa-library-wrapper-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-w2k8/ps-sa-library-wrapper-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
SmartAuditor позволяет записывать активность на экране пользователя во время сессии, независимо от того откуда подключился пользователь к ферме XenApp. SmartAuditor записывает, каталогизирует, хранит и воспроизводит записанные данные.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
SmartAuditor использует гибкие политики, для включения записи сессии автоматически. Это позволяет наблюдать за анализировать активность пользователя при доступе к критичным приложениям - например, финансовым или для здравоохранения. Кроме того, SmartAuditor помогает решать технические проблемы, возникающие при работе приложений в среде XenApp. &lt;br/&gt;

SmartAuditor фиксирует изменения на экране, движения мышью и нажатия на кнопки клавиатуры. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Преимущества:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Аудит активности пользователей для соответствия законодательству в критичных сферах (например - финансы и здравоохранение).&lt;br/&gt;

 - Защита компаний от нежелательной криминальной активности и сбор соответствующих доказательств.&lt;br/&gt;

 - Быстрое разрешение возникающих проблем с приложениями. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;SmartAuditor - \u0437\u0430\u043f\u0438\u0441\u044c \u0441\u0435\u0441\u0441\u0438\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;smartauditor_-_\u0437\u0430\u043f\u0438\u0441\u044c_\u0441\u0435\u0441\u0441\u0438\u0439_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:64,&amp;quot;range&amp;quot;:&amp;quot;103267-105182&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit65&quot; id=&quot;системные_требования_для_smartauditor&quot;&gt;Системные требования для SmartAuditor&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
SmartAuditor доступен на языках English, French, German, Japanese, Spanish, and simplified Chinese. Все компоненты SmartAuditor должны быть одной языковой редакции. Смешение компонентов с разными языками не поддерживается. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Англоязычная редакция SmartAuditor поддерживается на операционных системах следующих языковых редакций - English, Russian, traditional Chinese, and Korean. SmartAuditor версий French, German, Japanese, Spanish, and simplified Chinese поддерживается на ОС соответствуцющих языковых редакций.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f SmartAuditor&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435_\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f_\u0434\u043b\u044f_smartauditor&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:65,&amp;quot;range&amp;quot;:&amp;quot;105183-106017&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit66&quot; id=&quot;административные_компоненты_smartauditor&quot;&gt;АДминистративные компоненты SmartAuditor&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
АДминистративные компоненты SmartAuditor - &lt;strong&gt;SmartAuditor Database&lt;/strong&gt;, &lt;strong&gt;SmartAuditor Server&lt;/strong&gt; и &lt;strong&gt;SmartAuditor Policy Console&lt;/strong&gt; могут устанавливаться как на одном сервере, так и на разных серверах.&lt;br/&gt;

&lt;strong&gt;SmartAuditor Database&lt;/strong&gt;&lt;br/&gt;

Поддерживаемые ОС:&lt;br/&gt;

 Microsoft Windows Server 2008 R2 with Service Pack 1&lt;br/&gt;

 Microsoft Windows Server 2008 R2&lt;br/&gt;

 Microsoft Windows Server 2003 with Service Pack 2&lt;br/&gt;

 Microsoft Windows 2000 with Service Pack 4&lt;br/&gt;

Требования:&lt;br/&gt;

 Microsoft SQL Server 2008 R2 (Enterprise and Express editions), Microsoft SQL Server 2008 (Enterprise and Express editions), or Microsoft SQL Server 2005 (Enterprise and Express editions) with Service Pack 2&lt;br/&gt;

 .NET Framework Version 3.5 Service Pack 1 or .NET Framework Version 4&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;SmartAuditor Server&lt;/strong&gt;&lt;br/&gt;

Поддерживаемые ОС:&lt;br/&gt;

 Microsoft Windows Server 2008 R2 with Service Pack 1&lt;br/&gt;

 Microsoft Windows Server 2008 R2&lt;br/&gt;

Требования:&lt;br/&gt;

 .NET Framework Version 3.5.&lt;br/&gt;

 If the SmartAuditor Server uses HTTPS as its communications protocol, SSL. SmartAuditor uses HTTPS by default, which Citrix recommends.&lt;br/&gt;

 Microsoft Message Queuing (MSMQ), with Active Directory integration disabled, and MSMQ HTTP support enabled.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;SmartAuditor Policy Console&lt;/strong&gt;&lt;br/&gt;

Поддерживаемые ОС:&lt;br/&gt;

 Microsoft Windows Server 2008 R2 with Service Pack 1&lt;br/&gt;

 Microsoft Windows Server 2008 R2&lt;br/&gt;

 Microsoft Windows 7&lt;br/&gt;

 Microsoft Windows Vista&lt;br/&gt;

Требования:&lt;br/&gt;

 Перед установкой SmartAuditor Policy Console следует вручную установить консоль управления Microsoft IIS.&lt;br/&gt;

 Microsoft IIS Management Console&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;SmartAuditor Agent&lt;/strong&gt;&lt;br/&gt;

Установите SmartAuditor Agent на всех серверах XenApp, на которых вы хотите записывать сессии&lt;br/&gt;

Требования:&lt;br/&gt;

 XenApp 6.5 for Windows Server 2008 R2 Platinum edition or XenApp 6 for Windows Server 2008 R2 Platinum edition server software&lt;br/&gt;

 Microsoft Windows Server 2008 R2 with Service Pack 1 or Microsoft Windows Server 2008 R2&lt;br/&gt;

 .NET Framework Version 3.5 Service Pack 1 or .NET Framework Version 4&lt;br/&gt;

 Microsoft Message Queuing (MSMQ), with Active Directory integration disabled, and MSMQ HTTP support enabled&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;SmartAuditor Player&lt;/strong&gt;&lt;br/&gt;

Поддерживаемые ОС:&lt;br/&gt;

 Microsoft Windows XP&lt;br/&gt;

 Microsoft Windows Vista&lt;br/&gt;

 Windows 7&lt;br/&gt;

SmartAuditor Player требует .NET Framework Version 3.5 Service Pack 1 or .NET Framework Version 4.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для использования SmartAuditor Player на сервере XenApp следует установить обновление, описанное в базе знаний Microsoft Knowledge Base article 961118. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для нормальной работы SmartAuditor Player необходимо:&lt;br/&gt;

 Экран с разрешением не менее 1024 x 768&lt;br/&gt;

 Цвет - 32-bit&lt;br/&gt;

 Память - минимум 1GB RAM. Большее количество памяти увеличит производительность при воспроизведении больших файлов.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0414\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b SmartAuditor&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0435_\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b_smartauditor&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:66,&amp;quot;range&amp;quot;:&amp;quot;106018-109299&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit67&quot; id=&quot;схема_smartauditor&quot;&gt;Схема SmartAuditor&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/ps-sa-concepts-simple-2.png&quot; class=&quot;media&quot; title=&quot;ps-sa-concepts-simple-2.png&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/ps-sa-concepts-simple-2.png?w=200&amp;amp;tok=a0155f&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
SmartAuditor состоит из пяти компонент:&lt;br/&gt;

 &lt;strong&gt;SmartAuditor Agent&lt;/strong&gt;. Компонент позволяющий записывать сессии. Его устанавливают на все серверах XenApp.&lt;br/&gt;

 &lt;strong&gt;SmartAuditor Server&lt;/strong&gt;. На этом сервере работают два приложения:&lt;br/&gt;

 &lt;strong&gt;Брокер (Broker). &lt;/strong&gt;Это Web-приложение, работающее в IIS 6.0 и старше. Оно обрабатывает запросы поиска и позволяет скачивать файлы. для SmartAuditor Player, обрабатывает административные запросы от SmartAuditor Policy Console и применяет политики разрешения записи для всех сессий пользоватетелей. &lt;br/&gt;

 &lt;strong&gt;Storage Manager.&lt;/strong&gt; Служба Windows, которая управляет файлами с записанными сессиями, поступающими от других серверов XenApp с  SmartAuditor.&lt;br/&gt;

 &lt;strong&gt;SmartAuditor Player.&lt;/strong&gt; Пользовательский интерфейс, позволяющий просматривать записанные сессии.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0445\u0435\u043c\u0430 SmartAuditor&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0445\u0435\u043c\u0430_smartauditor&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:67,&amp;quot;range&amp;quot;:&amp;quot;109300-110604&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit68&quot; id=&quot;планирование_установки_smartauditor&quot;&gt;Планирование установки SmartAuditor&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В зависимости от требований и окружения, SmartAuditor может быть выбран один из нескольких сценариев.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Инсталляция SmartAuditor не ограничивается одной фермой. Все компоненты, за исключением SmartAuditor Agent, независят от фермы. То есть можно сконфигурировать несколько ферм и один SmartAuditor Server.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
И наоборот - если работает большая ферма, где много агентов и планируется записывать много сессий графических приложений, то (AutoCAD), или просто большое число сессий, от сервера SmartAuditor может потребоваться высокая производительность. Для нормальной работы в данном случае можно установить несколько серверов SmartAuditor на разных компьютерах и направить агентов SmartAuditor на разные сервера. В каждый момент времени один агент может работать только с одним сервером.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 SmartAuditor&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438_smartauditor&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:68,&amp;quot;range&amp;quot;:&amp;quot;110605-112016&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit69&quot; id=&quot;установка_сертификатов&quot;&gt;Установка сертификатов&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
На системе с сервером SmartAuditor работает IIS, который при установке SSL-соединения посылает свой сертификат сервера клиенту - SmartAuditor Agent, SmartAuditor Player или SmartAuditor Policy Console. При получении сертификата сервера клиент определяет центр сертификации, выдавший рертификат и проверяет, что разрешено доверять этому центру сертификации. Если центр сертификации не доверен, то сертификат отклоняется и в системном журнале приложений фиксируется ошибка. &lt;br/&gt;

При установке сертификата сервера собрается инфоормация о сервере, затем он отсылается в центр сертификации и тот выпускает сертификат для данного сервера. При запросе сертификата следует удостовериться, что указано правильное имя сервера. Если для подключения клиентов (SmartAuditor Agent, SmartAuditor Player и Policy Console) используется имя FQDN, то при запросе сертификата следует указывать именно это FQDN-имя, а не NetBIOS-имя. Если при выдаче сертификата указано NetBIOS-имя, то при запросе сертификата не следует использовать FQDN-имя. Установите сертификат сервера в локальное хранилище сертификатов. Также установите сертификат доверенного центра сертификации в клиентские хранилища сертификатов.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Организация может иметь собственный центр сертификации, который выпускает сертификаты для серверов. В этом случае убедитесь что каждое клиентское устройство имеет сертификат этого центра сертификации. За дополнительной информацией обращайтесь в документацию Microsoft, посвященную использованию сертификатов и центров сертификации. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Все сертификаты имеют срок действия. Убедитесь, что сроки не истекли.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
SmartAuditor по-умолчанию сконфигурирован для использования HTTPS и требует наличия у Web-сервера своего сертификата. См. документацию IIS.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:69,&amp;quot;range&amp;quot;:&amp;quot;112017-115094&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit70&quot; id=&quot;требования_smartauditor_к_серверу_сети_и_базе_данных&quot;&gt;Требования SmartAuditor к серверу, сети и базе данных.&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Сервер:&lt;/strong&gt;&lt;br/&gt;

 - Двухъядерный CPU рекомендуется&lt;br/&gt;

 - Процессор с поддержкой 64-bitрекомендуется, хотя работать будет и на x86&lt;br/&gt;

 - Рекомендуется от 2GB до 4GB&lt;br/&gt;

Превышение этих спецификаций не сильно повысит производительность.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Производительность сети.&lt;/strong&gt; &lt;br/&gt;

Для работы SmartAuditor достаточно сети 100 Мбит. Использование гигабитной сети увеличит производительность, но не намного.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Несколько серверов.&lt;/strong&gt;&lt;br/&gt;

Можно использовать одновременно несколько серверов SmartAuditor. В этом случае каждый сервер будет иметь свое собственное хранилище, сетевые интерфейсы и базу данных. Для распределения нагрузки следует прописать соотсетсвующие серверы в конфигурации SmartAuditor Agents.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Масштабируемость базы данных.&lt;/strong&gt;&lt;br/&gt;

База данных на базе Microsoft SQL Server 2005 или Microsoft SQL Server 2008 предназначена для хранения метаданных SmartAuditor. Каждая сессия занимает порядка 1KB места в базе данных. Таким образом, ограничение размера базы в 4Gb Express-версий Microsoft SQL позволит сохранить порядка 4 миллионов сессий.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f SmartAuditor \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443, \u0441\u0435\u0442\u0438 \u0438 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f_smartauditor_\u043a_\u0441\u0435\u0440\u0432\u0435\u0440\u0443_\u0441\u0435\u0442\u0438_\u0438_\u0431\u0430\u0437\u0435_\u0434\u0430\u043d\u043d\u044b\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:70,&amp;quot;range&amp;quot;:&amp;quot;115095-116921&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit71&quot; id=&quot;важные_замечания_по_установке_smartauditor&quot;&gt;Важные замечания по установке SmartAuditor&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
 - Все компоненты SmartAuditor должны быть установлены на компьютеры, входящие в один домен, либо в доверенные домены с транзитивными доверительными отношениями. SmartAuditor не модет быть установлен в рабочих группах или в недоверенных доменах.&lt;br/&gt;

 - Кластеризация SmartAuditor Servers не поддерживается.&lt;br/&gt;

 - Из-за высокой графической нагрузки при воспроизведении сессий, не рекомендуется устанавливать SmartAuditor Player как опубликованное прилождение на ферме XenApp.&lt;br/&gt;

 - SmartAuditor использует SSL/HTTPS, поэтому следует убедиться, что на компонентах SmartAuditor установлены корневой сертификат и сертификат сервера SmartAuditor Server.&lt;br/&gt;

 - При размещении базы данных SmartAuditor на отдельном SQL Server 2005 Express Edition или SQL Server 2008 Express Edition следует убедиться что включен протокол TCP/IP и включен SQL Server Browser. Эти настройки по-умолчанию отключены. &lt;br/&gt;

 - Следите за настройками Session sharing, которые могут конфликтовать с политиками записи SmartAuditor. &lt;br/&gt;

 - SmartAuditor сопоставляет активную политику с первым запущенным пользователем приложением. После запуска первого приложения, все последующие запускаемые будут следовать уже примененной политике. Например, политика утверждает, что записывать нужно только Microsoft Outlook и действительно при запуске Microsoft Outlook сессия записывается. При этом, если после запуска Microsoft Outlook запустить Microsoft Word, то он тоже будет записан. Напротив, если в политике указано, что Word не нужно записывать, то если первым запустить Word, а потом Outlook (для которого запись разрешена), то сессия Outlook не запишется.&lt;br/&gt;

 &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0430\u0436\u043d\u044b\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u043f\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 SmartAuditor&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0430\u0436\u043d\u044b\u0435_\u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u044f_\u043f\u043e_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435_smartauditor&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:71,&amp;quot;range&amp;quot;:&amp;quot;116922-119637&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit72&quot; id=&quot;установка_smartauditor&quot;&gt;Установка SmartAuditor&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для установки используйте Autorun &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Кмопненты SmartAuditor  это - SmartAuditor Database, SmartAuditor Server и the SmartAuditor Policy Console. Выберите, что конкретно из них устанавливать на каждый сервер.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 В меню Autorun выберите:    &lt;strong&gt;Manually install components &amp;gt; Server Components &amp;gt; Miscellaneous &amp;gt; SmartAuditor &amp;gt; SmartAuditor Administration&lt;/strong&gt;.&lt;br/&gt;

 Следуйте указаниям мастера.&lt;br/&gt;

 На странице конфигурирования базы данных:&lt;br/&gt;

 - Если устанавливаете административные компоненты на том  же сервере, то выберите &lt;strong&gt;localhost &lt;/strong&gt; в качестве параметра &lt;strong&gt;Accessing user account for computer or localhost &lt;/strong&gt;.&lt;br/&gt;

 - Если SmartAuditor Server и SmartAuditor Database устанавливаются на разных серверах, то введите имя компьютера, на котором работает SmartAuditor Server в таком виде: &lt;strong&gt;domain\machine-name$&lt;/strong&gt;. Убедитесь, что символ ($) есть после имени.&lt;br/&gt;

 Следуйте указаниям мастера для завершения установки.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Установка SmartAuditor Agent&lt;/strong&gt;&lt;br/&gt;

SmartAuditor Agent должен быть установлен на севрерах XenApp.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 В меню Autorun выберите: &lt;strong&gt;Manually install components &amp;gt; Server Components &amp;gt; Miscellaneous &amp;gt; SmartAuditor &amp;gt; SmartAuditor Agent.&lt;/strong&gt;&lt;br/&gt;

 На странице конфигурирования SmartAuditor Agent введите имя компьютера, на котором установлен SmartAuditor Server.&lt;br/&gt;

 Следуйте указаниям мастера для завершения установки.&lt;br/&gt;

 &lt;br/&gt;

&lt;strong&gt;Установка SmartAuditor Player&lt;/strong&gt;&lt;br/&gt;

SmartAuditor Player устанавливается на рабочей станции пользователя, который будет просматривать записанные сессии.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 В меню Autorun выберите: &lt;strong&gt;Manually install components &amp;gt; Server Components &amp;gt; Miscellaneous &amp;gt; SmartAuditor &amp;gt; SmartAuditor Player.&lt;/strong&gt;&lt;br/&gt;

 Следуйте указаниям мастера для завершения установки.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 SmartAuditor&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_smartauditor&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:72,&amp;quot;range&amp;quot;:&amp;quot;119638-122064&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit73&quot; id=&quot;определение_того_какую_роль_должен_играть_сервер&quot;&gt;2.2 - Определение того, какую роль должен играть сервер&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.2 - \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a\u0443\u044e \u0440\u043e\u043b\u044c \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u0433\u0440\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435_\u0442\u043e\u0433\u043e_\u043a\u0430\u043a\u0443\u044e_\u0440\u043e\u043b\u044c_\u0434\u043e\u043b\u0436\u0435\u043d_\u0438\u0433\u0440\u0430\u0442\u044c_\u0441\u0435\u0440\u0432\u0435\u0440&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:73,&amp;quot;range&amp;quot;:&amp;quot;122065-122172&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit74&quot; id=&quot;планирование_сборщиков_данных_data_collectors&quot;&gt;Планирование сборщиков данных (Data Collectors)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-data-collectors-planning-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-data-collectors-planning-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-data-collectors-planning-v2.html&lt;/a&gt;&lt;br/&gt;

При планировании сборщиков данных (data collector) решите:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Нужен ли вам выделенный сборщик (data collector)?&lt;br/&gt;

 - Если не нужен выделенный, то какие компоненты инфраструктуры должны работать вместе со сборщиком на одном сервере?&lt;br/&gt;

 - Нужны ли вам зоны на каждой площадке вашей фермы XenApp? В каждой зоне должен быть хотя бы один сборщик.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для поддержания связанной работы зон фермы, сборщики данных используют информацию сборщиков из других зон, что создает некоторый трафик в сети.&lt;br/&gt;

Потребление памяти сборщиком незначительно растет по мере роста фермы. Например, служба Independent Management Architecture (IMA) в ферме из 1000 серверов потребляет порядка 300 мегабайт памяти.&lt;br/&gt;

Потребление ресурсов процессора также не велико. Сборщик работающий на двухъядерном процессоре может обслужать зону из 1000 серверов. Потребление растет по мере увеличения числа серверов, зон и приложений.&lt;br/&gt;

В большинстве случаев Citrix рекомендует иметь как можно меньше зон и сборщиков. Например, в случае размещения 1000 серверов на одной площадке рекомендуется настраивать одну зону и один выделенный сборщик (хотя можно иметь и резервные). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 (Data Collectors)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0431\u043e\u0440\u0449\u0438\u043a\u043e\u0432_\u0434\u0430\u043d\u043d\u044b\u0445_data_collectors&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:74,&amp;quot;range&amp;quot;:&amp;quot;122173-124346&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit75&quot; id=&quot;настройка_зон_для_xenapp&quot;&gt;Настройка зон для XenApp&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-zones-wans-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-zones-wans-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-planning/ps-planning-zones-wans-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Зона - это группа серверов. В любой ферме есть хотя бы одна зона. Все серверы фермы должны принадлежать какой-то зоне. По-умолчанию, при установке XenApp все серверы принадлежат одной зоне с именем &lt;strong&gt;Default Zone&lt;/strong&gt;. &lt;br/&gt;

Создание зон преследует две цели:&lt;br/&gt;

 - Собирать данные от серверов зоны в иерархическую структуру&lt;br/&gt;

 - Эффективно распространять изменения конфигурации на все серверы фермы&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В каждой зоне есть сервер, который определен как сборщик данных (data collector). Сборщики данных хранят информацию о серверах зоны и опубликованных приложениях. В фермах, где больше одной зоны, сборщики выполняют роль шлюзов между зонами.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/ps-data-collectors-wan-2.png&quot; class=&quot;media&quot; title=&quot;ps-data-collectors-wan-2.png&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/ps-data-collectors-wan-2.png?w=200&amp;amp;tok=a4f600&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;strong&gt;На рисунке приведен пример фермы с двумя зонами. Сборщики данных взаимодействуют по каналу WAN.&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Так как в крупной ферме объем информации о сессиях и нагрузке может быть довольно значительным (несколько мегабайт) для эффективного масштабирования фермы важно, чтобы структура зон соответствовала топологии сети. &lt;br/&gt;

Серверы фермы XenApp реплицируют свои динамически обновляемые данные на коллектор зоны. XenApp использует топологию “звезда” для репликации в пределах зоны - каждый сборщик данных реплицирует динамические данные зоны всем другим сборщикам данных в ферме. Таким образом, важно, чтобы при планировании зон, между сборщиками данных предполагались каналы связи с соответствующей пропускной способностью.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При планировании зон наиболее критичными значениями являются пропускная способность канала связи и его задержка. Чем ниже пропускная способность канала связи между зонами и выше задержка, тем больше времени требуется зоне для синхронизации. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В географически распределенных фермах формирование зон, соединенных каналами WAN, повышает производительность. Citrix не рекомендует иметь больше одной зоны в ферме, если серверы не распределены по нескольким удаленным площадкам. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Сборщики данных генерируют большое количество сетевого трафика, т.к. постоянно обмениваются данными друг с другом:&lt;br/&gt;

 - Каждый сборщик данных зоны постоянно поддерживает подключения ко всем другим сборщикам фермы.&lt;br/&gt;

 - При обновлении зоны, рядовые сервера обновляют данные на сборщике при каждом запросе и изменении конфигурации.&lt;br/&gt;

 - Сборщики данных передают изменения другим сборщикам, следовательно, сборщики данных имеют сведения обо всех сессиях во сех зонах.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Выделять зоны требуется не всегда, даже если площадки, на которых размещены серверы фермы расположены на разных континентах. Наиболее критичным фактором для взаимодействия серверов внутри зоны является задержка в каналах связи. &lt;br/&gt;

Также следует определить нужны ли зоны для обработки отказов (&lt;strong&gt;failover&lt;/strong&gt;) или зоны предпочтения (&lt;strong&gt;preference&lt;/strong&gt;). То есть можно указать к какой зоне будут перенаправлены пользователи в случае отказа, также жестко указать к какой зоне следует подключаться каждому пользователю. Требования к обработке отказов могут определять необходимое число зон.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Например, в организации есть 20 серверов на площадке в Лондоне, 50 серверов в Нью-Йорке и три сервера в Сиднее. В этом случае следует создать две или три зоны. Если площадка в Сиднее имеет хороший канал связи с Нью-Йорком или Лондоном, то рекомендуется объединить серверы в Сиднее с наиболее крупной зоной - в даном случае с Нью-Йорком. Однако, если качество канала связи не высоко, а также требуется обеспечить обработку отказов и предпочтения зон, то Citrix рекомендует сконфигурировать три зоны.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При планировании конфигурации зон учитывайте:&lt;br/&gt;

 - Всегда по возможности следует минимизировать число зон.&lt;br/&gt;

 - Создавайте зоны в крупных центрах обработки данных в разных регионах.&lt;br/&gt;

 - Если на площадке установлено небольшое число серверов - присоедините их к зоне на другой площадке с большим числом серверов.&lt;br/&gt;

 - Если у организации есть филиалы с плохими каналами связи, то не следует там создавать отдельные зоны, а следует присоединять серверы этих площадок к зонам на более крупных площадках, с связь с которыми наилучшая. При таком варианте возможна конфигурация зоны типа &lt;strong&gt;hub-and-spoke&lt;/strong&gt;(так называемая “осевая”).&lt;br/&gt;

 - Если  есть больше пяти площадок, то следует объединять наиболее мелкие с крупными. Citrix не рекомендует иметь в ферме более 5 зон.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u043e\u043d \u0434\u043b\u044f XenApp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0437\u043e\u043d_\u0434\u043b\u044f_xenapp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:75,&amp;quot;range&amp;quot;:&amp;quot;124347-131992&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit76&quot; id=&quot;лицензирование_xenapp_где_и_как_получить_файл_с_лицензией&quot;&gt;2.3 - Лицензирование XenApp. Где и как получить файл с лицензией?&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/licensing-119/lic-install-license-files.html#lic-install-license-files&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/licensing-119/lic-install-license-files.html#lic-install-license-files&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/licensing-119/lic-install-license-files.html#lic-install-license-files&lt;/a&gt;&lt;br/&gt;

После установки компонентов лицензирования необходимо получить файлы лицензий от Citrix. На сайте &lt;a href=&quot;http://citrix.com&quot; class=&quot;urlextern&quot; title=&quot;http://citrix.com&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrix.com&lt;/a&gt; необходимо сгенерировать файл лицензий, скачать его и поместить на сервер лицензий, а затем импортировать с помощью консоли администрирования лицензий (License Administration Console).&lt;br/&gt;

Перед тем как обращаться на сайт Citrix за лицензией следует удостовериться что у вас имеется следующее:&lt;br/&gt;

1. Код лицензии. Этот код можно найти на носителе, с которого устанавливается XenApp, в электронном письме от citrix или от автоматической системы подписки и обновления (Subscription Advantage Management-Renewal-Information system (SAMRI)).&lt;br/&gt;

2. Ваш идентификатор пользователя и пароль с сайта MyCitrix. Для того чтобы получить эти сведения следует зарегистрироваться на сайте MyCitrix.&lt;br/&gt;

3. Имя сервера, на который установлены компоненты лицензирования. Поле для ввода этого имени чувствительно к регистру. Введите имя точно также как оно задано на сервере. Это имя можно узнать, выполнив в командной строке команду &lt;strong&gt;hostname&lt;/strong&gt;.&lt;br/&gt;

4. Следует знать, сколько лицензий вы хотите включить в файл лицензий. Учтите, что получить сразу все запрошенные лицензии не получится. Например, если вы запросили 100 лицензий, то сразу сможете скачать файл только на 50 лицензий, и затем через некоторое время еще на 50. Допустимо иметь несколько файлов лицензий.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для получения лицензий с помощью консоли администрирования лицензий (License Administration Console):&lt;br/&gt;

1. Запустите консоль (Start &amp;gt; All Programs &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; License Administration Console).&lt;br/&gt;

2. Кликните Administration and Vendor Daemon Configuration.&lt;br/&gt;

3. Кликните Import License.&lt;br/&gt;

4. Кликните по ссылке My Citrix.&lt;br/&gt;

5. На странице My Citrix введите ваш ID и пароль.&lt;br/&gt;

6. Выберите пункт &lt;strong&gt;Select Manage Licenses&lt;/strong&gt; в меню &lt;strong&gt;Choose a Toolbox&lt;/strong&gt;.&lt;br/&gt;

7. В меню &lt;strong&gt;Manage Licenses &lt;/strong&gt; выберите &lt;strong&gt;Allocate&lt;/strong&gt;.&lt;br/&gt;

8. Выделите лицензии и сгенерируйте файл.&lt;br/&gt;

9. Скачайте необходимый лицензии и сохраните файл в папку:&lt;br/&gt;

 &lt;strong&gt;C:\Program Files\Citrix\Licensing\MyFiles &lt;/strong&gt;  на системе 32-bit&lt;br/&gt;

 &lt;strong&gt;C:\Program Files (x86)\Citrix\Licensing\MyFiles&lt;/strong&gt; на системе 64-bit&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
10. В консоли администрирования лицензий на странице Import License File укажите файл лицензий.&lt;br/&gt;

11. Если вы скопировали файл непосредственно в папку MyFiles или файл имеет такое же имя, как и существующий, выберите &lt;strong&gt;Overwrite License File on License Server&lt;/strong&gt;.&lt;br/&gt;

12. Кликните Import License.&lt;br/&gt;

13. Кликните &lt;strong&gt;Vendor Daemon Configuration &lt;/strong&gt; и затем &lt;strong&gt;Administer&lt;/strong&gt; на строке вендора &lt;strong&gt;Citrix&lt;/strong&gt;.&lt;br/&gt;

14. Кликните &lt;strong&gt;Reread License Files &lt;/strong&gt; для того, чтобы сервер лицензий прочитал новый файл.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После этого пользователи могут начать использовать добавленные лицензии.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтлбы вручную получить файл лицензий:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1. Зайдите на сайт &lt;a href=&quot;http://www.citrix.com&quot; class=&quot;urlextern&quot; title=&quot;http://www.citrix.com&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.citrix.com&lt;/a&gt;.&lt;br/&gt;

2. Кликните Log In и введите имя  пароль.&lt;br/&gt;

3. Из выпадающего меню выберите License Management.&lt;br/&gt;

4. В меню Manage Licenses выберите Allocate.&lt;br/&gt;

5. Сгенерируйте файл лицензий.&lt;br/&gt;

6. Скачайте необходимый лицензии и сохраните файл в папку:&lt;br/&gt;

 &lt;strong&gt;C:\Program Files\Citrix\Licensing\MyFiles &lt;/strong&gt;  на системе 32-bit&lt;br/&gt;

 &lt;strong&gt;C:\Program Files (x86)\Citrix\Licensing\MyFiles&lt;/strong&gt; на системе 64-bit&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit77&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; Совет: Убедитесь, что файл лицензий имеет расширение “.lic”. В некоторых случаях файл получает расширение “.txt”. Файлы лицензий с неправильным расширением не импортируются. &lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table7&amp;quot;,&amp;quot;secid&amp;quot;:77,&amp;quot;range&amp;quot;:&amp;quot;137142-137456&amp;quot;} --&gt;
&lt;p&gt;
7. В командной строке перейдите в папку:&lt;br/&gt;

 &lt;strong&gt;C:\Program Files\Citrix\Licensing\LS&lt;/strong&gt; на системе 32-bit&lt;br/&gt;

 &lt;strong&gt;C:\Program Files (x86)\Citrix\Licensing\LS&lt;/strong&gt; на системе 64-bit&lt;br/&gt;

 &lt;br/&gt;

И выполните команду:  &lt;strong&gt;lmreread -c @localhost&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.3 - \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 XenApp. \u0413\u0434\u0435 \u0438 \u043a\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u0441 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439?&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_xenapp_\u0433\u0434\u0435_\u0438_\u043a\u0430\u043a_\u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c_\u0444\u0430\u0439\u043b_\u0441_\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:76,&amp;quot;range&amp;quot;:&amp;quot;131993-137751&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit78&quot; id=&quot;раздел_3_конфигурирование_сессий_пользователей_xenapp&quot;&gt;Раздел 3. Конфигурирование сессий пользователей XenApp&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 3. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0441\u0441\u0438\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 XenApp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_3_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0435\u0441\u0441\u0438\u0439_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439_xenapp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:78,&amp;quot;range&amp;quot;:&amp;quot;137752-137859&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit79&quot; id=&quot;конфигурирование_технологий_hdxspeedscreen_mediastream_flash_redirection&quot;&gt;3.1 - Конфигурирование технологий HDX/Speedscreen, MediaStream Flash Redirection&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-wrapper-ad.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-wrapper-ad.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-wrapper-ad.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;HDX MediaStream Flash Redirection&lt;/strong&gt; позволяет обрабатывать контент формата &lt;strong&gt;Adobe Flash&lt;/strong&gt; в браузере клиентского устройства (как &lt;strong&gt;windows&lt;/strong&gt;, так и &lt;strong&gt;linux&lt;/strong&gt;), а не в экземпляре браузера на сервере. Передача контента возможна для широкого круга приложений, в том числе анимации и видео. Перенаправление ресурсоемкого контента для исполнения на клиентском устройстве позволяет снизить нагрузку на сервер и таким образом улучшить масштабируемость XenApp, и повысить качество выводимой пользователю картинки.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit80&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: для использования &lt;strong&gt;Flash Redirection&lt;/strong&gt; требуется один из двух типов &lt;strong&gt;Adobe Flash Player&lt;/strong&gt;. Первый - &lt;strong&gt;Adobe as Flash Player&lt;/strong&gt; для &lt;strong&gt;Windows Internet Explorer&lt;/strong&gt; (иногда называемый &lt;strong&gt;ActiveX&lt;/strong&gt; player). ВТорой - &lt;strong&gt;Adobe Flash Player&lt;/strong&gt; для других браузеров, иногда называемый &lt;strong&gt;NPAPI&lt;/strong&gt; (Netscape Plugin Application Programming Interface) Flash Player.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table8&amp;quot;,&amp;quot;secid&amp;quot;:80,&amp;quot;range&amp;quot;:&amp;quot;138939-139419&amp;quot;} --&gt;
&lt;p&gt;
 &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.1 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 HDX\/Speedscreen, MediaStream Flash Redirection&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439_hdxspeedscreen_mediastream_flash_redirection&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:79,&amp;quot;range&amp;quot;:&amp;quot;137860-139423&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit81&quot; id=&quot;второе_поколение_flash_redirection&quot;&gt;Второе поколение Flash Redirection&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Flash Redirection используется с:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Citrix XenApp 6.5&lt;br/&gt;

 Citrix XenDesktop 5.5&lt;br/&gt;

 Citrix Receiver 3.0&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Второе поколение Flash Redirection включает функции:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - поддержка пользователей подключенных по каналам WAN&lt;br/&gt;

 - Flash Redirection второго поколения и более ранних версия работают в разных виртуальных каналах&lt;br/&gt;

 - функция Intelligent Fallback, которая позволяет определять, эффективно ли работает устройство пользователя и, при необходимости, осуществлять обработку контента на сервере&lt;br/&gt;

 - Список Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; Compatibility List заменил Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; Blacklist. Рендеринг указанных &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; и на клиентском устройстве и на сервере может быть заблокирован.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u0435 Flash Redirection&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0442\u043e\u0440\u043e\u0435_\u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u0435_flash_redirection&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:81,&amp;quot;range&amp;quot;:&amp;quot;139424-140505&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit82&quot; id=&quot;системные_требования_для_flash_redirection&quot;&gt;Системные требования для Flash Redirection&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Нижеприведенные сведения актуальны на момент публикации, а дополнительную информацию можно найти по адресу: &lt;a href=&quot;https://www.citrix.com/support/product-lifecycle/product-matrix&quot; class=&quot;urlextern&quot; title=&quot;https://www.citrix.com/support/product-lifecycle/product-matrix&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.citrix.com/support/product-lifecycle/product-matrix&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для пользовательских устройств требуется:&lt;br/&gt;

 - Для работы второго поколения Flash Redirection  требуются Citrix Receiver for Linux 12.0 или Receiver for Windows 3.0 (ранее назывался online plug-in). Online plug-in 12.1 поддерживает работу только функций старой версии Flash Redirection.&lt;br/&gt;

 - Включенное и работающее сетевое подключение. Для работы XenDesktop Virtual Desktop Agents установите сетевое соединение между пользовательским устройством Windows и агентом.&lt;br/&gt;

 - На пользовательских устройствах должен быть установлен Adobe Flash Player for Windows - Other Browsers. Версия Flash Player на пользовательском устройстве должна быть такой же или выше, чем версия Flash Player for Windows Internet Explorer, установленная на сервере Citrix XenApp 6.5 или Citrix XenDesktop 5.5.&lt;br/&gt;

 ^   Примечание: если на килентском устройстве установлена старая версия Flash Player или Flash Player сообще не может быть установлен на устройстве, то Flash-контент будет обрабатываться (рендериться) на сервере.^&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Системные требования для серверов Citrix XenApp 6.5 или Citrix XenDesktop 5.5:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Flash Player 10.1 или выше для Windows Internet Explorer на серверах XenApp и XenDesktop&amp;#039;s Virtual Desktop Agents.&lt;br/&gt;

 - Internet Explorer 9, Internet Explorer 8 или Internet Explorer 7.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Второе поколение Flash Redirection on XenDesktop 5.5 поддерживает Internet Explorer 9.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того, чтобы включить поддержку Internet Explorer 9 на серверах XenApp 6.5 нужно отредактировать реестр сервера XenApp.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit83&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Предупреждение: Перед правкой реестра следует сделать его резервную копию. Неправильные изменения в реестре могут привести операционную систему в нерабочее состояние.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table9&amp;quot;,&amp;quot;secid&amp;quot;:83,&amp;quot;range&amp;quot;:&amp;quot;143033-143347&amp;quot;} --&gt;
&lt;p&gt;
На операционной системе 32-bit:&lt;br/&gt;

В ветке &lt;strong&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\HdxMediaStreamForFlash\Server\PseudoServer&lt;/strong&gt;&lt;br/&gt;

Добавьте параметр типа &lt;strong&gt;DWORD&lt;/strong&gt; с именем &lt;strong&gt;IEBrowserMaximumMajorVersion&lt;/strong&gt; и значением &lt;strong&gt;00000009&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
На операционной системе 64-bit:&lt;br/&gt;

В ветке &lt;strong&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\HdxMediaStreamForFlash\Server\PseudoServer&lt;/strong&gt;&lt;br/&gt;

Добавьте параметр типа &lt;strong&gt;DWORD&lt;/strong&gt; с именем &lt;strong&gt;IEBrowserMaximumMajorVersion&lt;/strong&gt; и значением &lt;strong&gt;00000009&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit84&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Предупреждение: Flash Redirection требует постоянного взаимодействия между пользовательским устройством и сервером. Это создает возможность атаки клиентских устройств специально сформированным flash-контентом или flash-плеером. Используйте Flash Redirection  только с доверенными серверами.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table10&amp;quot;,&amp;quot;secid&amp;quot;:84,&amp;quot;range&amp;quot;:&amp;quot;143949-144456&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f Flash Redirection&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435_\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f_\u0434\u043b\u044f_flash_redirection&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:82,&amp;quot;range&amp;quot;:&amp;quot;140506-144457&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit85&quot; id=&quot;конфигурирование_hdx_mediastream_flash_redirection_на_сервере&quot;&gt;Конфигурирование HDX MediaStream Flash Redirection на сервере&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-configure-server-ad.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-configure-server-ad.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-configure-server-ad.html&lt;/a&gt;&lt;br/&gt;

Настройки HDX MediaStream Flash Redirection на стороне сервера конфигурируются с помощью политик в инструментах Citrix Desktop Studio или Citrix AppCenter. Управлять функциями Flash Redirection можно с помощью следующих политик (Citrix User Policy):&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Flash backwards compatibility&lt;/strong&gt; - Обратная совместимость Flash&lt;br/&gt;

 &lt;strong&gt;Flash default behavior&lt;/strong&gt; - Поведение по-умолчанию&lt;br/&gt;

 &lt;strong&gt;Flash intelligent fallback&lt;/strong&gt;  - Интеллектуальное “отступление” - обработка некоторого flash-контента на сервере&lt;br/&gt;

 &lt;strong&gt;Flash latency threshold&lt;/strong&gt; - Порог задержки&lt;br/&gt;

 &lt;strong&gt;Flash server-side content fetching &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; list&lt;/strong&gt; - Список сайтов, контент с которых скачивается на сервер и потом передается клиенту для обработки.&lt;br/&gt;

 &lt;strong&gt;Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; compatibility list&lt;/strong&gt; - Список совместимых &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; &lt;br/&gt;

 &lt;strong&gt;Flash event logging&lt;/strong&gt; - Журналирование событий &lt;br/&gt;

 &lt;strong&gt;Flash acceleration&lt;/strong&gt; - Ускорение обработки Flash. Будет или не будет использована оптимизация Flash.&lt;br/&gt;

 &lt;strong&gt;Flash background color list&lt;/strong&gt; - Список фоновых оттенков&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 HDX MediaStream Flash Redirection \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_hdx_mediastream_flash_redirection_\u043d\u0430_\u0441\u0435\u0440\u0432\u0435\u0440\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:85,&amp;quot;range&amp;quot;:&amp;quot;144458-146053&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit86&quot; id=&quot;включение_обратной_совместимости_-_flash_backwards_compatibility&quot;&gt;Включение обратной совместимости - &amp;#039;&amp;#039;&amp;#039;Flash backwards compatibility&amp;#039;&amp;#039;&amp;#039;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Второе поколение Flash Redirection может быть настроено для совместимости с пользовательскими устройствами с ранними версиями online plug-in (теперь - Citrix Receiver). Эти устройства смогут использовать только старые функции Flash Redirection. Это обеспечивается созданием двух отдельных виртуальных каналов - по одному для новой и старой версий Flash Redirection. Соответственно, набор работоспособных функций определяется самой старой версией ПО на сервере и на клиенте. &lt;br/&gt;

На пользовательском устройстве должны быть включена опция Enable &lt;strong&gt;HDX MediaStream Flash Redirection&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Чтобы использовать обратную совместимость:&lt;br/&gt;

На сервере с Desktop Studio или AppCenter, в политике &lt;strong&gt;Citrix User Policy&lt;/strong&gt; включите &lt;strong&gt;Flash backwards compatibility&lt;/strong&gt;.&lt;br/&gt;

На пользовательском устройстве включите &lt;strong&gt;Enable HDX MediaStream for Flash &lt;/strong&gt; , выбрав опцию &lt;strong&gt;Всегда (Always)&lt;/strong&gt; или &lt;strong&gt;С подтверждением (Ask)&lt;/strong&gt;.&lt;br/&gt;

 &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit87&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Обратная совместимость недоступна, если выбрана опция &lt;strong&gt;Only with Second Generation &lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table11&amp;quot;,&amp;quot;secid&amp;quot;:87,&amp;quot;range&amp;quot;:&amp;quot;147583-147743&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 - &amp;#039;&amp;#039;&amp;#039;Flash backwards compatibility&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439_\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438_-_flash_backwards_compatibility&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:86,&amp;quot;range&amp;quot;:&amp;quot;146054-147744&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit88&quot; id=&quot;настройка_поведения_по-умолчанию_функций_ускорения_flash_-_flash_acceleration&quot;&gt;Настройка поведения по-умолчанию функций ускорения flash - &amp;#039;&amp;#039;&amp;#039;Flash acceleration&amp;#039;&amp;#039;&amp;#039;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Параметр политики Citrix User Policy  - &lt;strong&gt;Flash Default Behavior &lt;/strong&gt; позволяет задать поведение по-умолчанию функций ускорения Flash. Эта настройка может быть перекрыта настройками для конкретной Web-страницы или элемента Flash, заданных в  Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; Compatibility List. &lt;br/&gt;

Доступны три опции:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Block Flash player&lt;/strong&gt; - Пользовтаель не может просматривать Flash-контент. Перенаправление Flash-контента не используется.&lt;br/&gt;

&lt;strong&gt;Disable Flash acceleration&lt;/strong&gt; - Пользотваель может просматривать Flash-контент, обрабатываемый на сервере. Перенаправление Flash-контента не используется.&lt;br/&gt;

&lt;strong&gt;Enable Flash acceleration&lt;/strong&gt; - Используется Flash Redirection. Второе поколение Flash Redirection доступно при соблюдении соответвующих требований. Режим совместимости со старыми версиями доступен, если включен.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
По умолчанию ускорение flash-контента (Enable Flash acceleration) включено. Если никакая другая опция не задана - используется эта.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f flash - &amp;#039;&amp;#039;&amp;#039;Flash acceleration&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f_\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e_\u0444\u0443\u043d\u043a\u0446\u0438\u0439_\u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f_flash_-_flash_acceleration&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:88,&amp;quot;range&amp;quot;:&amp;quot;147745-149354&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit89&quot; id=&quot;настройка_умного_отступления_-_flash_intelligent_fallback&quot;&gt;Настройка &amp;quot;умного отступления&amp;quot;  - &amp;#039;&amp;#039;&amp;#039;Flash intelligent fallback&amp;#039;&amp;#039;&amp;#039;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Используйте этот параметр, если не хотите, чтобы все flash-элементы контента перенаправлялись для обработки на пользовательское устройство. Обычно, небольшие ролики flash - это реклама. Функция &lt;strong&gt;Flash intelligent fallback&lt;/strong&gt; выявляет эти элементы и обрабатывает (рендерит) их на сервере. Применение этого параметра политики Citrix User Policy не вызывает неполадок при загрузке страницы или работы Flash-приложений.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Эта настройка имеет два положения - Enabled или Disabled. По умолчанию она включена - Enabled.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \&amp;quot;\u0443\u043c\u043d\u043e\u0433\u043e \u043e\u0442\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f\&amp;quot;  - &amp;#039;&amp;#039;&amp;#039;Flash intelligent fallback&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0443\u043c\u043d\u043e\u0433\u043e_\u043e\u0442\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f_-_flash_intelligent_fallback&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:89,&amp;quot;range&amp;quot;:&amp;quot;149355-150317&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit90&quot; id=&quot;настройка_flash_latency_threshold&quot;&gt;Настройка Flash latency threshold&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Настройка политики &lt;strong&gt;Flash latency threshold &lt;/strong&gt; применима к Legacy mode,  то есть доступна только при включенной политике Flash backwards compatibility.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В режиме Legacy, Flash Redirection измеряет время прохождения данных между сервером и пользовательским устройством. Эти данные учитывают как задержку сети, так и другие задержки данных. Если задержка находится в пределах допустимого заданного диапазона, то для рендеринга контента используется Flash Redirection и ендеринг происходит на пользовательском устройстве. Если задержка выше, заданной, то ренедеринг происходит на серверах.&lt;br/&gt;

По умолчанию порог задержки имеет значение 30 миллисекунд. Увеличение этого порога может приводить к ухудшению картинки у пользователя. Не рекомендуется увеличивать значение этого порога. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Flash latency threshold&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_flash_latency_threshold&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:90,&amp;quot;range&amp;quot;:&amp;quot;150318-151710&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit91&quot; id=&quot;список_сайтов_контент_с_которых_обрабатывается_сервером&quot;&gt;Список сайтов, контент с которых обрабатывается сервером&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Параметр  &lt;strong&gt;Flash server-side content fetching &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; list&lt;/strong&gt; - это список сайтов, с которых разрешено скачивать контент Flash для последующей передачи на пользовательское устройство. Эта функция применима, в случаях, когда у пользовательского устройства отсутствует прямой доступ к источнику flash-контента (отсутствует доступ в интернет, либо контент располагается на внутреннем сайте компании). Хотя в этот список могут входить хоть все сайты интернета, он предназначен для сайтов корпоративной сети и внутренних Flash-приложений. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit92&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: &lt;strong&gt;Server-side content fetching&lt;/strong&gt; не поддерживает приложения, использующие Real Time Messaging Protocols (RTMP). Для таких приложений и сайтов применяется рендеринг на стороне сервера.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table12&amp;quot;,&amp;quot;secid&amp;quot;:92,&amp;quot;range&amp;quot;:&amp;quot;152747-153053&amp;quot;} --&gt;
&lt;p&gt;
Эта настройка работает, если для клиента включена опция &lt;strong&gt;Enable server-side content fetching&lt;/strong&gt;. Она включается в редакторе групповой политики.&lt;br/&gt;

&lt;a href=&quot;http://www.jackcobben.nl/?p=2872&quot; class=&quot;urlextern&quot; title=&quot;http://www.jackcobben.nl/?p=2872&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.jackcobben.nl/?p=2872&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_HDX_MediaStream_Flash_Redirection_%D0%BD%D0%B0_%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%BE%D0%BC_%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B5_124&quot; class=&quot;urlextern&quot; title=&quot;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_HDX_MediaStream_Flash_Redirection_%D0%BD%D0%B0_%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%BE%D0%BC_%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B5_124&quot; rel=&quot;ugc nofollow&quot;&gt;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_HDX_MediaStream_Flash_Redirection_%D0%BD%D0%B0_%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%BE%D0%BC_%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B5_124&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Эта настройка листа, как правило используется, если клиентское устройство не имеет прямого соединения с интернетом и сервер XenApp или XenDesktop обеспечивает это соединение.&lt;br/&gt;

При конфигурировании &lt;strong&gt;Flash server-side content fetching &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; list &lt;/strong&gt; учитывайте следующее:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Добавляйте &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; самого приложения Flash, а не всей страницы.    &lt;br/&gt;

 - Используйте звездочку “*” в начале и в конце &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;, в качестве маски для расширения списка.&lt;br/&gt;

 - Звездочка в конце &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; позволяет включить все страницы ресурса в список. Например - &lt;a href=&quot;http://www.sitetoallow.com/&quot; class=&quot;urlextern&quot; title=&quot;http://www.sitetoallow.com/&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.sitetoallow.com/&lt;/a&gt;*.&lt;br/&gt;

 - Префиксы http:&lt;em&gt; и  https:&lt;/em&gt; используются, если указано. В общем случае они не требуются.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Сконфигурируйте список &lt;strong&gt;Flash server-side content fetching &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; list &lt;/strong&gt;, кликнув New, для добавления &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; в список.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit93&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО: Для работы этого параметра для клиентского устройства нужно включить опцию &lt;strong&gt;Enable server-side content fetching&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table13&amp;quot;,&amp;quot;secid&amp;quot;:93,&amp;quot;range&amp;quot;:&amp;quot;154994-155190&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a \u0441\u0430\u0439\u0442\u043e\u0432, \u043a\u043e\u043d\u0442\u0435\u043d\u0442 \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_\u0441\u0430\u0439\u0442\u043e\u0432_\u043a\u043e\u043d\u0442\u0435\u043d\u0442_\u0441_\u043a\u043e\u0442\u043e\u0440\u044b\u0445_\u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f_\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:91,&amp;quot;range&amp;quot;:&amp;quot;151711-155191&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit94&quot; id=&quot;настройка_того_где_будет_рендериться_flash-контент&quot;&gt;Настройка того, где будет рендериться flash-контент&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Второе поколение Flash Redirection позволяет указать, где будет рендериться контент с указанных сайтов:&lt;br/&gt;

 - Rendered on the user device - Рендер на пользовательском устройстве&lt;br/&gt;

 - Rendered on the server - Рендер на сервере&lt;br/&gt;

 - Blocked from rendering - Рендер заблокирован&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При настройке списка &lt;strong&gt;Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; compatibility list &lt;/strong&gt; учитвайте:&lt;br/&gt;

 - Наиболее важные  &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; должны располагаться вверху списка&lt;br/&gt;

 - Используйте звездочку “*” в начале и в конце &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;, в качестве маски для расширения списка.&lt;br/&gt;

 - Звездочка в конце &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; позволяет включить все страницы ресурса в список. Например - &lt;a href=&quot;http://www.sitetoallow.com/&quot; class=&quot;urlextern&quot; title=&quot;http://www.sitetoallow.com/&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.sitetoallow.com/&lt;/a&gt;*.&lt;br/&gt;

 - Префиксы http:&lt;em&gt; и  https:&lt;/em&gt; используются, если указано. В общем случае они не требуются.&lt;br/&gt;

 - Если ресурс не рендерится нормально на пользовательском устройстве, дл янего следует казать опцию  Render on Server или Block.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы сконфигурировать список &lt;strong&gt;Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; compatibility list&lt;/strong&gt;: &lt;br/&gt;

- Кликните New и откроется диалоговое окно &lt;strong&gt;Add Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; Compatibility list entry &lt;/strong&gt;&lt;br/&gt;

 - Выберите действие и (Render on Client, Render on Server, или Block)&lt;br/&gt;

 - В поле &lt;strong&gt;&lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; Pattern&lt;/strong&gt; введите &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; сайта&lt;br/&gt;

 - Выберите элемент Flash, к которому буде применена натройка - Any - ко всем,  Specific - к выбранным (Flash player ID).&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0442\u043e\u0433\u043e, \u0433\u0434\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u0442\u044c\u0441\u044f flash-\u043a\u043e\u043d\u0442\u0435\u043d\u0442&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0442\u043e\u0433\u043e_\u0433\u0434\u0435_\u0431\u0443\u0434\u0435\u0442_\u0440\u0435\u043d\u0434\u0435\u0440\u0438\u0442\u044c\u0441\u044f_flash-\u043a\u043e\u043d\u0442\u0435\u043d\u0442&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:94,&amp;quot;range&amp;quot;:&amp;quot;155192-157198&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit95&quot; id=&quot;включение_журналирования_серверных_событий&quot;&gt;Включение журналирования серверных событий&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Flash Redirection использует журнал Windows для записей событий Flash. Вы можете просмотреть журнал и определить, когда используется Flash Redirection  и собрать дополнительную информацию о проблеме.&lt;br/&gt;

При записи событий Flash Redirection они все попадают в журнал Приложений (Application log), имеют значение поля источник - Flash и пустое поле категории.&lt;br/&gt;

Кроме того, на компьютерах под управлением Windows 7 и Windows Vista появляется отдельный журнал &lt;strong&gt;Flash Redirection&lt;/strong&gt; в разделе журнала приложений и служб (Applications and Services Logs). В Windows XP события Flash Redirection попадают только в журнал приложений.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
По умолчанию параметр &lt;strong&gt;Flash event logging&lt;/strong&gt; - включен (Enabled).&lt;br/&gt;

Для Flash Redirection второго поколения, настройка недоступна. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f_\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445_\u0441\u043e\u0431\u044b\u0442\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:95,&amp;quot;range&amp;quot;:&amp;quot;157199-158465&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit96&quot; id=&quot;включение_и_отключениережима_совместимости_flash_redirection_legacy_mode_hdx_mediastream_flash_redirection_на_сервере&quot;&gt;Включение и отключениережима совместимости Flash Redirection (&amp;#039;&amp;#039;&amp;#039;Legacy mode HDX MediaStream Flash Redirection&amp;#039;&amp;#039;&amp;#039;) на сервере&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
По-умолчанию, режим совместимости (&lt;strong&gt;Legacy mode Flash Redirection &lt;/strong&gt;) включен на сервере. Изменить эту настройку можно с настройки помощью политики &lt;strong&gt;Citrix User Policy &lt;/strong&gt; - &lt;strong&gt;Flash acceleration&lt;/strong&gt;, в категории &lt;strong&gt;Flash Redirection &lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Сконфигурируйте параметр &lt;strong&gt;Flash acceleration &lt;/strong&gt;, включив или отключив его. По умолчанию - он включен.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если параметр включен - весь контент Flash, не заблокированный в &lt;strong&gt;Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; compatibility list &lt;/strong&gt;, рендерится на пользовательском устройстве, в режиме совместимости (&lt;strong&gt;Legacy mode&lt;/strong&gt;). Если отключен - весь контент Flash рендерится на сервере.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u0440\u0435\u0436\u0438\u043c\u0430 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 Flash Redirection (&amp;#039;&amp;#039;&amp;#039;Legacy mode HDX MediaStream Flash Redirection&amp;#039;&amp;#039;&amp;#039;) \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0438_\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u0440\u0435\u0436\u0438\u043c\u0430_\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438_flash_redirection_legacy_mode_hdx_mediastream_flash_redirection_\u043d\u0430_\u0441\u0435\u0440\u0432\u0435\u0440\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:96,&amp;quot;range&amp;quot;:&amp;quot;158466-159552&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit97&quot; id=&quot;включение_сопоставления_цвета_в_контенте_flash_и_на_странице&quot;&gt;Включение сопоставления цвета в контенте Flash и на странице&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
С помощью настройки &lt;strong&gt;Flash background color list &lt;/strong&gt;, политики &lt;strong&gt;Citrix User Policy &lt;/strong&gt;, можно задать режим соотвествия цвета страницы и цвета фрна flash-контента. Это может улучшить восприятие страницы при просмотре с использованием &lt;strong&gt;Flash Redirection&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Кликните New и введите &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; Web-сайта и 24-bit шестнадцатеричный номер цвета. Например: &lt;strong&gt;&lt;a href=&quot;http://www.sitetomatch.com/&quot; class=&quot;urlextern&quot; title=&quot;http://www.sitetomatch.com/&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.sitetomatch.com/&lt;/a&gt; FF0000&lt;/strong&gt;. Для наилучших результатов - используйте цвета, обычно не встречающиеся на странице, например - черный.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Используйте замыкающий символ “*” для заменемы цвета на всех страницах ресурса по маске - &lt;strong&gt;&lt;a href=&quot;http://www.sitetomatch.com/&quot; class=&quot;urlextern&quot; title=&quot;http://www.sitetomatch.com/&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.sitetomatch.com/&lt;/a&gt;* FF0000&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0446\u0432\u0435\u0442\u0430 \u0432 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0435 Flash \u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f_\u0446\u0432\u0435\u0442\u0430_\u0432_\u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0435_flash_\u0438_\u043d\u0430_\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:97,&amp;quot;range&amp;quot;:&amp;quot;159553-160650&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit98&quot; id=&quot;настройка_hdx_mediastream_flash_redirection_на_пользовательском_устройстве&quot;&gt;Настройка HDX MediaStream Flash Redirection на пользовательском устройстве&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-enable-client-ad.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-enable-client-ad.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-enable-client-ad.html&lt;/a&gt;&lt;br/&gt;

Настройки, применяемые по-умолчанию на пользовательском устройстве, можно настроить с помощью редактора объектов групповой политики (Group Policy Object Editor).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для настройки HDX MediaStream Flash Redirection на пользовательском устройстве:&lt;br/&gt;

 - Создайте или выберите существующий объект групповой политики ActiveDirectory. &lt;br/&gt;

 - Импортируйте и добавьте шаблон &lt;strong&gt;HDX MediaStream Flash Redirection - Client administrative template &lt;/strong&gt;(HdxFlash-Client.adm), который лежит:&lt;br/&gt;

 На 32-бит системах: &lt;strong&gt;%Program Files%\Citrix\ICA Client\Configuration\language&lt;/strong&gt;.&lt;br/&gt;

 На 64-бит системах: &lt;strong&gt;%Program Files (x86)%\Citrix\ICA Client\Configuration\language&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для импорта - в редакторе групповой политики (gpedit.msc) выберите &lt;strong&gt;Административные шаблоны&lt;/strong&gt;, затем в меню &lt;strong&gt;Действие&lt;/strong&gt; выберите &lt;strong&gt;Добавление и удаление шаблонов&lt;/strong&gt;, затем выберите шаблон. После этого в &lt;strong&gt;Административных шаблонах&lt;/strong&gt; появится раздел &lt;strong&gt;Классические административные шаблоны (ADM)&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 HDX MediaStream Flash Redirection \u043d\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_hdx_mediastream_flash_redirection_\u043d\u0430_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u043c_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:98,&amp;quot;range&amp;quot;:&amp;quot;160651-162318&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit99&quot; id=&quot;включение_flash_redirection_на_пользовательском_устройстве&quot;&gt;Включение Flash Redirection на пользовательском устройстве&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Настройте параметр &lt;strong&gt;Enable HDX MediaStream Flash Redirection on the user device&lt;/strong&gt; для того чтобы задать, когда Flash Redirection включен на пользовательских Windows-устройствах. Если не задано никакой настройки, то Flash Redirection включена по-умолчанию, либо у пользователя будет запрошено включение.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - В редакторе групповой политики (Group Policy Object Editor), в разделе Computer Configuration или User Configuration кликните Administrative Templates и затем Classic Administrative Templates (ADM), а затем HDX MediaStream Flash Redirection - Client.&lt;br/&gt;

 - В списке параметров выберите &lt;strong&gt;Enable HDX MediaStream Flash Redirection on the user device&lt;/strong&gt;&lt;br/&gt;

Этот параметр может быть включен, выключен или не задан. &lt;br/&gt;

При выборе включен - можно выбрать один из вариантов:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если выбран вариант “Всегда”, это устройство всегда будет разрешать визуализацию материалов Adobe Flash на стороне клиента. Если выбран вариант “Только версия 2”, это устройство будет разрешать визуализацию материалов Adobe Flash на стороне клиента только при использовании второй версии компонента. Если выбран вариант “Запрашивать”, пользователи получат запрос перед визуализацией на стороне клиента. Вариант “Никогда” активирует&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Примечание: Выбор “Запрашивать” приведет к тому, что в каждой сессии пользователя при первом обращении к flash-содержимому, пользователь получит запрос.  Если пользователь не включит Flash Redirection, контент будет рендериться на сервере. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Порядок вступления политик в силу:&lt;br/&gt;

 Computer Configuration: политика вступит в силу после перезагрузки компьютера.&lt;br/&gt;

 User Configuration: Пользователь должен завершить свою сессию (выйти) и залогиниться снова.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Использование синхронизации клиентских куки-файлов с серверными куки-файлами&lt;/strong&gt;&lt;br/&gt;

Эта политика определяет, будут-ли синхронизированы HTTP куки-файлы на клиенте и сервере. После получения этих куки-файлов на клиенте, они могут быть использованы при запросе HTTP-контента клиентом. При синхронизации куки-файлы клиента не перезаписываются. Они будут доступны, если впоследствии синхронищация будет отключена. &lt;br/&gt;

Порядок вступления политик в силу:&lt;br/&gt;

 Computer Configuration: политика вступит в силу после перезагрузки компьютера.&lt;br/&gt;

 User Configuration: Пользователь должен завершить свою сессию (выйти) и залогиниться снова.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Извлечение контента на стороне сервера (server-side content fetching)&lt;/strong&gt;&lt;br/&gt;

По-умолчанию, HDX MediaStream Flash Redirection скачивает и воспроизводит flash-контент на клиентском устройстве. И для этого на клиентском устройстве нужен доступ к интернету. Включение этой политики приведет к тому, что сервер будет скачивать flash-контент, а затем передавать его клиенту. И если не задано никаких других ограничеий, например блокировок через список разрешенных &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; (&lt;strong&gt;Flash &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; compatibility list&lt;/strong&gt;), то контент будет воспроизведен на пользовательском устройстве.&lt;br/&gt;

Эта политика часто используется если:&lt;br/&gt;

 - Пользовательское устройство не имеет прямого доступа в интернет.&lt;br/&gt;

 - Пользовательское устройство полдключается к сайтам корпоративной сети через Citrix Access Gateway.&lt;br/&gt;

Механизм &lt;strong&gt;Server-side content fetching &lt;/strong&gt; не поддерживает приложения Flash, использующие Real Time Messaging Protocols (RTMP). В этому случае необходимо использовать рендеринг на сервере. &lt;br/&gt;

Второе поколение Flash Redirection добавляет три новых опции - возможность кешировать контент на клиенте временно во время сеанса или выполнять постоянное кэширование, когда контент сохраняется и между сеансами, а также запрет кеширования. Кеширование повышает производительность, предотвращая повторное скачивание контента. &lt;br/&gt;

Кешированный этим механизмом контент хранится отдельно от другого HTTP контента. &lt;br/&gt;

Также добавлен механизм &lt;strong&gt;server-side content fetching fallback&lt;/strong&gt;. Если включено получение контента сервером, то при ошибках получения контента клиентом, flash-контент будет запрошен сервером и передан клиенту. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
ВАЖНО: Для работы механизма &lt;strong&gt;server-side content fetching&lt;/strong&gt; должна быть включен и настроен список &lt;strong&gt;Flash server-side content fetching &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; list&lt;br/&gt;

&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Перенаправление запросов клента на нужный сервер (&lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; rewriting rules for client-side content fetching)&lt;/strong&gt;&lt;br/&gt;

Есть возможность перенаправить запрос клиента на нужный сервер при помощи механизма, изменяющего &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; запроса. При конфигурировании этой опции, можно задать паттерны &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;, с помощью регулятных выражений Perl. Если пользовательское устройство запрашивает контент, подходящий под паттерн, то запрос перенаправляется в соответствии с указанным паттерном. &lt;br/&gt;

Это полезно для компенсации задержек, возникающих при доставке контента с ближайшего сервера, входящего в сеть доставки контента (content delivery network - CDN). При использовании Flash Redirection, flash-контент будет запрошен пользовательским устройством, а вся остальная web-страница - запрошена сервером. Если используется CDN, то запрос сервера XenApp будет перенаправлен на ближайший HTTP-сервер и пользовательский запрос будет направлен туда же. Если клиент и сервер XenApp находятся в разных географических зонах, то между загрузкой web-страницы на сервер XenApp и загрузкой flash-контента на клиентское устройство может возникать серьезная задержка, т.к. весь контент загружается с HTTP-сервера, ближайшего к серверу XenApp. Чтобы избежать этого, следует переписать &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;, запрашиваемый клиентом в соответствии с тем, какой HTTP-сервер к клиенту ближе всего. &lt;br/&gt;

Порядок вступления политик в силу:&lt;br/&gt;

 Computer Configuration: политика вступит в силу после перезагрузки компьютера.&lt;br/&gt;

 User Configuration: Пользователь должен завершить свою сессию (выйти) и залогиниться снова.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Flash Redirection \u043d\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_flash_redirection_\u043d\u0430_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u043c_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:99,&amp;quot;range&amp;quot;:&amp;quot;162319-171720&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit100&quot; id=&quot;повышение_производительности_и_масштабируемости_приложений_2d_и_3d&quot;&gt;Повышение производительности и масштабируемости приложений 2D и 3D&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-hardware-acceleration.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-hardware-acceleration.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-hardware-acceleration.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
HDX 3D позволяет высоконагруженным графическим приложениям, работающим на XenApp, рендерить картинку на графическом ускорителе (GPU), установленном в сервере. Перемещение нагрузки, связанной с обработкой DirectX, Direct3D и Windows Presentation Foundation (WPF) на GPU позволяет разгрузить центральный процессор. Эти функции доступны только на адаптерах, поддерживающих &lt;strong&gt;display driver interface (DDI) &lt;/strong&gt; версии 9ex, 10 или 11. DirectX и Direct3D не требуют специальной настройки.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
HDX 3D поддерживает распределение нагрузки на GPU между несколькими пользователями. При использовании HDX 3D совместно с XenServer GPU Passthrough, в одном сервере могут быть несколько графических адаптеров, по одному на каждую виртуальную машину. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы включить обработку приложений WPF на GPU сервера, на сервере XenApp, в ключе реестра &lt;strong&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\Multiple Monitor Hook &lt;/strong&gt; создайте параметр типа &lt;strong&gt;REG_DWORD&lt;/strong&gt; с именем &lt;strong&gt;EnableWPFHook&lt;/strong&gt;, со значением 1.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 2D \u0438 3D&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0435_\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438_\u0438_\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u0438_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439_2d_\u0438_3d&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:100,&amp;quot;range&amp;quot;:&amp;quot;171721-173533&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit101&quot; id=&quot;оптимизация_отзывчивости_клавиатуры_и_мыши&quot;&gt;Оптимизация &amp;quot;отзывчивости&amp;quot; клавиатуры и мыши&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-ss-latency-reduction-mgr-using-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-ss-latency-reduction-mgr-using-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-ss-latency-reduction-mgr-using-v2.html&lt;/a&gt;&lt;br/&gt;

Термин &lt;strong&gt;SpeedScreen Latency Reduction&lt;/strong&gt; используется для обозначения функций, таких как &lt;strong&gt;Local Text Echo&lt;/strong&gt; и &lt;strong&gt;Mouse Click Feedback&lt;/strong&gt;, которые помогают сделать работу пользователя более комфортной при медленном сетевом соединении. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Mouse Click Feedback&lt;/strong&gt;&lt;br/&gt;

При использовании каналов свЯзи с высокой задержкой, пользователи часто кликают мышкой несколько раз, т.к. не получают визуального подтверждения того, что клик был. Функция &lt;strong&gt;Mouse Click Feedback&lt;/strong&gt; включена по-умолчанию. Она меняет указатель мыши на “песочные часы”, после клика пользователя, демонстрируя пользователю, что система обрабатывает его запрос. Когда пользователь кликает, клиент ICA сразу меняет вид указателя мыши. Функцию &lt;strong&gt;Mouse Click Feedback &lt;/strong&gt; можно включить или выключить на сервере. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Local Text Echo&lt;/strong&gt;&lt;br/&gt;

При использовании каналов связи с высокой задержкой, пользователи часто наблюдают серьезную задержку между тем как они ввели текст на клавиатуре и отображением его на экране. Это происходит потому что после нажатия клавиши, информация об этом попадает на сервер, затем сервер использует шрифты, генерирует новое изображение и посылает клиенту. Функция &lt;strong&gt;Local Text Echo&lt;/strong&gt; временно использует локальные шрифты для быстрого отображения вводимого текста.&lt;br/&gt;

По-умолчанию функция &lt;strong&gt;Local Text Echo&lt;/strong&gt; отключена. Включить её можно как на уровне сервера, так и на уровне приложения. Также можно сконфигурировать &lt;strong&gt;Local Text Echo&lt;/strong&gt; для отдельных полей ввода в приложении.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit102&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Приложения, которые не используют стандартный Windows &lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt; для отображения текста, могут не работать с &lt;strong&gt;Local Text Echo&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table14&amp;quot;,&amp;quot;secid&amp;quot;:102,&amp;quot;range&amp;quot;:&amp;quot;176213-176437&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \&amp;quot;\u043e\u0442\u0437\u044b\u0432\u0447\u0438\u0432\u043e\u0441\u0442\u0438\&amp;quot; \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438 \u043c\u044b\u0448\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f_\u043e\u0442\u0437\u044b\u0432\u0447\u0438\u0432\u043e\u0441\u0442\u0438_\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b_\u0438_\u043c\u044b\u0448\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:101,&amp;quot;range&amp;quot;:&amp;quot;173534-176438&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit103&quot; id=&quot;настройка_speedscreen_latency_reduction&quot;&gt;Настройка &amp;#039;&amp;#039;&amp;#039;SpeedScreen Latency Reduction&amp;#039;&amp;#039;&amp;#039;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для настройки функций &lt;strong&gt;SpeedScreen Latency Reduction &lt;/strong&gt; предусмотрена утилита &lt;strong&gt;SpeedScreen Latency Reduction Manager&lt;/strong&gt;. С её помощью можно задать параметра как для целого сервера XenApp, так и для одного или нескольких приложений или отдельных полей ввода. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
SpeedScreen Latency Reduction Manager должен быть установлен на сервере XenApp. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для запуска &lt;strong&gt;SpeedScreen Latency Reduction Manager&lt;/strong&gt;, кликните &lt;strong&gt;Пуск &amp;gt; Администрирование &amp;gt; Citrix &amp;gt; Administration Tools &amp;gt; SpeedScreen Latency Reduction Manager&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit104&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Для запуска &lt;strong&gt;Speedscreen Latency Reduction Manager &lt;/strong&gt; на сервере, где включен User Account Control (UAC), нужно иметь административные права. В противном случае - система запросит авторизоваться как администратор.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table15&amp;quot;,&amp;quot;secid&amp;quot;:104,&amp;quot;range&amp;quot;:&amp;quot;177229-177590&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 &amp;#039;&amp;#039;&amp;#039;SpeedScreen Latency Reduction&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_speedscreen_latency_reduction&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:103,&amp;quot;range&amp;quot;:&amp;quot;176439-177591&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit105&quot; id=&quot;настройка_speedscreen_latency_reduction_для_отдельного_приложения&quot;&gt;Настройка &amp;#039;&amp;#039;&amp;#039;SpeedScreen Latency Reduction&amp;#039;&amp;#039;&amp;#039; для отдельного приложения&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если опубликованое приложение демонстрирует ненормальное поведение после конфигурирования SpeedScreen Latency Reduction, для настройки параметров этого приложения можно использовать мастер &lt;strong&gt;Add New Application &lt;/strong&gt;, входящий в состав SpeedScreen Latency Reduction Manager.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit106&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: перед использованием этого мастера, приложение должно быть запущено.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table16&amp;quot;,&amp;quot;secid&amp;quot;:106,&amp;quot;range&amp;quot;:&amp;quot;178133-178286&amp;quot;} --&gt;
&lt;p&gt;
Прежде чем вы сможете  настраивать параметры приложения в Speedscreen Latency Reduction Manager, его нужно туда добавить.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 &amp;#039;&amp;#039;&amp;#039;SpeedScreen Latency Reduction&amp;#039;&amp;#039;&amp;#039; \u0434\u043b\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_speedscreen_latency_reduction_\u0434\u043b\u044f_\u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:105,&amp;quot;range&amp;quot;:&amp;quot;177592-178480&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit107&quot; id=&quot;обзор_клиентских_средств_citrix&quot;&gt;3. Обзор клиентских средств Citrix&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3. \u041e\u0431\u0437\u043e\u0440 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 Citrix&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0437\u043e\u0440_\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0445_\u0441\u0440\u0435\u0434\u0441\u0442\u0432_citrix&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:107,&amp;quot;range&amp;quot;:&amp;quot;178481-178549&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit108&quot; id=&quot;citrix_offline_plug-in&quot;&gt;Citrix Offline Plug-in&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp-application-streaming-edocs-v6-0/ps-stream-plugin-description-v3.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp-application-streaming-edocs-v6-0/ps-stream-plugin-description-v3.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp-application-streaming-edocs-v6-0/ps-stream-plugin-description-v3.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Offline plug-in&lt;/strong&gt; - это новое название &lt;strong&gt;Citrix Streaming Client&lt;/strong&gt;. Плагин работает как служба на клиентском устройстве и запускает приложения, выбранные пользователем и приложения, перечисляемые online-плагином, Citrix Receiver или Web-интерфейсом. &lt;br/&gt;

Offline-плагин находит павильную цель в профиле в App Hub, создает изолированное окружение на устройстве пользователя и затем передает приложение из профиля в изолированное окружение на устройстве пользователя. &lt;br/&gt;

Плагин не требует никакой конфигурации при установке. Соответственно, пользователи, имеющие права администратора на своих компьютерах, могут установить плагин самостоятельно. &lt;br/&gt;

Плагин устанавливается по-умолчанию на сервере, при установке XenApp. Это позволяет сконфигурировать сервер для “стриминга на сервер” и двухрежимного стриминга. &lt;br/&gt;

Для аутентификации профилей, к которым осуществляют достп пользователи, плагин следует устанавливать с цифровым сертификатом. В результате - плагин будет стримить приложения только из профилей с правильным сертификатом. &lt;br/&gt;

Также плагин проверяет размер кеша пользовательского устройства. Если размер кеша превышает максимальный лимит, плагин удаляет файлы приложения из кеша. Размер кеша по-умолчанию составляет 1000Mb или 5% от размера диска (что больше). Удаление файлов начинается с наименее редко используемых. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Citrix Offline Plug-in&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;citrix_offline_plug-in&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:108,&amp;quot;range&amp;quot;:&amp;quot;178550-181061&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit109&quot; id=&quot;средства_доставки_утилит_и_приложений&quot;&gt;Средства доставки утилит и приложений&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0443\u0442\u0438\u043b\u0438\u0442 \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430_\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438_\u0443\u0442\u0438\u043b\u0438\u0442_\u0438_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:109,&amp;quot;range&amp;quot;:&amp;quot;181062-181142&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit110&quot; id=&quot;merchandising_server&quot;&gt;Merchandising Server&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/technologies/receivers-merchandising-wrapper.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/technologies/receivers-merchandising-wrapper.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/technologies/receivers-merchandising-wrapper.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для доставки клиентских средств и приложений существует центр доставки - Citrix Delivery Center. В его состав входят Citrix Receiver for Windows, Receiver for Mac, и Merchandising Server.&lt;br/&gt;

Citrix Delivery Center - это инструмент доставки приложений, с которым работает администратор, а Citrix Merchandising Server и Citrix Receiver - это средства, используемые для установки приложений и управления ими на рабочих местах пользователей. Merchandising Server предоставляет административный интерфейс для конфигурирования, доставки и обновления плагинов на компьютерах пользователей. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Merchandising Server&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;merchandising_server&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:110,&amp;quot;range&amp;quot;:&amp;quot;181143-182193&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit111&quot; id=&quot;установка_merchandising_server&quot;&gt;Установка Merchandising Server&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Merchandising Server поставояется в виде виртуального приложения (virtual appliance), который содержит все необходимое для работы. Это виртуальное приложение можно импортировать в Citrix XenCenter или VMware (VMware vSphere 4.0, VMware Server 2.x, or ESX 3.5 and later).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Скачать Merchandising Server можно с сайта Citrix, из раздела Citrix Receiver.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для XenCenter имя виртуального приложения будет: citrix-merchandising-server-&lt;a href=&quot;https://wiki.autosys.tk/citrix/releasenumber&quot; class=&quot;wikilink2&quot; title=&quot;citrix:releasenumber&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;citrix:releasenumber&quot;&gt;releaseNumber&lt;/a&gt;.bz2&lt;br/&gt;

Для vSphere имя виртуального приложения будет: citrix-merchandising-server-VMware&lt;a href=&quot;https://wiki.autosys.tk/citrix/releasenumber&quot; class=&quot;wikilink2&quot; title=&quot;citrix:releasenumber&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;citrix:releasenumber&quot;&gt;releaseNumber&lt;/a&gt;.ova    &lt;br/&gt;

При необходимости, распакуйте файл zip с помощью bz2, winzip, или другой утилиты. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Merchandising Server&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_merchandising_server&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:111,&amp;quot;range&amp;quot;:&amp;quot;182194-183162&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit112&quot; id=&quot;импортирование_virtual_appliance_в_xencenter&quot;&gt;Импортирование Virtual Appliance в XenCenter&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Убедитесь, что на диске есть как минимум 20 &lt;abbr title=&quot;Gigabyte&quot;&gt;GB&lt;/abbr&gt; свободного места.&lt;br/&gt;

Citrix рекомендует выделить как минимум 4 &lt;abbr title=&quot;Gigabyte&quot;&gt;GB&lt;/abbr&gt; и 2 VCPUs.&lt;br/&gt;

Перед запуском следует сконфигурировать сетевые адаптеры, а после запуска - имя хоста. Убедитесь, что имя хоста (hostname) -это правильное FQDN имя. В противном случае, Receiver Updater не сможет присоединиться к Merchandising Server.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 Virtual Appliance \u0432 XenCenter&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_virtual_appliance_\u0432_xencenter&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:112,&amp;quot;range&amp;quot;:&amp;quot;183163-183816&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit113&quot; id=&quot;конфигурирование_администраторов&quot;&gt;Конфигурирование Администраторов&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В браузере откройте страницу Administrator Console по адресу: &lt;strong&gt;&lt;a href=&quot;https://[[server_address]]/appliance&quot; class=&quot;urlextern&quot; title=&quot;https://[[server_address]]/appliance&quot; rel=&quot;ugc nofollow&quot;&gt;https://[[server_address]]/appliance&lt;/a&gt;&lt;/strong&gt;, где server_address это адрес &lt;strong&gt;Merchandising Server&lt;/strong&gt;.&lt;br/&gt;

Введите &lt;strong&gt;root &lt;/strong&gt; в качестве имени пользователя и &lt;strong&gt;C1trix321 &lt;/strong&gt; в качестве пароля и кликните &lt;strong&gt;Log on&lt;/strong&gt;.&lt;br/&gt;

Выберите &lt;strong&gt;Configuration &amp;gt; Configure AD&lt;/strong&gt;. Введите сведения для подключения к серверу Active Directory.&lt;br/&gt;

Кликните &lt;strong&gt;Save Changes and Sync &lt;/strong&gt; для того, чтобы загрузить пользователей в базу данных Merchandising Server.&lt;br/&gt;

Выберите &lt;strong&gt;Configuration &amp;gt; Permissions&lt;/strong&gt;. Введите свое имя или фамилию в поле &lt;strong&gt;Search &lt;/strong&gt; и кликните &lt;strong&gt;Search&lt;/strong&gt;.&lt;br/&gt;

Выберите свое имя в результатах поиска и кликните &lt;strong&gt;Edit&lt;/strong&gt;.&lt;br/&gt;

Выберите &lt;strong&gt;Administrator permissions &lt;/strong&gt; и кликните &lt;strong&gt;Save&lt;/strong&gt;.&lt;br/&gt;

Повторите процедуру для каждого пользователя, которому нужны административные права.&lt;br/&gt;

Кликните &lt;strong&gt;Log out &lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:113,&amp;quot;range&amp;quot;:&amp;quot;183817-185115&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit114&quot; id=&quot;конфигурирование_administrator_console&quot;&gt;Конфигурирование &amp;#039;&amp;#039;&amp;#039;Administrator Console&amp;#039;&amp;#039;&amp;#039;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Войдите в &lt;strong&gt;Administrator Console &lt;/strong&gt; под именем с административной учеткой. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Опционально, Кликните &lt;strong&gt;Configuration &amp;gt; SSL Certificate Management&lt;/strong&gt;.&lt;br/&gt;

Выберите &lt;strong&gt;Export certificate signing request&lt;/strong&gt; для создания запроса.&lt;br/&gt;

Введите размер ключа и информацию о компании, кликните &lt;strong&gt;Export&lt;/strong&gt;, и отправьте это в центр сертификации.&lt;br/&gt;

При получении сертификата из выпадающего меню выберите &lt;strong&gt;Import certificate from certificate authority &lt;/strong&gt;.&lt;br/&gt;

Кликните &lt;strong&gt;Browse &lt;/strong&gt;, укажите место расположения файла сертификтата *.cer и кликните &lt;strong&gt;Submit&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Выберите &lt;strong&gt;Configuration &amp;gt; Options&lt;/strong&gt;.&lt;br/&gt;

Введите информацию о поддержке для пользователей.&lt;br/&gt;

Введите имя домена Active Directory.&lt;br/&gt;

Укажите частоту опроса &lt;strong&gt;Citrix Update Service&lt;/strong&gt;.&lt;br/&gt;

Укажите срок действия токенов пользователей.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Опционально, выберите &lt;strong&gt;Configuration &amp;gt; Network Settings&lt;/strong&gt;.&lt;br/&gt;

Если используется proxy, введите его параметры.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 &amp;#039;&amp;#039;&amp;#039;Administrator Console&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_administrator_console&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:114,&amp;quot;range&amp;quot;:&amp;quot;185116-186515&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit115&quot; id=&quot;подготовка_к_работе&quot;&gt;Подготовка к работе&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Перед созданием дотавки, скачайте плагины и создайте правила доставки. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы скачать плагины:&lt;br/&gt;

 В &lt;strong&gt;Administrator Console&lt;/strong&gt;, выберите &lt;strong&gt;Plug-ins &amp;gt; Get New&lt;/strong&gt;.&lt;br/&gt;

 Выберите плагин из списка и кликните &lt;strong&gt;Download to Server&lt;/strong&gt; ил кликните &lt;strong&gt; Download All to Server&lt;/strong&gt;.&lt;br/&gt;

 Кликните &lt;strong&gt;Close&lt;/strong&gt; в окне с соообщением об успешном скачивании.&lt;br/&gt;

 Скачайте все поагины, которые необходимо доставлять.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u043a \u0440\u0430\u0431\u043e\u0442\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430_\u043a_\u0440\u0430\u0431\u043e\u0442\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:115,&amp;quot;range&amp;quot;:&amp;quot;186516-187186&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit116&quot; id=&quot;создание_правил_для_получателей&quot;&gt;Создание правил для получателей&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
 В Administrator Console, выберите &lt;strong&gt;Deliveries &amp;gt; Rules&lt;/strong&gt;.&lt;br/&gt;

Кликните &lt;strong&gt;Create&lt;/strong&gt; в нижней части страницы.&lt;br/&gt;

Введите имя и описание - &lt;strong&gt;Name and Description&lt;/strong&gt;.&lt;br/&gt;

Выберите тип правила из меню &lt;strong&gt;Field&lt;/strong&gt;. Возможные значения - &lt;strong&gt;Machine Name, User Domain Membership, Computer Domain Membership, Operating System, LDAP User, and LDAP User Group, Machine Name, IP Address Range&lt;/strong&gt;.&lt;br/&gt;

Если выбран &lt;strong&gt;LDAP User or LDAP User Groups&lt;/strong&gt;, отобразится инструмент поиска по AD.&lt;br/&gt;

Если выбран &lt;strong&gt;User Domain Membership, Machine Domain Membership, Operating System, or IP Address Range&lt;/strong&gt;, выберите тип сравнения (совпадаетили не совпадает) - &lt;strong&gt;Is &lt;/strong&gt; или &lt;strong&gt;Is Not &lt;/strong&gt; в поле &lt;strong&gt;Operator&lt;/strong&gt; введите значение в поле &lt;strong&gt;Value&lt;/strong&gt;.&lt;br/&gt;

Если выбран &lt;strong&gt;Machine Name&lt;/strong&gt;, то можно задать либо точное значение, либо маску - выберите &lt;strong&gt;Begins With&lt;/strong&gt;, &lt;strong&gt;Contains&lt;/strong&gt; или  &lt;strong&gt;Is Exactly&lt;/strong&gt;  и введите значение в поле &lt;strong&gt;Value&lt;/strong&gt;.&lt;br/&gt;

Кликните &lt;strong&gt;Save &lt;/strong&gt; для сохранения правила.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043f\u0440\u0430\u0432\u0438\u043b \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043f\u0440\u0430\u0432\u0438\u043b_\u0434\u043b\u044f_\u043f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:116,&amp;quot;range&amp;quot;:&amp;quot;187187-188507&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit117&quot; id=&quot;создание_доставок&quot;&gt;Создание &amp;quot;доставок&amp;quot;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
для создания доставки:&lt;br/&gt;

В Administrator Console, выберите &lt;strong&gt;Deliveries &amp;gt; Create / Edit&lt;/strong&gt;.&lt;br/&gt;

Кликните &lt;strong&gt;Create&lt;/strong&gt; внизу страницы.&lt;br/&gt;

На вкладке &lt;strong&gt;General&lt;/strong&gt; введите информацию о доставке.&lt;br/&gt;

На вкладке &lt;strong&gt;Plug-ins&lt;/strong&gt; кликните &lt;strong&gt;Add &lt;/strong&gt; и выберите плагины для доставки и кликните &lt;strong&gt;Add&lt;/strong&gt; снова.&lt;br/&gt;

На вкладке &lt;strong&gt;Config&lt;/strong&gt; введите специфичные для плагина значения.&lt;br/&gt;

На вкладке &lt;strong&gt;Rules&lt;/strong&gt; задайте правила &lt;br/&gt;

На вкладке &lt;strong&gt;Schedule &lt;/strong&gt; задайте расписание доставки.&lt;br/&gt;

Кликните &lt;strong&gt;Schedule&lt;/strong&gt; для завершения.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Теперь Merchandising Server готов предоставить Citrix Receiver пользователям. Как только пользователь скачает Receiver, он автоматически выберет запланированную доставку и установит плагины.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \&amp;quot;\u0434\u043e\u0441\u0442\u0430\u0432\u043e\u043a\&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0434\u043e\u0441\u0442\u0430\u0432\u043e\u043a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:117,&amp;quot;range&amp;quot;:&amp;quot;188508-189626&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit118&quot; id=&quot;smooth_roaming&quot;&gt;3.5 smooth roaming&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-proximity.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-proximity.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-proximity.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.5 smooth roaming&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;smooth_roaming&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:118,&amp;quot;range&amp;quot;:&amp;quot;189627-189744&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit119&quot; id=&quot;печать_и_мобильные_сотрудники&quot;&gt;Печать и мобильные сотрудники&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В случае, когда мобильные сотрудники работают с разных площадок, может потребоваться, чтобы им был предоставлен ближайший к ним принтер. Примером могут являться сотрудники больниц, работающие в разных палатах и переподключающиеся к одной и той же сессии с разных рабочих станций или сотрудники в командировках. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если в организации есть такие задачи, то полезными будут эти функции:&lt;br/&gt;

&lt;strong&gt;    SmoothRoaming&lt;br/&gt;

    Proximity Printing&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0447\u0430\u0442\u044c \u0438 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0447\u0430\u0442\u044c_\u0438_\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0435_\u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:119,&amp;quot;range&amp;quot;:&amp;quot;189745-190563&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit120&quot; id=&quot;smoothroaming&quot;&gt;SmoothRoaming&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Также эта функция известна под именем &lt;strong&gt;Workspace control&lt;/strong&gt;. Эта функция позволяет пользователям отсоединяться от сессии, и переподключаться с другого устройства к той же сессии. При переподключении сессии, принтеры, прописанные на первом устройстве, будут заменены на принтеры, прописанные на втором устройстве. В результате, пользователь всегда имеет нужные принтеры в сессии. &lt;br/&gt;

SmoothRoaming работает с локальными принтерами, подключенными к пользовательскому устройству.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;SmoothRoaming&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;smoothroaming&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:120,&amp;quot;range&amp;quot;:&amp;quot;190564-191432&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit121&quot; id=&quot;proximity_printing&quot;&gt;Proximity Printing&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Эта функция дает возможность управлять сетевыми принтерами также как и в случае SmoothRoaming. То есть клиенту будут передаваться в сессию сетевые принтеры, в соответствии с текущим IP-адресом клиентского устройства. &lt;br/&gt;

Proximity Printing включается с помощью политики Citrix - &lt;strong&gt;Default printer&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Proximity Printing модет помочь администрировать даже если нет мобильных сотрудников. &lt;br/&gt;

Пример - пользователь берет ноутбук и перемещается на другой этаж здания компании. С Proximity Printing автоматически определяется новый IP-адрес мобильного устройства и прописываются принтеры, соответствующие данному диапазону IP-адресов.&lt;br/&gt;

При этом, если сконфигурирована Proximity Printing, то надо поддерживаь политику &lt;strong&gt;Session printer &lt;/strong&gt;. Например, если сетевые принтеры добавляются или удаляются, нужно обновлять эту политику. Аналогично, если меняются настройки выдачи адресов на сервере DHCP, то политику надо обновить. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Proximity Printing&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;proximity_printing&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:121,&amp;quot;range&amp;quot;:&amp;quot;191433-193021&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit122&quot; id=&quot;непрерывность_сессии&quot;&gt;Непрерывность сессии&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-sessions-prov-usrs-ws-cont-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-sessions-prov-usrs-ws-cont-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-sessions-prov-usrs-ws-cont-v2.html&lt;/a&gt;&lt;br/&gt;

Функция &lt;strong&gt;Workspace Control &lt;/strong&gt; предоставляет пользователям возможность быстро отключаться от всех запущенных приложений и переподключаться к ним или выполнять выход из всех запущенных приложений. &lt;strong&gt;Workspace Control &lt;/strong&gt; позволяет пользователям перемещаться между клиентскими устройствами и предоставляет доступ к уже открытым приложениям при переподключении. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для пользователей подключающихся через Web-интерфейс или online plug-in можно сконфигурировать следующие возможности:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Вход (Logging on)&lt;/strong&gt;. По-умолчанию, Workspace Control позволяет пользователям переподключаться ко всем запущенным приложениям при входе, не требуя повторного их запуска. С помощью Workspace Control пользователи могут открывать отключенные и активные приложения на другом клиентском устройстве. &lt;br/&gt;

Отключение от приложения оставляет его запущенным на сервере.&lt;br/&gt;

 Переподключение (Reconnect). После входа на сервер пользователи могут переподключаться ко всем приложениям, кликнув Reconnect. По-умолчанию &lt;strong&gt;Reconnect &lt;/strong&gt; открывает отключенные сессии приложений и все приложения в настоящий момент запущенные на другом клиентском устройстве. Можно сконфигурировать &lt;strong&gt;Reconnect&lt;/strong&gt; так, чтобы открывались только отключенные приложения, а не активные в данный момент.&lt;br/&gt;

 &lt;strong&gt;Выхо (Logging off)&lt;/strong&gt;. Для пользователей, открывающих приложения через Web-интерфейс, можно сконфигурировать команду &lt;strong&gt;Log Off &lt;/strong&gt;, которая завершит сессию пользователя в Web-интерфейсе и все запущенные приложения или просто отключит пользоателя от Web-интерфейса. &lt;br/&gt;

 &lt;strong&gt;Отключение (Disconnecting)&lt;/strong&gt;. Пользователи могут отключаться от всех запущенных приложений сразу одной командой. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
По-умолчанию, &lt;strong&gt;Workspace Control &lt;/strong&gt; включен и доступен только для пользователей Web-интерфейса и Citrix online plug-in.&lt;br/&gt;

При перемещении пользователя на новое клиентское устройство, будут применены соотвествующие политики (мапинг дисков, принтеров). То есть политики и мапинг применяются в соответствии с тем, на каком устройстве пользователь залогинен в данный момент. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0441\u0442\u044c \u0441\u0435\u0441\u0441\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0441\u0442\u044c_\u0441\u0435\u0441\u0441\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:122,&amp;quot;range&amp;quot;:&amp;quot;193022-196644&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit123&quot; id=&quot;что_такое_session_sharing_и_для_чего_его_конфигурировать&quot;&gt;Что такое session sharing и для чего его конфигурировать&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 session sharing \u0438 \u0434\u043b\u044f \u0447\u0435\u0433\u043e \u0435\u0433\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0447\u0442\u043e_\u0442\u0430\u043a\u043e\u0435_session_sharing_\u0438_\u0434\u043b\u044f_\u0447\u0435\u0433\u043e_\u0435\u0433\u043e_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:123,&amp;quot;range&amp;quot;:&amp;quot;196645-196745&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit124&quot; id=&quot;разделяемые_сессии_и_соединения&quot;&gt;Разделяемые сессии и соединения&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-session-sharing2-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-session-sharing2-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-session-sharing2-v2.html&lt;/a&gt;&lt;br/&gt;

В зависимости от плагина, при открытии приложения оно может появиться в бесшовном (seamless), либо небесшовном (non-seamless). Эти режимы окон доступны для всех плагинов, включая Web-интерфейс и Citrix online plug-in.&lt;br/&gt;

В бесшовном (seamless) режиме опубликованное приложение не находится внутри окна сессии ICA. Каждое опубликованное приложение и десктоп появляются в собственном изменяемом окне, как буд-то приложение установлено на компьютере пользователя. И пользователь может переключаться между опубликованым приложением и локальным десктопом. &lt;br/&gt;

В небесшовном (non-seamless) режиме опубликованное приложение или десктоп располагается с окне сесии ICA. Это создает впечатление, что приложение как бы в двух окнах. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Выбираемый режим зависит от типа используемого клиентского устройства. Обычно десктопы публикуют в бесшовных окнах. Как правило десктопы публикуются для тонких клиентов, когда производительность клиентского устройства не позволяет запускать на нем ничего, кроме клиента ICA.&lt;br/&gt;

Когда пользователь запускает опубликованное приложение, плагин устанавливает соединение с фермой XenApp и инициирует сессию. Если разделение сессии (session sharing) не сконфигурировано, то при открытии каждого приложения на сервере открывается новая сессия. Аналогично - при открытии каждого нового приложения, создается новое клиентское подключение к ферме. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Разделение сессии (session sharing) - это режим, в котором в одном соединении работают несколько приложений. Разделение сессии воникает, пример, когда пользователь имеет уже открытую сессию и запускет еще одно приложение на том же сервере. В результате - два приложения работают в одной сессии. Для того чтобы происходило разделение сессии необходимо, чтобы оба прилодения были опубликованы на одном сервере. Поу-умолчанию, разделение сессии включается при конфигурировании приложения для запуска в бесшовном режиме. Если пользователь запускает несколько приложений в режиме разделения сессии, все приложения используют единственное подключение к серверу. &lt;br/&gt;

Если требуется разделять сессии, убедитесь, что все приложения опубликованы с одинаковыми настройками. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit125&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Разделение сессий не поддерживается клиентами PocketPC.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table17&amp;quot;,&amp;quot;secid&amp;quot;:125,&amp;quot;range&amp;quot;:&amp;quot;200717-200839&amp;quot;} --&gt;
&lt;p&gt;
Разделение сессий всегда имеет приоритет над балансировкой нагрузки. То есть, если пользователь запускает приложение в режиме разделения сесии на сервере, где уже работает его приложение, но сервер уже испытывает нехватку ресурсов, XenApp все равно откроет приложение на этом сервере. Менеджер нагрузки не передаст подключение на более свободный сервер. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u043c\u044b\u0435 \u0441\u0435\u0441\u0441\u0438\u0438 \u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u043c\u044b\u0435_\u0441\u0435\u0441\u0441\u0438\u0438_\u0438_\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:124,&amp;quot;range&amp;quot;:&amp;quot;196746-201490&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit126&quot; id=&quot;ограничения_на_соединение&quot;&gt;Ограничения на соединение&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-est-conn-cont-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-est-conn-cont-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sessions-est-conn-cont-v2.html&lt;/a&gt;&lt;br/&gt;

Для того, чтобы обеспечить доступность ресурсов фермы, вы можете ограничить число соединений к серверам и опубликованным приложениям.&lt;br/&gt;

Установка ограничений на подключений помогает предотвратить:&lt;br/&gt;

 - Падение производительности и ошибки, в случае, если пользователь запускает больше одной копии приложения одновременно&lt;br/&gt;

 - Отказ в обслуживании, вызванный атакой, во время которой запускается много копий приложения, потребляющих ресурсы и лицензии&lt;br/&gt;

 - Черезмерное потребление ресурсов некритичными приложениями, например Web-браузингом&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Ограничения подключений, в том числе и запрет входа, конфигурируются в разделе политик и свойств приложений. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Есть несколько типов ограничений:&lt;br/&gt;

 - Ограничение количества одновременных подключений к ферме. Это раздел политик компьютера &lt;strong&gt;Server Settings &amp;gt; Connection Limits&lt;/strong&gt;, политики &lt;strong&gt;Limit user sessions&lt;/strong&gt; и &lt;strong&gt;Limits on administrator sessions&lt;/strong&gt;, ограничивающие количество подключений от пользователей и администраторов. Локальные администраторы не попадают под эти ограничения.&lt;br/&gt;

 - Ограничение количества одновременных подключений данного пользователя. Это раздел политик пользователя &lt;strong&gt;Sssion Limits&lt;/strong&gt;, политика &lt;strong&gt;Concurrent Logon Limit&lt;/strong&gt;&lt;br/&gt;

 - Ограничение числа одновременно запущенных копий приложения. Ограничение задается в свойствах опубликованного приложения, на вкладке &lt;strong&gt;Limits&lt;/strong&gt;&lt;br/&gt;

 &lt;br/&gt;

По-умолчанию XenApp подключения никак не ограничивает.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f_\u043d\u0430_\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:126,&amp;quot;range&amp;quot;:&amp;quot;201491-204071&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit127&quot; id=&quot;настройка_logon_control_для_переподключения_пользователей&quot;&gt;3.7 Настройка &amp;#039;&amp;#039;&amp;#039;Logon Control&amp;#039;&amp;#039;&amp;#039; для переподключения пользователей&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-workspace-control-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-workspace-control-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-workspace-control-gransden.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.7 \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 &amp;#039;&amp;#039;&amp;#039;Logon Control&amp;#039;&amp;#039;&amp;#039; \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_logon_control_\u0434\u043b\u044f_\u043f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:127,&amp;quot;range&amp;quot;:&amp;quot;204072-204305&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit128&quot; id=&quot;workspace_control&quot;&gt;Workspace Control&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Функции &lt;strong&gt;workspace control &lt;/strong&gt; позволяют пользователям быстро отключаться от всех запущенных приложений и ресурсов и переподключаться на другом пользовательском устройстве. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Workspace Control&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;workspace_control&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:128,&amp;quot;range&amp;quot;:&amp;quot;204306-204640&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit129&quot; id=&quot;требования_для_работы_workspace_control&quot;&gt;Требования для работы Workspace Control&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для работы workspace control нужно:&lt;br/&gt;

 - Для работы workspace control с клиентами для windows версий 8.x  и 9.x нужно включить опцию &lt;strong&gt;Override user device names&lt;/strong&gt; в &lt;strong&gt;Session Preferences &lt;/strong&gt; в консоли конфигурирования Web-интерфейса Citrix.&lt;br/&gt;

 - Если Web-интерфес обнаруживает, что доступ к сессии осуществляется через из сессии Citrix, то функция &lt;strong&gt;workspace control &lt;/strong&gt; отключается.&lt;br/&gt;

 - В зависимости от настроек безопасности, Internet Explorer может блокировать загрузку файлов, инициированную не напрямую пользователем и попытки повторного подсоединения к ресурсам с помощью нативного клиента блокируются. Если переподключение невозможно, пользователь увидит соответсвующее сообщение и приглашение сконфигурировать Internet Explorer. &lt;br/&gt;

 - У каждой Web-сессии случается тайм-аут, после заданного периода бездействия (обычно - 20 минут). При тайм-ауте сессии появляется “logoff screen”, однако все ресурсы сессии не отключаются. Пользователь должен вручную отсоединиться или завершить сессию, или зайти обратно и в Web-интерфейсе нажать кнопку &lt;strong&gt;Log Off &lt;/strong&gt; или &lt;strong&gt;Disconnect &lt;/strong&gt;.&lt;br/&gt;

 - Ресурсы опубликованные для анонимного доступа закрываются (terminated) как после отсоединения авторизованного пользователя, так и анонимного. Короче - переподключение к анонимным ресурсам невозможно. &lt;br/&gt;

 - Для использования pass-through, smart card, или pass-through with smart card нужно установить доверительные отношения между сервером, на котором работает Web-интерфейсо и Citrix XML Service. &lt;br/&gt;

 - Если не включена сквозная (pass-through) передача учетных данных для сайтов XenApp Services, то пользователи смарт-карт будут вынуждены вводить PIN при каждом переподключении. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b Workspace Control&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f_\u0434\u043b\u044f_\u0440\u0430\u0431\u043e\u0442\u044b_workspace_control&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:129,&amp;quot;range&amp;quot;:&amp;quot;204641-207443&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit130&quot; id=&quot;ограничения_workspace_control&quot;&gt;Ограничения Workspace Control&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если вы планируете включить workspace control, избегайте следующего:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Workspace control не работает на сайтах, доставляющих offline-приложения. Если сайт сконфигурирован для двухрежимной доставки, то &lt;strong&gt;workspace control &lt;/strong&gt; будет работать только с online-реурсами. &lt;br/&gt;

 - Нельзя использовать &lt;strong&gt;workspace control &lt;/strong&gt; с клиентами для 32-bit Windows версий старее, чем 8, а также клиентами Remote Desktop Connection (RDP). Кроме того, эта функция работает только с серверами Presentation Server 4.5 или более поздними.&lt;br/&gt;

 - &lt;strong&gt;Workspace control &lt;/strong&gt; позволяет переподключение только для отключенных виртуальных столов XenDesktop. ПОльзователи не смогут подключиться к виртуальным столам, находящимся в режиме &lt;strong&gt;suspended&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Использование &lt;strong&gt;Workspace Control&lt;/strong&gt; с &lt;strong&gt;Integrated Authentication Methods &lt;/strong&gt; на XenApp Web Sites&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-workspace-control-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-workspace-control-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-workspace-control-gransden.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Этот раздел применим только к Web-сайтам XenApp. Если пользователи используют для входа pass-through, smart card, или pass-through with smart card authentication, необходимо настроить доверительные отношения между сервером Web-интерфейса и всем серверами, на кторых работает Citrix XML Service и с которыми взаимодействует этот web-интерфейс. Citrix XML Service передает информацию о ресурсах Web-интерфейсу от серверов XenApp и XenDesktop. Без доверительных отношений, кнопки Disconnect, Reconnect и Log Off не работают у пользователей, прошедших сквозную (pass-through) аутентификацию или с помощью смарт-карт.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вам не не нужно настраивать доверительные отношения, если пользователи аутентифицируются на &lt;strong&gt;server farm&lt;/strong&gt;, а также если пользователи не аутентифицируются смарт-картами или pass-through.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f Workspace Control&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f_workspace_control&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:130,&amp;quot;range&amp;quot;:&amp;quot;207444-210151&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit131&quot; id=&quot;настройка_доверительных_отношений_между_серверами&quot;&gt;Настройка доверительных отношений между серверами&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если вы настраиваете сервер так, чтобы он доверял запросам к Citrix XML Service, учитывайте следующее:&lt;br/&gt;

 - При настройке доверительных отшений, аутентификацию пользователя будет осуществлять сервер Web-интерфейса. Для исключения рисков информационой безопасноти, следует использовать IPSec или файрвол и т.д., для того ,что гарантировать, что с Citrix XML Service взаимодействуют только доверенные сервисы. В противном случае, в отсутствие технологии, фильтрующей сервисы, взаимодействующие с XML Service, любой клиент сети сможет отключить или уничтожить сессию пользователя. Доверительные отношения не нужны, если сайты сконфигурированы для использования только &lt;strong&gt;explicit authentication &lt;/strong&gt;.&lt;br/&gt;

 - Включайте доверительные отношения только на серверах, которые напрямую взаимодействуют с Web-интерфейсом. Эти сервера присутствуют в списке &lt;strong&gt;Server Farms task &lt;/strong&gt; в консоли &lt;strong&gt;Citrix Web Interface Management &lt;/strong&gt;.&lt;br/&gt;

 - Технологии безопасности, которые защищают Citrix XML Service, нужно настраивать так, чтобы доступ имел только сервер Web-интерфейса. Например, если Citrix XML Service разделяет порт с Microsoft Internet Information Services (IIS), можно использовать ограничение по IP-адресу, в IIS для ограничения доступа к Citrix XML Service.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Настройка:    &lt;br/&gt;

На сервере фермы кликните &lt;strong&gt;Start &amp;gt; All Programs &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Delivery Services Console&lt;/strong&gt;.&lt;br/&gt;

 - В левой части консоли кликните&lt;strong&gt; Citrix Resources &amp;gt; XenApp&lt;/strong&gt;, разверниет список и кликните &lt;strong&gt;Policies&lt;/strong&gt;.&lt;br/&gt;

 - In the details pane of the console, select the Computer tab and click New.&lt;br/&gt;

 Enter a name and, optionally, a description for your new policy and click Next.&lt;br/&gt;

 In the Categories list, click XML Service and, under Settings, select Trust XML requests and click Add.&lt;br/&gt;

 Select Enabled and click OK. Click Next.&lt;br/&gt;

 If required, apply filters to your policy to determine the circumstances under which it is applied and click Next.&lt;br/&gt;

 Ensure that the Enable this policy checkbox is selected and click Save.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0434\u043e\u0432\u0435\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 \u043c\u0435\u0436\u0434\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0434\u043e\u0432\u0435\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445_\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439_\u043c\u0435\u0436\u0434\u0443_\u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:131,&amp;quot;range&amp;quot;:&amp;quot;210152-213150&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit132&quot; id=&quot;ускорение_запуска_приложений_-_session_pre-launch_и_session_linger&quot;&gt;3.8 Ускорение запуска приложений - Session Pre-launch и Session Linger&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.8 \u0423\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 - Session Pre-launch \u0438 Session Linger&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435_\u0437\u0430\u043f\u0443\u0441\u043a\u0430_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439_-_session_pre-launch_\u0438_session_linger&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:132,&amp;quot;range&amp;quot;:&amp;quot;213151-213258&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit133&quot; id=&quot;session_pre-launch_session_linger_и_fast_reconnect&quot;&gt;Session Pre-launch, Session Linger и Fast Reconnect&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Этот набор функций позволяет убрать задержку при запусек сессий. С помощью настраиваемой политики &lt;strong&gt;Session Pre-launch &lt;/strong&gt;, сессия стартует автоматически при входе пользователя на ферму XenApp. При помощи политики &lt;strong&gt;Session Linger &lt;/strong&gt;, можно задать промежуток времени, когда сессия пользователя остается активной на сервере, после закрытия приложения пользователем. &lt;br/&gt;

Fast Reconnect, встроен в XenApp и не требует конфигурирования. Эта функция позволяет уменьшить задержку при переподключении пользователя к существующим сессиям.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Session Pre-launch, Session Linger \u0438 Fast Reconnect&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;session_pre-launch_session_linger_\u0438_fast_reconnect&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:133,&amp;quot;range&amp;quot;:&amp;quot;213259-214236&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit134&quot; id=&quot;session_linger&quot;&gt;Session Linger&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Сессия пользователя завершается при завершении запущенных процессов и закрытии окон. Session Linger можно использовать для того, чтобы сессия пользователя оставалась активной некоторое время после закрытия приложения и следующее приложение, запущенное в течение заданного периода времени откроется быстрее, т.к. сессия пользователя уже существует. &lt;br/&gt;

Для использования Session Linger нужна настроить следующие параметры политики пользователя Citrix User policy:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - &lt;strong&gt;Linger Terminate Timer Interval&lt;/strong&gt; задает количество минут, в течение которых сессия остается активной, после закрытия последнего приложения. Если в течение этого интервала запускается новое приложение, то оно запускается в существующей сессии. Если по истечении заданного промежутка времени пользователь ничего не запускает, то сессия завершается.&lt;br/&gt;

 Если этот параметр не задан, то session linger отключен.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - &lt;strong&gt;Linger Disconnect Timer Interval&lt;/strong&gt; задает количество минут, по истечении которых сессия пользователя будет отключена. При отключении освобождается лицензия. Если параметр не занан, то перед закрытием сессий, они не отключаются, а закрываются сразу. &lt;br/&gt;

 &lt;br/&gt;

Сессии анонимных пользователей не имеют отключенного состояния. Они либо активны, либо их нет. Таким образом, если заданы параметры &lt;strong&gt;Linger Terminate Timer Interval&lt;/strong&gt; и &lt;strong&gt;Linger Disconnect Timer Interval&lt;/strong&gt;, то сессия анонимного пользователя будет уничтожена по истечении любого из этих интервалов.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Session Linger&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;session_linger&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:134,&amp;quot;range&amp;quot;:&amp;quot;214237-216723&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit135&quot; id=&quot;раздел_4конфигурирование_политик_xenapp&quot;&gt;Раздел 4: Конфигурирование политик XenApp&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 4: \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a XenApp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_4\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043f\u043e\u043b\u0438\u0442\u0438\u043a_xenapp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:135,&amp;quot;range&amp;quot;:&amp;quot;216724-216806&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit136&quot; id=&quot;как_определить_результирующую_политику_для_заданной_группы_или_пользователя&quot;&gt;4.1 - Как определить результирующую политику для заданной группы или пользователя.&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-policies-creating-wrapper-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-policies-creating-wrapper-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-policies-creating-wrapper-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.1 - \u041a\u0430\u043a \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b \u0438\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c_\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0443\u044e_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443_\u0434\u043b\u044f_\u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439_\u0433\u0440\u0443\u043f\u043f\u044b_\u0438\u043b\u0438_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:136,&amp;quot;range&amp;quot;:&amp;quot;216807-217065&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit137&quot; id=&quot;работа_с_политиками_citrix&quot;&gt;Работа с политиками Citrix&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для управления доступом пользователей к сессиям и окружением сессий используются политики Citrix. Политики - это наиболее эффективный способ управления соедиениями, безопасностью и полосой пропускания.&lt;br/&gt;

Политики можно создавать для определенных групп пользователей, устройств или типов соединений. &lt;br/&gt;

Каждая политика может содержать целый набор параметров. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Управлять политиками можно как через консоль управления групповыми политиками Windows (Group Policy Management Console), так и с помощью AppCenter (бывшая Delivery Services Console). Использование той или иной консоли определяется наличием или отсутсвием инфраструктуры Active Directory, а &lt;br/&gt;

также наличием разрешений на изменение объектов групповой политики.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u043c\u0438 Citrix&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0431\u043e\u0442\u0430_\u0441_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u043c\u0438_citrix&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:137,&amp;quot;range&amp;quot;:&amp;quot;217066-218365&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit138&quot; id=&quot;использование_редактора_групповой_политики&quot;&gt;Использование редактора групповой политики.&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если в сети настроена инфраструктура Active Directory и вы имеете права на изменение объектов групповой политики, то для создания политик следует использовать редактор групповой политики. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430 \u0433\u0440\u0443\u043f\u043f\u043e\u0432\u043e\u0439 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435_\u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430_\u0433\u0440\u0443\u043f\u043f\u043e\u0432\u043e\u0439_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:138,&amp;quot;range&amp;quot;:&amp;quot;218366-218792&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit139&quot; id=&quot;использование_appcenter&quot;&gt;Использование AppCenter&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если в сети используются службы каталогов отличные от AD, или у вас не прав на изменение объектов групповой политики, то для управления политиками Citrix нужно использовать AppCenter. Созданные объекты групповой политики будут храниться в data store.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 AppCenter&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435_appcenter&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:139,&amp;quot;range&amp;quot;:&amp;quot;218793-219274&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit140&quot; id=&quot;обработка_политик_и_их_приоритеты&quot;&gt;Обработка политик и их приоритеты&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Групповые политики обрабатываются в следующем порядке:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Локальные&lt;br/&gt;

 - Политики фермы XenApp (хрянящиеся в data store)&lt;br/&gt;

 - Политики уровня сайта (Site-level)&lt;br/&gt;

 - Политики уровня домена (Domain level)&lt;br/&gt;

 - Политики Organizational Units&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В случае конфликта, настройки политик применяемые позднее, перекрывают примененные ранее. Это означает, что политики имеют следующий порядок приоритетов (от более высокогоко к менее высокому приоритету): &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Политики Organizational Units&lt;br/&gt;

 - Политики уровня домена (Domain level)&lt;br/&gt;

 - Политики уровня сайта (Site-level)&lt;br/&gt;

 - Политики фермы XenApp (хрянящиеся в data store)&lt;br/&gt;

 - Локальные&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Например, администратор Citrix создал политику (Policy A) с помощью AppCenter, которая включает перенаправление клиентских файлов для сотрудников отдела продаж. Тем временем, другой администратор, создал политику (Policy B) через редактор групповой политики в домене, которая отключила перенаправление клиентских файлов для сотрудников отдела продаж. Когда сотрудники подключаются к ферме, то применяется политика Policy B, а политика Policy A игнорируется. Это происходит потому, что политика Policy B обрабатывается на уровне домена, а политика Policy A обрабатывается на уровне фермы XenApp.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Заметьте, при запуске сессии ICA или RDP, настройки сессии Citrix имеют больший приоритет над аналогичными настройками, сделанными в политике Active Directory или в настройках сервера  RDP (Remote Desktop Session Host Configuration). Сюда входят настройки, обычные для сессии RDP - обои рабочего стола, анимация меню и ид окон при перетаскивании. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u0438 \u0438\u0445 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430_\u043f\u043e\u043b\u0438\u0442\u0438\u043a_\u0438_\u0438\u0445_\u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:140,&amp;quot;range&amp;quot;:&amp;quot;219275-221968&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit141&quot; id=&quot;функциональные_уровни_active_directory&quot;&gt;Функциональные уровни Active Directory&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Политики Citrix способны работать в окружении Active Directory на базе доменов Windows 2000 и более новых. Для того чтобы политики Citrix были включены в отчеты о Результирующей политике (Resultant Set of Policy), необходимо, чтобы в лесу домена был как минимум один контроллер домена под управлением Windows Server 2003.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0440\u043e\u0432\u043d\u0438 Active Directory&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435_\u0443\u0440\u043e\u0432\u043d\u0438_active_directory&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:141,&amp;quot;range&amp;quot;:&amp;quot;221969-222551&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit142&quot; id=&quot;работа_с_политиками_citrix1&quot;&gt;Работа с политиками Citrix&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Процесс работы с политиками Citrix включает следующие этапы:&lt;br/&gt;

 - Создание политики&lt;br/&gt;

 - Настройка параметров политики&lt;br/&gt;

 - Применение политики к подключениям, путем добавления фильтров &lt;br/&gt;

 - Приоритизация политики &lt;br/&gt;

 - Проверка эффективности политики, путем запуска мастера моделирования политики - &lt;strong&gt;Citrix Group Policy Modeling &lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u043c\u0438 Citrix&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0431\u043e\u0442\u0430_\u0441_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u043c\u0438_citrix1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:142,&amp;quot;range&amp;quot;:&amp;quot;222552-223173&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit143&quot; id=&quot;мониторинг_состояния_-_health_monitoring_recovery_hmr&quot;&gt;4.2 Мониторинг состояния - Health Monitoring &amp;amp; Recovery (HMR)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-maintain-monitor-server-perf.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-maintain-monitor-server-perf.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-maintain-monitor-server-perf.html&lt;/a&gt;&lt;br/&gt;

Health Monitoring and Recovery можно использовать для запуска тестов на серверах фермы, для наблюдения за их состоянием и определением вероятных проблем. Citrix предоставляет стандартный набор тестов, а также есть возможность импортировать дополнительные тесты, в том числе и разработанные самостоятельно. Тесты Citrix, поставляемые с XenApp, позволяют наблюдать за службами - Remote Desktop Services, XML Service, Citrix IMA Service, и событиями входа-выхода пользователей.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
По-умолчанию Health Monitoring and Recovery включен на всех серверах фермы и тесты запусакаются на всех серверах, в том числе и на data collector. Обычно, запускать тесты на data collector не требуется, т.к. data collector не используется для запуска приложенй, особенно в больших фермах. Если запуск Health Monitoring &amp;amp; Recovery на сервере data collector не требуется - его надо отключить вручную.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Все создаваемые тесты нужно хранить в этой папке: &lt;strong&gt;%Program Files%\Citrix\HealthMon\Tests\Custom\&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
где &lt;strong&gt;%Program Files% &lt;/strong&gt; это папка в которой установлен XenApp. При сохранении тестов, не используйте пробелы в именах файлов.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Конфигурируется &lt;strong&gt;Health Monitoring and Recovery&lt;/strong&gt; путем изменения настроек политики Компьютера: &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - &lt;strong&gt;Health monitoring &lt;/strong&gt; (по-умолчанию включена). Включает или отключает Health Monitoring and Recovery.&lt;br/&gt;

 - &lt;strong&gt;Health monitoring tests&lt;/strong&gt;. Используйте это параметр для того, чтобы указать какие тесты запускать. Выберите из стандартного набора тестов Citrix или добавьте свои тесты. Описания действий по восстановлению ищите тут - &lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-maintain-mod-tst-settings-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-maintain-mod-tst-settings-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp6-w2k8-admin/ps-maintain-mod-tst-settings-v2.html&lt;/a&gt;.&lt;br/&gt;

 - &lt;strong&gt;Maximum percent of servers with logon control&lt;/strong&gt; (по-умолчанию - 10%). Используйте этот параметр для того, чтобы указать, какой процент серверов может быть отключен и исключен из балансировки нагрузки. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Дополнительную информацию  о том, как освободить сервер от пользователей, перед его отключением, смотрите тут - &lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sf-logons-control-v2.html#ps-sf-logons-control-v2&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sf-logons-control-v2.html#ps-sf-logons-control-v2&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-sf-logons-control-v2.html#ps-sf-logons-control-v2&lt;/a&gt;&lt;br/&gt;

Для определения того, испытывает ли сервер проблемы, используйте балансировку нагрузки и инструмент &lt;strong&gt;Health Monitoring and Recovery&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.2 \u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f - Health Monitoring &amp;amp; Recovery (HMR)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433_\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f_-_health_monitoring_recovery_hmr&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:143,&amp;quot;range&amp;quot;:&amp;quot;223174-226793&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit144&quot; id=&quot;тесты_citrix&quot;&gt;Тесты Citrix&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Тест &lt;strong&gt;Citrix IMA Service test&lt;/strong&gt;&lt;br/&gt;

 Этот тест опрашивает службу, для того, чтобы убедиться, что она работает и перечисляет приложения опубликованные на сервере. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Тест &lt;strong&gt;Logon monitor test&lt;/strong&gt;&lt;br/&gt;

 Этот тест следит за циклами входа-выхода пользователей для определения проблем с инициализацией сессий или возможных отказов приложения. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Тест &lt;strong&gt;Remote Desktop Services test&lt;/strong&gt;&lt;br/&gt;

 Этот тест перечисляет список сессий на сервере и дополнительную информацию.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Тест &lt;strong&gt;XML Service test&lt;/strong&gt;&lt;br/&gt;

 Этот тест запрашивает тикет от службы XML, работающей на сервере и выводит его содержимое. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Проверка &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;&lt;/strong&gt;&lt;br/&gt;

 В этом тесте производится прямой &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt; запрос имени сервера у локального &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt; сервера и сервер должен получить свой IP адрес. Тест считается непройденным, если полученный IP-адрес не совпадает с выданным серверу. Для выполнения дополнительного обратного &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt; запроса, используйте флаг &lt;strong&gt;/rl &lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Проверка локального кеша &lt;strong&gt;Check Local Host Cache test&lt;/strong&gt;&lt;br/&gt;

 Citrix не рекомендует запускать этот тест, если вы не испытываете проблем с локальным кешем хоста. Этот тест проверяет, что данные, хранящиеся в локальном кеше сервера фермы XenApp не повреждены и не имеют повторяющихся записей. Т.к. этот тест может потреблять много ресурсов процессора, используйте 24-часовой интервал (86,400 секунд), а таймаут и порг оставляйте по-умолчанию.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Перед запуском этого теста, убедитесь, что имеются разрешения на соотвествующие файлы и ветки реестра. Для этого запустите файл &lt;strong&gt;LHCTestACLsUtil.exe&lt;/strong&gt;, расположенный в папке &lt;strong&gt;C:\Program Files (x86)\Citrix\System32&lt;/strong&gt; на сервере XenApp. Для запуска этой утилиты нужно иметь права локального администратора. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Тест &lt;strong&gt;XML Threads test&lt;/strong&gt;&lt;br/&gt;

 Этот тест проверяет предел текущего количества вычислительных потоков службы Citrix XML Service. При запуске этого теста, задается максимальное допустимое количество. Тест сравнивает текущее количество и заданное и при превышении текущего над заданным фиксируется ошибка. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Тест службы печати - &lt;strong&gt;Citrix Print Manager Service test&lt;/strong&gt;&lt;br/&gt;

 Этот тест перечисляет принтеры сессии, для определения состояния службы печати &lt;strong&gt;Citrix Print Manager service&lt;/strong&gt;. Отказ фиксируется при невозможности перечисления принтеров. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Тест системной службы печати &lt;strong&gt;Microsoft Print Spooler Service test&lt;/strong&gt;&lt;br/&gt;

 Этот тест перечисляет драйверы принтера, обработчики печати и принтеры для определения состояния службы печати Windows - &lt;strong&gt;Print Spooler Service &lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Тест &lt;strong&gt;ICA Listener test&lt;/strong&gt;&lt;br/&gt;

 Этот тест определяет, может ли сервер XenApp принимать подключения ICA. Тест определяет порт ICA зпдпнный по-умолчанию, подсоединяется к порту и отсылает тестовый набор данных и слушает ответ. Тест считается пройденным при получении корректного ответа.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0435\u0441\u0442\u044b Citrix&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0435\u0441\u0442\u044b_citrix&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:144,&amp;quot;range&amp;quot;:&amp;quot;226794-231324&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit145&quot; id=&quot;зависания_и_падения_служб_печати_citrix_print_manager_service_cpsvcexe_и_microsoft_print_spooler_service_spoolsvexe&quot;&gt;Зависания и падения служб печати Citrix Print Manager Service (cpsvc.exe) и Microsoft Print Spooler Service (spoolsv.exe)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX113789&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX113789&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX113789&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u044f \u0438 \u043f\u0430\u0434\u0435\u043d\u0438\u044f \u0441\u043b\u0443\u0436\u0431 \u043f\u0435\u0447\u0430\u0442\u0438 Citrix Print Manager Service (cpsvc.exe) \u0438 Microsoft Print Spooler Service (spoolsv.exe)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u044f_\u0438_\u043f\u0430\u0434\u0435\u043d\u0438\u044f_\u0441\u043b\u0443\u0436\u0431_\u043f\u0435\u0447\u0430\u0442\u0438_citrix_print_manager_service_cpsvcexe_\u0438_microsoft_print_spooler_service_spoolsvexe&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:145,&amp;quot;range&amp;quot;:&amp;quot;231325-231535&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit146&quot; id=&quot;симптомы&quot;&gt;Симптомы&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Служба &lt;strong&gt;Citrix Print Manager service (cpsvc.exe) &lt;/strong&gt; или &lt;strong&gt;Microsoft Print Spooler service (spoolsv.exe) &lt;/strong&gt; зависает или падает. &lt;br/&gt;

При этом автоматически не создаются принтеры, в сессии принтер по-умолчанию не выставляется правильно, а задания печати не становятся в очередь и т.д.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0438\u043c\u043f\u0442\u043e\u043c\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0438\u043c\u043f\u0442\u043e\u043c\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:146,&amp;quot;range&amp;quot;:&amp;quot;231536-231994&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit147&quot; id=&quot;рекомендации&quot;&gt;Рекомендации&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
 - Используйте встроенные драйвера Windows или драйверы Citrix Universal Print Driver (UPD).&lt;br/&gt;

 - Используйте переназначение драйверов (driver mapping)&lt;br/&gt;

 - Избегайте обновления драйверов. Всегда удаляйте старый драйвер, перезагружайтесь и только потом ставьте новый. &lt;br/&gt;

 - Неиспользуемые драйверы следует удалять или ограничивать их использование. &lt;br/&gt;

 - Попытайтесь избежать использования драйверов уровня ядра (kernel-mode drivers).&lt;br/&gt;

 - Дайте пользователям права на запись в папку &lt;strong&gt;&amp;lt;root directory&amp;gt;\system\spool &lt;/strong&gt; для работы драйверов, не на 100 процентов совместимых с сервером термналов.&lt;br/&gt;

 - Избегайте использования драйверов PCL6. Вместо них старайтесь использовать драйверы PCL5 или PS.&lt;br/&gt;

 - Никогда не устанавливайте непротестированные драйверы на продакшн ферму. &lt;br/&gt;

 - Не лишних драйверов на сервер - это замедляет процесс входа пользователя. &lt;br/&gt;

 - При возможности используйте переназначение (mappings).&lt;br/&gt;

 - Перезапуск службы печати и очистка временных директорий устраняет симптомы, но не решает проблемы. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:147,&amp;quot;range&amp;quot;:&amp;quot;231995-233754&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit148&quot; id=&quot;оптимизация_hdx&quot;&gt;4.3 - Оптимизация HDX&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Source: XenApp &amp;gt; XenApp 6.5 for Windows Server 2008 R2 &amp;gt; Manage &amp;gt;&lt;br/&gt;

Enhancing the User Experience With HDX &amp;gt; Configuring HDX MediaStream Flash&lt;br/&gt;

Redirection &amp;gt; Configuring HDX MediaStream Flash Redirection on the Server&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-configure-server-ad.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-configure-server-ad.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-flash-configure-server-ad.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Это мы уже описывали тут:&lt;br/&gt;

&lt;a href=&quot;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#%D0%9A%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_HDX_MediaStream_Flash_Redirection_%D0%BD%D0%B0_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5_89&quot; class=&quot;urlextern&quot; title=&quot;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#%D0%9A%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_HDX_MediaStream_Flash_Redirection_%D0%BD%D0%B0_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5_89&quot; rel=&quot;ugc nofollow&quot;&gt;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#%D0%9A%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_HDX_MediaStream_Flash_Redirection_%D0%BD%D0%B0_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5_89&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.3 - \u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f HDX&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f_hdx&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:148,&amp;quot;range&amp;quot;:&amp;quot;233755-234538&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit149&quot; id=&quot;удаление_эха_в_конференциях_с_помощью_hdx_realtime&quot;&gt;Удаление эха, в конференциях, с помощью HDX RealTime&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-audio-echo-ad.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-audio-echo-ad.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-audio-echo-ad.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При участии пользователя в аудио-видео конференциях, может возникать эхо. Обычно, эхо возникает когда колонки и микрофон расположены слишком близко друг к другу. Поэтому Citrix рекомендует использовать гарнитуры (headsets).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
HDX RealTime обеспечивает подавление эха. Эта функция включена по-умолчанию. Для наиболее эффективного подавления - пользователь должен выбрать либо среднее качество - &lt;strong&gt;Medium - optimized for speech&lt;/strong&gt; либо низкое, оптимизированное для медленных соединений -&lt;strong&gt; Low - for low-speed connections &lt;/strong&gt;. Настройка высого качества - &lt;strong&gt;High - high definition &lt;/strong&gt; предназначена для воспроизведения музыки, а не конференций и при конференциях её следует избегать.&lt;br/&gt;

 &lt;br/&gt;

Эффективность подавления эха зависит от расстояния между микрофоном и колонками. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Подавление эха доступно в Citrix Receiver 3.0 for Windows и Citrix Online Plug-in 12.1 for Windows, а также в Web Interface 5.3.&lt;br/&gt;

Для включения или отключения&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 На компьютерах 32-bit: На устройстве пользователя откройте реестр и перейдите в раздел &lt;strong&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\ICA Client\Engine\Configuration\Advanced\Modules\ClientAudio\EchoCancellation&lt;/strong&gt;.&lt;br/&gt;

 На компьютерах 64-bit: а устройстве пользователя откройте реестр и перейдите в раздел &lt;strong&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\ICA Client\Engine\Configuration\Advanced\Modules\ClientAudio\EchoCancellation&lt;/strong&gt;.&lt;br/&gt;

 &lt;br/&gt;

 В поле Значение введите &lt;strong&gt;TRUE &lt;/strong&gt; для включения или &lt;strong&gt;FALSE &lt;/strong&gt; для отключения подавления эха.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u044d\u0445\u0430, \u0432 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u044f\u0445, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e HDX RealTime&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u044d\u0445\u0430_\u0432_\u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u044f\u0445_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_hdx_realtime&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:149,&amp;quot;range&amp;quot;:&amp;quot;234539-236960&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit150&quot; id=&quot;видеоконференции_и_сжатие_видео_в_реальном_времени&quot;&gt;Видеоконференции и сжатие видео в реальном времени&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-realtime-video-conf-wrapper-xa.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-realtime-video-conf-wrapper-xa.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/hd-realtime-video-conf-wrapper-xa.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
HDX RealTime обеспечивает пользователей полноценными функциями видеоконференцсвязи. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для использования HDX RealTime Webcam Video Compression нужно:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - На пользовательском устройстве Установить Install Citrix Receiver 3.0 for Windows или Citrix Online Plug-in 12.1 for Windows.&lt;br/&gt;

 - В том же окружении, где работает XenApp установить &lt;strong&gt;Microsoft Office Communications Server 2007 &lt;/strong&gt;. Это не опубликованное приложение.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit151&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 rightalign&quot;&gt;    Примечание: Microsoft Office Communications Server 2007 лучше устанавливать на отдельный компьютер, а не на сервер с XenApp.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table18&amp;quot;,&amp;quot;secid&amp;quot;:151,&amp;quot;range&amp;quot;:&amp;quot;237783-237975&amp;quot;} --&gt;
&lt;p&gt;
 &lt;br/&gt;

 - Опубликуйте на ферме XenApp &lt;strong&gt;Microsoft Office Communicator 2007 &lt;/strong&gt;.&lt;br/&gt;

 - Убедитесь, что на пользовательском устройстве есть возможность воспроизводить звук. &lt;br/&gt;

 - Назначте по дному процессору на пользовательскую сессию, в которых используется видеоконференцсвязь. &lt;br/&gt;

 - Web-камеру используйте с настройками по-умолчанию.&lt;br/&gt;

 - Включите следующие настройки политики:&lt;br/&gt;

 &lt;strong&gt;Client audio redirection&lt;/strong&gt;&lt;br/&gt;

 &lt;strong&gt;Client microphone redirection&lt;/strong&gt;&lt;br/&gt;

 &lt;strong&gt;Multimedia conferencing&lt;/strong&gt;&lt;br/&gt;

 &lt;strong&gt;Windows Media Redirection&lt;/strong&gt;&lt;br/&gt;

 - Установите драйверы для вебкамеры на пользовательском устройстве. Рекомендуется использовать драйверы производителя. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit152&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table19&amp;quot;,&amp;quot;secid&amp;quot;:152,&amp;quot;range&amp;quot;:&amp;quot;238964-239262&amp;quot;} --&gt;
&lt;p&gt;
Параметр &lt;strong&gt;Client Audio redirection&lt;/strong&gt;&lt;br/&gt;

Это политика пользователя Citrix (User Policy). Она позволяет включить или отключить перенаправление звука от приложения, работающего на сервере XenApp на звуковое устройство клиента. По-умолчанию - включено.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Параметр &lt;strong&gt;Client Microphone Redirection&lt;/strong&gt;&lt;br/&gt;

Это политика пользователя Citrix (User Policy). Она позволяет включить или отключить перенаправление микрофона. По-умолчанию - включено.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Параметр &lt;strong&gt;Multimedia Conferencing&lt;/strong&gt;&lt;br/&gt;

Это политика компьютера Citrix (Computer Policy). Она позволяет включить или отключить поддержку мультимедийных приложений для видеоконференций. По-умолчанию - включено.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Параметр &lt;strong&gt;Windows Media Redirection&lt;/strong&gt;&lt;br/&gt;

Это политика компьютера Citrix (Computer Policy). Используйте эту политику для разрешения или запрещения доставку потокового аудио или видео пользователям. По-умолчанию - включено.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0438\u0434\u0435\u043e\u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0438 \u0441\u0436\u0430\u0442\u0438\u0435 \u0432\u0438\u0434\u0435\u043e \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0438\u0434\u0435\u043e\u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438_\u0438_\u0441\u0436\u0430\u0442\u0438\u0435_\u0432\u0438\u0434\u0435\u043e_\u0432_\u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c_\u0432\u0440\u0435\u043c\u0435\u043d\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:150,&amp;quot;range&amp;quot;:&amp;quot;236961-240676&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit153&quot; id=&quot;конфигурирование_политики_перезагрузки_серверов_и_ограничения_входа_на_время_перезагрузки&quot;&gt;4.4 Конфигурирование политики перезагрузки серверов и ограничения входа на время перезагрузки&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-ref-policies-reboot.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-ref-policies-reboot.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-ref-policies-reboot.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Политик перезагрузки серверов доступны только в редакицях XenApp  Enterprise и Platinum.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot custom warning&lt;/strong&gt;&lt;br/&gt;

Эта настройка включает или отключает рассылку предупреждений пользователям (помимо стандартного сообщений о перезагрузке), перед запланированной переазгрузкой. По-умолчанию рассылается только стандартное оповещение. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot custom warning text&lt;/strong&gt;&lt;br/&gt;

Этот параметр задает текст сообщения о перезагрузке. По умолчанию - пусто. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot logon disable time&lt;/strong&gt;&lt;br/&gt;

Этот параметр задает интервал времени (количество минут), перед запланированной перезагрузкой, в течение которого отключен вход на сервер. По-умолчанию, вход на сервер отключается за 60 минут до перезагрузки. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot schedule frequency&lt;/strong&gt;&lt;br/&gt;

Этот параметр задает частоту запланированной перезагрузки в днях. По-умолчанию, планируеттся перезагрузка раз в неделю. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot schedule randomization interval&lt;/strong&gt;&lt;br/&gt;

Этот параметр служит для того, чтобы все серверы не перезагружались одновременно, а перезагружались в течение этого интервала до или после назначенного времени перезагрузки. По-умолчанию - 0.&lt;br/&gt;

Например - Если перезагрузка запланирована на 11:00 PM и &lt;strong&gt;randomization interval &lt;/strong&gt; составляет 15 минут, то перезагрузка произойдет в люьое время между 10:45 PM и 11:15 PM.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot schedule start date&lt;/strong&gt;&lt;br/&gt;

Этот параметр задает жата, начиная с коротой серверы будут перезагружаться. Формат - MM/DD/YYYY. По-умолчанию - не задано. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot schedule time&lt;/strong&gt;&lt;br/&gt;

Этот параметр задает когда будет перезагружен сервер. ФОрмат - H:MM TT, TT - время дня (AM или PM). Время перезагрузки задается в локальной тайм-зоне в формате 12-часов. По-умолчанию - 12:00 AM (полночь).&lt;br/&gt;

Если будет введено время в формате 24-часа, то оно автоматически сконвертируется в формат 12-часов. Если вы введете время без значения TT, то по -умолчанию будет задано AM.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot warning interval&lt;/strong&gt;&lt;br/&gt;

Этот параметр задает как часто будут отправляться пользователям предупреждения о грядущей перезагрузке. По-умолчанию, сообщения отсылаются раз в 15 минут.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot warning start time&lt;/strong&gt;&lt;br/&gt;

Этот параметр задает количество минут до перезагрузки, когда будут начаты отправляться предупреждения пользователям. По-умолчанию, предупреждения начинают отправляться за 60 минут.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Reboot warning to users&lt;/strong&gt;&lt;br/&gt;

Этот параметр разрешает или запрещает рассылку стандартных предупреждений о перезагрузке. По-умолчнию - стандартные сообщения не рассылаются. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Scheduled reboots&lt;/strong&gt;&lt;br/&gt;

Этот параметр разрешает или отключает запланированные перезагрузки. По-умолчанию, перезагрузка серверов отключена. &lt;br/&gt;

Вы можете сконфигурировать автоматичсекую перезагрузку в заданное время и с заданной частотой. При включении этого параметра, в силу вступают следующие параметры: &lt;br/&gt;

&lt;strong&gt;    Reboot schedule frequency&lt;br/&gt;

    Reboot logon disable time&lt;br/&gt;

    Reboot schedule randomization interval&lt;br/&gt;

    Reboot schedule start date&lt;br/&gt;

    Reboot schedule time&lt;br/&gt;

&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.4 \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0432\u0445\u043e\u0434\u0430 \u043d\u0430 \u0432\u0440\u0435\u043c\u044f \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438_\u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438_\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432_\u0438_\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f_\u0432\u0445\u043e\u0434\u0430_\u043d\u0430_\u0432\u0440\u0435\u043c\u044f_\u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:153,&amp;quot;range&amp;quot;:&amp;quot;240677-245688&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit154&quot; id=&quot;применение_политик_и_фильтры&quot;&gt;4.5 Применение политик и фильтры&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-policies-applying.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-policies-applying.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-policies-applying.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При добавлении к политике фильтра, настройки политики применяются не ко всем подключениям, а только к тем, которые подходят по критериям фильтра. Если же фильтр не задан, то политика применяется ко всем подключениям. &lt;br/&gt;

К политикам можно применять неограниченное количество фильтров. Состав достпных фильтров зависит от типа политики - Computer или User. Ниже приведены доступные фильтры:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Контроль доступа (&lt;strong&gt;Access Control&lt;/strong&gt;) - Применяет политику на основании разрешений доступа пользователя. Только User policies.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Branch Repeater&lt;/strong&gt; - Применяет политику, в зависимости от того, работает ли сессия через Citrix Branch Repeater. Только User policies.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
IP адрес клиента (&lt;strong&gt;Client IP Address&lt;/strong&gt;) - Применяет политику в зависимости от IP-адреса устройства клиента. Только User policies.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Имя устройства клиента (&lt;strong&gt;Client Name&lt;/strong&gt;)- Применяет политику в зависимости от имени клиентского устройства. Только User policies.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Organizational Unit &lt;/strong&gt; - Применяет политику в зависимости от того, какому &lt;strong&gt;organizational unit (OU)&lt;/strong&gt; принадлежит рабочее место. Computer и User policies.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit155&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Фильтр &lt;strong&gt;Organizational Unit&lt;/strong&gt; применим только в контексте фермы XenApp и сконфигурировать его можно только из консоли AppCenter. В редакторе групповой политики этот фильтр недоступен. &lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table20&amp;quot;,&amp;quot;secid&amp;quot;:155,&amp;quot;range&amp;quot;:&amp;quot;247604-247937&amp;quot;} --&gt;
&lt;p&gt;
Пользователь или группа (&lt;strong&gt;User or Group&lt;/strong&gt;) - Применяет политику в зависимости от имени пользователя или принадлежности группе. Только User policies.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Worker Group&lt;/strong&gt; - Применяет политику в зависимости от того, какой группе воркеров (worker group) принадлежит сервер, на котором работает сессия пользователя. Computer и User policies&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При входе пользователя, XenApp определяет политики, которые подходят заданным для этого подключения фильтрам. XenApp сортирует политики в порядке приоритета, сравнивает настройки политик и применяет политику в соответствии с приоритетами. XenApp пересчитывает результирующую политику каждые 90 минут, после входа пользователя на ферму.&lt;br/&gt;

 &lt;br/&gt;

Любая настройка политик в состоянии “отключено” имеет приоритет над настройкой в состоянии “включено”, политики более низкого приоритета. Не настроенные параметры политик игнорируются.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.5 \u041f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u0438 \u0444\u0438\u043b\u044c\u0442\u0440\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u043f\u043e\u043b\u0438\u0442\u0438\u043a_\u0438_\u0444\u0438\u043b\u044c\u0442\u0440\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:154,&amp;quot;range&amp;quot;:&amp;quot;245689-249438&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit156&quot; id=&quot;нефильтрованные_политики&quot;&gt;Нефильтрованные политики&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
По-умолчанию, в XenApp настройки политик Computer и User нефильтрованы(&lt;strong&gt;Unfiltered policies&lt;/strong&gt;) и применяются ко всем подключениям. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если вы работаете в среде Active Directory и используете редактор групповой политики для настроек политик Citrix, то настройки, которые добавляются к нефильтрованным политикам, применяются ко всем серверам фермы и всем подключениям, на которые распространяется действие объектов политики. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Например - Sales OU содержат объект групповой политики (GPO), названный Sales-US, который включает в себя всех членов US sales team. В объекте групповой политики Sales-US GPO  сконфигурирована нефильтрованная политика, включающая в себя несколько настроек. Когда менеджер US Sales входит на ферму, настройки нефильтрованной политики автоматически применяются к его сессии, т.к. пользователь является членом Sales OU и на него распространяется действие объекта групповой политики Sales-US GPO.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При использовании консоли AppCenter для настроек политик Citrix, настроки, добавляемые к нефильтрованным политикам применяются ко всем серверам и подключеням фермы. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0435\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:156,&amp;quot;range&amp;quot;:&amp;quot;249439-251362&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit157&quot; id=&quot;режимы_фильтров&quot;&gt;Режимы фильтров&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Режим фильтра задает, будет ли политика применяться подключениям, соответствующим критериям фильтра или к не соответствующим. Если режим установлен в значение &lt;strong&gt;Allow &lt;/strong&gt;(по-умолчанию), политика применяется только к подключениям, соответствующим критериям фильтра. Если режим установлен в значение &lt;strong&gt;Deny&lt;/strong&gt;, политика будет применяться только к подключениям не соответствующим фильтру. Ниже рассмотрен пример, показывающий работу режимов фильтров политик Citrix в тех случаях, когда задано несколько фильтров. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0436\u0438\u043c\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0436\u0438\u043c\u044b_\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:157,&amp;quot;range&amp;quot;:&amp;quot;251363-252322&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit158&quot; id=&quot;примерфильтры_подобного_типа_с_разными_режимами&quot;&gt;Пример: Фильтры подобного типа с разными режимами.&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В политиках есть два фильтра, одного типа. Один имеет режим &lt;strong&gt;Allow&lt;/strong&gt; и второй - &lt;strong&gt;Deny&lt;/strong&gt;. Фильтр в режиме &lt;strong&gt;Deny&lt;/strong&gt; имеет приоритет, если подключение соответствует обоим фильтрам. Например:&lt;br/&gt;

Политика 1 содержит такие фильтры:&lt;br/&gt;

 Фильтр A  - Фильтр пользователей, который задает группу &lt;strong&gt;Sales &lt;/strong&gt; и находится в режиме &lt;strong&gt;Allow&lt;/strong&gt;.&lt;br/&gt;

 Фильтр B  - Фильтр пользователей, который задает пользователя &lt;strong&gt;Sales manager&lt;/strong&gt; и находится в режиме &lt;strong&gt;Deny&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вследствие того, что режим фильтра B - это &lt;strong&gt;Deny&lt;/strong&gt;,политика не применяется, когда &lt;strong&gt;Sales manager&lt;/strong&gt; входит на ферму, хотя он и принадлежит группе &lt;strong&gt;Sales&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440: \u0424\u0438\u043b\u044c\u0442\u0440\u044b \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0441 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0440\u0435\u0436\u0438\u043c\u0430\u043c\u0438.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440\u0444\u0438\u043b\u044c\u0442\u0440\u044b_\u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0433\u043e_\u0442\u0438\u043f\u0430_\u0441_\u0440\u0430\u0437\u043d\u044b\u043c\u0438_\u0440\u0435\u0436\u0438\u043c\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:158,&amp;quot;range&amp;quot;:&amp;quot;252323-253410&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit159&quot; id=&quot;примерфильтры_разного_типа_в_одинаковом_режиме&quot;&gt;Пример: Фильтры разного типа в одинаковом режиме.&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В политиках два или более фильтров разного типа в режиме &lt;strong&gt;Allow&lt;/strong&gt;. Для того чтобы политика была применена к подключению нужно, чтобы подключение подходило хотя бы под один фильтр &lt;strong&gt;каждого типа&lt;/strong&gt;. То есть - в случае наличия двух &lt;strong&gt;разнотипных&lt;/strong&gt; фильтров в режиме Allow, для применения политики нужно чтобы подключение подошло под критерии &lt;strong&gt;обеих&lt;/strong&gt; фильтров! &lt;br/&gt;

Например: &lt;br/&gt;

Политика 2 содержит такие фильтры:&lt;br/&gt;

 Фильтр C  - Фильтр пользователей, задает группу &lt;strong&gt;Sales&lt;/strong&gt; и находится в режиме &lt;strong&gt;Allow&lt;/strong&gt;.&lt;br/&gt;

 Фильтр D  - Фильтр IP-адресов, задает сеть 12.0.0.* (диапазон сети корпоративной сети) и находится в режиме &lt;strong&gt;Allow&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При входе &lt;strong&gt;Sales manager&lt;/strong&gt; из офиса, политика применяется, потому что подключение удовлетворяет обоим фильтрам. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Политика 3 содержит такие фильтры:&lt;br/&gt;

 Фильтр E - Фильтр пользователей, задает группу &lt;strong&gt;Sales&lt;/strong&gt; и находится в режиме &lt;strong&gt;Allow&lt;/strong&gt;.&lt;br/&gt;

 Фильтр F - Фильтр контроля доступа (&lt;strong&gt;Access Control&lt;/strong&gt;), который задает подключения через &lt;strong&gt;Access Gateway &lt;/strong&gt; и находится в режиме &lt;strong&gt;Allow&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При входе &lt;strong&gt;Sales manager&lt;/strong&gt; из офиса, политика НЕ применяется, т.к. подключение не соответствует фильтру F.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440: \u0424\u0438\u043b\u044c\u0442\u0440\u044b \u0440\u0430\u0437\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0432 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440\u0444\u0438\u043b\u044c\u0442\u0440\u044b_\u0440\u0430\u0437\u043d\u043e\u0433\u043e_\u0442\u0438\u043f\u0430_\u0432_\u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u043c_\u0440\u0435\u0436\u0438\u043c\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:159,&amp;quot;range&amp;quot;:&amp;quot;253411-255386&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit160&quot; id=&quot;раздел_5публикация_приложений_и_контента&quot;&gt;Раздел 5: Публикация приложений и контента&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 5: \u041f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_5\u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439_\u0438_\u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:160,&amp;quot;range&amp;quot;:&amp;quot;255387-255476&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit161&quot; id=&quot;методы_доставки_приложений1&quot;&gt;5.1 - Методы доставки приложений&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-planning-application-delivery-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-planning-application-delivery-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-planning-application-delivery-v2.html&lt;/a&gt;&lt;br/&gt;

Приложения бывают &lt;strong&gt;streamed&lt;/strong&gt; - упакованные в контейнер и &lt;strong&gt;hosted&lt;/strong&gt; - установленные на сервер XenApp. &lt;br/&gt;

Для streamed приложений создается &lt;strong&gt;профиль приложения&lt;/strong&gt;, который размещается на сервере профилей или web-сервере и содержит XML-файл манифеста (.profile), файлы приожения, контрольную сумму, иконки (Icondata.bin), и скрипты исполняемые перед запуском и после завершения приложения.&lt;br/&gt;

Приложения могут быть опубликованы тремя разными способами, либо их сочетанием:&lt;br/&gt;

1. &lt;strong&gt;Installed on server&lt;/strong&gt; - приложение устанавливается как на сервер терминалов. Преимущества - независимость от пользовательского устройства, централизация.&lt;br/&gt;

2. &lt;strong&gt;Streamed to server&lt;/strong&gt; - приложение инкапсулируется в профиль приложения, хранится на сервере и при запуске обрабатывается на сервере. Преимущества - возможность запуска разных версий приложений на одном сервере, удобный централизованный апдейт приложений, независимость от  пользовательского устройства. Недостатки - некоторые приложения будут неправильно работать из профиля (например .NET). &lt;br/&gt;

3. &lt;strong&gt;Streamed to desktop&lt;/strong&gt; - приложение инкапсулируется в профиль приложения, хранится на сервере, а при запуске обрабатывается на компьютере пользователя. Преимущества - ресурсоемкие приложения используют ресурсы десктопа, возможность работы off-line. Недостатки - пользовательское устройство должно работать под управлением WIndows и иметь достаточные ресурсы.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Опубликовать можно как целиком рабочий стол, так и отдельное приложение. &lt;br/&gt;

Профили Streamed-приложений должны размещаться на файловом сервере с доступом CIFS либо HTTP/HTTPS. HTTP-доступ работает быстрее и может применяться для централизованной публикации для удаленных филиалов.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Также существует двойной режим доставки - &lt;strong&gt;Dual mode delivery&lt;/strong&gt;:&lt;br/&gt;

Если для приложения выбран метод - &lt;strong&gt;streamed if possible, otherwise accessed from a server&lt;/strong&gt; (то есть двойной или резервный), XenApp будет пытаться запустить приложение в режиме &lt;strong&gt;streamed to desktop&lt;/strong&gt; на устройстве пользователя, при этом, если стримминг приложения невозможен - будет использован резервный метод. Например - можно указать, что приложение должно запускаться как &lt;strong&gt;streamed to desktop&lt;/strong&gt; при доступе с устройства под управлением Windows и запускать его как установленное на сервере приложение, при доступе к нему с мобильного не Windows-устройства. &lt;br/&gt;

Данный метод позволяет по возможности разгрузить серверы фермы с помощью фильтров и балансировки нагрузки (Load Balancing Policies for Streamed App Delivery).&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;5.1 - \u041c\u0435\u0442\u043e\u0434\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u0435\u0442\u043e\u0434\u044b_\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u04391&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:161,&amp;quot;range&amp;quot;:&amp;quot;255477-259856&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit162&quot; id=&quot;выбор_между_доставкой_приложения_либо_целого_рабочего_стола&quot;&gt;Выбор между доставкой приложения, либо целого рабочего стола&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Перед публикацией приложений следует решить - будет ли осуществляться доставка всего рабочего стола, либо будут доставляться только приложения. &lt;br/&gt;

Публикация приложений осуществляется наиболее часто и предоставляет наибольшую гибкость при администрировании. &lt;br/&gt;

Вы можете использовать политики для предотвращения доступа пользователей к дискам сервера и вводить прочие ограничения для обеих методов доставки.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u043c\u0435\u0436\u0434\u0443 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u043e\u0439 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043b\u0438\u0431\u043e \u0446\u0435\u043b\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0441\u0442\u043e\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u043c\u0435\u0436\u0434\u0443_\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u043e\u0439_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f_\u043b\u0438\u0431\u043e_\u0446\u0435\u043b\u043e\u0433\u043e_\u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e_\u0441\u0442\u043e\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:162,&amp;quot;range&amp;quot;:&amp;quot;259857-260735&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit163&quot; id=&quot;создание_профилей_приложений_и_связей_между_ними&quot;&gt;5.2 - Создание профилей приложений и связей между ними&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-stream-profiler-wrapper-v6-1.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-stream-profiler-wrapper-v6-1.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-stream-profiler-wrapper-v6-1.html&lt;/a&gt;&lt;br/&gt;

&lt;strong&gt;Профиль&lt;/strong&gt; (profile) - это приложение, упакованное для стримминга с помощью инстпумента Citrix Streaming Profiler. Профиль может содержать единственное приложение или набор приложений. Например - можно упаковать в профиль только Microsoft Word, или же весь Microsoft Office. Также можно упаковать в профили отдельные приложения и наладить между ними межпрофильную связь (inter-isolation communication). &lt;br/&gt;

Для создания профилей необходимо установить &lt;strong&gt;Streaming Profiler&lt;/strong&gt; (профайлер) на чистый компьютер, называемый - профилирующая рабочая станция (profiler workstation). Мастер профилирования фиксирует изменения в системе, происходящие при установке приложения и метаданные, необходимые для доставки приложения в виде профиля. Профайлер объединяет файлы и конфигурационные настройки в профиль приложения.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Individual targets&lt;/strong&gt; - это пользовательские окружения, содержащиеся в профиле приложения. &lt;strong&gt;Initial target&lt;/strong&gt; - это окружение системы, на которой создан профиль приложения. При этом, можно создать несколько окружений, для работы на специфичных системах. Например - некоторые коммерческие приложения способны работать на многих операционных системах и языковых окружениях, а другие - только на определенных ОС и языках. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit164&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО: Приложения, скомпилированные как 64-бит приложения не подходят для стримминга. При этом, 32-бит приложения, могут упаковываться в профиль на 64-бит системах и конфигурироваться для стримминга на 64-бит системы. &lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table21&amp;quot;,&amp;quot;secid&amp;quot;:164,&amp;quot;range&amp;quot;:&amp;quot;263053-263448&amp;quot;} --&gt;
&lt;p&gt;
В зависимости от окружения ваших пользователей, есть возможность добавлять в профиль приложения необходимые сторонние компоненты, такие как Java Runtime Environment. В некоторых случаях, может понадобиться помещать несколько приложений профиль, для того чтобы гарантировать их нормальную совместную работу. Кроме того, есть возможность связывать профили разных приложений, для взаимодействия приложений, работающих в изолированных окружениях. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После создания профиля и сохранения его на разделяемый ресурс в App Hub, сконфигурируйте пользователей и опубликуйте приложение в режиме стримминга с помощью мастера в Citrix AppCenter. Когда пользователь запускает приложение, опубликованное в режиме стримминга, Citrix Plug-in на пользовательском устройстве автоматически выбирает правильное окружение из профиля, которое соответствует конфигурации пользовательского устройства. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
За дополнительной информацией обращайтесь на соответствуюшие страницы Citrix Knowledge Center:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Часто задаваемые вопросы об Application Streaming - &lt;a href=&quot;http://support.citrix.com/article/CTX118181&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX118181&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX118181&lt;/a&gt;&lt;br/&gt;

 Повышение уровня безопасности Application Streaming - &lt;a href=&quot;http://support.citrix.com/article/CTX110304&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX110304&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX110304&lt;/a&gt;&lt;br/&gt;

 Application Streaming Delivery and Profiling Best Practices for XenApp at &lt;a href=&quot;http://support.citrix.com/article/CTX118623&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX118623&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX118623&lt;/a&gt;&lt;br/&gt;

 &lt;br/&gt;

 Дополнительно - выберите свою версию XenApp на сайте поддержки и кликните вкладку &lt;strong&gt;Technotes&lt;/strong&gt;, а затем &lt;strong&gt;Application Streaming&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Примечание: Streaming Profiler SDK содержит набор объектов COM и интерфейсов .NET, которые предоставляют программный интерфейс для профайлера. Дополнительную информацию можно найти в справочной системе SDK и Readme с сайта Citrix Developer Network - &lt;a href=&quot;http://community.citrix.com/&quot; class=&quot;urlextern&quot; title=&quot;http://community.citrix.com/&quot; rel=&quot;ugc nofollow&quot;&gt;http://community.citrix.com/&lt;/a&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;5.2 - \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u043c\u0435\u0436\u0434\u0443 \u043d\u0438\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439_\u0438_\u0441\u0432\u044f\u0437\u0435\u0439_\u043c\u0435\u0436\u0434\u0443_\u043d\u0438\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:163,&amp;quot;range&amp;quot;:&amp;quot;260736-266225&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit165&quot; id=&quot;обзор_доступных_пользовательских_окружений_targets_overview&quot;&gt;Обзор доступных пользовательских окружений (&amp;#039;&amp;#039;&amp;#039;Targets Overview&amp;#039;&amp;#039;&amp;#039;)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-stream-profile-targets-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-stream-profile-targets-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-stream-profile-targets-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Пользовательское окружение (target) - это набор файлов, данных реестра и другой информации, необходимой для изоляции приложения в заданном окружении. Кроме того, в каждом варианте окружения задана комбинация операционной системы, сервис пака, буква системного диска, и язык. Приложения могут быть спрофилированы с нужным вариантом этих параметров - например: Microsoft Vista, все сервиспаки, буква системного диска - C, и язык - English.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Внутри target может быть несколько исполняемых файлов и приложений, которые обычно получают значек в меню Пуск. Например - “Microsoft Office” это профиль, а “Microsoft Word” - это приложение внутри этого профиля. Профиль может поддерживать несколько окружений (targets) - в этом случае target - это отдельная установка профилируемого приложения, предназначенного для запуска на специфичной версии ОС. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Пользовательские устройства выбирают окружение из тех, что были заданы при создании профиля. По-умолчанию, окружение соответствует операционной системе и конфигурации, рабочей станции, на которой создавался профиль, хотя могут быть выбраны и другие ОС.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для задания параметров пользовательских окружений, включенных в профиль, используется профайлер. Один или несколько администраторов могут запускать профайлер несколько раз в разных вариантах ОС, для получения необходимого набора пользовательских окружений, включенных в профиль приложения. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Параметры каждого пользовательского окружения, включенного в профиль хранятся в манифесте профиля - файле &lt;strong&gt;.profile&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Перекрывающие друг-друга определения пользовательских окружений запрещены. К любому пользовательскому компьютеру должен походить только один вариант вариант пользовательского окружения из хранимых в профиле. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Администратор может обновлять профиль и пользовательское окружение в любой момент, не влияя на исполнение приложения в уже запущенных сессиях. При этом потребуется дополнительное место на диске файл-сервера для хранения старых версий профиля. Профайлер не обеспечивает удаления старых версий пользовательских окружений - то есть их придется удалять вручную. При этом нужно следить, что удаляемые варианты пользовательского окружения (targets) больше никем не используются. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Новейшие операционные системы, которые будут издаваться в будущем - не поддерживаются. То есть приложение не сможет запуститься, если будет запущено в неподдерживаемой ОС. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0437\u043e\u0440 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0439 (&amp;#039;&amp;#039;&amp;#039;Targets Overview&amp;#039;&amp;#039;&amp;#039;)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0437\u043e\u0440_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445_\u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0439_targets_overview&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:165,&amp;quot;range&amp;quot;:&amp;quot;266226-270724&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit166&quot; id=&quot;публикация_приложений&quot;&gt;5.3 - Публикация приложений&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-pub-deliverymethod.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-pub-deliverymethod.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-pub-deliverymethod.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Типы публикуемых ресурсов:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Server desktop&lt;/strong&gt; - Публикуется рабочий стол сервера Windows. При подключении пользователь видит рабочий стол, с которого можно запустить любое приложение, установленное на сервере. После выбора этого типа ресурса следует указать сервер, рабочий стол которого будет опубликован. &lt;br/&gt;

Для публикации рабочего стола на сервере должен быть установлен XenApp. &lt;br/&gt;

 &lt;strong&gt;Content&lt;/strong&gt; - Публикуется неисполняетмая информация - типа медиафайлов, веб-страниц, документов. При выборе этого типа контента нужно будет указать путь &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; (Uniform Resource Locator) или UNC (Uniform Naming Convention) к публикуемому файлу. Кликните&lt;strong&gt; Browse&lt;/strong&gt; для того чтобы увидеть доступные ресурсы.&lt;br/&gt;

 &lt;strong&gt;Application&lt;/strong&gt; (по-умолчанию) - Публикация приложения, установленного на одном или нескольких серверах фермы. &lt;br/&gt;

 Необходимо указать тип публикуемого приложения:&lt;br/&gt;

 &lt;strong&gt;Accessed from a server&lt;/strong&gt;. Grants users access to applications that run on a XenApp server and use shared server resources. If you choose this option, you must then enter the location of the executable file for the application and the XenApp server on which it will run. Choose this option as the application type unless you intend to stream your applications.&lt;br/&gt;

 &lt;strong&gt;Streamed if possible&lt;/strong&gt;, otherwise accessed from a server (also called dual mode streaming). Grants users access to a profiled application that streams from the file share to their user devices and launches locally from within an isolation environment. Alternatively, for user devices that do not support streamed applications (for example, if the Offline Plug-in is not installed), this setting allows the use of an ICA connection to access the application installed on or streamed from a XenApp server. &lt;br/&gt;

Нельзя стриммить некоторые типы приложений, например - .NET приложения.&lt;br/&gt;

 &lt;strong&gt;Streamed to client&lt;/strong&gt;. Grants users access to a profiled application that streams from the file share to their user devices and launches locally from within an isolation environment. With this option, the application uses client resources instead of server resources. Users must have the Offline Plug-in installed and access the application using Online Plug-in or a Web Interface site. If selected, user devices that do not support client-side application virtualization (such as, they use a non-Windows client) or do not have the Offline Plug-in installed locally cannot launch the application.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;5.3 - \u041f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:166,&amp;quot;range&amp;quot;:&amp;quot;270725-273935&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit167&quot; id=&quot;перенаправление_контнета_с_сервера_клиентам_и_от_клиентов_к_серверу&quot;&gt;5.6 - Перенаправление контнета с сервера клиентам и от клиентов к серверу.&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;5.6 - \u041f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u043d\u0435\u0442\u0430 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c \u0438 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043a\u043e\u043d\u0442\u043d\u0435\u0442\u0430_\u0441_\u0441\u0435\u0440\u0432\u0435\u0440\u0430_\u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c_\u0438_\u043e\u0442_\u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432_\u043a_\u0441\u0435\u0440\u0432\u0435\u0440\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:167,&amp;quot;range&amp;quot;:&amp;quot;273936-274080&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit168&quot; id=&quot;от_сервера_клиенту&quot;&gt;От сервера клиенту&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-pub-content-redirect-server-task-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-pub-content-redirect-server-task-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-publishing/ps-pub-content-redirect-server-task-v2.html&lt;/a&gt;&lt;br/&gt;

Перенаправление контента с сервера к клиенту используется для того, чтобы открывать некоторые типы ссылок на клиенте, сохраняя ресурсы сервера. &lt;br/&gt;

Например на севрере может быть опубликован почтовый клиент и пользователи могут часто открывать Web-страницы и мультимедийные &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;, ссылки на которые приходят по почте. В этом случае, включение перенаправления контента (content redirection) от сервера к клиенту позволит воспроизводить мультимедию и открывать страницы средствами клиентских устройств. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit169&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Если клиентское устройство не может открыть страницу, то &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; перенаправляется обратно на сервер.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table22&amp;quot;,&amp;quot;secid&amp;quot;:169,&amp;quot;range&amp;quot;:&amp;quot;275135-275337&amp;quot;} --&gt;
&lt;p&gt;
1. Настройка перенаправления контента осуществляется с помощью политик пользователя - &lt;strong&gt;Citrix policy setting &amp;gt; User &amp;gt; ICA &amp;gt; File Redirection&lt;/strong&gt;. Параметр &lt;strong&gt;Host to client redirection&lt;/strong&gt; включает перенаправление. По-умолчанию этот параметр отключен и контент обрабатывается на сервере. &lt;br/&gt;

2. В &lt;strong&gt;Citrix AppCenter&lt;/strong&gt; опубликуйте ресурс и выберите пользователей, которым он доступен.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При перенаправлении контента открываются следующие типы &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; (в Windows и Linux):&lt;br/&gt;

 HTTP (Hypertext Transfer Protocol)&lt;br/&gt;

 HTTPS (Secure Hypertext Transfer Protocol)&lt;br/&gt;

 RTSP (Real Player and QuickTime)&lt;br/&gt;

 RTSPU (Real Player and QuickTime)&lt;br/&gt;

 PNM (Legacy Real Player)&lt;br/&gt;

 MMS (Microsoft Media Format)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если перенаправление не работает для некоторых ссылок HTTPS, то следует проверить что на устройстве пользователя установлены соответствующие сертификаты. Если сертификатов нет, то HTTP ping от клиента к &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; не пройдет и будет перенаправлен обратно серверу. Для старых плагинов перенаправление контента требует Internet Explorer Version 5.5 with Service Pack 2 на системах Windows 98 или выше.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442_\u0441\u0435\u0440\u0432\u0435\u0440\u0430_\u043a\u043b\u0438\u0435\u043d\u0442\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:168,&amp;quot;range&amp;quot;:&amp;quot;274081-276958&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit170&quot; id=&quot;перенаправление_контента_от_клиента_серверу&quot;&gt;Перенаправление контента от клиента серверу&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Настройка перенаправления контента от клиента серверу позволяет ассоциировать определенные типы файлов с опубликованными приложениями. Перенаправление контента от клиента к серверу работает только для клиентов, использующих Citrix Receiver.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Конфигурирование:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 1. Перенаправление контента от клиента к серверу конфигурируется в консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt; при конфигурировании &lt;strong&gt;XenApp Services site&lt;/strong&gt; (если сайт XenApp Services не создан, то его надо создать). Опция доступна тут: &lt;strong&gt;PNAgent settings &amp;gt; Server Farms &amp;gt; Manage Server Farms &amp;gt; Advanced&lt;/strong&gt;.&lt;br/&gt;

 2. В консоли &lt;strong&gt;Citrix AppCenter&lt;/strong&gt; при публикации приложения следует указать связанные с ним типы (расширения) файлов. При запуске приложения пользователем будут выполнены необходимые ассоциации приложения с типом файлов в реестре Windows.&lt;br/&gt;

 3. Убедитесь, что включена политика &lt;strong&gt;Client drive redirection&lt;/strong&gt; в разделе &lt;strong&gt;User policy&lt;/strong&gt; либо для фермы в целом, либо для сервера, либо для группы пользователей.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430_\u043e\u0442_\u043a\u043b\u0438\u0435\u043d\u0442\u0430_\u0441\u0435\u0440\u0432\u0435\u0440\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:170,&amp;quot;range&amp;quot;:&amp;quot;276959-278648&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit171&quot; id=&quot;раздел_6дополнительное_управление&quot;&gt;Раздел 6: Дополнительное управление&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 6: \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_6\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435_\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:171,&amp;quot;range&amp;quot;:&amp;quot;278649-278726&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit172&quot; id=&quot;делегирование_административных_прав&quot;&gt;6.1 - Делегирование административных прав&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-admin-acct-mgmt-wrapper-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-admin-acct-mgmt-wrapper-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-admin-acct-mgmt-wrapper-v2.html&lt;/a&gt;&lt;br/&gt;

Для создания дополнительных административных учетных записей в &lt;strong&gt;Citrix AppCenter&lt;/strong&gt; в меню слева есть нода &lt;strong&gt;Administrators&lt;/strong&gt;.&lt;br/&gt;

Для создания админа - кликнуть правой кнопкой и выбрать &lt;strong&gt;Add Administrator&lt;/strong&gt;.&lt;br/&gt;

Затем выбрать пользователя или группу, затем задать уровень привилегий - &lt;strong&gt;View only, Full Administration&lt;/strong&gt; или &lt;strong&gt;Custom&lt;/strong&gt;.&lt;br/&gt;

При выборе &lt;strong&gt;Custom&lt;/strong&gt; можно назначить специальные права.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;6.1 - \u0414\u0435\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u043f\u0440\u0430\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0435\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0445_\u043f\u0440\u0430\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:172,&amp;quot;range&amp;quot;:&amp;quot;278727-279528&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit173&quot; id=&quot;журналирование_изменений_конфигурации_фермы&quot;&gt;6.2 - Журналирование изменений конфигурации фермы&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Эта функция предназначена для протоколирования изменений, вносимых в конфигурацию фермы. В специальную базу данных заносятся изменения конфигурации, сделанные как с помощью Citrix AppCenter, так и с помощью утилит командной строки и утилит, входящих в состав SDK.&lt;br/&gt;

Перед включение этой функции следует:&lt;br/&gt;

 - Определить уровень безопасности и контроля журнала. Например, будут ли запрашиваться учетные данные перед очисткой логов.&lt;br/&gt;

 - Определить как строго будут протоколироваться события конфигурирования. Например - будет ли разрешено внесение изменений в конфигурацию фермы, если эти изменения нельзя внести в протокол (например при отключенной базе данных журнала). &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit174&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО: Для безопасного хранения учетных данных от базы данных журнала, при конфигурировании фермы следует включать шифрование IMA (IMA encryption feature). После включения этой функции её невозможно отключить, не потеряв зашифрованные данные. Citrix рекомендует конфигурировать шифрование IMA до настройки и использования функции журналирования.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table23&amp;quot;,&amp;quot;secid&amp;quot;:174,&amp;quot;range&amp;quot;:&amp;quot;280842-281455&amp;quot;} --&gt;
&lt;p&gt;
Для включения журналирования:&lt;br/&gt;

 - СОздайте базу данных журнала.&lt;br/&gt;

 - Создайте учетные данные для доступа к базе журнала.&lt;br/&gt;

 - Сконфигурируйте подключение к базе данных.&lt;br/&gt;

 - Задайте параметры журналирования&lt;br/&gt;

 - Делегируйте административные права&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После включения, функция журналирования работает в фоне. Пользователь может инициировать только генерацию отчетов, очистку баз данных журнала и отображение опций журналирования.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для создания отчета используется команда PowerShell &lt;strong&gt;Get-CtxConfigurationLogReport&lt;/strong&gt;. Дополнительную информацию можно найти в справке команды &lt;strong&gt;Get-CtxConfigurationLogReport &lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Администраторы, обладающие полными административными правами (Full Citrix administrators) могут изменять настройки журналирования и очищать журнал, а также делегировать эти права другим администраторам (опция разрешений &lt;strong&gt;Edit Configuration Logging Settings&lt;/strong&gt;). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;6.2 - \u0416\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0444\u0435\u0440\u043c\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438_\u0444\u0435\u0440\u043c\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:173,&amp;quot;range&amp;quot;:&amp;quot;279529-282935&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit175&quot; id=&quot;включение_журналирования&quot;&gt;Включение журналирования&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
 - В AppCenter кликните правой кнопкой по ферме.&lt;br/&gt;

 - Выберите свойства фермы (&lt;strong&gt;Farm properties&lt;/strong&gt;).&lt;br/&gt;

 - Кликните &lt;strong&gt;Configuration Logging&lt;/strong&gt;.&lt;br/&gt;

 - Сконфигурируйте доступ к базе данных &lt;strong&gt;Configure Database…&lt;/strong&gt;.&lt;br/&gt;

 - Включите журналировани с помощью чекбокса &lt;strong&gt;Log administrative tasks to Configuration Logging database &lt;/strong&gt;. &lt;br/&gt;

 - Для разрешения внесения изменений в конфигурацию фермы при отключенной базе журнала отметььте чекбокс &lt;strong&gt;Allow changes to the farm when logging database is disconnected&lt;/strong&gt; .&lt;br/&gt;

 - Для запроса учетных данных администратора перед очисткой журнала отметьте чекбокс &lt;strong&gt;Require administrators to enter database credentials before clearing the log &lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:175,&amp;quot;range&amp;quot;:&amp;quot;282936-283953&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit176&quot; id=&quot;очистка_журнала&quot;&gt;Очистка журнала&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для очистки журнала используйте один из нижеприведенных способов:&lt;br/&gt;

 - В &lt;strong&gt;AppCenter&lt;/strong&gt; разверните ферму, выберите &lt;strong&gt;History&lt;/strong&gt;. Выберите &lt;strong&gt;Clear history&lt;/strong&gt; в меню &lt;strong&gt;Actions&lt;/strong&gt;.&lt;br/&gt;

 - Используйте команду PowerShell &lt;strong&gt;Clear-XAConfigurationLog&lt;/strong&gt;. За дополнительной информацийе обращайтесь к справке команды &lt;strong&gt;Clear-XAConfigurationLog&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0447\u0438\u0441\u0442\u043a\u0430 \u0436\u0443\u0440\u043d\u0430\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0447\u0438\u0441\u0442\u043a\u0430_\u0436\u0443\u0440\u043d\u0430\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:176,&amp;quot;range&amp;quot;:&amp;quot;283954-284489&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit177&quot; id=&quot;утилиты_командной_строки&quot;&gt;6.3 - Утилиты командной строки&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;6.3 - \u0423\u0442\u0438\u043b\u0438\u0442\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0442\u0438\u043b\u0438\u0442\u044b_\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439_\u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:177,&amp;quot;range&amp;quot;:&amp;quot;284490-284552&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit178&quot; id=&quot;утилита_dsmaint&quot;&gt;Утилита DSMAINT&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-commands-dsmaint-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-commands-dsmaint-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-commands-dsmaint-v2.html&lt;/a&gt;&lt;br/&gt;

Команда &lt;strong&gt;dsmaint&lt;/strong&gt; может быть выполнена на серверах, входящих в состав фермы и предназначена для работы с хранилищем конфигурации (data store). &lt;br/&gt;

В том числе - резервного копирования хранилища, миграции на новый сервер, сжатия базы данных хранилища и других операций. Не все команды утилиты &lt;strong&gt;dsmaint&lt;/strong&gt; применимы ко всем типам базы данных хранилища. &lt;br/&gt;

При использовании этой команды следует учитывать регистр символов при вводе имен и паролей.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Синтакс:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dsmaint config [/rade] [/user:username] [/pwd:password] [/dsn:filename]

dsmaint backup destination_path 

dsmaint compactdb [/lhc]

dsmaint migrate [{/srcdsn:dsn1 /srcuser:user1 /srcpwd:pwd1}] [{/dstdsn:dsn2 /dstuser:user2
 /dstpwd:pwd2}]

dsmaint publishsqlds {/user:username /pwd:password}

dsmaint recover

dsmaint recreatelhc

dsmaint recreaterade

dsmaint verifylhc [/autorepair]

dsmaint [/?]&lt;/pre&gt;

&lt;p&gt;
Параметры:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;destination_path&lt;/strong&gt;&lt;br/&gt;

 Локальный путь к файлу бекапа базы данных data store. Не используйте такой же путь при указании оригинальной базы. &lt;br/&gt;

&lt;strong&gt;dsn1&lt;/strong&gt;&lt;br/&gt;

 Имя файла DSN с указанием исходной (source) базы данных data store.&lt;br/&gt;

&lt;strong&gt;dsn2&lt;/strong&gt;&lt;br/&gt;

 Имя файла DSN с указанием конечной (destination) базы данных data store.&lt;br/&gt;

&lt;strong&gt;filename&lt;/strong&gt;&lt;br/&gt;

 Имя data store.&lt;br/&gt;

&lt;strong&gt;password&lt;/strong&gt;&lt;br/&gt;

 Пароль для подключения к data store.&lt;br/&gt;

&lt;strong&gt;pwd1&lt;/strong&gt;&lt;br/&gt;

 Пароль для подключения к исходной (source) базе data store.&lt;br/&gt;

&lt;strong&gt;pwd2&lt;/strong&gt;&lt;br/&gt;

 Пароль для подключения к конечной (destination) базе data store.&lt;br/&gt;

&lt;strong&gt;user1&lt;/strong&gt;&lt;br/&gt;

 Имя пользователя для подключения к исходной (source) базе data store.&lt;br/&gt;

&lt;strong&gt;user2&lt;/strong&gt;&lt;br/&gt;

 Имя пользователя для подключения к конечной (destination) базе data store.&lt;br/&gt;

&lt;strong&gt;username&lt;/strong&gt;&lt;br/&gt;

 Имя пользователя для подключения к базе data store. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Опции запуска&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;config&lt;/strong&gt;&lt;br/&gt;

 Изменяет параметры, используемые для доступа к data store. Введите полный путь к файлу DSN в кавычках.&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dsmaint config /user:ABCnetwork\administrator /pwd:Passw0rd101
    /dsn:&amp;quot;C:\Program Files (x86)\Citrix\Independent Management Architecture\mf20.dsn&amp;quot;&lt;/pre&gt;

&lt;p&gt;
 Перед запуском с параметром&lt;strong&gt; /pwd&lt;/strong&gt; следует остановить Citrix Independent Management Architecture.&lt;br/&gt;

 ^ВНИМАНИЕ! Указывайте &lt;strong&gt;/dsn&lt;/strong&gt; в параметрах &lt;strong&gt;dsmaint config&lt;/strong&gt;, в противном случае нужно будет изменить security context для доступа к базе SQL Server или Oracle.^&lt;br/&gt;

/rade&lt;br/&gt;

 Compacts the offline data store.&lt;br/&gt;

/user:username&lt;br/&gt;

 The user name to connect to a data store.&lt;br/&gt;

/pwd:password&lt;br/&gt;

 The password to connect to a data store.&lt;br/&gt;

/dsn:filename&lt;br/&gt;

 The filename of an IMA data store.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;backup&lt;/strong&gt;&lt;br/&gt;

 Создает резервную копию data store, размещенную в SQL Server Express, устанавливаемом по-умолчанию при установке XenApp. Запускать эту команду следует на сервере, на котором размещен data store. Необходимо задать путь к локальной папке, в которую будет скопирована резервная копия. Не следует использовать эту команду для резервного копирования data store, размещенного на сервере SQL Server или Oracle.&lt;br/&gt;

 ВНИМАНИЕ! Указание той же папки, в которой лежит исходная база при запуске &lt;strong&gt;dsmaint backup&lt;/strong&gt; может необратимо повредить data store.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;compactdb&lt;/strong&gt;&lt;br/&gt;

 Сжимает файл базы данных. Во время процесса сжатия база недоступна ни на чтение, ни на запись. Время сжатия может быть от нескольких секунд, до нескольких минут, в засисимости от размера и интенсивности использования.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;/lhc&lt;/strong&gt;&lt;br/&gt;

 Сжимает локальный кеш хоста фермы. Следует периодически запускать &lt;strong&gt;dsmaint /lhc &lt;/strong&gt; при длительной работе фермы. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;migrate&lt;/strong&gt;&lt;br/&gt;

 Migrates data from one data store database to another. Run this command on any XenApp server that has a connection to the data store. Use this command to move a data store to another server, rename a data store in the event of a server name change, or migrate the data store to a different type of database (for example, migrate from SQL Server Express to SQL Server).&lt;br/&gt;

 To migrate the data store to a new server:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Prepare the new database server using the steps you did before running XenApp Setup for the first time.&lt;br/&gt;

 Create a DSN file for this new database server on the server where you will be running dsmaint migrate.&lt;br/&gt;

 Run dsmaint migrate on any server with a connection to the data store.&lt;br/&gt;

 Run dsmaint config on each server in the farm to point it to the new database.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
/srcdsn:dsn1&lt;br/&gt;

 The name of the data store from which to migrate data.&lt;br/&gt;

/srcuser:user1&lt;br/&gt;

 The user name to use to connect to the data store from which the data is migrating.&lt;br/&gt;

/srcpwd:pwd1&lt;br/&gt;

 The password to use to connect to the data store from which the data is migrating.&lt;br/&gt;

/dstdsn:dsn2&lt;br/&gt;

 The name of the data store to which to migrate the data.&lt;br/&gt;

/dstuser:user2&lt;br/&gt;

 The user name that allows you to connect to the data store to which you are migrating the source data store.&lt;br/&gt;

/dstpwd:pwd2&lt;br/&gt;

 The password that allows you to connect to the data store to which you are migrating the source data store.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;publishsqlds&lt;/strong&gt;&lt;br/&gt;

 Publishes a SQL Server data store for replication. Run publishsqlds only from the server that created the farm. The publication is named MFXPDS.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;recover&lt;/strong&gt;&lt;br/&gt;

 Restores a SQL Server Express data store to its last known good state. Run this directly on the server while the Citrix Independent Management Architecture service is not running.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;recreatelhc&lt;/strong&gt;&lt;br/&gt;

 Recreates the local host cache database. Run if prompted after running &lt;strong&gt;dsmaint verifylhc&lt;/strong&gt;. After running dsmaint recreatelhc, restart the IMA Service. When the IMA Service starts, the local host cache is populated with fresh data from the data store.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;recreaterade&lt;/strong&gt;&lt;br/&gt;

 Recreates the application streaming offline database. Run as a troubleshooting step if the Citrix Independent Management Architecture service stops running and the local host cache is not corrupted.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;verifylhc&lt;/strong&gt;&lt;br/&gt;

 Verifies the integrity of the local host cache. If the local host cache is corrupt, you are prompted with the option to recreate it. With the verifylhc /autorepair option, the local host cache is automatically recreated if it is found to be corrupted. Alternatively, you can use dsmaint recreatelhc to recreate the local host cache.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;/?&lt;/strong&gt;&lt;br/&gt;

 Displays the syntax and options for the utility.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0442\u0438\u043b\u0438\u0442\u0430 DSMAINT&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0442\u0438\u043b\u0438\u0442\u0430_dsmaint&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:178,&amp;quot;range&amp;quot;:&amp;quot;284553-292319&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit179&quot; id=&quot;примечание&quot;&gt;Примечание&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
После запуска &lt;strong&gt;dsmaint&lt;/strong&gt;, рекомендуется запускать &lt;strong&gt;dscheck &lt;/strong&gt; для проверки состояния XenApp data store.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Команды &lt;strong&gt;dsmaint config&lt;/strong&gt; и &lt;strong&gt;dsmaint migrate&lt;/strong&gt; следует запускать только пользователю с нужными правами доступа к базе.&lt;br/&gt;

 &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:179,&amp;quot;range&amp;quot;:&amp;quot;292320-292706&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit180&quot; id=&quot;утилиты_командной_строки_для_стримминга_приложений&quot;&gt;Утилиты командной строки для стримминга приложений&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;CLIENTCACHE&lt;/strong&gt;&lt;br/&gt;

Эта утилита используется для изменения максимального размера и места хранения кэша клиента. По-умолчанию, если приложение доставляется стриммингом, то изолированное окружение распаковывется и хранится в папке &lt;strong&gt;\Program Files\Citrix\RadeCache&lt;/strong&gt;, а максимальный размер составляет 1024 мегабайт (&lt;abbr title=&quot;Megabyte&quot;&gt;MB&lt;/abbr&gt;). Эта утилита запускается на компьютере клиента и располагается в папке &lt;strong&gt;\Program Files\Citrix\Streaming Client&lt;/strong&gt;. Для запуска - перейдите в эту даиректорию и кликните &lt;strong&gt;clientcache.exe&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Дополнительную информацию можно найти в &lt;a href=&quot;http://support.citrix.com/article/CTX112526&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX112526&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX112526&lt;/a&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;DSMAINT RECREATERADE&lt;/strong&gt;&lt;br/&gt;

Эта утилита используется для воссоздания базы данных клиентских лицензий на сервере XenAPp. База данных называется &lt;strong&gt;radeoffline.mdb&lt;/strong&gt; и лежит в папке &lt;strong&gt;\Program Files\Citrix\Independent Management Architecture &lt;/strong&gt;. Эта база данных присутствует на каждом сервере XenApp в ферме и входит в комплект установки. Для запуска этой утилиты следует остановить службу &lt;strong&gt;Citrix Independent Management Architecture &lt;/strong&gt;, открыть командную строку и выполнить &lt;strong&gt;dsmaint recreaterade &lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;RADECACHE&lt;/strong&gt;&lt;br/&gt;

Эта утилита используется для очистки кэшированных файлов и записей реестра на компьютере клиента. Для запуска - в окне командной строки перейдите в папку &lt;strong&gt;\Program Files\Citrix\Streaming Client &lt;/strong&gt; и выполните команду с таким синтаксисом: &lt;br/&gt;

&lt;strong&gt;radecache &lt;a href=&quot;https://wiki.autosys.tk/citrix/options&quot; class=&quot;wikilink2&quot; title=&quot;citrix:options&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;citrix:options&quot;&gt;options&lt;/a&gt; /flush:”&amp;lt;appname&amp;gt;”&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Options for this command:&lt;br/&gt;

-i = очистить файлы инсталляции и записи реестра&lt;br/&gt;

-if = очистить только файлы инсталляции&lt;br/&gt;

-ir = очистить только записи реестра инсталляции&lt;br/&gt;

-u = очистить файлы пользователя и записи реестра&lt;br/&gt;

-uf = очистить файлы пользователя &lt;br/&gt;

-ur = очистить записи реестра пользователя&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Пример:&lt;br/&gt;

&lt;strong&gt;radecache –i /flush:“adobe”&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;RADEDEPLOY&lt;/strong&gt;&lt;br/&gt;

Утилита используется для предварительной доставки приложений. Эта процедура помогает избежать черезмерной нагрузки на хранилище профилейи приложений и сеть. Во время предварительной доставки, файлы профиля извлекаются и затем исполняются локально и папки &lt;strong&gt;\Program Files\Citrix\Deploy&lt;/strong&gt;. Утилита располагается на диске дистрибутива XenApp и для использования ее надо скопировать в папку, куда установлен Streaming Client. Для запуска используется следующий синтаксис:&lt;br/&gt;

&lt;strong&gt;radedeploy &lt;a href=&quot;https://wiki.autosys.tk/citrix/m&quot; class=&quot;wikilink2&quot; title=&quot;citrix:m&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;citrix:m&quot;&gt;-m&lt;/a&gt; /deploy:“&lt;a href=&quot;file://///server/share/app&quot; class=&quot;windows&quot; title=&quot;\\server\share\app&quot;&gt;\\server\share\app&lt;/a&gt;.profile”&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Указывается имя файла профиля &lt;strong&gt;.profile &lt;/strong&gt;. Если оно имеет пробелы, то должно быть заключено в кавычки. &lt;br/&gt;

&lt;strong&gt;&lt;a href=&quot;https://wiki.autosys.tk/citrix/m&quot; class=&quot;wikilink2&quot; title=&quot;citrix:m&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;citrix:m&quot;&gt;-m&lt;/a&gt; &lt;/strong&gt; - позволяет следить за ходом деплоя. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;radedeploy /enum&lt;br/&gt;


radedeploy /delete:BrowserName&lt;/strong&gt;&lt;br/&gt;

Эта команда используется для удаления приложения из папки &lt;strong&gt;\Program Files\Citrix\Deploy &lt;/strong&gt;. &lt;strong&gt;BrowserName &lt;/strong&gt; соответсвует имени приложения, которое можно найти выполнив &lt;strong&gt;radedeploy /enum &lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Примеры:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;radedeploy /deploy:&lt;a href=&quot;file://///2003Server/packages/adobe/adobe&quot; class=&quot;windows&quot; title=&quot;\\2003Server\packages\adobe\adobe&quot;&gt;\\2003Server\packages\adobe\adobe&lt;/a&gt;.profile&lt;br/&gt;


radedeploy /delete:Adobe&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;RADEMAINT OFFLINELICENSE&lt;/strong&gt;&lt;br/&gt;

Эта утилита используется для управления streaming offline licenses. Она расположена на диске с дистрибутивом XenApp в папке &lt;strong&gt; \Support\debug &lt;/strong&gt;. Скопируйте её на сервер и используйте следующий синтаксис: &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Rademaint OFFLINELICENSE&lt;/strong&gt;&lt;br/&gt;

&lt;strong&gt;/r:username&lt;/strong&gt; – удаляет offline лицензию для указанного пользователя.&lt;br/&gt;

&lt;strong&gt;/l:&lt;a href=&quot;https://wiki.autosys.tk/citrix/username_or&quot; class=&quot;wikilink2&quot; title=&quot;citrix:username_or&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;citrix:username_or&quot;&gt;username (or *)&lt;/a&gt;&lt;/strong&gt; – выводит список лицензий указанного пользователи или для всех &lt;strong&gt;&lt;a href=&quot;https://wiki.autosys.tk/citrix&quot; class=&quot;wikilink2&quot; title=&quot;citrix&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;citrix&quot;&gt;*&lt;/a&gt; &lt;/strong&gt;&lt;br/&gt;

&lt;strong&gt;/s &lt;/strong&gt;– выводит список всех сессий из кэша сессий. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Пример:&lt;br/&gt;

&lt;strong&gt;Rademaint OFFLINELICENSE /r:user1&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0442\u0438\u043b\u0438\u0442\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u0434\u043b\u044f \u0441\u0442\u0440\u0438\u043c\u043c\u0438\u043d\u0433\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0442\u0438\u043b\u0438\u0442\u044b_\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439_\u0441\u0442\u0440\u043e\u043a\u0438_\u0434\u043b\u044f_\u0441\u0442\u0440\u0438\u043c\u043c\u0438\u043d\u0433\u0430_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:180,&amp;quot;range&amp;quot;:&amp;quot;292707-298025&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit181&quot; id=&quot;определение_состояния_серверов_фермы_-_query_farm&quot;&gt;Определение состояния серверов фермы - &amp;#039;&amp;#039;&amp;#039;QUERY FARM&amp;#039;&amp;#039;&amp;#039;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-commands-query-farm-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-commands-query-farm-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-commands-query-farm-v2.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Команда &lt;strong&gt;query &lt;/strong&gt; используется для выводи информации о серверах фермы и фермах. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Синтакс:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; query farm server [/addr | /app | /app appname | /load | /ltload]

query farm [ /tcp ] [ /continue ]

query farm [ /app | /app appname | /disc | /load | /ltload | /lboff | /process]

query farm [/online | /online zonename]

query farm [/offline | /offline zonename]

query farm [/zone | /zone zonename]

query farm [/?]&lt;/pre&gt;

&lt;p&gt;
Параметры&lt;br/&gt;

&lt;strong&gt;appname&lt;/strong&gt;&lt;br/&gt;

 The name of a published application.&lt;br/&gt;

server&lt;br/&gt;

 The name of a server within the farm.&lt;br/&gt;

zonename&lt;br/&gt;

 The name of a zone within the farm.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Options&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;farm&lt;/strong&gt;&lt;br/&gt;

 Displays information about servers within an IMA-based server farm. You can use qfarm as a shortened form of query farm.&lt;br/&gt;

&lt;strong&gt;server /addr&lt;/strong&gt;&lt;br/&gt;

 Displays address data for the specified server.&lt;br/&gt;

&lt;strong&gt;/app&lt;/strong&gt;&lt;br/&gt;

 Displays application names and server load information for all servers within the farm or for a specific server.&lt;br/&gt;

&lt;strong&gt;/app appname&lt;/strong&gt;&lt;br/&gt;

 Displays information for the specified application and server load information for all servers within the farm or for a specific server.&lt;br/&gt;

&lt;strong&gt;/continue&lt;/strong&gt;&lt;br/&gt;

 Do not pause after each page of output.&lt;br/&gt;

&lt;strong&gt;/disc&lt;/strong&gt;&lt;br/&gt;

 Displays disconnected session data for the farm.&lt;br/&gt;

&lt;strong&gt;/load&lt;/strong&gt;&lt;br/&gt;

 Displays server load information for all servers within the farm or for a specific server.&lt;br/&gt;

&lt;strong&gt;/ltload&lt;/strong&gt;&lt;br/&gt;

 Displays server load throttling information for all servers within the farm or for a specific server.&lt;br/&gt;

&lt;strong&gt;/lboff&lt;/strong&gt;&lt;br/&gt;

 Displays the names of the servers removed from load balancing by Health Monitoring &amp;amp; Recovery.&lt;br/&gt;

&lt;strong&gt;/process&lt;/strong&gt;&lt;br/&gt;

 Displays active processes for the farm.&lt;br/&gt;

&lt;strong&gt;/tcp&lt;/strong&gt;&lt;br/&gt;

 Displays TCP/IP data for the farm.&lt;br/&gt;

&lt;strong&gt;/online&lt;/strong&gt;&lt;br/&gt;

 Displays servers online within the farm and all zones. The data collectors are represented by the notation “D.”&lt;br/&gt;

&lt;strong&gt;/online zonename&lt;/strong&gt;&lt;br/&gt;

 Displays servers online within a specified zone. The data collectors are represented by the notation “D.”&lt;br/&gt;

&lt;strong&gt;/offline&lt;/strong&gt;&lt;br/&gt;

 Displays servers offline within the farm and all zones. The data collectors are represented by the notation “D.”&lt;br/&gt;

&lt;strong&gt;/offline zonename&lt;/strong&gt;&lt;br/&gt;

 Displays servers offline within a specified zone. The data collectors are represented by the notation “D.”&lt;br/&gt;

&lt;strong&gt;/zone&lt;/strong&gt;&lt;br/&gt;

 Displays all data collectors in all zones.&lt;br/&gt;

&lt;strong&gt;/zone zonename&lt;/strong&gt;&lt;br/&gt;

 Displays the data collector within a specified zone.&lt;br/&gt;

&lt;strong&gt;/?&lt;/strong&gt;&lt;br/&gt;

 Displays the syntax for the utility and information about the utility’s options.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Remarks&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Запрос &lt;strong&gt;Query farm&lt;/strong&gt; возвращает сведения о IMA-based северах фермы.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для выполнения запросов &lt;strong&gt;Query farm&lt;/strong&gt;нужно входить в группу &lt;strong&gt;Citrix administrators&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0444\u0435\u0440\u043c\u044b - &amp;#039;&amp;#039;&amp;#039;QUERY FARM&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435_\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f_\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432_\u0444\u0435\u0440\u043c\u044b_-_query_farm&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:181,&amp;quot;range&amp;quot;:&amp;quot;298026-300983&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit182&quot; id=&quot;проверка_состояния_data_storage_dscheck&quot;&gt;Проверка состояния data storage DSCHECK&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Команда &lt;strong&gt;dscheck&lt;/strong&gt; используется для проверки и восстановления целостности базы данных data storage. Как правило &lt;strong&gt;dscheck&lt;/strong&gt; необходимо выполнять после запуска &lt;strong&gt;dsmaint&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Синтакс:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;dscheck&lt;/strong&gt; &lt;a href=&quot;https://wiki.autosys.tk/clean&quot; class=&quot;wikilink2&quot; title=&quot;clean&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;clean&quot;&gt;clean&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/mainpage&quot; class=&quot;wikilink1&quot; title=&quot;mainpage&quot; data-wiki-id=&quot;mainpage&quot;&gt;mainpage&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Параметры:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;/clean&lt;/strong&gt; - Утилита попытается исправит найденные ошибки и восстановить целостность базы&lt;br/&gt;

 &lt;br/&gt;

&lt;strong&gt;/?&lt;/strong&gt; - Вывод справки &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Примечания&lt;br/&gt;

&lt;strong&gt;Dscheck&lt;/strong&gt; выполняет ряд тестов, для проверки целостности хранилища фермы. При запуске без параметров выполняется только тестирование базы. Запускать &lt;strong&gt;dscheck &lt;/strong&gt; следует на сервере, имеющем прямой доступ к хранилищу data store. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При запуске с параметром &lt;strong&gt;/clean &lt;/strong&gt;, утилита выполняет тестирование и удаляет некорректные записи (обычно о серверах и приложениях) из базы. Так как вносимые изменения влияют на работоспособность фермы, перед запуском следует выполнять резервное копирование базы. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При запуске с параметром &lt;strong&gt;/clean &lt;/strong&gt; вероятно понадобится обновить локальный кэш на каждом сервере фермы с помощью команды &lt;strong&gt;dsmaint &lt;/strong&gt; с параметром &lt;strong&gt;recreatelhc &lt;/strong&gt;. Запуск этой команды устанавливает параметр реестра &lt;strong&gt;PSRequired &lt;/strong&gt; в значение 1 в ключе &lt;strong&gt;HKLM\SOFTWARE\Wow6432Node\Citrix\IMA\RUNTIME&lt;/strong&gt; или &lt;strong&gt;HKLM\SOFTWARE\Citrix\IMA\RUNTIME &lt;/strong&gt; для 32-бит систем. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Dscheck&lt;/strong&gt; сообщает результаты в журнал Windows и в окно командной строки. Кроме того, вывод можно направить в файл. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Также обновляются некоторые значения параметров монитора производительности, в том числе счетчик ошибок, счетчик ошибок приложений, ошибок групп и общий флаг, указывающий на наличие ошибок. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;dscheck&lt;/strong&gt; возвращает код ошибки “ноль”, при отсутствии ошибок и код ошибки, при их наличии.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Dscheck&lt;/strong&gt; сканирует преимущественно три группы объектов: серверы, приложения и группы. тесты выполняются как для каждой группы объектов, так и для отдельных записей. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Примеры:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Только проверка целостности: &lt;br/&gt;

&lt;strong&gt;dscheck&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Проверка и исправление ошибок:&lt;br/&gt;

&lt;strong&gt;dscheck /clean&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f data storage DSCHECK&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430_\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f_data_storage_dscheck&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:182,&amp;quot;range&amp;quot;:&amp;quot;300984-304256&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit183&quot; id=&quot;управление_профилями_пользователей&quot;&gt;6.4 - Управление профилями пользователей&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-sou/upm-use-cases.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-sou/upm-use-cases.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/user-profile-manager-sou/upm-use-cases.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Citrix Profile management&lt;/strong&gt; предназначен для управления профилями пользователей при разных сценариях использования, не зависимо от того как доставляются приложения. Вот примеры таких сценариев: &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Citrix XenApp with published applications&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Citrix XenApp with published desktops&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Citrix XenApp with applications streamed into an isolation environment&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Applications streamed to XenDesktop virtual desktops&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Applications installed on XenDesktop virtual desktops&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Applications streamed to physical desktops&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Applications installed locally on physical desktops&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вероятны следующие варианты:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Проблема множественных сессий&lt;/strong&gt;. Пользователь получает доступ к нескольким серверам XenApp и таким образом работает в нескольких открытых сессиях. &lt;br/&gt;

 &lt;strong&gt;Проблема “последней записи” и перемещаемые профили&lt;/strong&gt;. Вследствие того, что последняя запись в профиль пользователя перезаписывает все настройки профиля, в перемещаемый профиль могут не сохраниться данные из нескольких открытых сессий, т.к. они будут перезаписан “последней записью”. Кроме того, данные могут не быть записаны в результате сбоя сети или хранилища. &lt;br/&gt;

 &lt;strong&gt;Проблема большого размера профиля&lt;/strong&gt;. При большом размере профиля требуется время для его скачивания на компьютер пользователя, а это увеличивает время входа. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;6.4 - \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u044f\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043f\u0440\u043e\u0444\u0438\u043b\u044f\u043c\u0438_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:183,&amp;quot;range&amp;quot;:&amp;quot;304257-306450&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit184&quot; id=&quot;множественные_сессии&quot;&gt;Множественные сессии&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В крупных инсталляциях бывает необходимо, чтобы у пользователя было открыто несколько сессий на разных серверах, например - для одновременного доступа к приложениям, опубликованным на разных серверах или даже в разных фермах. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Там, где возможно, Citrix рекомендует изолировать приложения (стриммить) и пытаться сделать так, чтобы все приложения пользователя размещались на одном сервере и у каждого пользователя при работе была только одна сессия. &lt;br/&gt;

Если выясняется, что пользователям придется иметь более одной сессии, то нужно подготовить к этому профили. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Например. Пользователь запускает приложения AppA, AppB и AppC и подключается к Server 1, Server 8 и Server 12 соотвественно. При входе на каждый сервер, профиль пользователя скачивается на сервер и папки перенаправляются в сессию каждом сервере. При работе с приложением AppA на Server1, пользователь меняет Setting1 и завершает сессию. Затем завершает сессии с другими приложениями. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При выходе, изменения, сделанные в сессии на Server 1 перезаписываются настройками из сессий других серверов. При последующем открытии приложения AppA, пользователь не увидит изменений настроек, т.к. они были перезаписаны. &lt;br/&gt;

&lt;strong&gt;Profile management &lt;/strong&gt; может решить большую часть таких проблем. &lt;strong&gt;Profile management &lt;/strong&gt; позволяет записывать только конкретные изменения в профиль, а не перезаписывать его целиком. Таким образом, вероятным остается только конфликт, когда параметр Setting1 будет изменен в двух сессиях одновременно. Хотя и в этом случае, при использовании &lt;strong&gt;Profile management&lt;/strong&gt; будут сохранены последние изменения. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0441\u0435\u0441\u0441\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435_\u0441\u0435\u0441\u0441\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:184,&amp;quot;range&amp;quot;:&amp;quot;306451-309252&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit185&quot; id=&quot;проблема_последней_записи_и_целостность_перемещаемых_профилей&quot;&gt;Проблема &amp;quot;последней записи&amp;quot; и целостность перемещаемых профилей&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Этот сценарий аналогичен &lt;strong&gt;множественным сессиям&lt;/strong&gt;. Проблемы “последней записи” могут возникать по разным причинам и могут обостряться по мере роста количества клиентских устройств, которые использует пользователь. &lt;br/&gt;

Из-за того, что в перемещаемыом профиле перезаписываются все пользовательские данные, за исключением перенаправленных папок, размер профиля может расти довольно быстро. Таким образом не только увеличивается время входа в систему и выхода из нее, но и возрастает вероятность повреждения профиля, особенно в случае нестабильной сети. &lt;br/&gt;

&lt;strong&gt;Profile management&lt;/strong&gt; позволяет выделить из профиля необходимые часто обновляемые данные и  таким образом уменьшить размер профиля до минимального размера. Благодаря тому, что в профиль записываются только изменения, время требуемое для выхода пользователя из системы существенно сокращается. &lt;strong&gt;Profile management &lt;/strong&gt; может быть очень полезен для приложений, которые используют профили для хранения временных данных, но не удаляют их при закрытии приложения.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \&amp;quot;\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0437\u0430\u043f\u0438\u0441\u0438\&amp;quot; \u0438 \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0435\u043c\u044b\u0445 \u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430_\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439_\u0437\u0430\u043f\u0438\u0441\u0438_\u0438_\u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u044c_\u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0435\u043c\u044b\u0445_\u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:185,&amp;quot;range&amp;quot;:&amp;quot;309253-311203&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit186&quot; id=&quot;о_типах_профилей&quot;&gt;О типах профилей&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-sou/upm-about-profiles.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/user-profile-manager-sou/upm-about-profiles.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/user-profile-manager-sou/upm-about-profiles.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Профиль пользователя Windows - это набор папок, файлов, записей реестра, и параметров конфигурации,  которые задают параметры пользовательского окружения при входе в систему с конкретной учетной записью. Эти параметры могут быть настроены пользователем, в соответствии с административными установками. Примеры конфигурируемых параметров:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Настройки рабочего стола - фон и заставка. &lt;br/&gt;

 Ярлыки и параметры меню “Пуск”.&lt;br/&gt;

 Папка “Избранное” и домашняя страница обозревателя&lt;br/&gt;

 Подпись Microsoft Outlook&lt;br/&gt;

 Принтеры&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Некоторые параметры могут быть переданы средствами перенаправления папок, но если перенаправление папок отключено, то параметры будут сохраняться в профиле. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Типы профилей:&lt;/strong&gt;&lt;br/&gt;

&lt;strong&gt;&lt;br/&gt;

Локальный&lt;/strong&gt;. Данные хранятся на локальном устройстве. Конфигурация хранится на локальном устройстве. Приложения хранят данные только на локальном устройстве. Изменения сохраняются.&lt;br/&gt;

 &lt;br/&gt;

&lt;strong&gt;Перемещаемый (Roaming)&lt;/strong&gt;. Данные хранятся на сетевом ресурсе. Параметры конфигурации хранятся в Active Directory. Приложения хранят данные на любом доступном ресурсе. Изменения сохраняются.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Принудительный (Mandatory Roaming)&lt;/strong&gt;. Данные хранятся на сетевом ресурсе. Параметры конфигурации хранятся в Active Directory. Приложения хранят данные на любом доступном ресурсе. Изменения НЕ сохраняются.&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;\\&lt;/pre&gt;

&lt;p&gt;
&lt;strong&gt;Временный (Temporary)&lt;/strong&gt;. Данные нигде не хранятся. Параметры нигде не хранятся. Приложения хранят данные только на локальном устройстве. Изменения НЕ сохраняются.&lt;br/&gt;

 Временный профиль используется только в случаях, когда никакой другой тип профиля не может быть использован. У каждого пользователя есть свой отдельный профиль, за исключением случаев, когда используются принудительные профили (Mandatory Roaming), которые не позволяют пользователям сохранять изменения. &lt;br/&gt;

Если пользователь работает со Службами удаленного рабочего стола (Remote Desktop Services) и в то же время работает локально, то во избежание конфликтов между профилем, используемым в локальной сессии и профилем, используемым в сессии RDP, для сессий RDP могут быть назначены либо специально созданные перемещаемые (roaming), либо принудительные (mandatory) профили.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e \u0442\u0438\u043f\u0430\u0445 \u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e_\u0442\u0438\u043f\u0430\u0445_\u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:186,&amp;quot;range&amp;quot;:&amp;quot;311204-315092&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit187&quot; id=&quot;версии_профилей_-_version_1_и_version_2&quot;&gt;Версии профилей - Version 1 и Version 2&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Профили, используемые в Microsoft Windows XP и Windows Server 2003 известны как профили версии 1 (Version 1). Пофили в Windows Vista, Windows 7, Windows Server 2008 и Windows Server 2008 R2 имеют версию 2 (Version 2). Структура папок этих версий профилей различается.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В более новых операционных системах структура папок профиля была изменена для того чтобы изолировать данные пользователя и данные приложений. Профили версии 1 хранили данные в корневой папке Documents and Settings. Профили версии 2 хранят данные в более интуитивно понятной папке Users. Например содержимое папки &lt;strong&gt;AppData\Local&lt;/strong&gt; в Windows Vista это тоже самое что &lt;strong&gt;Documents and Settings\&amp;lt;username&amp;gt;\Local Settings\Application Data &lt;/strong&gt; в Windows XP.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
For more information about the differences between Version 1 and Version 2 profiles, see&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0435\u0440\u0441\u0438\u0438 \u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439 - Version 1 \u0438 Version 2&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0435\u0440\u0441\u0438\u0438_\u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439_-_version_1_\u0438_version_2&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:187,&amp;quot;range&amp;quot;:&amp;quot;315093-316333&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit188&quot; id=&quot;раздел_7_мониторинг_и_управление_распределением_нагрузки&quot;&gt;Раздел 7. Мониторинг и управление распределением нагрузки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 7. \u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u043c \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_7_\u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433_\u0438_\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u043c_\u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:188,&amp;quot;range&amp;quot;:&amp;quot;316334-316453&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit189&quot; id=&quot;оценщики_нагрузки_-_default_advanced_и_custom&quot;&gt;7.1 - Оценщики нагрузки - Default, Advanced и Custom&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-wrapper-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-wrapper-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-wrapper-v2.html&lt;/a&gt;&lt;br/&gt;

Для эффективного использования ресурсов фермы, в состав XenApp вхояд средства мониторинга и оценки нагрузки. &lt;br/&gt;

XenApp расчитывает нагрузку на серверы с помощью оценщиков (evaluators) и правил. Каждый оценщик нагрузки содердит одно или более правил. Каждое правило задает диапазон рабочих параметров для сервера или приложения, к которым привязан оценщик.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В состав XenApp входят следующие типы оценщиков нагрузки:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Default&lt;/strong&gt; (по-умолчанию) - XenApp привязывает данный тип оценщика к каждому серверу. Этот оценщик содержит два правила - &lt;strong&gt;Server User&lt;/strong&gt;, которое сообщает о полной нагрузке при входе 100 на сервер и &lt;strong&gt;Load Throttling&lt;/strong&gt;, который задает какую долю нагрузки на сервер могут составлять процедуры входа и ограничивает количество одновременно входящих пользователй на сервер. &lt;br/&gt;

 &lt;strong&gt;Advanced&lt;/strong&gt; - Этот оценщик нагрузки содержит правила, которые задают предельную нагрузку на процессор, на использование памяти, на использование файла подкачки и регуляторы нагрузки (Load Throttling).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При запуске приложения пользователем, клиент Citrix связывается с сервером фермы и получает адрес сервера, на котором есть нужное приложение. XenApp поддерживает в актуальном состоянии список опубликованных приложений и серверов фермы и при получении запроса от клиента, XenApp выбирает наименее загруженный сервер и возвращает его адрес клиенту. Клиент запускает сессию на выбранном сервере и запускает приложение. &lt;br/&gt;

XenAPp вычисляет нагрузку на сервер используя оценщики нагрузки, привязанные к серверу или приложению. Если хотя бы по одному правилу из привязанных оценщиков сервер оказывается полностью нагруженным (превышаются заданные лимиты), XenApp исключает этот сервер из списка серверов, доступных клиентам. Следующий запрос клиента на соединение ICA перенаправляется к следующему доступному серверу из списка.&lt;br/&gt;

 &lt;br/&gt;

&lt;strong&gt;Работа с оценщиками нагрузки&lt;/strong&gt;&lt;br/&gt;

Для начала работы c оценщиками нагрузки в AppCenter следует выбрать ноду &lt;strong&gt;Load Evaluators&lt;/strong&gt; в левой панели. Откроются следующие вкладки:&lt;br/&gt;

 &lt;strong&gt;Load Evaluators&lt;/strong&gt;  - отображает список всех оценщиков нагрузки, созданных для данной фермы. При выборе какого-либо оценщика, внизу появляются сведения о текущих правилах, входящих в его состав. &lt;br/&gt;

 &lt;strong&gt;Usage by Application&lt;/strong&gt; - отображает оценщики, привязанные к приложениям, опубликованным на ферме. &lt;br/&gt;

 &lt;strong&gt;Usage by Server&lt;/strong&gt; - отображает оценщики, привязанные к серверам фермы. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Примечания:&lt;/strong&gt;&lt;br/&gt;

При использовании оценщиков нагрузки следует учитывать следующее:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Изменять установленные по-умолчанию оценщики Default и Advanced нельзя ни удалить, ни изменить.&lt;br/&gt;

 - Нельзя удалить или изменить существующие правила (в оценщиках по-умолчанию). Также нельзя создать дополнительные правила. &lt;br/&gt;

 - Каждому серверу или приложению можно привязать только один оценщик производительности. &lt;br/&gt;

 - Для привязки оценщиков нагрузки используется механизм Групповой политики. Оценщики нагрузки можно привязывать к отдельным приложениям. &lt;br/&gt;

 - Каждый сервер фермы XenApp учитывается при балансировке нагрузки до того момента, как он сообщит о полной нагрузке. Если сервер сообщает о полной загрузке, он исключается из механизма балансировки, до того момента, как нагрузка не него не снизится. После снижения нагрузки сервер автоматически возвращается в список доступных серверов. Таким образом, сервера постоянно исключаются и добавляются в список доступных по мере изменения нагрузки на ферму. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;7.1 - \u041e\u0446\u0435\u043d\u0449\u0438\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 - Default, Advanced \u0438 Custom&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0446\u0435\u043d\u0449\u0438\u043a\u0438_\u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438_-_default_advanced_\u0438_custom&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:189,&amp;quot;range&amp;quot;:&amp;quot;316454-322565&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit190&quot; id=&quot;список_правил_оценщиков_нагрузки&quot;&gt;Список правил оценщиков нагрузки&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-rules-list.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-rules-list.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-rules-list.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В XenApp используются следующие правила для оценки нагрузки:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Application User Load&lt;/strong&gt; - Ограничивает количество пользователей, которым разрешено подключаться к данному опубликованному приложению. Это правило следит за количеством активных сессий ICA, в которых запущено приложение. По умолчанию, о полной нагрузке сообщается, когда 100 пользователей используют приложение.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Context Switches&lt;/strong&gt; - Задает диапазон количества переключений контекста в секунду для данного сервера. Переключение контекста происходит когда операционная система переключается с одного процесса на другой. Значение по-умолчанию для полной нагрузки составляет 16000. При значениях ниже 900 это правило игнорируется. Для получения данных это правило использует системный счетчик прозводительности - &lt;strong&gt;System: Context Switches/sec &lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;CPU Utilization&lt;/strong&gt; - Задает диапазон загрузки процессора сервера. По-умолчанию о полной загрузке сообщается при загрузке 90 процентов. Правило игнорируется при загрузке 10 и менее процентов. Это правило использует системный счетчик производительности - &lt;strong&gt;Processor: % Processor Time &lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Disk Data I/O&lt;/strong&gt; - Задает диапазон скорости передачи данных в килобайтах в секунду. По-умолчанию полной загрузке соответствует скорость 32767 килобайт в секунду. Правило игнорируется при скорости 0 килобайт в секунду. Это правило использует системный счетчик производительности &lt;strong&gt;PhysicalDisk: Disk Bytes/sec &lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Disk Operations&lt;/strong&gt;&lt;br/&gt;

 Defines a range of disk operation, in read/write cycles per second, for a selected server. The default full load value is 100 operations per second. The default no load value is 0—at that value this rule is ignored. This rule uses the PhysicalDisk: Disk Writes/sec and Disk Reads/sec performance counters to determine load.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;IP Range&lt;/strong&gt;&lt;br/&gt;

 Defines a range of allowed or denied client IP addresses for a published application. It controls access to a published application based on the IP addresses of the clients. You can define ranges of IP addresses, then select to allow or deny access if the client IP addresses are within the defined ranges.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 This rule must be used in conjunction with another.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Load Throttling&lt;/strong&gt;&lt;br/&gt;

 Limits the number of concurrent connection attempts that a server handles. This prevents the server from failing when many users try to connect to it simultaneously. The default setting (High impact) assumes that logons affect server load significantly. This rule affects only the initial logon period, not the main part of a session.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 The Load Throttling rule can be applied only to a server, not to an individual application.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Memory Usage&lt;/strong&gt;&lt;br/&gt;

 Defines a range of memory usage by a server. The default full load value is 90. The default no load value is 10—at that value this rule is ignored. This rule uses the Memory: % Committed Bytes in Use performance counter to determine load.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Page Fault&lt;/strong&gt;&lt;br/&gt;

 Defines a range of page faults per second for a selected server. A page fault occurs when the operating system tries to access data that was moved from physical memory to disk. The default full load value is 2000. The default no load value is 0—at that value this rule is ignored. This rule uses the Memory: Page Faults/sec performance counter to determine load.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Page Swaps&lt;/strong&gt;&lt;br/&gt;

 Defines a range of page swaps per second for a selected server. A page swap occurs when the operating system moves data between physical memory and the swap file. The default full load value is 100. The default no load value is 0—at that value this rule is ignored. This rule uses the Memory: Pages/sec performance counter to determine load.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Scheduling&lt;/strong&gt;&lt;br/&gt;

 Schedules the availability of selected servers or published applications. This rule sets the weekly days and hours during which the server or published application is available to users and can be load managed.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Server User Load&lt;/strong&gt;&lt;br/&gt;

 Limits the number of users allowed to connect to a selected server. The default full load value is 100 and represents the maximum number of users the system can support on a server. Load Manager user loads are calculated using active ICA sessions only.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u0440\u0430\u0432\u0438\u043b \u043e\u0446\u0435\u043d\u0449\u0438\u043a\u043e\u0432 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_\u043f\u0440\u0430\u0432\u0438\u043b_\u043e\u0446\u0435\u043d\u0449\u0438\u043a\u043e\u0432_\u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:190,&amp;quot;range&amp;quot;:&amp;quot;322566-327873&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit191&quot; id=&quot;привязка_оценщиков_нагрузки_к_приложению_или_серверу&quot;&gt;7.2 - Привязка оценщиков нагрузки к приложению или серверу&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-using-attach-loadval-all.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-using-attach-loadval-all.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/lm-using-attach-loadval-all.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для управления нагрузкой, к каждому серверу и каждому приложению должен быть привязан оценщик нагрузки. К каждому серверу или приложению можно привязать только единственный оценщик нагрузки. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы привязать к серверу XenApp оценщик нагрузки нужно сконфигурировать политику, содержащую параметр &lt;strong&gt;Load Evaluator Name&lt;/strong&gt;, в котором указано имя используемого оценщика нагрузки, а затем установить фильтр по &lt;strong&gt;worker group&lt;/strong&gt; или по серверу, куда входит сервер. Назначить можно люоой оценщик нагрузки, сконфигурированный для фермы. &lt;br/&gt;

Например, если есть опубликованное приложение, которое использует значительный объем памяти сервера и вычислительных ресурсов, то к политике можно добавить параметр &lt;strong&gt;Load Evaluator Name&lt;/strong&gt;, указав &lt;strong&gt;Advanced load evaluator&lt;/strong&gt; и установить фильтр по worker group, в который входят все сервера XenApp, на которых опубликовано данное приложение. В результате, XenApp распределит доступную память и вычислительные мощности в зависимости от потребностей.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Во время работы с оценщиками нагрузки, XenApp не проверяет имя оценщика в момент применения его параметров к сессии пользователя. Таким образом, если оценщик нагрузки впоследствии будет переименован или удален, то оценка нагрузки производиться не будет, а в журнале будет зафиксирована ошибка и сервера, попавшие в такую ситуацию будут сообщать о полной загрузке (индекс загрузкти будет равен 10000). Кроме того, вкладка &lt;strong&gt;Usage by Server&lt;/strong&gt; в разделе &lt;strong&gt;Load Evaluators&lt;/strong&gt; не показывает, что оценщик нагрузки привязан. Для того чтобы убедиться, что в политике указано правильное имя оценщика нагрузки нужно отредактировать параметр политики &lt;strong&gt;Load Evaluator Name &lt;/strong&gt; и указать имя оценщика. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если указанный в настройках политики оценщик удален и никакой другой политики с указанием оценщика не задано, то XenApp будет применять &lt;strong&gt;Default load evaluator&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы привязать оценщик нагрузки к серверу:&lt;br/&gt;

 - Создайте новую политику &lt;strong&gt;Computer policy &lt;/strong&gt; или выберите существующую.&lt;br/&gt;

 - В списке параметров найдите &lt;strong&gt;Load evaluator name&lt;/strong&gt; (в разделе Server Settings) и кликните &lt;strong&gt;Add&lt;/strong&gt;.&lt;br/&gt;

 - Из выпадающего списка выберите оценщик нагрузки и кликните ОК.&lt;br/&gt;

 - Добавьте фильтр по &lt;strong&gt;Worker Group&lt;/strong&gt; и укажите worker group, в который входят серверы, которым привязываем оценщика.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы привязать оценщик нагрузки к опубликованному приложению: &lt;br/&gt;

 - В AppCenter в левой части окна выберите раздел &lt;strong&gt;Applications&lt;/strong&gt;.&lt;br/&gt;

 - Выберите опубликованное приложение, к которому надо привязать оценщик нагрузки. &lt;br/&gt;

 - На панели действий (справа) или кликнув правой кнопкой по приложению, в меню &lt;strong&gt;Other Tasks&lt;/strong&gt; выберите &lt;strong&gt;Attach application to load evaluator&lt;/strong&gt;.&lt;br/&gt;

 - В диалоговом окне выберите необходимый оценщик нагрузки.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;7.2 - \u041f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 \u043e\u0446\u0435\u043d\u0449\u0438\u043a\u043e\u0432 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e \u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430_\u043e\u0446\u0435\u043d\u0449\u0438\u043a\u043e\u0432_\u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438_\u043a_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e_\u0438\u043b\u0438_\u0441\u0435\u0440\u0432\u0435\u0440\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:191,&amp;quot;range&amp;quot;:&amp;quot;327874-332687&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit192&quot; id=&quot;установка_новых_драйверов_принтеров&quot;&gt;8.3 - Установка новых драйверов принтеров.&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-network-configuring.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-network-configuring.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-network-configuring.html&lt;/a&gt;&lt;br/&gt;

В случае отсутствия драйвера принтера на сервере его не удастся автоматически прописать в сессии пользователя. &lt;br/&gt;

Добавить драйвер принтера в Windows можно так:&lt;br/&gt;

 - Установить принтер вручную, с помощью мастера &lt;strong&gt;Добавление принтера&lt;/strong&gt;, либо обнаружив принтер на соответствующем сервере в Проводнике, дважды кликнув по нему. Драйвер принтера установится в локальное хранилище драйверов Windows. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;8.3 - \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043d\u043e\u0432\u044b\u0445 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u043d\u043e\u0432\u044b\u0445_\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:192,&amp;quot;range&amp;quot;:&amp;quot;332688-333583&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit193&quot; id=&quot;раздел_9_включение_безопасного_web-доступа_к_опубликованным_приложениям&quot;&gt;Раздел 9. Включение безопасного Web-доступа к опубликованным приложениям&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 9. \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e Web-\u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_9_\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e_web-\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u043a_\u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u043c_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:193,&amp;quot;range&amp;quot;:&amp;quot;333584-333727&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit194&quot; id=&quot;конфигурирование_обработки_отказов_и_дополнительных_параметров_в_настройках_web-интерфейса_wi&quot;&gt;9.1 Конфигурирование обработки отказов и дополнительных параметров в настройках WEb-интерфейса (WI)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;9.1 \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0442\u043a\u0430\u0437\u043e\u0432 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 WEb-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 (WI)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438_\u043e\u0442\u043a\u0430\u0437\u043e\u0432_\u0438_\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432_\u0432_\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_wi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:194,&amp;quot;range&amp;quot;:&amp;quot;333728-333915&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit195&quot; id=&quot;конфигурирование_обработки_отказов&quot;&gt;Конфигурирование обработки отказов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-fault-tolerance-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-fault-tolerance-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-fault-tolerance-gransden.html&lt;/a&gt;&lt;br/&gt;

We-интерфейс предусматривает обработку отказов серверов фермы, на которых исполняется &lt;strong&gt;Citrix XML Service&lt;/strong&gt;, перечисляющий опубликованные приложения. В консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt; в правой части окна расположен список задач. обработка отказов настраивается в задаче &lt;strong&gt;Server Farms&lt;/strong&gt;. В случае невозможности соединиться с заданным сервером, WI отложит попытки связи с вышедшим из строя сервером на время, указанное в параметре &lt;strong&gt;Bypass any failed server for&lt;/strong&gt; и будет пытаться соединиться с другими серверами, указанными с списке. &lt;br/&gt;

По-умолчанию, отказавший сервер не опрашивается в течение часа. Если вышили из строя все серверы, указанные в списке - Web-Интерфейс XenApp будет повторять попытки соединиться каждые 10 секунд.&lt;br/&gt;

Чтобы настроить обработку отказов Citrix XML Service:&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Server Farms&lt;/strong&gt;.&lt;br/&gt;

 - Выберите настраиваемую ферму и кликните &lt;strong&gt;Edit&lt;/strong&gt;, или добавьте новую - &lt;strong&gt;Add&lt;/strong&gt;.&lt;br/&gt;

 - В списке серверов с помощью кнопок &lt;strong&gt;Move Up&lt;/strong&gt; и &lt;strong&gt;Move Down&lt;/strong&gt; расположите сервера, на которых исполняется &lt;strong&gt;Citrix XML Service&lt;/strong&gt;, в порядке приоритета.&lt;br/&gt;

 - В поле &lt;strong&gt;Bypass any failed server for&lt;/strong&gt; задайте время, на которое отказавший сервер будет исключен из списка опрашиваемых.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0442\u043a\u0430\u0437\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438_\u043e\u0442\u043a\u0430\u0437\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:195,&amp;quot;range&amp;quot;:&amp;quot;333916-336487&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit196&quot; id=&quot;дополнительные_параметры&quot;&gt;Дополнительные параметры&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-advanced-settings-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-advanced-settings-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-advanced-settings-gransden.html&lt;/a&gt;&lt;br/&gt;

Среди дополнительных параметров можно настроить опрос сокетов - &lt;strong&gt;socket pooling&lt;/strong&gt; и перенаправление контента - &lt;strong&gt;content redirection&lt;/strong&gt;, указать тайм-аут Citrix XML Service и количество попыток получить данные от Citrix XML Service, прежде чем признать отказ сервиса. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:196,&amp;quot;range&amp;quot;:&amp;quot;336488-337085&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit197&quot; id=&quot;включение_опроса_сокетов_-_socket_pooling&quot;&gt;Включение опроса сокетов - &amp;#039;&amp;#039;&amp;#039;socket pooling&amp;#039;&amp;#039;&amp;#039;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При включении опроса сокетов - &lt;strong&gt;socket pooling&lt;/strong&gt;, WI поддерживает определенный пул созданных сокетов, всесто того, чтобы создавать сокет при каждом новом подключении. Включение &lt;strong&gt;socket pooling&lt;/strong&gt; повыщает производительность, особенно при использовании SSL.&lt;br/&gt;

&lt;strong&gt;Socket pooling&lt;/strong&gt; поддерживается только для сайтов, на которых настроена аутентификация &lt;strong&gt;At Web Interface&lt;/strong&gt; или &lt;strong&gt;At Access Gateway&lt;/strong&gt;. На таких сайтах &lt;strong&gt;Socket pooling&lt;/strong&gt; включен по-умолчанию. &lt;strong&gt;Socket pooling&lt;/strong&gt; не следует включать, если WI настроен на работу с &lt;strong&gt;XenApp for UNIX&lt;/strong&gt;.&lt;br/&gt;

Чтобы настроить &lt;strong&gt;Socket pooling&lt;/strong&gt;:&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Server Farms&lt;/strong&gt;.&lt;br/&gt;

 - Нажмите кнопку &lt;strong&gt;Advanced&lt;/strong&gt;.&lt;br/&gt;

 - Поставьте (чтобы включить) или снимите галочку в поле &lt;strong&gt;Socket pooling&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To enable content redirection&lt;br/&gt;

You can use the Server Farms task in the Citrix Web Interface Management console to enable and disable content redirection from plug-in to server for individual XenApp Services sites. This setting overrides any content redirection settings configured for XenApp.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
When you enable content redirection from plug-in to server, users running the Citrix online plug-in open online content and local files with applications delivered from servers. For example, a Citrix online plug-in user who receives an email attachment in a locally running email program opens the attachment in an online application. When you disable content redirection, users open online content and local files with locally installed applications.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
By default, content redirection is enabled from plug-in to server for XenApp Services sites.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
You configure content redirection from plug-in to server by associating applications with file types. For more information about file type association, see XenApp Administration.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
On the Windows Start menu, click All Programs &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management.&lt;br/&gt;

In the left pane of the Citrix Web Interface Management console, click XenApp Services Sites and select your site in the results pane.&lt;br/&gt;

In the Action pane, click Server Farms.&lt;br/&gt;

Click Advanced.&lt;br/&gt;

In the Content Redirection area, select the Enable content redirection check box.&lt;br/&gt;

To configure Citrix XML Service communication&lt;br/&gt;

By default, contact with the Citrix XML Service times out after one minute and the service is considered failed after two unsuccessful attempts are made to communicate with it. You can change these default settings using the Server Farms task in the Citrix Web Interface Management console.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
On the Windows Start menu, click All Programs &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management.&lt;br/&gt;

In the left pane of the Citrix Web Interface Management console, click XenApp Web Sites or XenApp Services Sites, as appropriate, and select your site in the results pane.&lt;br/&gt;

In the Action pane, click Server Farms.&lt;br/&gt;

Click Advanced.&lt;br/&gt;

To configure the Citrix XML Service time-out duration, enter appropriate values in the Socket timeout boxes.&lt;br/&gt;

To specify how many attempts are made to contact the Citrix XML Service before it is considered failed and is bypassed, enter a value in the Attempts made to contact the XML Service box.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043e\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u043a\u0435\u0442\u043e\u0432 - &amp;#039;&amp;#039;&amp;#039;socket pooling&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043e\u043f\u0440\u043e\u0441\u0430_\u0441\u043e\u043a\u0435\u0442\u043e\u0432_-_socket_pooling&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:197,&amp;quot;range&amp;quot;:&amp;quot;337086-341112&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit198&quot; id=&quot;раздел_8конфигурирование_печати&quot;&gt;Раздел 8: Конфигурирование печати&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 8: \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0435\u0447\u0430\u0442\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_8\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043f\u0435\u0447\u0430\u0442\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:198,&amp;quot;range&amp;quot;:&amp;quot;341113-341187&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit199&quot; id=&quot;драйверы_принтеров&quot;&gt;8.1 - Драйверы принтеров&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;8.1 - \u0414\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:199,&amp;quot;range&amp;quot;:&amp;quot;341188-341239&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit200&quot; id=&quot;какой_драйвер_принтера_использовать_upd_native_other&quot;&gt;Какой драйвер принтера использовать?(UPD, native, other)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-policies-universal-printing.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-policies-universal-printing.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-policies-universal-printing.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a\u043e\u0439 \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c?(UPD, native, other)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a\u043e\u0439_\u0434\u0440\u0430\u0439\u0432\u0435\u0440_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u0430_\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c_upd_native_other&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:200,&amp;quot;range&amp;quot;:&amp;quot;341240-341443&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit201&quot; id=&quot;политики_печати_-_universal_printing_policy_settings&quot;&gt;Политики печати - Universal Printing Policy Settings&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В данном разделе описаны параметры политик, используемые для настройки печати. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u043f\u0435\u0447\u0430\u0442\u0438 - Universal Printing Policy Settings&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438_\u043f\u0435\u0447\u0430\u0442\u0438_-_universal_printing_policy_settings&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:201,&amp;quot;range&amp;quot;:&amp;quot;341444-341668&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit202&quot; id=&quot;universal_printing_emf_processing_mode&quot;&gt;Universal printing EMF processing mode&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Этот параметр определяет метод обработки файла EMF spool на пользовательском устройстве Windows. По-умолчанию, записи EMF направляются сразу на принтер.&lt;br/&gt;

Этот параметр имеет следующие варинты значений:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Reprocess EMFs for printer&lt;/strong&gt; - предписывает принудительно обрабатывать файл EMF и посылать его на принтер через подсистему GDI пользовательского устройства. Этот параметр можно использовать с драйверами, которые требуют постобработки EMF, но могут не быть автоматичсеки выбраны в сессии. &lt;br/&gt;

 &lt;strong&gt;Spool directly to printer&lt;/strong&gt; - при использовании Citrix Universal Printer driver, обеспечивает помещение в очередь и перердачу данных EMF на пользовательское устройство для последующей обработки. Обычно файлы EMF направляются напрямую в очередь печати клиентского устройства. Для устройств поддерживающих формат EMF этот метод обеспечивает наибольшее быстродействие.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Universal printing EMF processing mode&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;universal_printing_emf_processing_mode&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:202,&amp;quot;range&amp;quot;:&amp;quot;341669-343204&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit203&quot; id=&quot;universal_printing_image_compression_limit&quot;&gt;Universal printing image compression limit&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Этот параметр задает максимальное качество и минимальный уровень сжатия для изображений, печатаемых через Universal Printer driver. По-умолчанию уровень сжатия установлен в значение &lt;strong&gt;Best quality (lossless compression)&lt;/strong&gt;. Если выбрано значение &lt;strong&gt;No Compression &lt;/strong&gt;, то сжатие отключено только для печати через EMF.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Параметр имеет следующие варианты значений:&lt;br/&gt;

 No compression&lt;br/&gt;

 Best quality (lossless compression)&lt;br/&gt;

 High quality&lt;br/&gt;

 Standard quality&lt;br/&gt;

 Reduced quality (maximum compression)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При добавлении этого параметра к политике следует учитывать следующее: &lt;br/&gt;

 - Если уровень сжатия в параметре &lt;strong&gt;Universal printing image compression limit &lt;/strong&gt; меньше, чем уровень сжатия, заданный в &lt;strong&gt;Universal printing optimization defaults &lt;/strong&gt;, то используется уровень сжатия заданный в &lt;strong&gt;Universal printing image compression limits &lt;/strong&gt;.&lt;br/&gt;

 - Если сжатие отключено, то параметры &lt;strong&gt;Desired image quality &lt;/strong&gt; и  &lt;strong&gt;Enable heavyweight compression &lt;/strong&gt; в памаетре политики &lt;strong&gt;Universal printing optimization defaults &lt;/strong&gt; не действуют.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Universal printing image compression limit&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;universal_printing_image_compression_limit&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:203,&amp;quot;range&amp;quot;:&amp;quot;343205-344720&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit204&quot; id=&quot;universal_printing_optimization_defaults&quot;&gt;Universal printing optimization defaults&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Эта политика задает параметры по-умолчанию для оптимизации печати, если в сессии используется драйвер Universal Printer.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Desired image quality&lt;/strong&gt; - задает уровень сжатия для universal printing. По-умолчанию устанавливается значение Standard Quality, что позволяет печатать со сжатием, обеспечивающим стандартное или более низкое качество. При этом, параметр &lt;strong&gt;Universal printing image compression limit&lt;/strong&gt; перекрывает данные значения. Например - если по-умолчанию задано &lt;strong&gt;Best Quality&lt;/strong&gt;,  а &lt;strong&gt;Universal printing image compression limit&lt;/strong&gt; установлен в значение &lt;strong&gt;Standard Quality&lt;/strong&gt;, пользователи смогу печатать только со стандартным качеством или ниже стандартного.&lt;br/&gt;

 &lt;strong&gt;Enable heavyweight compression&lt;/strong&gt; - включает или отключает мощный алгоритм сжатия без потери качества. По-умолчанию - отключено. &lt;br/&gt;

 &lt;strong&gt;Image and Font Caching&lt;/strong&gt; - параметр включает или отключает кеширование часто встречающихся изображений и шрифтов, предотвращая многократную передачу часто используемых фрагментов. По-умолчанию - встроенные изображения и шрифты кешируются. Этот параметр работает только с устройствами, поддерживающими данную функцию.&lt;br/&gt;

 &lt;strong&gt;Allow non-administrators to modify these settings&lt;/strong&gt; - разрешает или запрещает пользователям изменять настройки уровня оптимизации при печати в сессии. По-умолчанию - пользователям не разрешается менять настройки.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit205&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание - Эти параметры поддерживаются при печати EMF. При печати XPS работает только параметр &lt;strong&gt;Desired image quality &lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table24&amp;quot;,&amp;quot;secid&amp;quot;:205,&amp;quot;range&amp;quot;:&amp;quot;346959-347165&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Universal printing optimization defaults&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;universal_printing_optimization_defaults&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:204,&amp;quot;range&amp;quot;:&amp;quot;344721-347166&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit206&quot; id=&quot;universal_printing_preview_preference&quot;&gt;Universal printing preview preference&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Этот параметр политики разрешает или запрещает использование функции предпросмотра для автоматически создаваемых universal printers. По-умолчанию - предпросмотр для автоматически созданных принтеров не используется.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При добавлении этого параметра в политику следует выбрать одну из опций:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Do not use print preview for auto-created or generic universal printers&lt;/strong&gt; - Не использовать предпросмотр&lt;br/&gt;

 &lt;strong&gt;Use print preview for auto-created printers only&lt;/strong&gt; - использовать предпросмотр только для автоматически созданных universal принтеров&lt;br/&gt;

 &lt;strong&gt;Use print preview for generic universal printers only&lt;/strong&gt; - использовать предпросмотр только для “обычных” universal принтеров&lt;br/&gt;

 &lt;strong&gt;Use print preview for both auto-created and generic universal printers&lt;/strong&gt; - использовать предпросмотр как для “обычных” universal, так и для автоматически созданных universal принтеров принтеров&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Universal printing preview preference&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;universal_printing_preview_preference&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:206,&amp;quot;range&amp;quot;:&amp;quot;347167-348540&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit207&quot; id=&quot;связанные_параметры_политики&quot;&gt;Связанные параметры политики&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
 &lt;strong&gt;Universal print driver usage&lt;/strong&gt; - Использование универсального драйвера печати.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:207,&amp;quot;range&amp;quot;:&amp;quot;348541-348728&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit208&quot; id=&quot;universal_printing_print_quality_limit&quot;&gt;Universal printing print quality limit&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Это параметр политики задает максимальное качество печати в точках на дюйм (dpi) для генерируемых сессией заданий печати. По-умолчанию - лимит не задан, что позволяет пользователям печатать с максимальным разрешением. &lt;br/&gt;

Доступные значения:&lt;br/&gt;

 &lt;strong&gt;Draft (150 DPI)&lt;/strong&gt;&lt;br/&gt;

 &lt;strong&gt;Low Resolution (300 DPI)&lt;/strong&gt;&lt;br/&gt;

 &lt;strong&gt;Medium Resolution (600 DPI)&lt;/strong&gt;&lt;br/&gt;

 &lt;strong&gt;High Resolution (1200 DPI)&lt;/strong&gt;&lt;br/&gt;

 &lt;strong&gt;No limit&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Universal printing print quality limit&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;universal_printing_print_quality_limit&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:208,&amp;quot;range&amp;quot;:&amp;quot;348729-349353&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit209&quot; id=&quot;параметры_политики_драйверов&quot;&gt;Параметры политики драйверов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-policies-rules-printer-drivers-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-policies-rules-printer-drivers-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-policies-rules-printer-drivers-v2.html&lt;/a&gt;&lt;br/&gt;

Этот раздел описывает политики связанные с драйверами принтеров XenApp.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438_\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:209,&amp;quot;range&amp;quot;:&amp;quot;349354-349659&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit210&quot; id=&quot;automatic_installation_of_in-box_printer_drivers&quot;&gt;Automatic installation of in-box printer drivers&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Этот параметр включает или отключает автоматическую установку драйверов принтеров, включенных в состав Windows или драйверов, добавленных в состав Windows с помощью утилиты &lt;strong&gt;pnputil.exe /a&lt;/strong&gt;. По-умолчанию эти драйверы устанавливаются по мере необходимости. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Automatic installation of in-box printer drivers&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;automatic_installation_of_in-box_printer_drivers&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:210,&amp;quot;range&amp;quot;:&amp;quot;349660-350167&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit211&quot; id=&quot;universal_driver_preference&quot;&gt;Universal driver preference&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Этот параметр задает порядок, в котором используются универсальные драйверы (universal printer drivers) начиная с первого в списке. По-умолчанию порядок такой:&lt;br/&gt;

&lt;strong&gt;EMF&lt;br/&gt;

XPS&lt;br/&gt;

PCL5c&lt;br/&gt;

PCL4&lt;br/&gt;

PS&lt;/strong&gt;&lt;br/&gt;

Вы можете добавлять, удалять и изменять драйверы и порядок их использования. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Universal driver preference&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;universal_driver_preference&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:211,&amp;quot;range&amp;quot;:&amp;quot;350168-350655&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit212&quot; id=&quot;universal_print_driver_usage&quot;&gt;Universal print driver usage&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Это параметр определяет когда следует использовать universal printing. По-умолчанию, universal printing используется только если нужный драйвер недоступен.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Universal printing использует общие (generic) драйверы принтеров, вместо специфичных для данной модели, что теоретически упрощает эксплуатацию фермы XenApp. Работоспособность драйверов universal printing зависит от возможностей принтера, узла фермы XenApp и программного обеспечения сервера печати. В некоторых случаях функции universal printing недоступны.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При добавлении этого параметра к политике следует выбрать одну из опций: &lt;br/&gt;

&lt;strong&gt;Use only printer model specific drivers&lt;/strong&gt; - предписывает использовать только “родные” драйверы принтера. Если они недоступны, то принтер не может быть автоматически создан при входе пользователя.&lt;br/&gt;

&lt;strong&gt;Use universal printing only&lt;/strong&gt; - будут использоваться только драйверы universal printing.&lt;br/&gt;

&lt;strong&gt;Use universal printing only if requested driver is unavailable&lt;/strong&gt; - предписывает использовать универсальные драйверы, если оригинальные драйверы принтера недоступны. &lt;br/&gt;

&lt;strong&gt;Use printer model specific drivers only if universal printing is unavailable&lt;/strong&gt; - предписывает использовать оригинальные драйверы, если универсальные драйверы принтера недоступны. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Universal print driver usage&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;universal_print_driver_usage&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:212,&amp;quot;range&amp;quot;:&amp;quot;350656-352670&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit213&quot; id=&quot;связанные_параметры_политики1&quot;&gt;Связанные параметры политики&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Auto-create generic universal printer&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u04381&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:213,&amp;quot;range&amp;quot;:&amp;quot;352671-352776&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit214&quot; id=&quot;администрирование_драйверов_принтеров&quot;&gt;Администрирование драйверов принтеров&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printer-driver-managing.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printer-driver-managing.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printer-driver-managing.html&lt;/a&gt;&lt;br/&gt;

При входе пользователя на ферму XenApp и запуске приложения, в сессии пользователя автоматически создается принтер, подключенный к его устройству. Хост фермы XenApp пытается обнаружить “родной” драйвер принтера и установить его. По-умолчанию, XenApp автоматически устанавливает “родной” драйвер принтера, если он не найден на хосте.  &lt;br/&gt;

Так как пользователь может подключаться к ферме XenApp с различных устройств, драйверы принтеров не могут храниться на клиентском устройстве. Для печати на локальный принтер клиента XenApp должен обнаружить соответствующий драйвер как на хосте фермы, так и на клиентском устройстве. На рисунке показано как используется драйвер принтера при печати.&lt;br/&gt;

&lt;em&gt;На рисунке показана печать клиента на локальный принтер. Драйвер принтера на сервере перенаправляет задание печати по каналу ICA на клиентское устройство. Затем клиентское устройство перенаправляет задание через тот же драйвер в очередь диспетчера печати и он в свою очередь контролирует работу принтера.&lt;/em&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/ps-printing-client-actual-2.png&quot; class=&quot;media&quot; title=&quot;ps-printing-client-actual-2.png&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/ps-printing-client-actual-2.png?w=200&amp;amp;tok=799913&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Драйвер принтера на сервере и драйвер на клиенте должны быть одинаковыми. В противном случает - печать не пойдет. Для этого XenApp имеет встроенные средства для управления драйверами, их автоматической установки и репликации в пределах фермы.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вследствие неправильного обращения с драйверами принтеров возможны следующие проблемы:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Любой отсутсвующий драйвер может привести к ошибкам печати. Если на ферме установлены драйверы имеющие несколько названий или некорректные названия, то сессия пользователя может не обнаружить нужный драйвер.&lt;br/&gt;

 - Печать на клиентский принтер через некорректный драйвер может привести к фатальной ошибке на сервере.&lt;br/&gt;

 - XenApp не скачивает драйверы с сервера печати. На серверах XenApp должны быть установлены правильные драйвера (корректная версия и разрядность) для принтеров, не работающих с универсальными драйверами.&lt;br/&gt;

 - Если некорректный драйвер реплицируется по всей ферме, то удалить его будет трудно и долго.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При планировании подсистемы печати следует сразу определиться - будут ли использоваться “родные” драйверы принтеров, либо универсальные . либо и те другие. &lt;br/&gt;

А если будут использованы универсальные драйверы, то нужно определить:&lt;br/&gt;

 - Драйверы какого типа будут использованы.&lt;br/&gt;

 - Нужна ли автоматическая установка отсутствующих на серверах фермы драйверов?&lt;br/&gt;

 - Нужен ли список совместимости драйверов?&lt;br/&gt;

 - Нужно ли автоматически реплицировать драйверы принтеров в пределах фермы&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:214,&amp;quot;range&amp;quot;:&amp;quot;352777-357415&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit215&quot; id=&quot;управление_автоматической_установкой_драйверов_принтеров&quot;&gt;Управление автоматической установкой драйверов принтеров&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-drivers-compatibility-lists-all.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-drivers-compatibility-lists-all.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-drivers-compatibility-lists-all.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Когда XenApp автоматически создает принтеры, оно определяет наличие всех необходимых драйверов. По-умолчанию, XenApp устанавливает все недостающие драйверы из набора драйверов Windows. Если автоматически будет установлен глючный драйвер - это может привести к серьезным проблемам.&lt;br/&gt;

Для того чтобы недопустить подобной ситуации нужно либо запретить автоматическую установку драйверов, либо создать список совместимых драйверов: &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
- Если точно известно какой драйвер глючит - его можно просто запретить в списке совместимых.&lt;br/&gt;

- Если не известно, какие драйвера могут глючить, то следует разрешить только установку драйверов из списка совместимости.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При входе пользователя:&lt;br/&gt;

 - XenApp проверяет список совместимых драйверов перед установкой принтеров клиента. &lt;br/&gt;

 - Если драйвер указан среди запрещенных и не включена опция Universal Printing, то принте не устанавливается.&lt;br/&gt;

 - Когда принтер клиента не устанавливается по причине запрета в списке совместимости, то в журнал вносится соответствующая запись.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы предотвратить автоматическую установку драйверов, сконфигурируйте соответствующую политику Citrix - &lt;strong&gt;Automatic installation of in-box printer drivers&lt;/strong&gt;&lt;br/&gt;

Для того чтобы указать способ установки драйверов клиентских принтеров на серферы фермы XenApp нужно сконфигурировать следующие политики Citrix:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Automatic installation of in-box printer drivers&lt;/strong&gt; - Разрешает или запрещает автоматическую установку драйверов из поставки Windows и драйверов установленных с помощью команды &lt;strong&gt;pnputil.exe /a&lt;/strong&gt;. По-умолчанию драйверы устанавливаются в случае необходимости.&lt;br/&gt;

&lt;strong&gt;Printer driver mapping and compatibility&lt;/strong&gt; - Список переназначения драйверов принтеров. Позволяет назначить принтерам конкретный драйвер, или универсальный драйвер. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Параметр &lt;strong&gt;Printer driver mapping and compatibility &lt;/strong&gt; может работать как “белый список”, в котором перечислены только разрешенные драйверы - указав * в поле “Driver name” и установив &lt;strong&gt;Do not create for all drivers other than those specified&lt;/strong&gt;. Также можно использовать значение &lt;strong&gt;Create with universal driver only&lt;/strong&gt; для того чтобы разрешить только универсальные драйверы, для неуказанных драйверов. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439_\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:215,&amp;quot;range&amp;quot;:&amp;quot;357416-361281&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit216&quot; id=&quot;конфигурирование_универсальных_драйверов_принтеров_на_серверах_фермы&quot;&gt;Конфигурирование универсальных драйверов принтеров на серверах фермы&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-configuring-universal-printer-all.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-configuring-universal-printer-all.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-configuring-universal-printer-all.html&lt;/a&gt;&lt;br/&gt;

Если вы сконфигурировали использование универсальных драйверов, то по-молчанию, XenApp всегда будет использовать драйвер &lt;strong&gt;Citrix Universal (EMF)&lt;/strong&gt;. Если этот драйвер недоступен, то XenApp будет использовать  &lt;strong&gt;XPS Universal Printer driver&lt;/strong&gt;. Назначить используемый по-умолчанию драйвер можно с помощью параметра политики &lt;strong&gt;Universal driver preference&lt;/strong&gt;.&lt;br/&gt;

Универсальные драйверы принтеров Citrix перечислены в оснастке MMC &lt;strong&gt;Print Management&lt;/strong&gt;. Если были соблюдены все требуемые условия при запуске XenApp, то должны появиться следующие драйверы:&lt;br/&gt;

 - Citrix Universal Printer, which is the .EMF driver&lt;br/&gt;

 - Citrix XPS Universal Printer&lt;br/&gt;

 - HP Color LaserJet 2800 PS (Citrix PS Universal Printer Driver)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если нужен универсальный драйвер, отсутствующий в списке, то его нужно установить. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Указать какой драйвер будет использоваться в сессиях пользователей можно с помощью параметра политики &lt;strong&gt;Universal print driver usage&lt;/strong&gt;:&lt;br/&gt;

 - &lt;strong&gt;Use universal printing only if requested driver is unavailable &lt;/strong&gt; - использование универсального драйвера только при отсутствии оригинального.&lt;br/&gt;

 - &lt;strong&gt;Use only printer model specific drivers &lt;/strong&gt; - использование только оригинального драйвера. Если драйвер не найден, принтер автоматически создан не будет. &lt;br/&gt;

 - &lt;strong&gt;Use universal printing only&lt;/strong&gt; - использование только универсального драйвера.&lt;br/&gt;

 - &lt;strong&gt;Use printer model specific drivers only if universal printing is unavailable&lt;/strong&gt; - использование универсального драйвера в случае его наличия, в противном случае - использование универсального. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u0445 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445 \u0444\u0435\u0440\u043c\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u0445_\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432_\u043d\u0430_\u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445_\u0444\u0435\u0440\u043c\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:216,&amp;quot;range&amp;quot;:&amp;quot;361282-363850&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit217&quot; id=&quot;конфигурирование_сетевых_принтеров_и_принтеров_мобильных_сотрудников&quot;&gt;8.2 - Конфигурирование сетевых принтеров и принтеров мобильных сотрудников&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Добавление сетевых принтеров при конфигурировании печати сессии.&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-dialogs-add-network-printer.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-dialogs-add-network-printer.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-console-dialogs-add-network-printer.html&lt;/a&gt;&lt;br/&gt;

В параметре политики &lt;strong&gt;Session printers&lt;/strong&gt; можно прописать сетевой принтер одним из методов:&lt;br/&gt;

 - С помощью UNC пути к принтеру в формате &lt;strong&gt;&lt;a href=&quot;file://///servername/printername&quot; class=&quot;windows&quot; title=&quot;\\servername\printername&quot;&gt;\\servername\printername&lt;/a&gt;&lt;/strong&gt;.&lt;br/&gt;

 - С помощью кнопки &lt;strong&gt;Browse&lt;/strong&gt;. Укажите нужный принтер в окне обзора сети. &lt;br/&gt;

 - Укажите имя сервера в формате &lt;strong&gt;\\servername&lt;/strong&gt; и нажмите &lt;strong&gt;Browse&lt;/strong&gt; для того чтобы указать конкретный принтер.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit218&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Важно: Принтеры указанные в различных экземплярах политик будут объединены, начиная с политики с наивысшим приоритетом. Будут применены настройки по-умолчанию только из политики с наивысшим приоритетом.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table25&amp;quot;,&amp;quot;secid&amp;quot;:218,&amp;quot;range&amp;quot;:&amp;quot;364800-365179&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;8.2 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432 \u0438 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0435\u0442\u0435\u0432\u044b\u0445_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432_\u0438_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432_\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445_\u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:217,&amp;quot;range&amp;quot;:&amp;quot;363851-365181&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit219&quot; id=&quot;конфигурирование_принтеров_для_мобильных_пользователей&quot;&gt;Конфигурирование принтеров для мобильных пользователей&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-proximity-printing-configuring-v2.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-proximity-printing-configuring-v2.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-proximity-printing-configuring-v2.html&lt;/a&gt;&lt;br/&gt;

При настройке печати для мобильных пользователей важно, чтобы пользователи имели доступ к ближайшему принтеру. Для этого предусмотрена функция &lt;strong&gt;Proximity printing&lt;/strong&gt;, которая автоматически прописывает пользователю сетевые принтеры из того же диапазона IP адресов, в котором находится и пользователь. &lt;br/&gt;

Использование этой функции предполагает что:&lt;br/&gt;

 - Для присвоения адресов используется протокол DHCP, настроенный так, чтобы выдавать адреса в соответствии с физическим размещением (этаж, здание).&lt;br/&gt;

 - Все этажи или корпуса здания компании имеют собственные непересекающиеся диапазоны IP-адресов.&lt;br/&gt;

 - Принтеры получают адреса из диапазонов этажей (корпусов) на которых расположены. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Конфигурирование &lt;strong&gt;Proximity Printing&lt;/strong&gt;:&lt;br/&gt;

 - Создайте отдельную политику для каждой подсети в соответствии с расположением принтеров.&lt;br/&gt;

 - В каждой политике добавьте соответствующие принтеры.&lt;br/&gt;

 - Установите значение параметра &lt;strong&gt;Default printer&lt;/strong&gt; в значение &lt;strong&gt;Do not adjust the user&amp;#039;s default printer&lt;/strong&gt;&lt;br/&gt;

 - Настройте фильтры политик по IP-адресам клиентов. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432 \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432_\u0434\u043b\u044f_\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:219,&amp;quot;range&amp;quot;:&amp;quot;365182-367205&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit220&quot; id=&quot;установка_новых_драйверов_принтеров1&quot;&gt;8.3 - Установка новых драйверов принтеров.&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-network-configuring.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-network-configuring.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/xenapp65-admin/ps-printing-network-configuring.html&lt;/a&gt;&lt;br/&gt;

В случае отсутствия драйвера принтера на сервере его не удастся автоматически прописать в сессии пользователя. &lt;br/&gt;

Добавить драйвер принтера в Windows можно так:&lt;br/&gt;

 - Установить принтер вручную, с помощью мастера &lt;strong&gt;Добавление принтера&lt;/strong&gt;, либо обнаружив принтер на соответствующем сервере в Проводнике, дважды кликнув по нему. Драйвер принтера установится в локальное хранилище драйверов Windows. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;8.3 - \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043d\u043e\u0432\u044b\u0445 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u0432.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u043d\u043e\u0432\u044b\u0445_\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u043e\u04321&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:220,&amp;quot;range&amp;quot;:&amp;quot;367206-368101&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit221&quot; id=&quot;раздел_9_включение_безопасного_web-доступа_к_опубликованным_приложениям1&quot;&gt;Раздел 9. Включение безопасного Web-доступа к опубликованным приложениям&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 9. \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e Web-\u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_9_\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e_web-\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u043a_\u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u043c_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:221,&amp;quot;range&amp;quot;:&amp;quot;368102-368245&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit222&quot; id=&quot;конфигурирование_обработки_отказов_и_дополнительных_параметров_в_настройках_web-интерфейса_wi1&quot;&gt;9.1 Конфигурирование обработки отказов и дополнительных параметров в настройках WEb-интерфейса (WI)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;9.1 \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0442\u043a\u0430\u0437\u043e\u0432 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 WEb-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 (WI)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438_\u043e\u0442\u043a\u0430\u0437\u043e\u0432_\u0438_\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432_\u0432_\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_wi1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:222,&amp;quot;range&amp;quot;:&amp;quot;368246-368433&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit223&quot; id=&quot;конфигурирование_обработки_отказов1&quot;&gt;Конфигурирование обработки отказов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-fault-tolerance-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-fault-tolerance-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-fault-tolerance-gransden.html&lt;/a&gt;&lt;br/&gt;

We-интерфейс предусматривает обработку отказов серверов фермы, на которых исполняется &lt;strong&gt;Citrix XML Service&lt;/strong&gt;, перечисляющий опубликованные приложения. В консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt; в правой части окна расположен список задач. обработка отказов настраивается в задаче &lt;strong&gt;Server Farms&lt;/strong&gt;. В случае невозможности соединиться с заданным сервером, WI отложит попытки связи с вышедшим из строя сервером на время, указанное в параметре &lt;strong&gt;Bypass any failed server for&lt;/strong&gt; и будет пытаться соединиться с другими серверами, указанными с списке. &lt;br/&gt;

По-умолчанию, отказавший сервер не опрашивается в течение часа. Если вышили из строя все серверы, указанные в списке - Web-Интерфейс XenApp будет повторять попытки соединиться каждые 10 секунд.&lt;br/&gt;

Чтобы настроить обработку отказов Citrix XML Service:&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Server Farms&lt;/strong&gt;.&lt;br/&gt;

 - Выберите настраиваемую ферму и кликните &lt;strong&gt;Edit&lt;/strong&gt;, или добавьте новую - &lt;strong&gt;Add&lt;/strong&gt;.&lt;br/&gt;

 - В списке серверов с помощью кнопок &lt;strong&gt;Move Up&lt;/strong&gt; и &lt;strong&gt;Move Down&lt;/strong&gt; расположите сервера, на которых исполняется &lt;strong&gt;Citrix XML Service&lt;/strong&gt;, в порядке приоритета.&lt;br/&gt;

 - В поле &lt;strong&gt;Bypass any failed server for&lt;/strong&gt; задайте время, на которое отказавший сервер будет исключен из списка опрашиваемых.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0442\u043a\u0430\u0437\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438_\u043e\u0442\u043a\u0430\u0437\u043e\u04321&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:223,&amp;quot;range&amp;quot;:&amp;quot;368434-371005&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit224&quot; id=&quot;дополнительные_параметры1&quot;&gt;Дополнительные параметры&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-advanced-settings-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-advanced-settings-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-advanced-settings-gransden.html&lt;/a&gt;&lt;br/&gt;

Среди дополнительных параметров можно настроить опрос сокетов - &lt;strong&gt;socket pooling&lt;/strong&gt; и перенаправление контента - &lt;strong&gt;content redirection&lt;/strong&gt;, указать тайм-аут Citrix XML Service и количество попыток получить данные от Citrix XML Service, прежде чем признать отказ сервиса. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:224,&amp;quot;range&amp;quot;:&amp;quot;371006-371603&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit225&quot; id=&quot;включение_опроса_сокетов_-_socket_pooling1&quot;&gt;Включение опроса сокетов - &amp;#039;&amp;#039;&amp;#039;socket pooling&amp;#039;&amp;#039;&amp;#039;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При включении опроса сокетов - &lt;strong&gt;socket pooling&lt;/strong&gt;, WI поддерживает определенный пул созданных сокетов, всесто того, чтобы создавать сокет при каждом новом подключении. Включение &lt;strong&gt;socket pooling&lt;/strong&gt; повыщает производительность, особенно при использовании SSL.&lt;br/&gt;

&lt;strong&gt;Socket pooling&lt;/strong&gt; поддерживается только для сайтов, на которых настроена аутентификация &lt;strong&gt;At Web Interface&lt;/strong&gt; или &lt;strong&gt;At Access Gateway&lt;/strong&gt;. На таких сайтах &lt;strong&gt;Socket pooling&lt;/strong&gt; включен по-умолчанию. &lt;strong&gt;Socket pooling&lt;/strong&gt; не следует включать, если WI настроен на работу с &lt;strong&gt;XenApp for UNIX&lt;/strong&gt;.&lt;br/&gt;

Чтобы настроить &lt;strong&gt;Socket pooling&lt;/strong&gt;:&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Server Farms&lt;/strong&gt;.&lt;br/&gt;

 - Нажмите кнопку &lt;strong&gt;Advanced&lt;/strong&gt;.&lt;br/&gt;

 - Поставьте (чтобы включить) или снимите галочку в поле &lt;strong&gt;Socket pooling&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043e\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u043a\u0435\u0442\u043e\u0432 - &amp;#039;&amp;#039;&amp;#039;socket pooling&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043e\u043f\u0440\u043e\u0441\u0430_\u0441\u043e\u043a\u0435\u0442\u043e\u0432_-_socket_pooling1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:225,&amp;quot;range&amp;quot;:&amp;quot;371604-373213&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit226&quot; id=&quot;включение_перенаправления_контента_content_redirection&quot;&gt;Включение перенаправления контента (&amp;#039;&amp;#039;&amp;#039;content redirection&amp;#039;&amp;#039;&amp;#039;)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Перенаправление контента от &lt;strong&gt;online plug-in&lt;/strong&gt; к серверу XenApp позволяет открывать локальные файлы пользователя с помощью приложений, опубликованных в XenApp и доступных через Citrix online plug-in. Это параметр перекрывает все другие параметры перенаправления контента, сконфигурированные в XenApp. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
По-умолчанию, перенаправление контента от plug-in к серверу включено только для сайтов &lt;strong&gt;XenApp Services &lt;/strong&gt;.&lt;br/&gt;

Более тонкая настройка функции перенаправления контента от plug-in к серверу осуществляется путем ассоцирования расширений файлов с приложениями. &lt;a href=&quot;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#Перенаправление_контента_от_клиента_серверу_123&quot; class=&quot;urlextern&quot; title=&quot;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#Перенаправление_контента_от_клиента_серверу_123&quot; rel=&quot;ugc nofollow&quot;&gt;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A20-Citrix-XenApp-6-5.ashx#Перенаправление_контента_от_клиента_серверу_123&lt;/a&gt;&lt;br/&gt;

Чтобы настроить перенаправление контента от plug-in к серверу (&lt;strong&gt;Content Redirection&lt;/strong&gt;):&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Server Farms&lt;/strong&gt;.&lt;br/&gt;

 - Нажмите кнопку &lt;strong&gt;Advanced&lt;/strong&gt;.&lt;br/&gt;

 - Поставьте (чтобы включить) или снимите галочку в поле &lt;strong&gt;Content Redirection&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 (&amp;#039;&amp;#039;&amp;#039;content redirection&amp;#039;&amp;#039;&amp;#039;)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f_\u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430_content_redirection&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:226,&amp;quot;range&amp;quot;:&amp;quot;373214-375307&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit227&quot; id=&quot;настройка_взаимодействия_wi_с_citrix_xml_service&quot;&gt;Настройка взаимодействия WI с Citrix XML Service&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
По-умолчанию, таймаут ожидания Citrix XML Service составляет 1 минуту и сервис признается неработоспособным после двух неудачных попыток. Эти параметры могут быть изменены.&lt;br/&gt;

Чтобы настроить параметры взаимодействия WI с Citrix XML Service:&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Server Farms&lt;/strong&gt;.&lt;br/&gt;

 - Нажмите кнопку &lt;strong&gt;Advanced&lt;/strong&gt;.&lt;br/&gt;

 - В разделе &lt;strong&gt;Citrix XML Service communication&lt;/strong&gt; в поле &lt;strong&gt;Socket timeout&lt;/strong&gt; укажите желаемый таймаут, а в поле &lt;strong&gt;Attempts made to contact the XML Service&lt;/strong&gt; количество попыток.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f WI \u0441 Citrix XML Service&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f_wi_\u0441_citrix_xml_service&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:227,&amp;quot;range&amp;quot;:&amp;quot;375308-376533&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit228&quot; id=&quot;конфигурирование_безопасного_доступа_в_соответствии_с_предъявляемыми_требованиями&quot;&gt;9.2 Конфигурирование безопасного доступа в соответствии с предъявляемыми требованиями&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-gateway-settings-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-gateway-settings-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-gateway-settings-gransden.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;9.2 \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u0435\u043c\u044b\u043c\u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e_\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u0432_\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438_\u0441_\u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u0435\u043c\u044b\u043c\u0438_\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:228,&amp;quot;range&amp;quot;:&amp;quot;376534-376818&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit229&quot; id=&quot;конфигурирование_параметров_шлюза&quot;&gt;Конфигурирование параметров шлюза&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Если для доступа к ферме XenApp используется &lt;strong&gt;Access Gateway&lt;/strong&gt; или &lt;strong&gt;Secure Gateway&lt;/strong&gt;, то для взаимодействия с ними Web-интерфейс должен быть сконфигурирован соответствующим образом. Сконфигурировать можно как маршрут по-умолчанию, так и специальный машрут для пользовательских устройств из определенного диапазона IP-адресов. &lt;br/&gt;

1. Запустите консоль управления параметрами WI - Меню &lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;.&lt;br/&gt;

2. В левой панели консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt; выберите тип конфигурируемого сайта - XenApp Web Sites или XenApp Services, а затем в центральной панели выберите сайт.  &lt;br/&gt;

3. В панели &lt;strong&gt;Action&lt;/strong&gt; (справа) кликните &lt;strong&gt;Secure Access&lt;/strong&gt;.&lt;br/&gt;

4. На странице &lt;strong&gt;Specify Access Methods&lt;/strong&gt; можно создать новый маршрут безопасного доступа к ферме или отредактировать существующий. Для этого кликните &lt;strong&gt;Add&lt;/strong&gt; или выберите существующую запись из списка и кликните &lt;strong&gt;Edit&lt;/strong&gt;.&lt;br/&gt;

5. Из списка вариантов доступа выберите один из вариантов:&lt;br/&gt;

 - &lt;strong&gt;Gateway Direct&lt;/strong&gt;. В случае, когда вы можете предоставить шлюзу &lt;strong&gt;Secure Gateway&lt;/strong&gt; действительный (нетранслируемый) адрес сервера Citrix. То есть шлюз и сервер Citrix находятся в одной локальной сети или разделены нетранслирующим сетевым экраном.&lt;br/&gt;

 - &lt;strong&gt;Gateway alternate&lt;/strong&gt;. В случае, когда шлюз &lt;strong&gt;Secure Gateway&lt;/strong&gt; и сервер Citrix XenApp взаимодействуют через межсетевой экран, транслирующий адреса (NAT).&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit230&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Виртуальные рабочие столы XenDesktop не могут работать в конфигурации &lt;strong&gt;Gateway alternate&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table26&amp;quot;,&amp;quot;secid&amp;quot;:230,&amp;quot;range&amp;quot;:&amp;quot;379159-379329&amp;quot;} --&gt;
&lt;p&gt;
 - &lt;strong&gt;Gateway translated&lt;/strong&gt;. В случае, когда используется трансляция адресов и перенаправление портов. &lt;br/&gt;

6. Введите адрес и маску сети, которой принадлежат клиенты. Используйте кнопки &lt;strong&gt;Up&lt;/strong&gt; и &lt;strong&gt;Down&lt;/strong&gt; для расположения маршрутов в соответствии приоритетом и нажмите &lt;strong&gt;Next&lt;/strong&gt;.  &lt;br/&gt;

7. Если не используется трансляция адреса шлюза (gateway address translation), то переходите к шагу 10. В противном случае чтобы добавить трансляцию адреса - кликните &lt;strong&gt;Add&lt;/strong&gt; на странице &lt;strong&gt;Specify Address Translations&lt;/strong&gt; или выберите запись из списка и кликните &lt;strong&gt;Edit&lt;/strong&gt;.&lt;br/&gt;

8. В поле &lt;strong&gt;Access Type&lt;/strong&gt; выберите один из вариантов:&lt;br/&gt;

 - Если адрес шлюза транслируется при соединении с сервером Citrix - выберите &lt;strong&gt;Gateway route translation&lt;/strong&gt;&lt;br/&gt;

 - Если уже настроен клиентский маршрут трансляции в таблице адресов &lt;strong&gt;User device&lt;/strong&gt; и шлюз и клиентское устройство используют транслированный адрес при подключении к серверу Citrix - выберите &lt;strong&gt;User device and gateway route translation&lt;/strong&gt;&lt;br/&gt;

9. Введите номера внутреннего и внешнего (транслированного) портов и адреса сервера Citrix и кликните OK. Когда шлюз будет соединяться с сервером Citrix, он будет использовать внешний (external) адрес и порт. Убедитесь, что созданные перенаправления (mappings), соответствуют типу адресации, используемой в ферме XenApp. Кликните Next.&lt;br/&gt;

10. На странице &lt;strong&gt;Specify Gateway Settings&lt;/strong&gt; укажите полное доменное имя (FQDN) и номер порта шлюза, который должны использовать клиенты. Полное доменное имя (FQDN) должно в точности соответствовать имени, указанному в сертификате, установленном на шлюзе.&lt;br/&gt;

11. Если вы хотите использовать функцию автоматического переподключения отключенных сессий - поставьте галочку &lt;strong&gt;Enable session reliability &lt;/strong&gt;.&lt;br/&gt;

12. Если включена функция автоматического переподключения отключенных сессий и вы хотите использовать одновременную выдачу билетов (ticketing) от двух Secure Ticket Authorities (STAs), то выберите &lt;strong&gt;Request tickets from two STAs&lt;/strong&gt;. Если эта опция включена - WI получает билеты (tickets) от двух разных STAs и таким образом сессии пользователей не прерываются, если один STA становится недоступным.  Если по какой-то причине WI не сможет соединиться с двумя STA, он продолжит работать с одним STA. Кликните Next.&lt;br/&gt;

Примечание: Для использвания этой функции необходимо развернуть &lt;strong&gt;Access Gateway&lt;/strong&gt;. &lt;strong&gt;Secure Gateway&lt;/strong&gt; в настоящий момент не поддерживает несколько STA.&lt;br/&gt;

13. На странице &lt;strong&gt;Specify Secure Ticket Authority Settings&lt;/strong&gt; кликните &lt;strong&gt;Add&lt;/strong&gt; для того чтобы указать адрес (&lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;) Secure Ticket Authorities (STA) или выберите запись из списка и кликните &lt;strong&gt;Edit&lt;/strong&gt; для редактирования параметров уже заданных STA. STA входят в состав службы  &lt;strong&gt;Citrix XML Service&lt;/strong&gt;. Например - &lt;strong&gt;http&lt;a href=&quot;https://wiki.autosys.tk/citrix/s&quot; class=&quot;wikilink2&quot; title=&quot;citrix:s&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;citrix:s&quot;&gt;s&lt;/a&gt;://servername.domain.com/scripts/ctxsta.dll&lt;/strong&gt;. Можно указать более одного STA для обработки отказов, однако Citrix не рекомендует использовать внешние балансировщики нагрузки для этой цели. Используйте кнопки &lt;strong&gt;Move Up&lt;/strong&gt; и &lt;strong&gt;Move Down&lt;/strong&gt; для установки порядка приоритета STA.&lt;br/&gt;

14. Задайте будет ли использоваться балансировка нагрузки на STA с помощью опции &lt;strong&gt;Use for load balancing&lt;/strong&gt;. Включение этой опции позволяет равномерно распределить нагрузку на серверы и таким образом избежать их перегрузки. &lt;br/&gt;

15. В поле &lt;strong&gt;Bypass failed servers for&lt;/strong&gt; укажите интервал времени, в течение которого недоступный STA будет исключен из работы. Web-интерфейс обеспечивает обработку отказов серверов STA из списка, исключая отказавший сервер из работы на заданный интервал времени.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0448\u043b\u044e\u0437\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432_\u0448\u043b\u044e\u0437\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:229,&amp;quot;range&amp;quot;:&amp;quot;376819-384945&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit231&quot; id=&quot;включение_балансировки_нагрузки&quot;&gt;9.3 - Включение балансировки нагрузки&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-enable-load-balancing-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-enable-load-balancing-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-enable-load-balancing-gransden.html&lt;/a&gt;&lt;br/&gt;

Можно включить балансировку нагрузки на серверы, на которых исполняется сервис Citrix XML Service. Включение балансировки нагрузки позволяет равномерно распределить нагрузку на сервера. По-умолчанию балансировка нагрузки на серверы Citrix XML Service отключена.&lt;br/&gt;

Если при взаимодействии с каким либо сервером будет зафиксирована ошибка, балансировка будет осуществляться между оставшимися серверами. Отказавший сервер будет исключен из балансировки на заданный период времени (по-умолчанию - один час). &lt;br/&gt;

Для включения балансировки:&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Server Farms&lt;/strong&gt;.&lt;br/&gt;

 - Выберите настраиваемую ферму и кликните &lt;strong&gt;Edit&lt;/strong&gt;, или добавьте новую - &lt;strong&gt;Add&lt;/strong&gt;.&lt;br/&gt;

 - В список серверов добавьте сервера, на которых исполняется &lt;strong&gt;Citrix XML Service&lt;/strong&gt;, в порядке приоритета.&lt;br/&gt;

 - Включите балансировку в поле &lt;strong&gt;Use the server list for load balancing&lt;/strong&gt;. &lt;br/&gt;

 - В поле &lt;strong&gt;Bypass any failed server for&lt;/strong&gt; задайте время, на которое отказавший сервер будет исключен из списка опрашиваемых.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;9.3 - \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438_\u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:231,&amp;quot;range&amp;quot;:&amp;quot;384946-387164&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit232&quot; id=&quot;конфигурирование_сайтов_web-интерфейса_pnagent_services_access&quot;&gt;9.4 - Конфигурирование сайтов Web-интерфейса (PNAgent, Services, Access)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;9.4 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0430\u0439\u0442\u043e\u0432 Web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 (PNAgent, Services, Access)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0430\u0439\u0442\u043e\u0432_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_pnagent_services_access&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:232,&amp;quot;range&amp;quot;:&amp;quot;387165-387279&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit233&quot; id=&quot;включение_явной_explicit_аутентификации&quot;&gt;Включение явной (explicit) аутентификации&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-enable-explicit-authentication-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-enable-explicit-authentication-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-enable-explicit-authentication-gransden.html&lt;/a&gt;&lt;br/&gt;

Если включена явная (explicit) аутентификация, то для входа на ферму пользователи должны иметь учетные записи и предоставлять учетные данные при входе. &lt;br/&gt;

Настройки параметров явной аутентификации производятся в консоли &lt;strong&gt; Citrix Web Interface Management&lt;/strong&gt;. Например, можно указать - разрешено ли пользователям менять пароли в течение сессии. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit234&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Явная (explicit) аутентификация доступна только для сайтов &lt;strong&gt;XenApp Web sites&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table27&amp;quot;,&amp;quot;secid&amp;quot;:234,&amp;quot;range&amp;quot;:&amp;quot;388070-388196&amp;quot;} --&gt;
&lt;p&gt;
Для включения явной (explicit) аутентификации:&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Authentication Methods&lt;/strong&gt; и поставьте галочку в чекбоксе &lt;strong&gt;Explicit&lt;/strong&gt;.&lt;br/&gt;

 - Кликните &lt;strong&gt;Properties&lt;/strong&gt; для того чтобы сконфигурировать дополнительные параметры явной аутентификации.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u044f\u0432\u043d\u043e\u0439 (explicit) \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u044f\u0432\u043d\u043e\u0439_explicit_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:233,&amp;quot;range&amp;quot;:&amp;quot;387280-388963&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit235&quot; id=&quot;начальная_конфигурация_сайтов_xenapp&quot;&gt;Начальная конфигурация сайтов XenApp.&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-initial-config-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-initial-config-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-specify-initial-config-gransden.html&lt;/a&gt;&lt;br/&gt;

После создания сайта XenApp с помощью консоли Citrix Web Interface Management, необходимо сконфигурировать сайт, отметив галочкой чекбокс &lt;strong&gt;Configure this site now&lt;/strong&gt; на последней странице мастера создания. Запустится мастер создания конфигурации сайта -  &lt;strong&gt;Specify Initial Configuration&lt;/strong&gt;, который позволит связать сайт с одной или несколькими фермами и указать тип ресурсов, доступных пользователям сайта. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0441\u0430\u0439\u0442\u043e\u0432 XenApp.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f_\u0441\u0430\u0439\u0442\u043e\u0432_xenapp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:235,&amp;quot;range&amp;quot;:&amp;quot;388964-389817&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit236&quot; id=&quot;подключение_к_сайту_ферм_xenapp&quot;&gt;Подключение к сайту ферм XenApp&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При создании сайта XenApp необходимо указать параметры хотя бы одной фермы, ресурсы которой будут опубликованы на сайте. &lt;br/&gt;

Эти параметры можно впоследствии обновить или изменить с помощью задачи &lt;strong&gt;Server Farms&lt;/strong&gt; в консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u0441\u0430\u0439\u0442\u0443 \u0444\u0435\u0440\u043c XenApp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043a_\u0441\u0430\u0439\u0442\u0443_\u0444\u0435\u0440\u043c_xenapp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:236,&amp;quot;range&amp;quot;:&amp;quot;389818-390306&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit237&quot; id=&quot;методы_аутентификации&quot;&gt;Методы аутентификации&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При конфигурировании новой сайта XenApp для которого задана точка аутентификации (authentication point) &lt;strong&gt;At Web Interface&lt;/strong&gt; можно задать способ аутентификации пользователей при входе через Web Interface. Эти параметры можно впоследствии изменить с помощью задачи &lt;strong&gt;Authentication Methods&lt;/strong&gt; в консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041c\u0435\u0442\u043e\u0434\u044b \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u0435\u0442\u043e\u0434\u044b_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:237,&amp;quot;range&amp;quot;:&amp;quot;390307-390877&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit238&quot; id=&quot;ограничения_доменов&quot;&gt;Ограничения доменов&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При конфигурировании новой сайта XenApp для которого задана точка аутентификации (authentication point) &lt;strong&gt;At Web Interface&lt;/strong&gt; можно ограничить доступ к сайту пользователям определенных доменов. Эти параметры можно впоследствии изменить с помощью задачи &lt;strong&gt;Authentication Methods&lt;/strong&gt; в консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u043c\u0435\u043d\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f_\u0434\u043e\u043c\u0435\u043d\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:238,&amp;quot;range&amp;quot;:&amp;quot;390878-391434&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit239&quot; id=&quot;вид_страницы_входа&quot;&gt;Вид страницы входа&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Можно задать внешний вид страницы входа, выбрав между минималистичным дизайном и полным, включающим строку навигации. &lt;br/&gt;

Эти параметры можно впоследствии изменить с помощью задачи &lt;strong&gt;Web Site Appearance&lt;/strong&gt; в консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0438\u0434 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0432\u0445\u043e\u0434\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0438\u0434_\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b_\u0432\u0445\u043e\u0434\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:239,&amp;quot;range&amp;quot;:&amp;quot;391435-391889&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit240&quot; id=&quot;типы_ресурсов_доступных_пользователям&quot;&gt;Типы ресурсов, доступных пользователям&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При конфигурировании нового сайта необходимо указать типы ресурсов, доступных пользователям. Web Interface обеспечивает доступ пользователей к ресурсам (приложениям, контенту и рабочим столам) через браузер, либо через Citrix online plug-in. Интеграция с фукнцией offline-приложений позволяет пользователям получать (stream) приложения на клиентские устройства и и пользоваться ими локально. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Типы ресурсов:&lt;br/&gt;

 - &lt;strong&gt;Online&lt;/strong&gt;. Пользователи пользуются приложениями, контентом и рабочими столами, размещенными на удаленных серверах фермы. Для работы пользовательские устройства должны быть постоянно подключены к сети.&lt;br/&gt;

 - &lt;strong&gt;Offline&lt;/strong&gt;. ПОльзователтьские приложения стримятся на рабочие места клиентов и исполняются на них локально. После успешной доставки приложения на рабочее место клиента, постоянное подключение к сети не требуется. При этом, для запуска приложения пользователь должен подключиться к сайту XenApp и аутентифицироваться. После успешного запуска приложения поддержание соединения не требуется.&lt;br/&gt;

 - &lt;strong&gt;Dual mode&lt;/strong&gt;. Пользовтаели подключаются как к offline, так и online приложениям, а также контенту и рабочим столам. Если offline приложения недоступны, то доставляются online версии приложений. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Эти параметры можно впоследствии изменить с помощью задачи &lt;strong&gt;Resource Types&lt;/strong&gt; в консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0438\u043f\u044b \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0438\u043f\u044b_\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:240,&amp;quot;range&amp;quot;:&amp;quot;391890-394283&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit241&quot; id=&quot;ошибка_web-интерфейсаthe_remote_server_failed_to_execute_the_application_launch_request&quot;&gt;Ошибка Web-интерфейса: &amp;#039;&amp;#039;&amp;#039;The remote server failed to execute the application launch request&amp;#039;&amp;#039;&amp;#039;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX120605&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX120605&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX120605&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0448\u0438\u0431\u043a\u0430 Web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430: &amp;#039;&amp;#039;&amp;#039;The remote server failed to execute the application launch request&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0448\u0438\u0431\u043a\u0430_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430the_remote_server_failed_to_execute_the_application_launch_request&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:241,&amp;quot;range&amp;quot;:&amp;quot;394284-394454&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit242&quot; id=&quot;симптомы1&quot;&gt;Симптомы&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При подключении к сайту &lt;strong&gt;XenApp services &lt;/strong&gt; через &lt;strong&gt;Secure Gateway&lt;/strong&gt; с помощью &lt;strong&gt;XenApp Services Plug-in with Web Interface &lt;/strong&gt; появляется сообщение об ошибке: &lt;br/&gt;

&lt;strong&gt;“The remote server failed to execute the application launch request. Please contact your administrator for further details.”&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0438\u043c\u043f\u0442\u043e\u043c\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0438\u043c\u043f\u0442\u043e\u043c\u044b1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:242,&amp;quot;range&amp;quot;:&amp;quot;394455-394836&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit243&quot; id=&quot;возможные_причины&quot;&gt;Возможные причины&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При работе сайта &lt;strong&gt;XenApp services &lt;/strong&gt;, для его взаимодействия с &lt;strong&gt;Citrix Secure gateway&lt;/strong&gt;, запрашивается билет (ticket) от &lt;strong&gt;Secure Ticket Authority (STA) &lt;/strong&gt;. Эта ошибка наблюдается, когда Web-интерфейс не может запросить тикет STA.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В журнале фиксируются такие ошибки:&lt;br/&gt;

&lt;strong&gt;Connection Error&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Event Type:Error
Event Source:XenApp Services
Event Category:None
Event ID:0
Date:      
Time:12:44:34 PM
User:N/A
Computer:&amp;lt;Server_Name&amp;gt; Description:Site path: c:\inetpub\wwwroot\Citrix\

An error occurred while attempting to connect to the server citrixserver1 on port 80. Verify that the Citrix XML Service is running and is using the correct port. If the XML Service is configured to share ports with IIS, verify that IIS is running. This message was reported from the XML Service at address http://citrixsserver1.citrix.com/scripts/ctxsta.dll. The specified Secure Ticket Authority could not be contacted and will be temporarily removed from the list of active services. [Log ID: f7146d2e]

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.&lt;/pre&gt;

&lt;p&gt;
&lt;strong&gt;XML Transaction Error&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Event Type:Error
Event Source:XenApp Services
Event Category:None
Event ID:0
Date:
Time:12:44:34 PM
User:N/A
Computer:&amp;lt;Server_Name&amp;gt;
Description:Site path: c:\inetpub\wwwroot\Citrix\

All of the configured Secure Ticket Authorities failed to respond to this XML transaction. [Log ID: c9e4c683]

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043f\u0440\u0438\u0447\u0438\u043d\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435_\u043f\u0440\u0438\u0447\u0438\u043d\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:243,&amp;quot;range&amp;quot;:&amp;quot;394837-396553&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit244&quot; id=&quot;причины&quot;&gt;Причины&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Возможные причины:&lt;br/&gt;

 - Указан неправильный адрес (&lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;) для STA.&lt;br/&gt;

 - Не указан номер порта в адресе STA. При использовании нестандартного порта XML, его необходимо указывать явно.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u0447\u0438\u043d\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u0447\u0438\u043d\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:7,&amp;quot;secid&amp;quot;:244,&amp;quot;range&amp;quot;:&amp;quot;396554-396886&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit245&quot; id=&quot;решение&quot;&gt;Решение&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для разрешения этой проблемы проверьте правильность STA &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;:&lt;br/&gt;

Формат &lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt; STA такой:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;https://servername.domain.com/scripts/ctxsta.dll&lt;/pre&gt;

&lt;p&gt;
При использовании нестандартного порта XML, его необходимо указывать явно.&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;https://servername.domain.com:8080/scripts/ctxsta.dll&lt;/pre&gt;

&lt;p&gt;
 &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:7,&amp;quot;secid&amp;quot;:245,&amp;quot;range&amp;quot;:&amp;quot;396887-397324&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit246&quot; id=&quot;конфигурирование_web-интерфейса_для_работы_с_несколькими_фермами&quot;&gt;9.5 - Конфигурирование Web-интерфейса для работы с несколькими фермами&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;9.5 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 Web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0444\u0435\u0440\u043c\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_\u0434\u043b\u044f_\u0440\u0430\u0431\u043e\u0442\u044b_\u0441_\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438_\u0444\u0435\u0440\u043c\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:246,&amp;quot;range&amp;quot;:&amp;quot;397325-397459&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit247&quot; id=&quot;добавление_фермы_к_web-интерфейсу&quot;&gt;Добавление фермы к Web-интерфейсу&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-add-server-farm-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-add-server-farm-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-add-server-farm-gransden.html&lt;/a&gt;&lt;br/&gt;

Чтобы добавить ферму:&lt;br/&gt;

 - Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

 - В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

 - В панели справа кликните &lt;strong&gt;Server Farms&lt;/strong&gt;.&lt;br/&gt;

 - Добавьте новую ферму - кликните &lt;strong&gt;Add&lt;/strong&gt;.&lt;br/&gt;

 - Введите имя фермы в поле &lt;strong&gt;Farm name&lt;/strong&gt;.&lt;br/&gt;

 - Добавьте сервер фермы, на котором исполняется &lt;strong&gt;Citrix XML Service&lt;/strong&gt;, кликнув &lt;strong&gt;Add&lt;/strong&gt;.&lt;br/&gt;

 - В списке серверов с помощью кнопок &lt;strong&gt;Move Up&lt;/strong&gt; и &lt;strong&gt;Move Down&lt;/strong&gt; расположите сервера, на которых исполняется &lt;strong&gt;Citrix XML Service&lt;/strong&gt;, в порядке приоритета.&lt;br/&gt;

 - В поле &lt;strong&gt;Bypass any failed server for&lt;/strong&gt; задайте время, на которое отказавший сервер будет исключен из списка опрашиваемых.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0444\u0435\u0440\u043c\u044b \u043a Web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0444\u0435\u0440\u043c\u044b_\u043a_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:247,&amp;quot;range&amp;quot;:&amp;quot;397460-398847&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit248&quot; id=&quot;добавление_фермы_к_web-интерфейсу_с_помощью_конфигурационного_файла&quot;&gt;Добавление фермы к Web-интерфейсу с помощью конфигурационного файла&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-communication-server-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-communication-server-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-configure-communication-server-gransden.html&lt;/a&gt;&lt;br/&gt;

Сайт Web-интерфейса XenApp хранит конфигурационную информацию в файле. Этот файл можно редактировать вручную. &lt;br/&gt;

Если в при редактировании конфигурационного файла туда будут внесены не корректные значения, то последующий запуск консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt; заменит некорректные сведения на значения по-умолчанию.&lt;br/&gt;

Citrix рекомендует закрывать консоль &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt; перед редактированием конфигурационного файла вручную. При внесении изменений в конфигурацию с помощью консоли, конфигурационный файл каждый раз перезаписывается полностью. Если закрыть консоль на время редактирования невозможно, то после внесений изменений в конфигурационный файлы следует обновлять консоль и только потом вносить изменения в конфигурацию.&lt;br/&gt;

 &lt;br/&gt;

Конфигурационный файл &lt;strong&gt;WebInterface.conf&lt;/strong&gt; находится в дирректории:&lt;br/&gt;

 - При использовании Microsoft Internet Information Services (IIS) обычно это директория &lt;strong&gt;C:\inetpub\wwwroot\Citrix\SiteName\conf&lt;/strong&gt;&lt;br/&gt;

 - На сервере приложений Java (например Apache Tomcat), это может быть такой путь: &lt;strong&gt;/usr/local/tomcat/webapps/Citrix/XenApp/WEB-INF&lt;/strong&gt;. После внесения изменений в конфигурационный файл сервера приложений Java, может потребоваться его перезапуск. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для добавления сервера с &lt;strong&gt;Citrix XML Service&lt;/strong&gt; в конфигурацию Web-интерфейса:&lt;br/&gt;

Например в конфигурации уже есть сервер, названный “rock” и теперь требуется добавить второй сервер. названный “roll”. Для этого нужно в файле &lt;strong&gt;WebInterface.conf&lt;/strong&gt; строку вида:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Farm1=rock,Name:Farm1,XMLPort:80,Transport:HTTP, SSLRelayPort:443,…&lt;/pre&gt;

&lt;p&gt;
Привести к виду:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Farm1=rock,roll,Name:Farm1,XMLPort:80,Transport:HTTP, SSLRelayPort:443,…&lt;/pre&gt;

&lt;p&gt;
То есть к параметру Farm1, через запятую дописать имя добавляемого сервера (“roll”). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0444\u0435\u0440\u043c\u044b \u043a Web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0444\u0435\u0440\u043c\u044b_\u043a_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e_\u0444\u0430\u0439\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:248,&amp;quot;range&amp;quot;:&amp;quot;398848-401886&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit249&quot; id=&quot;использование_workspace_control_совместно_с_integrated_authentication_methods_для_web-сайтов_xenapp&quot;&gt;Использование Workspace Control совместно с Integrated Authentication Methods для Web-сайтов XenApp&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-use-workspace-control-integrated-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-use-workspace-control-integrated-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-use-workspace-control-integrated-gransden.html&lt;/a&gt;&lt;br/&gt;

Следующий раздел применим только к сайтам XenApp Web sites. Если пользователи подключаются с помощью сквозной (pass-through) аутентификации, либо с помощью смарт-карт, то необходимо настроить доверительные отношения между сервером на котором исполняется Web-интерфейс и всеми прописанными на нем серверами &lt;strong&gt;Citrix XML Service&lt;/strong&gt;.&lt;br/&gt;

&lt;strong&gt;Citrix XML Service&lt;/strong&gt; передает информацию о ресурсах от серверов XenApp к серверу Web-интерфейса. Без доверительных отношений, кнопки &lt;strong&gt;Disconnect&lt;/strong&gt;, &lt;strong&gt;Reconnect&lt;/strong&gt;, и &lt;strong&gt;Log Off&lt;/strong&gt; будут неработоспособны дял пользователей, аутентифицированных с помощью сквозной (pass-through) аутентификации, либо с помощью смарт-карт.&lt;br/&gt;

Устанавливать доверительные отношения не нужно, если пользователи аутентифицируются серверами фермы или не используют сквозную аутнтификацию и аутентификацию с помощью смарт-карт.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если вы конфигурируете сервер для доверительных отношений к запросам &lt;strong&gt;Citrix XML Service&lt;/strong&gt;, то учтите следующее:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - После установления доверительных отношений аутентификацию пользователей осуществляет Web-сервер. Для повышения безопасности используйте IPSec, межсетевые экраны и другие технологии, повышающие безопасность. Доверительные отношения не нужны, если используется явная (explicit) аутентификация.&lt;br/&gt;

 - Включайте доверительные отношений только на серверах, которые непосредственно взаимодействуют с Web-интерфейсом. Эти серверы перечислены в консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt;, в задаче &lt;strong&gt;Server Farms&lt;/strong&gt;&lt;br/&gt;

 - Настраивайте технологии обеспечивающие безопасность таким образом, чтобы с серверами &lt;strong&gt;Citrix XML Service&lt;/strong&gt; могли взаимодействовать только сервер Web-интерфейса. Например, если &lt;strong&gt;Citrix XML Service&lt;/strong&gt; разделяет один порт с Microsoft Internet Information Services (IIS), то можно использовать ограничение IP-адресов, взаимодействующих с &lt;strong&gt;Citrix XML Service&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1.Log on to a server in the farm and click Start &amp;gt; All Programs &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Delivery Services Console.&lt;br/&gt;

2.In the left pane of the console, navigate to Citrix Resources &amp;gt; XenApp, expand the node for your farm, and click Policies.&lt;br/&gt;

3.In the details pane of the console, select the Computer tab and click New.&lt;br/&gt;

4.Enter a name and, optionally, a description for your new policy and click Next.&lt;br/&gt;

5.In the Categories list, click XML Service and, under Settings, select Trust XML requests and click Add.&lt;br/&gt;

6.Select Enabled and click OK. Click Next.&lt;br/&gt;

7.If required, apply filters to your policy to determine the circumstances under which it is applied and click Next.&lt;br/&gt;

8.Ensure that the Enable this policy checkbox is selected and click Save.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Workspace Control \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0441 Integrated Authentication Methods \u0434\u043b\u044f Web-\u0441\u0430\u0439\u0442\u043e\u0432 XenApp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435_workspace_control_\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e_\u0441_integrated_authentication_methods_\u0434\u043b\u044f_web-\u0441\u0430\u0439\u0442\u043e\u0432_xenapp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:249,&amp;quot;range&amp;quot;:&amp;quot;401887-405984&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit250&quot; id=&quot;создание_сайта_active_directory_federation_services&quot;&gt;Создание сайта Active Directory Federation Services&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-before-creating-ad-fs-sites-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-before-creating-ad-fs-sites-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-before-creating-ad-fs-sites-gransden.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0430\u0439\u0442\u0430 Active Directory Federation Services&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0441\u0430\u0439\u0442\u0430_active_directory_federation_services&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:250,&amp;quot;range&amp;quot;:&amp;quot;405985-406175&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit251&quot; id=&quot;конфигурирование_аутентификации_для_web-интерфейса&quot;&gt;9.7 - Конфигурирование аутентификации для Web-интерфейса&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;9.7 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0434\u043b\u044f Web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438_\u0434\u043b\u044f_web-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:251,&amp;quot;range&amp;quot;:&amp;quot;406176-406285&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit252&quot; id=&quot;доступные_типы_аутентификации&quot;&gt;Доступные типы аутентификации&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-authenticate-wrapper-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-authenticate-wrapper-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-authenticate-wrapper-gransden.html&lt;/a&gt;&lt;br/&gt;

Для Web-интерфейса можно сконфигурировать следующие типы аутнтификации:&lt;br/&gt;

 - Explicit (XenApp Web sites) или prompt (XenApp Services sites). Это явная аутентификация. ПОльзователм требуется входить с помощью Имени пользователя и Пароля, а также помощью User principal name (UPN) в формате user@domain.com, доменной аутентифиакции Microsoft или аутентификации  Novell Directory Services (NDS). Для сайтов XenApp Web sites, также доступны методы RSA SecurID и SafeWord. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit253&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: аутентификация Novell недоступна для серверов Web Interface for Java Application Servers и не поддерживается XenApp 6.0, XenApp 5.0 for Windows Server 2008 и XenDesktop. Но XenApp 6.0 совместим с Novell Domain Services for Windows.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table28&amp;quot;,&amp;quot;secid&amp;quot;:253,&amp;quot;range&amp;quot;:&amp;quot;407165-407487&amp;quot;} --&gt;
&lt;p&gt;
- Сквозная аутентификация (Pass-through). Пользователи могут аутентифицироваться учетными данными, с которыми они вошли в домен на своих клиентских устройствах. Пользователю не надо повторно вводить учетные данные, а их ресурсы конфигурируются автоматически. Кроме того, можно использоватб встроенную в Windows аутентификацию Kerberos. Если указана опция аутентификации Kerberos, но она прошла неудачно, то также не удастся авторизоваться и с помощью сквозной (pass-through) аутентификации. &lt;br/&gt;

 - Сквозная со смарт-картой (Pass-through with smart card). Пользователи аутентифицируются с помощью смарт-карты, считываемой на пользовательском устройстве. Если на пользовательском устройстве установлен Citrix online plug-in, у то при входе будет запрошен PIN смарт-карты. После входа, пользователь получит доступ к своим ресурсам без повторных запросов аутентификации. У пользователи подключающихся к сайтам XenApp Web sites PIN не запрашивается. Если вы конфигурируете сайт XenApp Services, то можно использовать встроенную в Windows аутентификацию Kerberos и для подключения к Web Interface, которая задействует смарт-карту, использованную для аутентификации на ферме.  Если указана опция аутентификации Kerberos, но она прошла неудачно, то также не удастся авторизоваться и с помощью сквозной (pass-through) аутентификации. &lt;br/&gt;

 - Смарт-карта (Smart card). ПОльзователи могут аутентифицироваться с помощью смарт-карт. У пользователя будет запрошен PIN смарт-карты. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit254&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Аутентификация Pass-through, pass-through with smart card и smart card недоступна при использовании Web Interface for Java Application Servers&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table29&amp;quot;,&amp;quot;secid&amp;quot;:254,&amp;quot;range&amp;quot;:&amp;quot;409998-410207&amp;quot;} --&gt;
&lt;p&gt;
 - Анонимная (Anonymous). Анонимные пользователи могут входить без указания учетных данных и использовать ресурсы, опубликованные для анонимных пользователей. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit255&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Важно: Анонимные пользователи могут получать тикеты Secure Gateway несмотря на то что они не аутентифицированы в Web Interface. Т.к. Secure Gateway полагается на Web Interface, который выдает тикеты только аутентифицированным пользователям - это компрометирует преимущества, которые предоставляет использование Secure Gateway.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table30&amp;quot;,&amp;quot;secid&amp;quot;:255,&amp;quot;range&amp;quot;:&amp;quot;410496-411042&amp;quot;} --&gt;&lt;div class=&quot;table sectionedit256&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: XenDesktop не поддерживает анонимных пользователей.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table31&amp;quot;,&amp;quot;secid&amp;quot;:256,&amp;quot;range&amp;quot;:&amp;quot;411044-411157&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0442\u0438\u043f\u044b \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435_\u0442\u0438\u043f\u044b_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:252,&amp;quot;range&amp;quot;:&amp;quot;406286-411158&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit257&quot; id=&quot;рекомендации_по_аутентификации&quot;&gt;Рекомендации по аутентификации.&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если вы планируете включить сквозную аутентифиакцию (со смарт-картой или без) или просто аутентификацию смарт-картой, учитывайте следующее:&lt;br/&gt;

 - Если пользователи логинятся на свои локальные компьютеры с помощью смарт-карт и вы хотите включить сквозную аутентификацию, то следует выбирать опцию &lt;strong&gt;Kerberos authentication&lt;/strong&gt;&lt;br/&gt;

 - Если пользователи логинятся на свои компьютеры с помощью явной (explicit) аутентификации, то для этих пользователей не следует включать сквозную (в том числе и со смарт-картой) аутентификацию для доступа к Web-интерфейсу. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit258&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Пользователи, которые вошли на локальный компьютер с логином и паролем (explicit), а затем осуществляют доступ к сайту XenApp, на котором настроена сквозная аутентификация со смарт-картой, то  при доступе к ресурсам они увидят диалог приветствия Windows (Welcome to Windows). Для того чтобы закрыть этот диалог пользователи должны нажать &lt;strong&gt;right-ALT (ALT GR) + DELETE&lt;/strong&gt;. Citrix рекомендует создавать отдельные сайты для пользователей, подключающихся с помощью смарт-карт и пользователей, использующих явную (explicit) аутентификацию. &lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table32&amp;quot;,&amp;quot;secid&amp;quot;:258,&amp;quot;range&amp;quot;:&amp;quot;412199-413128&amp;quot;} --&gt;
&lt;p&gt;
Если вы изменяете метод аутентификации, то пользователи имеющие открытые сессии могут получить сообщение об ошибке. Если кто-то из этих пользователей подключается через Web-браузер, то перед повторным входом им следует закрыть и снова запустить браузер.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u043f\u043e \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438_\u043f\u043e_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:257,&amp;quot;range&amp;quot;:&amp;quot;411159-413596&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit259&quot; id=&quot;использование_аутентификации_в_домене&quot;&gt;Использование аутентификации в домене&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-use-domain-authentication-gransden.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-use-domain-authentication-gransden.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/web-interface-impington/wi-use-domain-authentication-gransden.html&lt;/a&gt;&lt;br/&gt;

Если для входа пользователей используется явная (explicit) или prompt аутентификация, то для настройки аутентификации пользователей в домене Windows или Novel используйте задачу &lt;strong&gt;Authentication Methods&lt;/strong&gt; в консоли &lt;strong&gt;Citrix Web Interface Management&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1. Запустите консоль Citrix Web Interface Management (&lt;strong&gt;Пуск &amp;gt; Все программы &amp;gt; Citrix &amp;gt; Management Consoles &amp;gt; Citrix Web Interface Management&lt;/strong&gt;) &lt;br/&gt;

2. В левой части окна консоли выберите тип сайта - &lt;strong&gt;XenApp Web Sites&lt;/strong&gt; или &lt;strong&gt;XenApp Services Site&lt;/strong&gt; и выберите настраиваемый сайт. &lt;br/&gt;

3. В панели справа кликните &lt;strong&gt;Authentication Methods&lt;/strong&gt; и выберите Explicit, Promp и/или Pass-through.&lt;br/&gt;

4. Кликните &lt;strong&gt;Properties&lt;/strong&gt; и выберите &lt;strong&gt;Authentication Type&lt;/strong&gt;.&lt;br/&gt;

5. Выберите &lt;strong&gt;Windows or NIS (UNIX)&lt;/strong&gt;.&lt;br/&gt;

6. Укажите формат учетных данных для входа пользователей. Выберите одну из опций:&lt;br/&gt;

 - Ввод имен пользоватлей в формате Domain\User или UPN (user@domain.com) - опция &lt;strong&gt;Domain user name and UPN&lt;/strong&gt;&lt;br/&gt;

 - Ввод имен пользователей только в формате Domain\User - опция &lt;strong&gt;Domain user name only&lt;/strong&gt;&lt;br/&gt;

 - Ввод имен пользователей только в формате UPN (user@domain.com) - опция &lt;strong&gt;UPN only&lt;/strong&gt;&lt;br/&gt;

7. Кликните &lt;strong&gt;Settings&lt;/strong&gt;.&lt;br/&gt;

8. В зоне &lt;strong&gt;Domain Display&lt;/strong&gt; сконфигурируйте:&lt;br/&gt;

 - Выводить или нет поле для ввода имени домена на странице входа - &lt;strong&gt;Hide domain box&lt;/strong&gt; или &lt;strong&gt;Display domain box&lt;/strong&gt;.&lt;br/&gt;

 - Укажите должен ли список доменов быть заполнен по-умолчанию, либо пользователи должны сами вводить имя домена каждый раз. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit260&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Если пользователи при входе получают сообщение “Domain must be specified”, то возможно в поле домена ничего не введено. Для решения этой проблемы выберите &lt;strong&gt;Hide Domain box&lt;/strong&gt;. Если в ферму входят только серверы XenApp for UNIX, то следует выбрать &lt;strong&gt;Pre-populated&lt;/strong&gt; и добавить в список домен с именем - &lt;strong&gt;UNIX&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table33&amp;quot;,&amp;quot;secid&amp;quot;:260,&amp;quot;range&amp;quot;:&amp;quot;415901-416422&amp;quot;} --&gt;
&lt;p&gt;
 - Добавьте в список домены, которые будут появляться в диалоге входа. &lt;br/&gt;

9. В поле &lt;strong&gt;UPN Restriction&lt;/strong&gt; сконфигурируйте: &lt;br/&gt;

 - Все ли доменные суффиксы будут приниматься.&lt;br/&gt;

 - Укажате желаемые суффиксы UPN.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit261&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table34&amp;quot;,&amp;quot;secid&amp;quot;:261,&amp;quot;range&amp;quot;:&amp;quot;416768-417042&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0432 \u0434\u043e\u043c\u0435\u043d\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438_\u0432_\u0434\u043e\u043c\u0435\u043d\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:259,&amp;quot;range&amp;quot;:&amp;quot;413597-417044&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit262&quot; id=&quot;раздел_10решение_проблем&quot;&gt;Раздел 10: Решение проблем&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 10: \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_10\u0440\u0435\u0448\u0435\u043d\u0438\u0435_\u043f\u0440\u043e\u0431\u043b\u0435\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:262,&amp;quot;range&amp;quot;:&amp;quot;417045-417103&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit263&quot; id=&quot;решение_проблем_со_службой_ima&quot;&gt;10.1 - Решение проблем со службой IMA&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;10.1 - \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441\u043e \u0441\u043b\u0443\u0436\u0431\u043e\u0439 IMA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435_\u043f\u0440\u043e\u0431\u043b\u0435\u043c_\u0441\u043e_\u0441\u043b\u0443\u0436\u0431\u043e\u0439_ima&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:263,&amp;quot;range&amp;quot;:&amp;quot;417104-417174&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit264&quot; id=&quot;решение_проблем_с_запуском_ima&quot;&gt;Решение проблем с запуском IMA&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX105292&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX105292&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX105292&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c IMA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435_\u043f\u0440\u043e\u0431\u043b\u0435\u043c_\u0441_\u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c_ima&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:264,&amp;quot;range&amp;quot;:&amp;quot;417175-417286&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit265&quot; id=&quot;симптом&quot;&gt;Симптом&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Служба &lt;strong&gt;Independent Management Architecture (IMA) &lt;/strong&gt; не запускается.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0438\u043c\u043f\u0442\u043e\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0438\u043c\u043f\u0442\u043e\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:265,&amp;quot;range&amp;quot;:&amp;quot;417287-417399&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit266&quot; id=&quot;причины1&quot;&gt;Причины&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Причины, по которым IMA не стартует могут быть связаны с:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Время запуска IMA Service&lt;br/&gt;

Отсуствует временная директория Temp&lt;br/&gt;

Проблемы со службой диспетчера печати Print spooler service&lt;br/&gt;

Конфигурация ODBC&lt;br/&gt;

Roaming Profile&lt;br/&gt;

Другой сервер в сети имеет такое же имя NetBIOS&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u0447\u0438\u043d\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u0447\u0438\u043d\u044b1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:266,&amp;quot;range&amp;quot;:&amp;quot;417400-417860&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit267&quot; id=&quot;время_запуска_ima_service&quot;&gt;Время запуска IMA Service&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Если Менеджер управления службами (&lt;strong&gt;Service Control Manager&lt;/strong&gt;) сообщает что служба &lt;strong&gt;IMA Service&lt;/strong&gt; не может быть запущена, но служба все-таки стартует, несмотря на это сообщение. &lt;br/&gt;

Менеджер управления службами имеет таймаут 6 минут. Служба IMA может запускаться дольше 6 минут, если нагрузка на сервер с базой данных превышает возможности производительности компьютера, обрабатывающего базу данных или если в сети очень высокая задержка. Если вы считаете, что служба IMA ависла в состоянии запуска (“starting”), то можно просто завершить процесс &lt;strong&gt;ImaSrv.exe&lt;/strong&gt; в Диспетчере задач и снова запустить службу Citrix Independent Management Architecture. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Source: DSView&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX106232&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX106232&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX106232&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0440\u0435\u043c\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 IMA Service&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0440\u0435\u043c\u044f_\u0437\u0430\u043f\u0443\u0441\u043a\u0430_ima_service&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:267,&amp;quot;range&amp;quot;:&amp;quot;417861-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>книжка-xendesktop-5-6-cookbook</title>
            <link>https://wiki.autosys.tk/citrix/%D0%BA%D0%BD%D0%B8%D0%B6%D0%BA%D0%B0-xendesktop-5-6-cookbook</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;введение&quot;&gt;Введение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
XenDesktop 5.6 - это платформа виртуализации, которую можно использовать в двух вариантах: &lt;strong&gt;Machine Creation Services (MCS)&lt;/strong&gt; и &lt;strong&gt;Provisioning Services (PVS)&lt;/strong&gt;. &lt;br/&gt;

Модель &lt;strong&gt;Machine Creation Services (MCS)&lt;/strong&gt; предполагает, что  рабочие места и приложения публикуются на серверах виртуальных машин (XenServer или VmWare ESXi), а пользователи осуществляют доступ к ним в соответствиии с разрешениями.&lt;br/&gt;

Модель &lt;strong&gt;Provisioning Services (PVS)&lt;/strong&gt; предполагает наличие одного или нескольких образов рабочих мест, предоставляемых пользователям по требованию - загружаемых по сети работающих на компьютерах пользователей. &lt;br/&gt;

В обоих случаях сведения о рабочем окружении хранятся в базе данных Citrix под управлением Microsoft SQL Server. В ней содержатся сведения об инфраструктурных компонентах (Desktop Controller, Desktop Studio, Provisioning Services server), так и о ресурсах, например - виртуальных рабочих местах, доступ к которым предоставляется через web-портал - Web Interface.&lt;br/&gt;

Обе модели доступа к ресурсам могут сочетаться в рамках одной инсталляции. Этот подход называется &lt;strong&gt;Citrix FlexCast&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1785&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;в_каком_случае_лучше_использовать_mcs&quot;&gt;В каком случае лучше использовать MCS?&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
 - MCS это отличный выбор, если нужна только инфраструктура виртуальных рабочих столов (VDI). &lt;br/&gt;

 - Если количество виртуализируемых рабочих мест не превышает 2500. &lt;br/&gt;

 - MCS предпочтителен, если нужны не только стандартизованные рабочие места, но также требуется чтобы пользователи могла устанавливать свое ПО. &lt;br/&gt;

 - MCS предпочтителен, если требуется часто обновлять базовые образы рабочих мест. В отличие от PVS, где для обновления потребуются довольно сложные процедуры, в MCS обновления осуществляются довольно просто. &lt;br/&gt;

 - MCS разумно использовать когда имеется быстрое общее сетевое хранилище (shared storage), например - Network File System (NFS) или Storage Area Network (рекомендуется). MCS довольно требовательна к скорости ввода-вывода СХД. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для реализации модели MCS потребуются следующие компоненты:&lt;br/&gt;

 - Desktop Director&lt;br/&gt;

 - Desktop Controller&lt;br/&gt;

 - Web Interface&lt;br/&gt;

 - License server&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412 \u043a\u0430\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043b\u0443\u0447\u0448\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c MCS?&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432_\u043a\u0430\u043a\u043e\u043c_\u0441\u043b\u0443\u0447\u0430\u0435_\u043b\u0443\u0447\u0448\u0435_\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c_mcs&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1786-3348&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;в_каком_случае_рекомендуется_использовать_pvs&quot;&gt;В каком случае рекомендуется использовать PVS&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
 - Если нужно предоставлять не только виртуальные рабочие столы размещенные на сервере, а использовать вычислительные ресурсы компьютеров пользователей.&lt;br/&gt;

 - Когда есть несколько площадок, на каждой из которых более 2500 рабочих мест.&lt;br/&gt;

 - Когда нет производительного сетевого хранилища (СХД). В этом случае можно использовать преимущества кеширования PVS. &lt;br/&gt;

 - Когда есть много пользователей входящих в систему или выходящих из нее одновременно (явление известное как boot storm).  В этому случае PVS позволяет обойти ограничения СХД.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для реализации модели PVS потребуются следующие компоненты:&lt;br/&gt;

 - Desktop Director&lt;br/&gt;

 - Desktop Controller&lt;br/&gt;

 - Web Interface&lt;br/&gt;

 - License server&lt;br/&gt;

 - Citrix Provisioning Services&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Подход &lt;strong&gt;Citrix FlexCast&lt;/strong&gt; при котором сочетаются преимущества PVS и MCS позволяет получить наилучший результат в самых разнообразных условиях.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412 \u043a\u0430\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c PVS&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432_\u043a\u0430\u043a\u043e\u043c_\u0441\u043b\u0443\u0447\u0430\u0435_\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f_\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c_pvs&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;3349-4878&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;подготовка_базы_данных_sql&quot;&gt;Подготовка базы данных SQL&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Для работы XenDesktop 5.6  нужна база данных SQL. Поддерживаются следующие версии Microsoft SQL Server:&lt;br/&gt;

 - SQL Server 2008 Express Service Pack 1 (32 или64 bit)&lt;br/&gt;

 - SQL Server 2008 Service Pack 2 or 3 (32 или 64 bit)&lt;br/&gt;

 - SQL Server 2008 R2 Express (только 64 bit)&lt;br/&gt;

 - SQL Server 2008 R2 (только 64 bit)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Выбор версии MS SQL Server зависит от размеров инсталляции и требований к отказоустойчивости. Небольшие инсталляции могут ограничиться интегрированной версией MS SQL Server Express. &lt;br/&gt;

Если нужно обеспечить работу тысяч клиентов, то возможно понадобится кластер серверов MS SQL и более продвинутые версии.&lt;br/&gt;

Версия MS SQL Server Express интегрирована в дистрибутив и для того чтобы ее установить достаточно при установке выбрать опцию &lt;strong&gt;Install SQL Server Express&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Установка экземпляра MS SQL Server не вызывает сложностей. При установке по соображениям безопасности рекомендуется создавать именованный экземпляр SQL Server (MSSQLSERVER), который будет выделен для работы с XenDesktop.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
На сервере SQL необходимо создать базу данных со следующими параметрами: &lt;br/&gt;

 - Порядок сортировки (Collation sequence) - &lt;strong&gt;Latin1_General_CI_AS_KS&lt;/strong&gt;.&lt;br/&gt;

 - Аутентификация только Windows. XenDesktop не поддерживает аутентификацию SQL и смешанный режим (Mixed mode). &lt;br/&gt;

 - Разрешения такие:&lt;br/&gt;

&amp;lt;nobr&amp;gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;TABLE BORDER VALIGN=&amp;quot;top&amp;quot;&amp;gt;
        &amp;lt;TR&amp;gt;
                &amp;lt;TD&amp;gt;&amp;lt;b&amp;gt;Activity&amp;lt;/b&amp;gt;&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;&amp;lt;b&amp;gt;Server role&amp;lt;/b&amp;gt;&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;&amp;lt;b&amp;gt;Database role&amp;lt;/b&amp;gt;&amp;lt;/TD&amp;gt;
        &amp;lt;/TR&amp;gt;
        &amp;lt;TR&amp;gt;
                &amp;lt;TD&amp;gt;Database creation&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;dbcreator&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt; &amp;lt;/TD&amp;gt;
        &amp;lt;/TR&amp;gt;
         &amp;lt;TR&amp;gt;
                &amp;lt;TD&amp;gt;Schema creation&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;securityadmin&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;db_owner&amp;lt;/TD&amp;gt;
        &amp;lt;/TR&amp;gt;
&amp;lt;TR&amp;gt;
                &amp;lt;TD&amp;gt;Controller addition&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;securityadmin&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;db_owner&amp;lt;/TD&amp;gt;
        &amp;lt;/TR&amp;gt;
&amp;lt;TR&amp;gt;
                &amp;lt;TD&amp;gt;Controller removal&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt; &amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;db_owner&amp;lt;/TD&amp;gt;
        &amp;lt;/TR&amp;gt;
&amp;lt;TR&amp;gt;
                &amp;lt;TD&amp;gt;Schema update&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt; &amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;db_owner&amp;lt;/TD&amp;gt;
        &amp;lt;/TR&amp;gt;
&amp;lt;/TABLE&amp;gt;&lt;/pre&gt;

&lt;p&gt;
&amp;lt;/nobr&amp;gt;&lt;br/&gt;

Эти разрешения будут даны пользователю Windows, который будет выполнять конфигурирование с помощью Desktop Studio. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В качестве порядка сортировки (Collation sequence) можно выбрать не только &lt;strong&gt;Latin1_General_CI_AS_KS&lt;/strong&gt;, а любой порядок из группы &lt;strong&gt;*_CI_AS_KS&lt;/strong&gt;. &lt;br/&gt;

Следует внимательно следить за размером журнала транзакций базы данных. Размер самой базы данных не будет превышать 250 &lt;abbr title=&quot;Megabyte&quot;&gt;MB&lt;/abbr&gt; для нескольких тысяч пользователей, но вот размер журнала транзакций может расти очень быстро. &lt;br/&gt;

Следующая таблица поможет оценить размер файла базы и журнала в зависимости от количества пользователей:&lt;br/&gt;

&amp;lt;nobr&amp;gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;table border&amp;gt;
&amp;lt;tr&amp;gt;
&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Компонент&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Тип Данные/Журнал&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;Размер&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;
&amp;lt;/tr&amp;gt;
&amp;lt;tr&amp;gt;
&amp;lt;td&amp;gt;Регистрационная информация&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Данные&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;2.9 KB на рабочее место&amp;lt;/td&amp;gt;
&amp;lt;/tr&amp;gt;
&amp;lt;tr&amp;gt;
&amp;lt;td&amp;gt;Состояние сессии&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Данные&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5.1 KB на рабочее место&amp;lt;/td&amp;gt;
&amp;lt;/tr&amp;gt;
&amp;lt;tr&amp;gt;
&amp;lt;td&amp;gt;Учетные данные компьютера в AD&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Данные&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1.8 KB на рабочее место&amp;lt;/td&amp;gt;
&amp;lt;/tr&amp;gt;
&amp;lt;tr&amp;gt;
&amp;lt;td&amp;gt;Сведения о машине MCS&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Данные&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1.94 KB на рабочее место&amp;lt;/td&amp;gt;
&amp;lt;/tr&amp;gt;
&amp;lt;tr&amp;gt;
&amp;lt;td&amp;gt;Журнал транзакций для простаивающего рабочего места&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Журнал&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;62 KB в час&amp;lt;/td&amp;gt;
&amp;lt;/tr&amp;gt;
&amp;lt;/table&amp;gt;&lt;/pre&gt;

&lt;p&gt;
&amp;lt;/nobr&amp;gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В случае необходимости переконфигурирования (redeploy) одного или нескольких контроллеров Desktop Delivery Controller, в первую очередь следует очистить сконфигурированную базу данных Citrix XenDesktop, то есть обнулить сведения о подключениях компонентов Citrix. Это можно сделать с помощью команд &lt;strong&gt;Citrix PowerShell&lt;/strong&gt;:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Set-ConfigDBConnection -DBConnection $null
Set-AcctDBConnection -DBConnection $null
Set-HypDBConnection -DBConnection $null
Set-BrokerDBConnection -DBConnection $null&lt;/pre&gt;

&lt;p&gt;
После выполнения этих команд можно вручную удалить и заново создать базу данных.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 SQL&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430_\u0431\u0430\u0437\u044b_\u0434\u0430\u043d\u043d\u044b\u0445_sql&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;4879-10346&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit5&quot; id=&quot;установка&quot;&gt;Установка&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;10347-10377&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;установка_и_конфигурирование_сервера_лицензирования&quot;&gt;Установка и конфигурирование сервера лицензирования&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;div class=&quot;table sectionedit7&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Предполагается наличие у вас лицензий Citrix XenApp.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;10487-10595&amp;quot;} --&gt;
&lt;p&gt;
Запускам autorun  из дистрибутива, автоматически устанавливаются необходимые компоненты. В &lt;strong&gt;Citrix XenApp Role manager&lt;/strong&gt; жмем &lt;strong&gt;Add Or remove Server Roles&lt;/strong&gt; и устанавливаем сервер лицензирования. После установки, в меню &lt;strong&gt;Citrix XenApp Role manager&lt;/strong&gt; жмём &lt;strong&gt;Configure&lt;/strong&gt; рядом с &lt;strong&gt;License Server&lt;/strong&gt;. Он предлагает настроить порты:&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/licports.jpg&quot; class=&quot;media&quot; title=&quot;licports.jpg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/licports.jpg?w=200&amp;amp;tok=8ec4ac&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;License Server Port: 2700&lt;br/&gt;

Vendor Daemon Port: 7279&lt;br/&gt;

Management Console Web Port: 8082&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Порты менять не следует!&lt;br/&gt;

Задаём пароль админа и жмём ОК. &lt;strong&gt;License Server&lt;/strong&gt; помечен зелёной галочкой и перешёл в состояние &lt;strong&gt;Configured&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Также можно установить сервер лицензирования с помощью командной строки, задав все необходимые параметры:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;msiexec /I /qn INSTALLDIR=C:\LICSERVER LICSERVERPORT=27004 ADMINPASS=TestCase01&lt;/pre&gt;

&lt;p&gt;
Значения параметров:&lt;br/&gt;

&lt;strong&gt;/I&lt;/strong&gt; - Указываем msiexec, что надо начать установку.&lt;br/&gt;

&lt;strong&gt;/qn&lt;/strong&gt; - “Тихий” режим установки.&lt;br/&gt;

&lt;strong&gt;INSTALLDIR&lt;/strong&gt; - Указывет путь для установки. По-умолчанию - &lt;strong&gt;C:\Program files\Citrix\Licensing&lt;/strong&gt; или &lt;strong&gt;C:\Program files(x86)\Citrix\Licensing&lt;/strong&gt; для 32-х и 64-х битных систем. &lt;br/&gt;

&lt;strong&gt;LICSERVERPORT&lt;/strong&gt; - Задает порт, который будет прослушивать служба лицензирования Citrix. По-умолчанию - 27000.&lt;br/&gt;

&lt;strong&gt;ADMINPASS&lt;/strong&gt; - Задает пароль администратора. &lt;br/&gt;

&lt;strong&gt;VENDORDAEMONPORT&lt;/strong&gt; - Задает порт для компонента &lt;strong&gt;vendor daemon&lt;/strong&gt;. По-умолчанию - 7279.&lt;br/&gt;

&lt;strong&gt;MNGMTCONSOLEWEBPORT&lt;/strong&gt; - Порт на котором будет работать web-консоль. По-умолчанию - 8082.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После этого нужно добавить лицензию в сервер лицензирования. Для этого идём Пуск — Все программы — Citrix — Management Consoles — License Administration Console.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В открывшемся Web-интерфейсе, справа в углу жмём &lt;strong&gt;Administration&lt;/strong&gt;, и вводим пароль админа, который мы указали ранее. &lt;br/&gt;

Затем слева внизу переходим в раздел &lt;strong&gt;Vendor Daemon Configuration&lt;/strong&gt;, и жмём кнопку &lt;strong&gt;Import License&lt;/strong&gt;. &lt;br/&gt;

Выбираем наш файл лицензии, ставим галку &lt;strong&gt;Overwrite License File&lt;/strong&gt; (ведь лицензия у нас только эта), и жмём &lt;strong&gt;Import License&lt;/strong&gt;. &lt;br/&gt;

Далее жмём ОК, в списке лицензий выбираем нашу лицензию, и жмём кнопку &lt;strong&gt;Reread License&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u0438_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0435\u0440\u0432\u0435\u0440\u0430_\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;10378-13630&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;установка_xendesktop&quot;&gt;Установка  XenDesktop&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Основным элементом XenDesktop 5.6 является &lt;strong&gt;Desktop Director Controller&lt;/strong&gt; - сокращенно DDC. Этот компонент осуществляет взаимодействие с гипервизорами, управляет пулами виртуальных машин и предоставляет пользователям рабочее окружение. Этот компонент часто называют брокером (broker).&lt;br/&gt;

С ним взаимодействует &lt;strong&gt;Desktop Studio&lt;/strong&gt; - интерфейс управления, выполненный в виде оснастки windows. &lt;br/&gt;

И есть еще один важный элемент - &lt;strong&gt;Desktop Director&lt;/strong&gt; - основная консоль, которая предоставляет информацию  о производительности и использовании рабочих мест, а также управляет правами пользователей. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430  XenDesktop&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_xendesktop&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;13631-14677&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit9&quot; id=&quot;xendesktop_в_режиме_pvs&quot;&gt;XenDesktop в режиме PVS&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;XenDesktop \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 PVS&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xendesktop_\u0432_\u0440\u0435\u0436\u0438\u043c\u0435_pvs&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;14678-14718&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit10&quot; id=&quot;начало_работы&quot;&gt;Начало работы&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0447\u0430\u043b\u043e \u0440\u0430\u0431\u043e\u0442\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0447\u0430\u043b\u043e_\u0440\u0430\u0431\u043e\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;14719-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>centos_7_minimal_sssd_setup_script</title>
            <link>https://wiki.autosys.tk/linux_faq/centos_7_minimal_sssd_setup_script</link>
            <description>&lt;pre class=&quot;code&quot;&gt;#! /bin/bash

####################################
#### Variables
####################################
NEW_HOSTNAME=&amp;quot;centos-01&amp;quot;
NEW_DOMAINNAME=&amp;quot;test.com&amp;quot;
DNS_SERVERS=&amp;quot;192.168.246.130&amp;quot;
DNS_STATIC_SEARCHLIST=&amp;quot;$NEW_DOMAINNAME&amp;quot;
AD_USER=&amp;quot;usik-ma&amp;quot;
DOMAIN_CONTROLLERS=$(cat &amp;lt;&amp;lt;EOF
dc01.test.com
dc02.test.com
EOF
)
DEFAULT_REALM=&amp;quot;${NEW_DOMAINNAME^^}&amp;quot;
NETBIOS_DOMAIN_NAME=$(echo $DEFAULT_REALM | sed  &amp;#039;1,$ s/\..*//g&amp;#039;)
CA_CERT_PREFIX=&amp;quot;SberBank_Root_CA&amp;quot;

##############################################
### Disable IPv6
##############################################
cp /etc/sysctl.conf /etc/sysctl.conf.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
sed -i &amp;#039;/^net.ipv6.conf/D&amp;#039; /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.all.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.default.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.lo.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
sysctl -p
dhclient

##############################################
### Setting up Network
##############################################
hostnamectl set-hostname $NEW_HOSTNAME.$NEW_DOMAINNAME
sed -i &amp;#039;/^127./D&amp;#039; /etc/hosts
echo &amp;quot;127.0.0.1 $NEW_HOSTNAME.$NEW_DOMAINNAME $NEW_HOSTNAME localhost.localdomain localhost&amp;quot; | sudo tee -a /etc/hosts

echo &amp;quot;NETWORKING=yes&amp;quot; | sudo tee /etc/sysconfig/network
echo &amp;quot;HOSTNAME=$NEW_HOSTNAME.$NEW_DOMAINNAME&amp;quot; | sudo tee -a /etc/sysconfig/network
echo &amp;quot;SEARCH=$DNS_STATIC_SEARCHLIST&amp;quot; | sudo tee -a /etc/sysconfig/network

dnsnumber=1
for nameserver in $DNS_SERVERS; do
echo &amp;quot;DNS$dnsnumber=$nameserver&amp;quot; | sudo tee -a /etc/sysconfig/network
let &amp;quot;dnsnumber = dnsnumber + 1&amp;quot;
done

CONNECTIONS=$(nmcli -t -f NAME connection show)
for connection in $CONNECTIONS; do
nmcli con mod $connection connection.autoconnect yes
nmcli con mod $connection ipv4.dns-search $DNS_STATIC_SEARCHLIST
nmcli con mod $connection ipv4.ignore-auto-dns yes
sudo nmcli c modify $connection ipv4.dns &amp;#039;&amp;#039;
  for nameserver in $DNS_SERVERS; do
    nmcli c modify $connection +ipv4.dns $nameserver
  done
nmcli c down $connection
nmcli c up $connection
done
echo &amp;quot;Waiting for network...&amp;quot;
sleep 10

###########################################
### Add Corporate IronPort Certificates
###########################################
update-ca-trust force-enable
echo &amp;quot;Trying to reach ya.ru...&amp;quot;
ping -c 5 ya.ru &amp;amp;&amp;gt; /dev/null &amp;amp;&amp;amp; openssl s_client -showcerts -connect ya.ru:443 &amp;lt;/dev/null &amp;gt; chain.pem || exit
csplit -k -f $CA_CERT_PREFIX ./chain.pem &amp;#039;/END CERTIFICATE/+1&amp;#039; {10}
find ./ -iname $CA_CERT_PREFIX\* -type f -exec grep -F -L &amp;#039;END CERTIFICATE&amp;#039; &amp;#039;{}&amp;#039; + | xargs -d &amp;#039;\n&amp;#039; rm
for file in &amp;quot;$CA_CERT_PREFIX&amp;quot;* ; do sudo mv &amp;quot;$file&amp;quot; /etc/pki/ca-trust/source/anchors/&amp;quot;$file&amp;quot;.pem ; done
for file in /etc/pki/ca-trust/source/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ; do sudo cp &amp;quot;$file&amp;quot; /etc/ssl/certs/ ; done
update-ca-trust extract
rm -f ./chain.pem

####################################
#### Setup Software
####################################
yum -y update
yum -y install chrony nano yum-utils openssl
yum -y install realmd oddjob oddjob-mkhomedir sssd adcli samba-common-tools
yum -y groupinstall &amp;quot;X Window System&amp;quot; &amp;quot;Fonts&amp;quot; kde-desktop
yum -y groupinstall &amp;quot;Internet Browser&amp;quot; &amp;quot;Office Suite and Productivity&amp;quot;
#yum -y groupinstall &amp;quot;Graphical Administration Tools&amp;quot; &amp;quot;General Purpose Desktop&amp;quot; &amp;quot;Graphics Creation Tools&amp;quot;
systemctl set-default graphical.target
systemctl disable initial-setup-text
systemctl disable initial-setup-graphical

yum -y install --nogpgcheck  https://repo.yandex.ru/yandex-browser/rpm/beta/x86_64/yandex-browser-beta-17.1.1.773-1.x86_64.rpm
yum -y install --nogpgcheck https://tel.red/repos/redhat/7/noarch/telred-redhat-7-latest.el7.noarch.rpm
yum -y install --nogpgcheck http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-TELRED

yum -y update

yum -y install xorg-x11-server-Xvfb evolution evolution-ews evolution-plugins \
clamav yandex-browser-beta flash-plugin alsa-plugins-pulseaudio libcurl sky

#############################################
#### Setting sudo
#############################################
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/sudoers.d/domain_users
localuser       ALL=(ALL) ALL
%domain\ users\@$NEW_DOMAINNAME          ALL=(ALL) ALL
%domain\ users          ALL=(ALL) ALL
%domain\ admins\@$NEW_DOMAINNAME      ALL=(ALL) NOPASSWD: ALL
%domain\ admins      ALL=(ALL) NOPASSWD: ALL
EOF

sed -i &amp;quot;/^Defaults\ targetpw.*\$/ s/^/#/&amp;quot; /etc/sudoers
sed -i &amp;quot;/^Defaults\ env_reset.*\$/ s/\ env_reset/\ \!env_reset/&amp;quot; /etc/sudoers
sed -i &amp;quot;/^ALL.*ALL=(ALL).*\$/ s/^/#/&amp;quot; /etc/sudoers

#########################################
### Setup NTP servers
#########################################
sudo systemctl start chronyd.service
sed -i &amp;quot;/^pool.*\$/ s/^/#/&amp;quot; /etc/chrony.conf
sed -i &amp;quot;/^server.*\$/ s/^/#/&amp;quot; /etc/chrony.conf

for dc in $DOMAIN_CONTROLLERS;
do
echo &amp;quot;server $dc iburst&amp;quot; | sudo tee -a /etc/chrony.conf
done
sudo systemctl restart chronyd.service

########################################################
#### Setup Kerberos and Samba
########################################################
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
mv /etc/krb5.conf /etc/krb5.conf.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`

authconfig --smbsecurity=ads --smbworkgroup=$NETBIOS_DOMAIN_NAME \
--smbrealm=$DEFAULT_REALM --krb5realm=$DEFAULT_REALM \
--krb5kdc=$(echo $DOMAIN_CONTROLLERS | sed &amp;quot;s/\ /,/g&amp;quot;) --enablekrb5kdcdns \
--enablekrb5realmdns --update

sed -i &amp;quot;/^.*kerberos method =.*\$/ s/=.*$/= secrets and keytab/&amp;quot; /etc/samba/smb.conf
sed -i &amp;quot;/^.*template shell =.*\$/ s/=.*$/= \/bin\/bash/&amp;quot; /etc/samba/smb.conf
sed -i &amp;quot;/^.*winbind offline logon =.*\$/ s/=.*$/= yes/&amp;quot; /etc/samba/smb.conf
sed -i &amp;quot;/^.*winbind use default domain =.*\$/ s/=.*$/= yes/&amp;quot; /etc/samba/smb.conf

cat &amp;lt;&amp;lt;EOF &amp;gt;&amp;gt; /etc/samba/smb.conf

usershare max shares = 100
winbind refresh tickets = yes
encrypt passwords = yes

EOF

############################################################
### Enable Autostart apps
############################################################
mkdir --parents /etc/skel/.config/autostart/
cp /usr/share/applications/sky.desktop /etc/skel/.config/autostart/

#######################################################                                                                                                                                        
#### Import CA Certificates into Browsers                                                                                                                                                      
#   http://blog.xelnor.net/firefox-systemcerts/                                                                                                                                                
#######################################################                                                                                                                                        
HOMEDIR=$(getent passwd $SUDO_USER | cut -d: -f6)                                                                                                                                                                                                                                                                                                   
rm -Rf $HOMEDIR/.mozilla                                                                                                                                                                  
rm -Rf $HOMEDIR/.pki                                                                                                                                                                      
                                                                                                                                                                                               
########################################################                                                                                                                                       
#### Create and fill cert8.db in Firefox Profile                                                                                                                                               
########################################################                                                                                                                                       
killall firefox                                                                                                                                                                           
sudo -u  $SUDO_USER xvfb-run --server-args=&amp;quot;-screen 0, 1280x1024x24&amp;quot; firefox -CreateProfile default
FirefoxProfileDir=$(find $HOMEDIR&amp;#039;/.mozilla/firefox/&amp;#039; -iname &amp;#039;*.default&amp;#039;);
for certificateFile in /etc/pki/ca-trust/source/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ;
do
 certutil -A -n &amp;quot;${certificateFile}&amp;quot; -t &amp;quot;TCu,Cuw,Tuw&amp;quot; -i ${certificateFile} -d ${FirefoxProfileDir}
done
chmod -R a+rw $HOMEDIR/.mozilla/firefox/*

################################################################################
#### Import certificates into nssdb for Chromium engine
################################################################################
mkdir --parents $HOMEDIR/.pki/nssdb
echo 1q2w3e4r | sudo tee $HOMEDIR/.pki/nssdb/password-file
certutil -N -f $HOMEDIR/.pki/nssdb/password-file -d $HOMEDIR/.pki/nssdb
for certificateFile in /etc/pki/ca-trust/source/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ;
do
 certutil -f $HOMEDIR/.pki/nssdb/password-file -A -n &amp;quot;${certificateFile}&amp;quot; -t &amp;quot;TCu,Cuw,Tuw&amp;quot; -i ${certificateFile} -d sql:$HOMEDIR/.pki/nssdb
done
chmod -R a+rw $HOMEDIR/.pki/nssdb/*

#########################################################
### Copy databases with imported certs to default profile
#########################################################
rm -Rf /etc/skel/.pki/nssdb/*
rm -Rf /etc/skel/.mozilla/firefox/*
mkdir --parents /etc/skel/.pki/nssdb/
cp -Rf $HOMEDIR/.pki/nssdb/* /etc/skel/.pki/nssdb/
mkdir --parents /etc/skel/.mozilla/firefox/
cp -Rf $HOMEDIR/.mozilla/firefox/* /etc/skel/.mozilla/firefox/

#########################################################
### Disable KDEWallet By Default
#########################################################
mkdir --parents /etc/skel/.config/
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kwalletrc
[Wallet]
Enabled=false
EOF

mkdir --parents /etc/skel/.kde/share/config/
cp /etc/skel/.config/kwalletrc /etc/skel/.kde/share/config/kwalletrc

#################################################################
#### Add Launchers
#################################################################
#mkdir --parents /etc/skel/.kde/share/config/
#
#cat &amp;lt;&amp;lt;EOF &amp;gt; /ets/skel/.kde/share/config/plasma-desktop-appletsrc
#[Containments][1][Applets][5][Configuration][Launchers]
#Items=file:///opt/yandex/browser-beta/yandex_browser?wmClass=yandex-browser-beta%20%28%2Fhome%2Fmike%40test.com%2F.config%2Fyandex-browser-beta%29,file:///usr/share/applications/sky.desktop?wmClass=Sky,file:///usr/share/applications/kde4/konsole.desktop?wmClass=Konsole,file:///usr/share/applications/evolution.desktop?wmClass=Evolution
#EOF

##############################################
#### Join domain using SSSD
##############################################
#realm join -U $AD_USER $NEW_DOMAINNAME
&lt;/pre&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;setup_citrix_vda&quot;&gt;Setup Citrix VDA&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/bash
service postgresql initdb
CTX_XDL_SUPPORT_DDC_AS_CNAME=N \
CTX_XDL_DDC_LIST=&amp;quot;v-szud-ctxdc-01.sigma.sbrf.ru v-szud-ctxdc-02.sigma.sbrf.ru&amp;quot; \
CTX_XDL_VDA_PORT=80 \
CTX_XDL_REGISTER_SERVICE=Y \
CTX_XDL_ADD_FIREWALL_RULES=Y \
CTX_XDL_AD_INTEGRATION=4 \
CTX_XDL_HDX_3D_PRO=N \
CTX_XDL_VDI_MODE=Y \
CTX_XDL_SITE_NAME=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_LDAP_LIST=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_SEARCH_BASE=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_START_SERVICE=Y \
/opt/Citrix/VDA/sbin/ctxsetup.sh&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Setup Citrix VDA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;setup_citrix_vda&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;11297-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>centos_7_minimal_winbind_setup_script</title>
            <link>https://wiki.autosys.tk/linux_faq/centos_7_minimal_winbind_setup_script</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;script&quot;&gt;Script&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;#! /bin/bash

####################################
#### Variables
####################################
NEW_HOSTNAME=&amp;quot;centos-01&amp;quot;
NEW_DOMAINNAME=&amp;quot;test.com&amp;quot;
DNS_SERVERS=&amp;quot;192.168.246.130&amp;quot;
DNS_STATIC_SEARCHLIST=&amp;quot;$NEW_DOMAINNAME&amp;quot;
AD_USER=&amp;quot;usik-ma&amp;quot;
DOMAIN_CONTROLLERS=$(cat &amp;lt;&amp;lt;EOF
dc01.test.com
dc02.test.com
EOF
)
DEFAULT_REALM=&amp;quot;${NEW_DOMAINNAME^^}&amp;quot;
NETBIOS_DOMAIN_NAME=$(echo $DEFAULT_REALM | sed  &amp;#039;1,$ s/\..*//g&amp;#039;)
CA_CERT_PREFIX=&amp;quot;SberBank_Root_CA&amp;quot;

##############################################
### Disable IPv6
##############################################
cp /etc/sysctl.conf /etc/sysctl.conf.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
sed -i &amp;#039;/^net.ipv6.conf/D&amp;#039; /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.all.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.default.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
echo &amp;#039;net.ipv6.conf.lo.disable_ipv6 = 1&amp;#039; | sudo tee -a /etc/sysctl.conf
sysctl -p
dhclient

##############################################
### Setting up Network
##############################################
hostnamectl set-hostname $NEW_HOSTNAME.$NEW_DOMAINNAME
sed -i &amp;#039;/^127./D&amp;#039; /etc/hosts
sed -i &amp;#039;/^::1/D&amp;#039; /etc/hosts
echo &amp;quot;127.0.0.1 $NEW_HOSTNAME.$NEW_DOMAINNAME $NEW_HOSTNAME localhost.localdomain localhost&amp;quot; | sudo tee -a /etc/hosts

echo &amp;quot;NETWORKING=yes&amp;quot; | sudo tee /etc/sysconfig/network
echo &amp;quot;HOSTNAME=$NEW_HOSTNAME&amp;quot; | sudo tee -a /etc/sysconfig/network
echo &amp;quot;SEARCH=$DNS_STATIC_SEARCHLIST&amp;quot; | sudo tee -a /etc/sysconfig/network

dnsnumber=1
for nameserver in $DNS_SERVERS; do
echo &amp;quot;DNS$dnsnumber=$nameserver&amp;quot; | sudo tee -a /etc/sysconfig/network
let &amp;quot;dnsnumber = dnsnumber + 1&amp;quot;
done

CONNECTIONS=$(nmcli -t -f NAME connection show)
for connection in $CONNECTIONS; do
nmcli con mod $connection connection.autoconnect yes
nmcli con mod $connection ipv4.dns-search $DNS_STATIC_SEARCHLIST
nmcli con mod $connection ipv4.ignore-auto-dns yes
sudo nmcli c modify $connection ipv4.dns &amp;#039;&amp;#039;
  for nameserver in $DNS_SERVERS; do
    nmcli c modify $connection +ipv4.dns $nameserver
  done
nmcli c down $connection
nmcli c up $connection
done
echo &amp;quot;Waiting for network...&amp;quot;
sleep 10

echo &amp;quot;$NEW_HOSTNAME&amp;quot; | sudo tee /etc/hostname

###########################################
### Add Corporate IronPort Certificates
###########################################
update-ca-trust force-enable
echo &amp;quot;Trying to reach ya.ru...&amp;quot;
ping -c 5 ya.ru &amp;amp;&amp;gt; /dev/null &amp;amp;&amp;amp; openssl s_client -showcerts -connect ya.ru:443 &amp;lt;/dev/null &amp;gt; chain.pem || exit
csplit -k -f $CA_CERT_PREFIX ./chain.pem &amp;#039;/END CERTIFICATE/+1&amp;#039; {10}
find ./ -iname $CA_CERT_PREFIX\* -type f -exec grep -F -L &amp;#039;END CERTIFICATE&amp;#039; &amp;#039;{}&amp;#039; + | xargs -d &amp;#039;\n&amp;#039; rm
for file in &amp;quot;$CA_CERT_PREFIX&amp;quot;* ; do sudo mv &amp;quot;$file&amp;quot; /etc/pki/ca-trust/source/anchors/&amp;quot;$file&amp;quot;.pem ; done
for file in /etc/pki/ca-trust/source/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ; do sudo cp &amp;quot;$file&amp;quot; /etc/ssl/certs/ ; done
update-ca-trust extract
rm -f ./chain.pem

####################################
#### Setup Software
####################################
yum -y update
yum -y install chrony nano yum-utils openssl
yum -y install samba samba-winbind* authconfig samba-common-tools net-tools \
pam_krb5 bind-utils samba-winbind samba-winbind-clients krb5-workstation \
oddjob-mkhomedir
yum -y install cyrus-sasl cyrus-sasl-gssapi
yum -y groupinstall &amp;quot;X Window System&amp;quot; &amp;quot;Fonts&amp;quot; kde-desktop
yum -y groupinstall &amp;quot;Internet Browser&amp;quot; &amp;quot;Office Suite and Productivity&amp;quot;
#yum -y groupinstall &amp;quot;Graphical Administration Tools&amp;quot; \
#&amp;quot;General Purpose Desktop&amp;quot; &amp;quot;Graphics Creation Tools&amp;quot;
systemctl set-default graphical.target
systemctl disable initial-setup-text
systemctl disable initial-setup-graphical

yum -y install --nogpgcheck  https://repo.yandex.ru/yandex-browser/rpm/beta/x86_64/yandex-browser-beta-17.1.1.773-1.x86_64.rpm
yum -y install --nogpgcheck https://tel.red/repos/redhat/7/noarch/telred-redhat-7-latest.el7.noarch.rpm
yum -y install --nogpgcheck http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-TELRED

yum -y update

yum -y install xorg-x11-server-Xvfb evolution evolution-ews evolution-plugins \
clamav yandex-browser-beta flash-plugin alsa-plugins-pulseaudio libcurl sky

#############################################
#### Setting sudo
#############################################
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/sudoers.d/domain_users
localuser       ALL=(ALL) ALL
%domain\ users\@$NEW_DOMAINNAME          ALL=(ALL) ALL
%domain\ users          ALL=(ALL) ALL
%domain\ admins\@$NEW_DOMAINNAME      ALL=(ALL) NOPASSWD: ALL
%domain\ admins      ALL=(ALL) NOPASSWD: ALL
EOF

sed -i &amp;quot;/^Defaults\ targetpw.*\$/ s/^/#/&amp;quot; /etc/sudoers
sed -i &amp;quot;/^Defaults\ env_reset.*\$/ s/\ env_reset/\ \!env_reset/&amp;quot; /etc/sudoers
sed -i &amp;quot;/^ALL.*ALL=(ALL).*\$/ s/^/#/&amp;quot; /etc/sudoers

#########################################
### Setup NTP servers
#########################################
sudo systemctl start chronyd.service
sed -i &amp;quot;/^pool.*\$/ s/^/#/&amp;quot; /etc/chrony.conf
sed -i &amp;quot;/^server.*\$/ s/^/#/&amp;quot; /etc/chrony.conf

for dc in $DOMAIN_CONTROLLERS;
do
echo &amp;quot;server $dc iburst&amp;quot; | sudo tee -a /etc/chrony.conf
done
sudo systemctl restart chronyd.service

########################################################
#### Setup Kerberos and Samba
########################################################
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`
mv /etc/krb5.conf /etc/krb5.conf.bak_`date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;`

#########################################
### Setup Kerberos /etc/krb5.conf
#########################################
LIBDEFAULTS=$(cat &amp;lt;&amp;lt;EOF
[libdefaults]
dns_lookup_kdc = true
dns_lookup_realm = false
default_realm = $DEFAULT_REALM
clockskew = 300
default_ccache_name = FILE:/tmp/krb5cc_%{uid}
EOF
)

REALMS_KDC=$(for i in $DOMAIN_CONTROLLERS; do echo &amp;quot;kdc = $i&amp;quot;;done)

REALMS=$(cat &amp;lt;&amp;lt;EOF

[realms]
$DEFAULT_REALM = {
$REALMS_KDC
default_domain = $DEFAULT_REALM
}
EOF
)

DOMAIN_REALM=$(cat &amp;lt;&amp;lt;EOF

[domain_realm]
.$NEW_DOMAINNAME = $DEFAULT_REALM
$NEW_DOMAINNAME = $DEFAULT_REALM

[appdefaults]
pam = {
        ticket_lifetime = 1d
        renew_lifetime = 1d
        forwardable = true
        proxiable = false
        minimum_uid = 1
}
EOF
)

echo &amp;quot;$LIBDEFAULTS&amp;quot; &amp;gt; /etc/krb5.conf
echo &amp;quot;$REALMS&amp;quot; &amp;gt;&amp;gt; /etc/krb5.conf
echo &amp;quot;$DOMAIN_REALM&amp;quot; &amp;gt;&amp;gt; /etc/krb5.conf

########################################
#### Configure /etc/samba/smb.conf
########################################
SMB_CONF=$(cat &amp;lt;&amp;lt;EOF
# smb.conf is the main Samba configuration file. You find a full commented
# version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the
# samba-doc package is installed.
[global]
        workgroup = $NETBIOS_DOMAIN_NAME
        passdb backend = tdbsam
        map to guest = Bad User
        include = /etc/samba/dhcp.conf
        logon path = \\%L\profiles\.msprofile
        logon home = \\%L\%U\.9xprofile
        logon drive = P:
        usershare allow guests = No
        idmap gid = 10000-20000
        idmap uid = 10000-20000
        realm = $DEFAULT_REALM
        security = ADS
        template homedir = /home/%D/%U
        template shell = /bin/bash
        usershare max shares = 100
        winbind offline logon = no
        winbind refresh tickets = yes
        kerberos method = secrets and keytab
        winbind use default domain = yes
        encrypt passwords = yes
        dns proxy = no
        socket options = TCP_NODELAY
        domain master = no
        local master = no
        preferred master = no
        os level = 0
        domain logons = no
        load printers = no
        show add printer wizard = no
        printcap name = /dev/null
        disable spoolss = yes
EOF
)

echo &amp;quot;$SMB_CONF&amp;quot; &amp;gt; /etc/samba/smb.conf

########################################
#### Configure /etc/nsswitch.conf
########################################
sed -i &amp;#039;/^passwd:.*compat$/ s/$/ winbind/&amp;#039; /etc/nsswitch.conf
sed -i &amp;#039;/^group:.*compat$/ s/$/ winbind/&amp;#039; /etc/nsswitch.conf
sed -i &amp;#039;/^hosts:/ s/:.*$/: files dns/&amp;#039; /etc/nsswitch.conf

########################################
#### Configure /etc/security/pam_winbind.conf
########################################
sed -i &amp;quot;/^.*krb5_auth.*\$/ s/^.*krb5_auth.*\$/krb5_auth = yes/&amp;quot; /etc/security/pam_winbind.conf
sed -i &amp;quot;/^.*krb5_ccache_type.*\$/ s/^.*krb5_ccache_type.*\$/krb5_ccache_type = FILE/&amp;quot; /etc/security/pam_winbind.conf
sed -i &amp;quot;/^.*mkhomedir.*\$/ s/^.*mkhomedir.*\$/mkhomedir = yes/&amp;quot; /etc/security/pam_winbind.conf

systemctl enable smb
systemctl enable winbind
systemctl restart smb
systemctl restart winbind

############################################################
### Enable Autostart apps
############################################################
mkdir --parents /etc/skel/.config/autostart/
cp /usr/share/applications/sky.desktop /etc/skel/.config/autostart/

#######################################################                                                                                                                                        
#### Import CA Certificates into Browsers                                                                                                                                                      
#   http://blog.xelnor.net/firefox-systemcerts/                                                                                                                                                
#######################################################                                                                                                                                        
HOMEDIR=$(getent passwd $SUDO_USER | cut -d: -f6)                                                                                                                                                                                                                                                                                                   
rm -Rf $HOMEDIR/.mozilla                                                                                                                                                                  
rm -Rf $HOMEDIR/.pki                                                                                                                                                                      
                                                                                                                                                                                               
########################################################                                                                                                                                       
#### Create and fill cert8.db in Firefox Profile                                                                                                                                               
########################################################                                                                                                                                       
killall firefox                                                                                                                                                                           
sudo -u  $SUDO_USER xvfb-run --server-args=&amp;quot;-screen 0, 1280x1024x24&amp;quot; firefox -CreateProfile default
FirefoxProfileDir=$(find $HOMEDIR&amp;#039;/.mozilla/firefox/&amp;#039; -iname &amp;#039;*.default&amp;#039;);
for certificateFile in /etc/pki/ca-trust/source/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ;
do
 certutil -A -n &amp;quot;${certificateFile}&amp;quot; -t &amp;quot;TCu,Cuw,Tuw&amp;quot; -i ${certificateFile} -d ${FirefoxProfileDir}
done
chmod -R a+rw $HOMEDIR/.mozilla/firefox/*

################################################################################
#### Import certificates into nssdb for Chromium engine
################################################################################
mkdir --parents $HOMEDIR/.pki/nssdb
echo 1q2w3e4r | sudo tee $HOMEDIR/.pki/nssdb/password-file
certutil -N -f $HOMEDIR/.pki/nssdb/password-file -d $HOMEDIR/.pki/nssdb
for certificateFile in /etc/pki/ca-trust/source/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ;
do
 certutil -f $HOMEDIR/.pki/nssdb/password-file -A -n &amp;quot;${certificateFile}&amp;quot; -t &amp;quot;TCu,Cuw,Tuw&amp;quot; -i ${certificateFile} -d sql:$HOMEDIR/.pki/nssdb
done
chmod -R a+rw $HOMEDIR/.pki/nssdb/*

#########################################################
### Copy databases with imported certs to default profile
#########################################################
rm -Rf /etc/skel/.pki/nssdb/*
rm -Rf /etc/skel/.mozilla/firefox/*
mkdir --parents /etc/skel/.pki/nssdb/
cp -Rf $HOMEDIR/.pki/nssdb/* /etc/skel/.pki/nssdb/
mkdir --parents /etc/skel/.mozilla/firefox/
cp -Rf $HOMEDIR/.mozilla/firefox/* /etc/skel/.mozilla/firefox/

#########################################################
### Disable KDEWallet By Default
#########################################################
mkdir --parents /etc/skel/.config/
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kwalletrc
[Wallet]
Enabled=false
EOF

mkdir --parents /etc/skel/.kde/share/config/
cp /etc/skel/.config/kwalletrc /etc/skel/.kde/share/config/kwalletrc

#################################################################
#### Add Launchers
#################################################################
#mkdir --parents /etc/skel/.kde/share/config/
#
#cat &amp;lt;&amp;lt;EOF &amp;gt; /ets/skel/.kde/share/config/plasma-desktop-appletsrc
#[Containments][1][Applets][5][Configuration][Launchers]
#Items=file:///opt/yandex/browser-beta/yandex_browser?wmClass=yandex-browser-beta%20%28%2Fhome%2Fmike%40test.com%2F.config%2Fyandex-browser-beta%29,file:///usr/share/applications/sky.desktop?wmClass=Sky,file:///usr/share/applications/kde4/konsole.desktop?wmClass=Konsole,file:///usr/share/applications/evolution.desktop?wmClass=Evolution
#EOF

##############################################
#### Join domain using Samba-Winbind
##############################################
#net ads join -U $AD_USER
&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Script&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;script&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-13932&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;setup_citrix_vda_13&quot;&gt;Setup Citrix VDA 1.3&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/bash
systemctl enable postgresql.service
systemctl start postgresql
postgresql-setup initdb
CTX_XDL_SUPPORT_DDC_AS_CNAME=N \
CTX_XDL_DDC_LIST=&amp;quot;v-szud-ctxdc-01.sigma.sbrf.ru v-szud-ctxdc-02.sigma.sbrf.ru&amp;quot; \
CTX_XDL_VDA_PORT=80 \
CTX_XDL_REGISTER_SERVICE=Y \
CTX_XDL_ADD_FIREWALL_RULES=Y \
CTX_XDL_AD_INTEGRATION=1 \
CTX_XDL_HDX_3D_PRO=N \
CTX_XDL_VDI_MODE=Y \
CTX_XDL_SITE_NAME=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_LDAP_LIST=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_SEARCH_BASE=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_START_SERVICE=Y \
/opt/Citrix/VDA/sbin/ctxsetup.sh&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Setup Citrix VDA 1.3&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;setup_citrix_vda_13&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;13933-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>ubuntu_backup</title>
            <link>https://wiki.autosys.tk/linux_faq/ubuntu_backup</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;backup&quot;&gt;Backup&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В один поток:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo tar -cvpzf - --exclude=/mnt --exclude=/sys --exclude=/run --exclude=/dev --exclude=/proc --exclude=/media --exclude=/tmp --exclude=/var/log/lastlog --exclude=/home/local/RIMOS_NT_01/usikmi/Desktop/Shared --exclude=/home/local/RIMOS_NT_01/usikmi/Desktop/W  --exclude=/var/lib/libvirt/qemu/save/Win2008.save / | openssl enc -aes-192-cbc -pass pass:xxx -out /mnt/sdb1/backup_$(date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;).tar.gz.enc&lt;/pre&gt;

&lt;p&gt;
В несколько потоков с помощью &lt;strong&gt;pigz&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install pigz
sudo tar -cvpf - --use-compress-program=pigz --exclude=/mnt --exclude=/sys --exclude=/run --exclude=/dev --exclude=/proc --exclude=/media --exclude=/tmp --exclude=/var/log/lastlog --exclude=/home/local/RIMOS_NT_01/usikmi/Desktop --exclude=/var/lib/libvirt / | openssl enc -aes-192-cbc -pass pass:xxx -out /mnt/hdd/backup_$(date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;).tar.gz.enc&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Backup&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;backup&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-914&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;backup_по_расписанию&quot;&gt;Backup по расписанию&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Backup \u043f\u043e \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;backup_\u043f\u043e_\u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;915-961&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;etccrondailybackup&quot;&gt;/etc/cron.daily/backup&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Скрипт бекапит систему в заданную папку и следит за количеством файлов бекапа.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/bash
backup_depth_days=14
backup_path=&amp;#039;/mnt/hdd&amp;#039;
backup_prefix=&amp;#039;backup_&amp;#039;

backup_files=`ls $backup_path/$backup_prefix* -t`
backup_files=(${backup_files// / })

if [[ ${#backup_files[@]} -gt $backup_depth_days ]]; then
        for ((i = $backup_depth_days; i &amp;lt; ${#backup_files[@]}; i++))
        {
            sudo rm -r -f ${backup_files[$i]}
        }
fi

sudo tar -cvpf $backup_path/$backup_prefix$(date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;).tar.gz --use-compress-program=pigz --exclude=/mnt --exclude=/sys --exclude=/run --exclude=/dev --exclude=/proc --exclude=/media --exclude=/tmp --exclude=/var/log/lastlog --exclude=/home/RDLEAS/usik.ma/Downloads /&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\/etc\/cron.daily\/backup&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;etccrondailybackup&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;962-1802&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;restore&quot;&gt;Restore&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Загружаемся с Live-CD.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Restore&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;restore&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;1803-1860&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;восстановление_на_тот_же_раздел&quot;&gt;Восстановление на тот же раздел&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
При восстановлении на тот же раздел форматируем его с сохранением UUID (чтобы не переписывать &lt;strong&gt;/etc/fstab&lt;/strong&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mkfs.ext4 -L &amp;quot;label&amp;quot; -U &amp;quot;$(sudo blkid -o value -s UUID /dev/sdXy)&amp;quot; /dev/sdXy&lt;/pre&gt;

&lt;p&gt;
Монтируем раздел:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mkdir /mnt/restore
mount /dev/sdXy /mnt/restore&lt;/pre&gt;

&lt;p&gt;
Расшифровываем и распаковываем файлик бекапа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;openssl enc -in /mnt/sdb1/backup_.tar.gz.enc -d -aes-192-cbc -pass pass:1q2w3e4R1 | sudo tar --same-owner -xzvpf - -C /mnt/restore&lt;/pre&gt;

&lt;p&gt;
На всякий случай (не обязательно) восстанавливаем &lt;strong&gt;grub&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo grub-install --root-directory=/mnt/restore /dev/sdX&lt;/pre&gt;

&lt;p&gt;
Обязательно создаем снова папки, которые были исключены при копировании:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mkdir /mnt/restore/{mnt,sys,run,dev,proc,media,tmp}
sudo touch /mnt/restore/var/log/lastlog&lt;/pre&gt;

&lt;p&gt;
Даем права на /tmp (иначе не запустятся иксы):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo chmod -R a+rw /mnt/restore/tmp&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e\u0442 \u0436\u0435 \u0440\u0430\u0437\u0434\u0435\u043b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_\u043d\u0430_\u0442\u043e\u0442_\u0436\u0435_\u0440\u0430\u0437\u0434\u0435\u043b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;1861-3022&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;восстановление_на_другой_диск&quot;&gt;Восстановление на другой диск&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Разбиваем диск fdisk&amp;#039;ом.
Делаем загрузочный раздел активным.
Форматируем и монтируем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mkfs.ext4 /dev/sdXy
mount /dev/sdXy /mnt/restore&lt;/pre&gt;

&lt;p&gt;
Распаковываем файлик бекапа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;openssl enc -in /mnt/sdb1/backup_.tar.gz.enc -d -aes-192-cbc -pass pass:1q2w3e4R1 | sudo tar --same-owner -xzvpf - -C /mnt/restore&lt;/pre&gt;

&lt;p&gt;
Обязательно создаем снова папки, которые были исключены при копировании:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mkdir /mnt/restore/{mnt,sys,run,dev,proc,media,tmp}
sudo touch /var/log/lastlog&lt;/pre&gt;

&lt;p&gt;
Даем права на /tmp (иначе не запустятся иксы):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo chmod -R a+rw /tmp&lt;/pre&gt;

&lt;p&gt;
Обязательно восстанавливаем &lt;strong&gt;grub&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo grub-install --root-directory=/mnt/restore /dev/sdX&lt;/pre&gt;

&lt;p&gt;
После установки &lt;strong&gt;grub&lt;/strong&gt; нужно пересоздать файлик конфигурации &lt;strong&gt;/boot/grub/grub.cfg&lt;/strong&gt;. Без этого шага при загрузке будет появляться сообщение типа: &lt;br/&gt;

&lt;strong&gt;Gave up waiting for root device.&lt;/strong&gt; &lt;br/&gt;

&lt;strong&gt;ALERT: /dev/disk/by-uuid/… does not exist. Dropping to a shell!&lt;/strong&gt;.
Итак пересоздаем &lt;strong&gt;grub.cfg&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mount --bind /dev /mnt/restore/dev
sudo mount --bind /proc /mnt/restore/proc
sudo mount --bind /sys  /mnt/restore/sys
sudo chroot /mnt/restore
sudo mv /boot/grub/grub.cfg /boot/grub/grub.cfg.old
sudo grub-mkconfig -o /boot/grub/grub.cfg
exit&lt;/pre&gt;

&lt;p&gt;
И последний штрих - переписываем UUID разделов в &lt;strong&gt;/etc/fstab&lt;/strong&gt;, вернее в &lt;strong&gt;/mnt/restore/etc/fstab&lt;/strong&gt;.
Узнать новые UUID разделов можно командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;blkid /dev/sdXy&lt;/pre&gt;

&lt;p&gt;
Все. Теперь можно перезагрузиться в восстановленную систему. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0434\u0438\u0441\u043a&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_\u043d\u0430_\u0434\u0440\u0443\u0433\u043e\u0439_\u0434\u0438\u0441\u043a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;3023-4961&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit7&quot; id=&quot;проблемы_и_их_решения&quot;&gt;Проблемы и их решения&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0438 \u0438\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b_\u0438_\u0438\u0445_\u0440\u0435\u0448\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;4962-5013&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit8&quot; id=&quot;не_стартуют_иксы&quot;&gt;Не стартуют иксы&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Надо смотреть на ошибки, но скорее всего, нет доступа на запись в папку &lt;strong&gt;/tmp&lt;/strong&gt;
выпоняем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo chmod -R a+rw /tmp&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0435 \u0441\u0442\u0430\u0440\u0442\u0443\u044e\u0442 \u0438\u043a\u0441\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435_\u0441\u0442\u0430\u0440\u0442\u0443\u044e\u0442_\u0438\u043a\u0441\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;5014-5236&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;lightdm&quot;&gt;lightdm&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
При запуске KDE я столкнулся с проблемой запуска &lt;strong&gt;lightdm&lt;/strong&gt;. При старте не появляется &lt;strong&gt;Login Screen&lt;/strong&gt; где нужно выбрать пользователя и ввести пароль. Вместо него - черный экран.
При попытке запустить &lt;strong&gt;lightdm&lt;/strong&gt; он сообщает что: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Error getting user list from org.freedesktop.Accounts
Failed to execute program /usr/lib/dbus-1.0/dbus-daemon-launch-helper: Success&lt;/pre&gt;

&lt;p&gt;
Тут помогла простая переустановка всех пакетов связанных с &lt;strong&gt;Lightdm&lt;/strong&gt;. В моем случае так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install --reinstall liblightdm-gobject-1-0 liblightdm-qt-3-0 lightdm lightdm-kde-greeter&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;lightdm&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;lightdm&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;5237-6036&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;pbis_ad&quot;&gt;PBIS AD&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Кроме того, машинка была в домене и из домена вылетела. Вводим ее обратно с помощью &lt;strong&gt;PowerBroker&lt;/strong&gt; (&lt;strong&gt;PBIS&lt;/strong&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /opt/pbis/bin/domainjoin-cli join domainName ADjoinAccountName&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;PBIS AD&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;pbis_ad&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;6037-6304&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit11&quot; id=&quot;ошибка&quot;&gt;Ошибка&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;
Error getting authority: Error initializing authority: Error calling StartServiceByName for org.freedesktop.PolicyKit1: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/lib/dbus-1.0/dbus-daemon-launch-helper: Permission denied&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;chmod a+x /usr/lib/dbus-1.0/dbus-daemon-launch-helper&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0448\u0438\u0431\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0448\u0438\u0431\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;6305-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Sun, 12 Jan 2020 19:06:09 +0000</pubDate>
        </item>
        <item>
            <title>ubuntu_enable_hibernate</title>
            <link>https://wiki.autosys.tk/linux_faq/ubuntu_enable_hibernate</link>
            <description>&lt;pre class=&quot;code&quot;&gt;sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla&lt;/pre&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes&lt;/pre&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>boot_linux_on_amlogic_tv_box</title>
            <link>https://wiki.autosys.tk/android/boot_linux_on_amlogic_tv_box</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;о_чем_тут_написано&quot;&gt;О чем тут написано&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
У меня есть &lt;strong&gt;TV-Box&lt;/strong&gt; на базе &lt;strong&gt;Amlogic S905X3&lt;/strong&gt;, на котором я хочу запустить &lt;strong&gt;Linux&lt;/strong&gt; (без DE, в качестве микросервера). &lt;br/&gt;

Вот свежайшая версия: &lt;a href=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&lt;/a&gt; хотя написано, что S905X3 не поддерживается… &lt;br/&gt;

Вот тут люди обсуждают запуск armbian - &lt;a href=&quot;https://forum.armbian.com/topic/12348-armbian-for-amlogic-s905x3/&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/12348-armbian-for-amlogic-s905x3/&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.armbian.com/topic/12348-armbian-for-amlogic-s905x3/&lt;/a&gt; &lt;br/&gt;

Вот сборка какого-то ядра: &lt;a href=&quot;https://github.com/superna9999/meta-meson&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/superna9999/meta-meson&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/superna9999/meta-meson&lt;/a&gt; &lt;br/&gt;

Вот тут проект ядра для всех чипов Amlogic Meson (куда входит и S905X3): &lt;a href=&quot;http://linux-meson.com/doku.php&quot; class=&quot;urlextern&quot; title=&quot;http://linux-meson.com/doku.php&quot; rel=&quot;ugc nofollow&quot;&gt;http://linux-meson.com/doku.php&lt;/a&gt; &lt;br/&gt;

Вот процедура установки Armbian на TV Box на базе Amlogic: &lt;a href=&quot;https://www.ondroid.net/armbian-os-installation/&quot; class=&quot;urlextern&quot; title=&quot;https://www.ondroid.net/armbian-os-installation/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.ondroid.net/armbian-os-installation/&lt;/a&gt; (вот что делать с файлами драйверов dtb: &lt;a href=&quot;https://www.ondroid.net/armbian-os-uenv-ini-and-extlinux-conf/&quot; class=&quot;urlextern&quot; title=&quot;https://www.ondroid.net/armbian-os-uenv-ini-and-extlinux-conf/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.ondroid.net/armbian-os-uenv-ini-and-extlinux-conf/&lt;/a&gt;) &lt;br/&gt;

Вот тут написано как можно извлечь файл дерева устройств (dtb) из текущей прошивки: &lt;a href=&quot;https://cnx-software.ru/2015/12/07/how-to-run-headless-linux-on-amlogic-s905-devices-such-as-mini-mx-or-k1-plus/&quot; class=&quot;urlextern&quot; title=&quot;https://cnx-software.ru/2015/12/07/how-to-run-headless-linux-on-amlogic-s905-devices-such-as-mini-mx-or-k1-plus/&quot; rel=&quot;ugc nofollow&quot;&gt;https://cnx-software.ru/2015/12/07/how-to-run-headless-linux-on-amlogic-s905-devices-such-as-mini-mx-or-k1-plus/&lt;/a&gt; &lt;br/&gt;

Если коробка не загружается сразу с карты, то нужно делать так: &lt;a href=&quot;https://www.ondroid.net/armbian-os-troubleshootingboot/&quot; class=&quot;urlextern&quot; title=&quot;https://www.ondroid.net/armbian-os-troubleshootingboot/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.ondroid.net/armbian-os-troubleshootingboot/&lt;/a&gt; &lt;br/&gt;

Раскирпичивание убитых коробок: &lt;a href=&quot;https://www.ondroid.net/armbian-os-bricked-device-recovery/&quot; class=&quot;urlextern&quot; title=&quot;https://www.ondroid.net/armbian-os-bricked-device-recovery/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.ondroid.net/armbian-os-bricked-device-recovery/&lt;/a&gt; &lt;br/&gt;

Бекап eMMC: &lt;a href=&quot;https://www.ondroid.net/armbian-os-backing-up-emmc-nand-via-cli/&quot; class=&quot;urlextern&quot; title=&quot;https://www.ondroid.net/armbian-os-backing-up-emmc-nand-via-cli/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.ondroid.net/armbian-os-backing-up-emmc-nand-via-cli/&lt;/a&gt; &lt;br/&gt;

О U-Boot. Сборка и прочее на примере banana pi : &lt;a href=&quot;https://m.habr.com/ru/post/264259/&quot; class=&quot;urlextern&quot; title=&quot;https://m.habr.com/ru/post/264259/&quot; rel=&quot;ugc nofollow&quot;&gt;https://m.habr.com/ru/post/264259/&lt;/a&gt; &lt;br/&gt;

U-Boot manual: &lt;a href=&quot;https://www.denx.de/wiki/DULG/Manual&quot; class=&quot;urlextern&quot; title=&quot;https://www.denx.de/wiki/DULG/Manual&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.denx.de/wiki/DULG/Manual&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;http://www.denx.de/wiki/view/DULG/UBoot&quot; class=&quot;urlextern&quot; title=&quot;http://www.denx.de/wiki/view/DULG/UBoot&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.denx.de/wiki/view/DULG/UBoot&lt;/a&gt; &lt;br/&gt;

Создание Device Tree: &lt;a href=&quot;https://www.raspberrypi.org/documentation/configuration/device-tree.md&quot; class=&quot;urlextern&quot; title=&quot;https://www.raspberrypi.org/documentation/configuration/device-tree.md&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.raspberrypi.org/documentation/configuration/device-tree.md&lt;/a&gt; &lt;br/&gt;

Изменение объема памяти, резервируемого под gpu: &lt;a href=&quot;https://forum.armbian.com/topic/11203-fixed-changing-amlogic-gpu-ram-allocation-through-the-dtb&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/11203-fixed-changing-amlogic-gpu-ram-allocation-through-the-dtb&quot; rel=&quot;ugc nofollow&quot;&gt;тема на форуме&lt;/a&gt;, а вот &lt;a href=&quot;https://forum.armbian.com/topic/11203-fixed-changing-amlogic-gpu-ram-allocation-through-the-dtb/?do=findComment&amp;amp;comment=84608&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/11203-fixed-changing-amlogic-gpu-ram-allocation-through-the-dtb/?do=findComment&amp;amp;comment=84608&quot; rel=&quot;ugc nofollow&quot;&gt;а вот конкретный кусочек кода&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://hd-mediaplayers.ru/firmware-update-guide-tv-box-soc-amlogic/&quot; class=&quot;urlextern&quot; title=&quot;https://hd-mediaplayers.ru/firmware-update-guide-tv-box-soc-amlogic/&quot; rel=&quot;ugc nofollow&quot;&gt;Про прошивку амлоджиков разными тулзами&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e \u0447\u0435\u043c \u0442\u0443\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e_\u0447\u0435\u043c_\u0442\u0443\u0442_\u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-2616&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;сборка_образа_armbian_для_tv-box_hk1&quot;&gt;Сборка образа Armbian для TV-Box HK1&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Склонируем репозиторий:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;git clone https://github.com/armbian/build.git&lt;/pre&gt;

&lt;p&gt;
Сама плата HK1 естественно не поддерживается дистрибутивом, но построена на поддерживаемой платформе &lt;strong&gt;Amlogic S905X3&lt;/strong&gt; (&lt;strong&gt;meson-sm1&lt;/strong&gt;). &lt;br/&gt;

Чип на моей платформе обозначается как &lt;strong&gt;meson-sm1&lt;/strong&gt;. Чтобы собрать образ под этот чип над найти наиболее похожую плату из списка имеющихся. Для этого в директории, куда скачали репозиторий &lt;strong&gt;armbian&lt;/strong&gt; выполняем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;grep meson-sm1 ./config/boards/ -r&lt;/pre&gt;

&lt;p&gt;
На данный момент наиболее похоже на то что мне нужно выглядит файл &lt;strong&gt;odroidc4.conf&lt;/strong&gt;. &lt;br/&gt;

Собираю &lt;strong&gt;Ubuntu 22.04&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./compile.sh docker BOARD=odroidc4 BRANCH=current RELEASE=jammy BUILD_MINIMAL=yes BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no&lt;/pre&gt;

&lt;p&gt;
если при дефолтной ext4 возникают проблемы (как у меня), то можно собраться с f2fs в качестве рутовой системы:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./compile.sh docker BOARD=odroidc4 BRANCH=current RELEASE=jammy BUILD_MINIMAL=yes BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no ROOTFS_TYPE=f2fs FIXED_IMAGE_SIZE=32000&lt;/pre&gt;

&lt;p&gt;
На моем ноуте с процессором &lt;strong&gt;Ryzen 4800H&lt;/strong&gt; сборка в докере идет 47 минут (с учетом выкачивания всех зависимостей, канал 100Мбит/с), а после выкачивания зависимостей - 8 минут. &lt;br/&gt;

После того, как я подключился к консоли, дождался загрузки android&amp;#039;а, подключил флешку с файлом образа и выполнил:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dd if=/mnt/media_rw/8B32-FC48/Armbian_20.11.0-trunk_Odroidc4_focal_current_5.9.9_minimal.img of=/dev/block/mmcblk0 bs=1024k&lt;/pre&gt;

&lt;p&gt;
Бокс ожидаемо окрипичился :))) с таким сообщением (среди прочих):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;All ddr config failed...&lt;/pre&gt;

&lt;p&gt;
Судя по всему это значит, что параметры инициализации памяти, которые есть в новом загрузчике не подошли к моей железке. Вот тут: &lt;a href=&quot;https://github.com/3F/aml_s905_uboot&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/3F/aml_s905_uboot&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/3F/aml_s905_uboot&lt;/a&gt; я нашел как можно их взять из старого загрузчика и добавить в новый. План был такой - с помощью &lt;strong&gt;Amlogic USB Burning Tool&lt;/strong&gt; я прошью старую прошивку, а дальше - выдеру старого бутлоадера параметры для инциализации памяти. НО это не понадобилось!! &lt;br/&gt;

Оказалось, кнопка &lt;strong&gt;Reset&lt;/strong&gt; на моей коробке не работает (она в разъеме 3,5мм) и воспользоваться &lt;strong&gt;Amlogic USB Burning Tool&lt;/strong&gt; я не смогу. После подключения коробки USB-шнурком A-A к ноуту и подаче питания при зажатой (предполагаемой) кнопкой &lt;strong&gt;Reset&lt;/strong&gt; в настольной системе новое USB-устройство не появлялось, а в консоли всё тот же &lt;strong&gt;boot loop&lt;/strong&gt;. &lt;br/&gt;

Я внимательно изучил печатную плату возле чипа флешки, а также на обратную исторону и увидел пару контактных площадок. &lt;br/&gt;

Терять было нечего - с помощью &lt;strong&gt;dd&lt;/strong&gt; я залил на SD-карту в самое начало карты старый &lt;strong&gt;bootloader&lt;/strong&gt; (слава богу я сохранил все разделы со старой прошивкой), вставил в коробку SD-карту, подал питание и замкнул контактные площадки на обратной от чипа флехи стороне платы отверткой. &lt;br/&gt;

Вместо таких сообщений в начале лога:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;...
Board ID = 1
Set cpu clk to 24M
Set clk81 to 24M
Use GP1_pll as DSU clk.
DSU clk: 1200 Mhz
CPU clk: 1200 MHz
Set clk81 to 166.6M
eMMC boot @ 0
sw8 s
DDR driver_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:37
board id: 1
Load FIP HDR from eMMC, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
fw parse done
Load ddrfw from eMMC, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from eMMC, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
...&lt;/pre&gt;

&lt;p&gt;
Я увидел такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;...
Board ID = 1
Set cpu clk to 24M
Set clk81 to 24M
Use GP1_pll as DSU clk.
DSU clk: 1200 Mhz
CPU clk: 1200 MHz
Set clk81 to 166.6M
DDR driver_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:37
board id: 1
Load FIP HDR from SD, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
fw parse done
Load ddrfw from SD, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from SD, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
...&lt;/pre&gt;

&lt;p&gt;
Внезапно - она не нашла встроенный NAND-flash, но нашла опреативку, SD-карту и сначала загрузилась старым бутлоадером:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;...
U-Boot 2015.01 (Dec 14 2019 - 17:22:12)

DRAM:  3.8 GiB
Relocation Offset is: d6e50000
spi_post_bind(spifc): req_seq = 0
register usb cfg[0][1] = 00000000d7f3e528
NAND:  get_sys_clk_rate_mtd() 290, clock setting 200!
couldn`t found selected chip: 0 ready
NAND device id: 0 0 0 0 0 0 
No NAND device found!!!

...

card in
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 40000000
aml_sd_retry_refix[983]:delay = 0x0,gadjust =0x182000
[mmc_startup] mmc refix success
[mmc_init] mmc init success
Device: SDIO Port B
Manufacturer ID: 9f
OEM: 5449
Name:       
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 14.5 GiB
mmc clock: 40000000
Bus Width: 4-bit
** Unrecognized filesystem type **
Net:   dwmac.ff3f0000[KM]Error:f[keymanage_dts_parse]L307:not a fdt at 0x0000000001000000
MACADDR:02:00:00:16:1d:01(from chipid)

CONFIG_AVB2: null 
Start read misc partition datas!
Cannot find dev.
amlmmc cmd &amp;lt;NULL&amp;gt; failed&lt;/pre&gt;

&lt;p&gt;
Затем прошло что-то похожее на тестирование RAM, а потом - я увидел загрузку нового &lt;strong&gt;U-Boot&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;...

U-Boot 2020.04-armbian (Nov 21 2020 - 18:06:39 +0000) odroid-c4

Model: Hardkernel ODROID-C4
SoC:   Amlogic Meson SM1 (Unknown) Revision 2b:c (10:2)
DRAM:  3.8 GiB
MMC:   sd@ffe05000: 0, mmc@ffe07000: 1
In:    serial
Out:   serial
Err:   serial
Net:   
Warning: ethernet@ff3f0000 (eth0) using random MAC address - f6:fc:5c:62:17:95
eth0: ethernet@ff3f0000

...&lt;/pre&gt;

&lt;p&gt;
Эксперименты показали, что держать замкнутыми контакты нужно до момента появления строк:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cs0 DataBus test pass
cs0 AddrBus test pass&lt;/pre&gt;

&lt;p&gt;
А прд ними будет счетчик. &lt;br/&gt;

Затем - я извлек карту памяти и выключил-включил коробку - пошла загрузка с новым &lt;strong&gt;U-Boot&lt;/strong&gt; со встроенной флеш-памяти и далее при включении коробки (без карты памяти) стабильно запускался новый &lt;strong&gt;U-Boot&lt;/strong&gt; (что уже неплохо). &lt;br/&gt;

Дальше - я залил на карту пямяти собранный образ &lt;strong&gt;Armbian&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; dd if=./output/images/Armbian_20.11.0-trunk_Odroidc4_focal_current_5.9.9_minimal.img of=/dev/sda bs=1M&lt;/pre&gt;

&lt;p&gt;
вставил карту в коробку и включил. Началась загрузка с карты памяти. Сначала мне показалось, что ядро пока не стартует я видел только сообщение:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Starting kernel ...&lt;/pre&gt;

&lt;p&gt;
и дальше пусто. В конфиге &lt;strong&gt;build/config/bootscripts/boot-odroid-c4.ini&lt;/strong&gt; указано устройство консоли &lt;strong&gt;ttyS0&lt;/strong&gt;, а должно быть наверное ttyAML0
Но, судя по тому что моргание светодиодов у коробки  стало другим было похоже, что что-то там загружалось и через некоторое время увидел вот такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Starting kernel ...


odroidc4 login: root (automatic login)

  ___      _           _     _    ____ _  _   
 / _ \  __| |_ __ ___ (_) __| |  / ___| || |  
| | | |/ _` | &amp;#039;__/ _ \| |/ _` | | |   | || |_ 
| |_| | (_| | | | (_) | | (_| | | |___|__   _|
 \___/ \__,_|_|  \___/|_|\__,_|  \____|  |_|  
                                              
Welcome to Armbian 20.11.0-trunk Focal with Linux 5.9.9-meson64

No end-user support: built from trunk

System load:   3%               Up time:       0 min
Memory usage:  3% of 3.67G      IP:            
CPU temp:      33�°C            Usage of /:    1% of 114G&lt;/pre&gt;

&lt;p&gt;
и дальше - приглашение ввести новый пароль!! Система смогла нормально загрузиться с SD-карты!!!!!! Потом я выключил бокс, вытащил карту и система уже нормально загрузилась с внутреннего накопителя. Armbian сам себя установил. А отсутствие сообщений при загрузке ядра - это сокрее всего некорректные параметры запуска ядра. &lt;br/&gt;

К сожалению, в системе оказался не виден беспроводной модуль (наверное загружается не подходящий dtb). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0431\u043e\u0440\u043a\u0430 \u043e\u0431\u0440\u0430\u0437\u0430 Armbian \u0434\u043b\u044f TV-Box HK1&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0431\u043e\u0440\u043a\u0430_\u043e\u0431\u0440\u0430\u0437\u0430_armbian_\u0434\u043b\u044f_tv-box_hk1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;2617-12785&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;как_прошить_armbian_на_hk1box&quot;&gt;Как прошить Armbian на HK1BOX&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
В итоге порядок установки &lt;strong&gt;Armbian&lt;/strong&gt; на &lt;strong&gt;HK1BOX&lt;/strong&gt; вышел такой:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Подключился к консоли коробки, загрузил андроид и забекапил образы встроенной флехи целиком и разделов поотдельности. Нужен будет раздел &lt;strong&gt;bootloader&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Собрал образ и скопировал файл образа (именно как файл) на SD-карту. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Загрузился в дефолтный андроид, вставил SD-карту и залил файл образа с помощью dd на встроенную флешку.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Вытащил SD-карту и перезагрузил коробку - она загрузилась с новым U-Boot и ушла в &lt;strong&gt;boot loop&lt;/strong&gt; с ошибками инициализации памяти.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Залил на SD-карту с помощью &lt;strong&gt;dd&lt;/strong&gt; старый &lt;strong&gt;U-Boot bootloader&lt;/strong&gt;, вставил карту в коробку и замкнул контактики под встроенной флешкой. Система стартанула с SD-карты со старым &lt;strong&gt;U-Boot&lt;/strong&gt; и прописала во встроенную флеху (на которой уже новый U-Boot) параметры для инициализации памяти. Теперь система нормально стартует с новым U-Boot со встроенной флешки и способна загрузиться.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Готово
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Чтобы заработал Wi-Fi обращаем внимание &lt;a href=&quot;https://wiki.autosys.tk/android/boot_linux_on_amlogic_tv_box#fdt_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD_%D0%B2_u-boot&quot; class=&quot;urlextern&quot; title=&quot;https://wiki.autosys.tk/android/boot_linux_on_amlogic_tv_box#fdt_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD_%D0%B2_u-boot&quot; rel=&quot;ugc nofollow&quot;&gt;сюда&lt;/a&gt; 
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Немного осмелев и поняв, что убить коробку совсем не так уж просто я залил всю внутреннюю флеху нулями и повторил установку. Всё заработало.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u043f\u0440\u043e\u0448\u0438\u0442\u044c Armbian \u043d\u0430 HK1BOX&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u043f\u0440\u043e\u0448\u0438\u0442\u044c_armbian_\u043d\u0430_hk1box&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;12786-14863&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;обновление_armbian&quot;&gt;Обновление Armbian&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Тут описан НЕУДАЧНЫЙ опыт. Он привел к бутлупу, необходимости заливать образ через dd и замыкать тест-поинты на плате. &lt;br/&gt;

&lt;br/&gt;

При попытке обновить штатными средствами Ubuntu с groovy до jammy я столкнулся с тем, что скрипты обновления отказываются обновлять уже неподдерживаеймый релиз (groovy). &lt;br/&gt;

Выход - пересобрать jammy и перезалить его. &lt;br/&gt;

Но я решил попытаться просто заменить файлики на файловой системе. &lt;br/&gt;

Итак:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Заливаем с помощью dd на флешку новый Armbian
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Загружаем коробку (там старый Ubuntu groovy)
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;mount /dev/sda1 /mnt/USB/
cd /mnt/USB/
mount --bind /sys ./sys
mount --bind /dev ./dev
mount --bind /proc ./proc
swapoff -a
chroot /mnt/USB/ /bin/bash&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Монтируем старый корневой раздел, удаляем старые файлы и копируем новые:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;mkdir /mnt/newroot
mount /dev/mmcblk0p1 /mnt/newroot/
rm -Rf /mnt/newroot/*
rsync -avHAXS --exclude={&amp;quot;/dev/*&amp;quot;,&amp;quot;/proc/*&amp;quot;,&amp;quot;/sys/*&amp;quot;,&amp;quot;/tmp/*&amp;quot;,&amp;quot;/run/*&amp;quot;,&amp;quot;/mnt/*&amp;quot;,&amp;quot;/media/*&amp;quot;,&amp;quot;/lost+found&amp;quot;} /* /mnt/newroot/&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Теперь назачим рутом новый рут и обнлвим initamfs:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;mount --bind /sys /mnt/newroot/sys
mount --bind /proc /mnt/newroot/proc
mount --bind /dev /mnt/newroot/dev
chroot /mnt/newroot/ /bin/bash
update-initramfs -u
sync&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 ребутнемся &lt;pre class=&quot;code&quot;&gt;echo 1 &amp;gt; /proc/sys/kernel/sysrq &amp;amp;&amp;amp; echo b &amp;gt; /proc/sysrq-trigger&lt;/pre&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
В результате проделанных манипуляций - система отказалась грузиться со встроенной флехи (/dev/mmbblk1p1), но нормально грузится с USB-флешки. Загрузчик мы не меняли, но судя по строке в консоли:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Mainline bootargs: root=UUID=75e1723f-a20e-4cdd-afa0-ab27ff00c162 rootwait rootfstype=ext4 console=ttyAML0,115200 ...&lt;/pre&gt;

&lt;p&gt;
где &lt;strong&gt;root=UUID=75e1723f-a20e-4cdd-afa0-ab27ff00c162&lt;/strong&gt; - это как раз &lt;strong&gt;UUID&lt;/strong&gt; раздела на внешней флешке, а этот &lt;strong&gt;UUID&lt;/strong&gt; прописан в &lt;strong&gt;/boot/armbianEnv.txt&lt;/strong&gt;. То есть наверное нужно было проверить соответствет ли то что прописано в &lt;strong&gt;/boot/armbianEnv.txt&lt;/strong&gt; тому что выдаст &lt;strong&gt;blkid&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 Armbian&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_armbian&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;14864-17535&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;проблемы&quot;&gt;Проблемы&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;17536-17564&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;не_загружается_при_отсоединенной_последовательной_консоли&quot;&gt;не загружается при отсоединенной последовательной консоли&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;U-Boot&lt;/strong&gt; не загружает систему, если отключена консоль (кабель физически не подключен). &lt;br/&gt;

При подключении кабеля &lt;strong&gt;rs-232&lt;/strong&gt; в момент “зависания” там видно приглашение консоли &lt;strong&gt;U-Boot&lt;/strong&gt;. Всё выглядит так, как если бы загрузка прервалась по нажатию клавиши. &lt;br/&gt;

При нажатии &lt;strong&gt;Enter&lt;/strong&gt; в консоли &lt;strong&gt;U-Boot&lt;/strong&gt; должна выполниться последняя команда, но там в последней команде обычно бывал какой-то мусор, причем довольно часто разный. &lt;br/&gt;

Я сделал вывод, что скорее всего консоль не притянута к +3.3 и “шумит” - то есть самопроизвольно льет всякий мусор в &lt;strong&gt;RX&lt;/strong&gt;. Выход - в коробке между выводом &lt;strong&gt;V&lt;/strong&gt; (3.3V) и &lt;strong&gt;RX&lt;/strong&gt; припаять резистор 47-100кОм.  &lt;br/&gt;

И это помогло. Теперь всё нормально загружается. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043e\u0442\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043d\u0441\u043e\u043b\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435_\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f_\u043f\u0440\u0438_\u043e\u0442\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u043e\u0439_\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439_\u043a\u043e\u043d\u0441\u043e\u043b\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;17565-18858&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;не_смог_загрузить_образ&quot;&gt;Не смог загрузить образ&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Не смог загрузить образ, собранный вот так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./compile.sh docker BOARD=odroidc4 BRANCH=current RELEASE=groovy BUILD_MINIMAL=no BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no &lt;/pre&gt;

&lt;p&gt;
Хотя вот такой вариант грузился норм:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./compile.sh docker BOARD=odroidc4 BRANCH=current RELEASE=focal BUILD_MINIMAL=yes BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no&lt;/pre&gt;

&lt;p&gt;
Хотя имеет проблемы с работой &lt;strong&gt;systemd&lt;/strong&gt; и других программ. Веротяно - дело в версии &lt;strong&gt;glibc&lt;/strong&gt; или других библиотек. 
В итоге сейчас нормально заработал такой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./compile.sh docker BOARD=odroidc4 BRANCH=current RELEASE=groovy BUILD_MINIMAL=yes BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0435 \u0441\u043c\u043e\u0433 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043e\u0431\u0440\u0430\u0437&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435_\u0441\u043c\u043e\u0433_\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c_\u043e\u0431\u0440\u0430\u0437&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;18859-19746&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit8&quot; id=&quot;загрузка_с_sd-карты_для_переустановки_системы&quot;&gt;Загрузка с sd-карты для переустановки системы&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В скриптах загрузки &lt;strong&gt;U-Boot&lt;/strong&gt; из &lt;strong&gt;Armbian&lt;/strong&gt; обнаружил, что можно переключать загрузочные устройства - практически как в BIOS ПК. &lt;br/&gt;

Для того, чтобы стартануть с SD-карты нужно в консоли &lt;strong&gt;U-Boot&lt;/strong&gt; выполнить:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mmc rescan
mmc dev 0 
mmc info&lt;/pre&gt;

&lt;p&gt;
Убедиться, что под номером 0 видна SD-карта. И затем загрузиться с нее:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;run bootcmd_mmc0&lt;/pre&gt;

&lt;p&gt;
Предполагается, что на SD-карте будет образ, совместимый с текущими скриптами &lt;strong&gt;U-Boot&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0441 sd-\u043a\u0430\u0440\u0442\u044b \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430_\u0441_sd-\u043a\u0430\u0440\u0442\u044b_\u0434\u043b\u044f_\u043f\u0435\u0440\u0435\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438_\u0441\u0438\u0441\u0442\u0435\u043c\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;19747-20519&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;fdt_задан_в_u-boot&quot;&gt;fdt задан в U-Boot&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
После загрузки не заработал Wi-Fi. В логах видно, что загружается дефолтный файлик &lt;strong&gt;dtb&lt;/strong&gt; - &lt;strong&gt;meson-sm1-khadas-vim3l.dtb&lt;/strong&gt;, в котором, видимо, нет поддержки моего WiFi-адаптера &lt;strong&gt;HK5235F&lt;/strong&gt;, однако эта поддержка точно есть в &lt;strong&gt;dtb&lt;/strong&gt; для &lt;strong&gt;odroidc4&lt;/strong&gt;. Судя по скриптам Armbian, этот файл можно переназначить, но у меня не вышло. &lt;br/&gt;

В параметрах U-Boot жестко приписан путь к dtb
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;fdtfile=amlogic/meson-sm1-odroid-c4.dtb&lt;/pre&gt;

&lt;p&gt;
И на девайссе HK1BOX с этим &lt;strong&gt;dtb&lt;/strong&gt; не заработал &lt;strong&gt;Wi-Fi&lt;/strong&gt;. Я просто скопировал под этим именем dtb, с которым все работает, перезагрузился и Wi-Fi появился:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mv /boot/dtb/amlogic/meson-sm1-odroid-c4.dtb  /boot/dtb/amlogic/meson-sm1-odroid-c4.dtb_bak
cp /boot/dtb/amlogic/meson-sm1-khadas-vim3l.dtb /boot/dtb/amlogic/meson-sm1-odroid-c4.dtb
reboot&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;fdt \u0437\u0430\u0434\u0430\u043d \u0432 U-Boot&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;fdt_\u0437\u0430\u0434\u0430\u043d_\u0432_u-boot&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;20520-21645&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;попытка_загрузиться_с_альтернативным_dtb&quot;&gt;попытка загрузиться с альтернативным dtb&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Я скопировал хороший dtb (с которым все работает) и попытался подложить dtb, который извлек из прошивки.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mv /boot/dtb/amlogic/meson-sm1-odroid-c4.dtb /boot/dtb/amlogic/meson-sm1-odroid-c4.dtb_good
cp /home/mike/hk1.dtb /boot/dtb/amlogic/meson-sm1-odroid-c4.dtb &lt;/pre&gt;

&lt;p&gt;
В итоге - ядро грузиться отказалось. Чтобы исправить ситуацию - при загрузке жмем любую клавишу, чтобы попасть в shell U-Boot и дальше:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 переключаемся на загрузочную партицию:&lt;pre class=&quot;code&quot;&gt;mmc dev 1
mmc info
mmc part
mmc part 1&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 задаем значение переменной, чтобы использовать нормальный &lt;strong&gt;dtb&lt;/strong&gt; и грузимся:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;env set fdtfile amlogic/meson-sm1-odroid-c4.dtb_good
boot&lt;/pre&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f \u0441 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u043c dtb&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043f\u044b\u0442\u043a\u0430_\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f_\u0441_\u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u043c_dtb&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;21646-22649&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit11&quot; id=&quot;раскирпичивание&quot;&gt;Раскирпичивание&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Специально ради эксперимента я залил нулями весь внутренний флеш. &lt;br/&gt;

Восстановить коробку удалось так:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Заливаем на SD-карту старый бутлоадер. В самое начало. Это 4 Мб (8192 секторов).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Вставляем карту и включаем коробку - она будет пытаться загрузиться со встроенного флеша, но не сможет. На ходу замыкаю контакты под встроенным флешем - он отключается и начинается загрузка U-Boot. Жму пробелы, чтобы попасть в консоль &lt;strong&gt;U-Boot&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Когда загружен оригинальный &lt;strong&gt;U-boot&lt;/strong&gt; можно извлечь SD-карту и залить на нее универсальный образ для &lt;strong&gt;Arm64&lt;/strong&gt;, в котором ядро лежит на &lt;strong&gt;FAT&lt;/strong&gt;, так как родной бутлоадер может грузить ядро с &lt;strong&gt;FAT&lt;/strong&gt;. Образ берем, например, отсюда - &lt;a href=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&lt;/a&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 После того, как залит универсальный образ для &lt;strong&gt;Arm64&lt;/strong&gt;, нужно отредактировать его параметры загрузки в файлике &lt;strong&gt;uEnv.txt&lt;/strong&gt; в корне первого &lt;strong&gt;BOOT&lt;/strong&gt;-раздела. Если файлика &lt;strong&gt;uEnv.txt&lt;/strong&gt; нет, то нужно его создать руками. В моем случае они должны быть такие:&lt;pre class=&quot;code&quot;&gt;LINUX=/zImage
INITRD=/uInitrd
# aml s9xxx
FDT=/dtb/amlogic/meson-sm1-khadas-vim3l.dtb
APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0&lt;/pre&gt;

&lt;p&gt;
 Файл &lt;strong&gt;/dtb/amlogic/meson-sm1-khadas-vim3l.dtb&lt;/strong&gt; может отсустствовать, или для вашей системы может быть другим - надо подбирать. Я нашел этот файлик в образе, собранном для &lt;strong&gt;odroidc4&lt;/strong&gt;. Но, наверное, можно и взять тот, который был в составе прошивки Android.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Вставляем SD-карту в коробку и в консоли выполняем шаги, необходимые для загрузки системы (задаем смещения по которым будут загружены ядро, initrd и файл fdt, загружаем их и стартуем ядро):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# Обновляем список mmc девайсов.
mmc rescan

#Смотрим какие девайсы есть у нас
mmc list

# Выбираем первое устройство (обычно это устройство, с которого загрузился U-Boot)
mmc dev 0

# Убеждаемся что выбранное устройство - это карта памяти
mmc info

#Смотрим список разделов.
mmc part

# Загружаем систему
setenv fdt_addr_r 0x1000000
setenv env_addr 0x10400000
setenv kernel_addr_r 0x11000000
setenv ramdisk_addr_r 0x13000000

fatload mmc 0 ${env_addr} uEnv.txt
env import -t ${env_addr} ${filesize};
setenv bootargs ${APPEND};
fatload mmc 0 ${kernel_addr_r} ${LINUX}
fatload mmc 0 ${ramdisk_addr_r} ${INITRD};
fatload mmc 0 ${fdt_addr_r} ${FDT}
fdt addr ${fdt_addr_r}
booti ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r};&lt;/pre&gt;

&lt;p&gt;
 То есть фактически грузим систему с SD-карты.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Дальше я просто брал USB-флеху (нормальную отформатированную), копировал на нее файл img с образом только что собранной системы и заливал этот образ (вернее можно залить первые 4Мб, в которых лежит  U-Boot) на внутренний флеш.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Теперь уже занакомая ситуация. На внутреннем флеше есть новый U-Boot, но он не может инициализировать DDR-память. Я заливаю свежесобранный образ снова на SD-карту и следом заливаю на него U-Boot на стоковый.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Вставляю карту, стартую коробку - она уходит в  bootloop, замыкаю флеш - она грузится с SD-карты, инициализирует память, настройки DDR попадают на внутренний флеш и загружается новый Armbian с SD-карты. Новый Armbian сам заливает себя на внутренний флеш.
&lt;/p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0441\u043a\u0438\u0440\u043f\u0438\u0447\u0438\u0432\u0430\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0441\u043a\u0438\u0440\u043f\u0438\u0447\u0438\u0432\u0430\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;22650-27609&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit12&quot; id=&quot;неактуальное&quot;&gt;НЕАКТУАЛЬНОЕ&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Всё что написано ниже - заметки о моих первых попытках что-то залить в TV-Box HK1. Оно не очень уже актуально, но может кому-то поможет.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0415\u0410\u041a\u0422\u0423\u0410\u041b\u042c\u041d\u041e\u0415&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435\u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;27610-27884&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit13&quot; id=&quot;как_загружаться&quot;&gt;Как загружаться&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Скачиваем отсюда: &lt;a href=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/&lt;/a&gt; &lt;br/&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Заливаем на sd-карту с помощью dd.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 На компе монтируем раздел первый (boot).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Открываем файлик &lt;strong&gt;uEnv.txt&lt;/strong&gt;. В нем по-дефолту незакомментирвоаны строки &lt;strong&gt;rk-3399&lt;/strong&gt; - комментируем их и раскомментируем строки &lt;strong&gt;aml s9xxx&lt;/strong&gt;. &lt;strong&gt;APPEND&lt;/strong&gt; - оставляем как есть, а &lt;strong&gt;FDT&lt;/strong&gt; - прописываем &lt;pre class=&quot;code&quot;&gt;FDT=/dtb/amlogic/meson-sm1-khadas-vim3l.dtb&lt;/pre&gt;

&lt;p&gt;
В итоге файлик получается такой (если убрать все закоментированные строки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;LINUX=/zImage
INITRD=/uInitrd

FDT=/dtb/amlogic/meson-sm1-khadas-vim3l.dtb
APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Подключаем отладочную консоль. Запускаем железку и в моменты загрузки - жмем пробелыыыы - консоль выдаст приглашение для ввода команд &lt;strong&gt;uBoot&lt;/strong&gt;. ЗАгружемся с SD командой
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;run recovery_from_sdcard;&lt;/pre&gt;

&lt;p&gt;
 На самом деле это скрипт. Фактически, если отбрсить всякие if-then он делает следующее:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mmc rescan

setenv fdt_addr_r 0x1000000
setenv env_addr 0x10400000
setenv kernel_addr_r 0x11000000
setenv ramdisk_addr_r 0x13000000

fatload mmc 0 ${env_addr} uEnv.txt
env import -t ${env_addr} ${filesize};
setenv bootargs ${APPEND};
fatload mmc 0 ${kernel_addr_r} ${LINUX}
fatload mmc 0 ${ramdisk_addr_r} ${INITRD};
fatload mmc 0 ${fdt_addr_r} ${FDT}
fdt addr ${fdt_addr_r}
booti ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r};&lt;/pre&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;
разобратьэто все, можно если выполнить команду
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;printenv&lt;/pre&gt;

&lt;p&gt;
 и начать копать. &lt;br/&gt;

Загрузка начинается с выпонения того, что написано в &lt;strong&gt;bootcmd&lt;/strong&gt;. Чтобы &lt;strong&gt;printenv&lt;/strong&gt; выводил длинные строки целиком необходимо в терминале включить &lt;strong&gt;wrapping&lt;/strong&gt; в minicom это можно сделать нажав &lt;strong&gt;Ctrl-A&lt;/strong&gt;, затем &lt;strong&gt;Z&lt;/strong&gt; и затем &lt;strong&gt;W&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c\u0441\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c\u0441\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;27885-30413&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit14&quot; id=&quot;dtb&quot;&gt;dtb&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Нормально подошел &lt;strong&gt;meson-sm1-khadas-vim3l.dtb&lt;/strong&gt; с образа &lt;strong&gt;Armbian_19.11.5_Arm-64_eoan_current_5.5.0-rc6_20200127.img&lt;/strong&gt; &lt;br/&gt;

А вот результаты тестирования некоторых других &lt;strong&gt;dtb&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;meson-g12b-a311d-khadas-vim3.dtb - 3288MB, сеть есть, ВИДЕН mmcblk2 (Disk /dev/mmcblk2: 116.49 GiB).
meson-g12b-s922x-khadas-vim3.dtb - 3288MB, сеть есть, виден mmcblk2 (Disk /dev/mmcblk2: 116.49 GiB)
meson-sm1-khadas-vim3l.dtb 3288MB, сеть есть, виден mmcblk2 (Disk /dev/mmcblk2: 116.49 GiB)
meson-g12b-odroid-n2.dtb - сеть только провод, ВИДЕН mmcblk0 (Disk /dev/mmcblk0: 116.49 GiB)
meson-g12a-u200.dtb - 3288MB, сети нет вообще. Видны mmcblk0 (SD-карта) и mmcblk1 (Disk /dev/mmcblk1: 116.49 GiB)
meson-g12a-gt1-mini-a.dtb - 3256MB, сеть есть, не виден внутренний флеш
meson-g12a-sei510.dtb - 3256, сеть есть только WiFi, ВИДЕН mmcblk2, но не видно разделов на нем
meson-g12a-x96-max-rmii.dtb - 3288MB, сеть есть только WiFi, не виден внутренний флеш
meson-g12a-x96-max.dtb - 3256MB, сеть есть, не виден внутренний флеш
meson-g12b-gtking.dtb - 3288MB, сеть есть, не виден внутренний флеш
meson-g12b-ugoos-am6.dtb - 3288MB, сеть есть, не виден внутренний флеш&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt;LINUX=/zImage
INITRD=/uInitrd
FDT=/dtb.img
APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0&lt;/pre&gt;

&lt;p&gt;
Чтобы после установки на emmc логи systemd сыпались в консоль нужно дописать в строку запуска ядра в файлике &lt;strong&gt;/boot/uEnv.txt&lt;/strong&gt; параметр &lt;strong&gt;systemd.log_target=console&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;APPEND=root=LABEL=ROOT_EMMC rootflags=data=writeback rw console=ttyAML0,115200n8 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 systemd.log_target=console&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt;systemctl disable serial-getty@ttyS2.service&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;dtb&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;dtb&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:18,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;30414-32654&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit15&quot; id=&quot;hk1_box&quot;&gt;HK1 Box&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Отказалась загружаться с образа &lt;strong&gt;Armbian_19.11.3_Aml-g12_eoan_legacy_5.3.0_20191126.img&lt;/strong&gt; как с &lt;strong&gt;SD&lt;/strong&gt;-карты, так и с двух портов &lt;strong&gt;USB&lt;/strong&gt;. Это значит, что для того, чтобы загрузить ее с внешнего носителя нужно изменить настройки загрузчика &lt;strong&gt;U-Boot&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Поэтому - следуем &lt;a href=&quot;https://www.ondroid.net/armbian-os-troubleshootingboot/&quot; class=&quot;urlextern&quot; title=&quot;https://www.ondroid.net/armbian-os-troubleshootingboot/&quot; rel=&quot;ugc nofollow&quot;&gt; мануалам armbian&lt;/a&gt;. Вставляю карточку с &lt;strong&gt;armbian&lt;/strong&gt;, загружаюсь в &lt;strong&gt;Android&lt;/strong&gt; , иду в &lt;strong&gt;Apps&lt;/strong&gt;, нахожу там &lt;strong&gt;Update&lt;/strong&gt;, кликаю &lt;strong&gt;UpdateLocale&lt;/strong&gt; - &lt;strong&gt;Select&lt;/strong&gt;, выбираю &lt;strong&gt;BOOT/aml_autoscript.zip&lt;/strong&gt;, и кликаю &lt;strong&gt;Update&lt;/strong&gt;. Система перезагружается и я вижу меню &lt;strong&gt;bootloader&lt;/strong&gt;&amp;#039;а и ошибку:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Error!
Supported API: 3
charge_status 2, charged 1, status: SUCCESS, capacity 100
Finding update package...
Opening update package...
Verifying update package...
E:footer is wrong
Update package verification took 0.0 s (result 1).
E:signature verification failed
E:error: 21
Installation Aborted.&lt;/pre&gt;

&lt;p&gt;
Этот скрипт должен был скорректировать параметры загрузки &lt;strong&gt;U-Boot&lt;/strong&gt; и позволить загрузиться с &lt;strong&gt;sd&lt;/strong&gt;-карты, однако, судя по всему, установка неподписанных обновлений запрещена, поэтому нужно подключиться к консоли. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;HK1 Box&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;hk1_box&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:18,&amp;quot;secid&amp;quot;:15,&amp;quot;range&amp;quot;:&amp;quot;32655-34249&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit16&quot; id=&quot;подключение_к_отладочной_консоли_rs-232&quot;&gt;Подключение к отладочной консоли RS-232&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
На плате оказались “пятачки” с обозначениями &amp;#039;&lt;strong&gt;V R T G&lt;/strong&gt;&amp;#039; - видимо консоль. Я откопал старинный провод &lt;strong&gt;USB-COM&lt;/strong&gt; на базе &lt;strong&gt;pl2303&lt;/strong&gt;, с помощью которого я когда-то подключал &lt;strong&gt;Siemens ME45&lt;/strong&gt; к компу для выхода в интернет, припаял к плате &lt;strong&gt;TV-Box&lt;/strong&gt;&amp;#039;а три проводочка - &lt;strong&gt;G&lt;/strong&gt; (земля), &lt;strong&gt;R&lt;/strong&gt; и &lt;strong&gt;T&lt;/strong&gt; (прием и передача) и запустил &lt;strong&gt;minicom&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install -y minicom
sudo minicom -b 115200 -D /dev/ttyUSB0&lt;/pre&gt;

&lt;p&gt;
При включении &lt;strong&gt;TV-Box&lt;/strong&gt;&amp;#039;а в консоли &lt;strong&gt;minicom&lt;/strong&gt; побежали сообщения.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;system cmd  1.
SM1:BL:511f6b:81ca2f;FEAT:A0F83180:20282000;POC:F;RCY:0;EMMC:0;READ:0;0.0;CHK:0;
bl2_stage_init 0x01
bl2_stage_init 0x81
hw id: 0x0001 - pwm id 0x00
bl2_stage_init 0xc0
bl2_stage_init 0x02

L0:00000000
L1:00000703
L2:00008067
L3:15000020
S1:00000000
B2:20282000
B1:a0f83180

TE: 163073

BL2 Built : 20:29:41, Jun 18 2019. g12a ga659aac - luan.yuan@droid15-sz

Board ID = 1
Set cpu clk to 24M
Set clk81 to 24M
Use GP1_pll as DSU clk.
DSU clk: 1200 Mhz
CPU clk: 1200 MHz
Set clk81 to 166.6M
eMMC boot @ 0
sw8 s
DDR driver_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:37
board id: 1
Load FIP HDR from eMMC, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
fw parse done
Load ddrfw from eMMC, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from eMMC, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
PIEI prepare done
fastboot data load
00000000
emmc switch 1 ok
ddr saved addr:00016000
Load ddr parameter from eMMC, src: 0x02c00000, des: 0xfffd0000, size: 0x00001000, part: 0
00000000
emmc switch 0 ok
fastboot data verify
verify result: 0
enable_fast_boot
dmc_margin_rx==12 dmc_margin_tx==12 steps
DDR3 probe
ddr clk to 672MHz
Load ddrfw from eMMC, src: 0x0002c200, des: 0xfffd0000, size: 0x0000c000, part: 0

dmc_version 0001
Check phy result
INFO : End of initialization
INFO : Training has run successfully!
aml_ddr_fw_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:43
DDR cs0 size: 3928MB
DDR cs1 size: 0MB
DMC_DDR_CTRL: 0000002dDDR size: 3928MB
cs0 DataBus test pass
cs0 AddrBus test pass

non-sec scramble use zero key
ddr scramble enabled

100bdlr_step_size ps== 483
result report
boot times 2Enable ddr reg access
00000000
emmc switch 3 ok
BL2: rpmb counter: 0x00002374
00000000
emmc switch 0 ok
Load FIP HDR from eMMC, src: 0x00010200, des: 0x01700000, size: 0x00004000, part: 0
Load BL3X from eMMC, src: 0x00078200, des: 0x01768000, size: 0x000d0000, part: 0
bl2z: ptr: 05129330, size: 00001e40
0.0;M3 CHK:0;cm4_sp_mode 0
MVN_1=0x00000000
MVN_2=0x00000000
[Image: g12a_v1.1.3389-92241b5 2019-07-02 17:22:49 luan.yuan@droid15-sz]
OPS=0x10
ring efuse init
2b 0c 10 00 01 1d 16 00 00 0c 35 30 43 57 50 50 
[0.679256 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE:  BL31: v1.3(release):4fc40b1
NOTICE:  BL31: Built : 15:57:33, May 22 2019
NOTICE:  BL31: G12A normal boot!
NOTICE:  BL31: BL33 decompress pass
ERROR:   Error initializing runtime service opteed_fast


U-Boot 2015.01 (Dec 14 2019 - 17:22:12)

DRAM:  3.8 GiB
Relocation Offset is: d6e50000
spi_post_bind(spifc): req_seq = 0
register usb cfg[0][1] = 00000000d7f3e528
NAND:  get_sys_clk_rate_mtd() 290, clock setting 200!
NAND device id: 0 ff ff ff ff ff 
No NAND device found!!!
nand init failed: -6
get_sys_clk_rate_mtd() 290, clock setting 200!
NAND device id: 0 ff ff ff ff ff 
No NAND device found!!!
nand init failed: -6
MMC:   aml_priv-&amp;gt;desc_buf = 0x00000000d3e40a70
aml_priv-&amp;gt;desc_buf = 0x00000000d3e42db0
SDIO Port B: 0, SDIO Port C: 1
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
emmc/sd response timeout, cmd8, status=0x1ff2800
emmc/sd response timeout, cmd55, status=0x1ff2800
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 40000000
aml_sd_retry_refix[983]:delay = 0x0,gadjust =0x162000
[mmc_startup] mmc refix success
init_part() 297: PART_TYPE_AML
[mmc_init] mmc init success
      Amlogic multi-dtb tool
      Single dtb detected
start dts,buffer=00000000d3e45620,dt_addr=00000000d3e45620
get_partition_from_dts() 91: ret 0
      Amlogic multi-dtb tool
      Single dtb detected
parts: 17
00:      logo   0000000000800000 1
01:  recovery   0000000001800000 1
02:      misc   0000000000800000 1
03:      dtbo   0000000000800000 1
04:  cri_data   0000000000800000 2
05:     param   0000000001000000 2
06:      boot   0000000001000000 1
set has_boot_slot = 0
07:       rsv   0000000001000000 1
08:  metadata   0000000001000000 1
09:    vbmeta   0000000000200000 1
10:       tee   0000000002000000 1
11:    vendor   0000000014000000 1
12:       odm   0000000008000000 1
13:    system   0000000074000000 1
14:   product   0000000008000000 1
15:     cache   0000000046000000 2
16:      data   ffffffffffffffff 4
init_part() 297: PART_TYPE_AML
eMMC/TSD partition table have been checked OK!
crc32_s:0x1577dad == storage crc_pattern:0x1577dad!!!
crc32_s:0xee152b83 == storage crc_pattern:0xee152b83!!!
crc32_s:0x79f50f07 == storage crc_pattern:0x79f50f07!!!
mmc env offset: 0x4d400000 
In:    serial
Out:   serial
Err:   serial
reboot_mode=normal
[store]To run cmd[emmc dtb_read 0x1000000 0x40000]
_verify_dtb_checksum()-3406: calc 5d3b67d1, store 5d3b67d1
_verify_dtb_checksum()-3406: calc 5d3b67d1, store 5d3b67d1
dtb_read()-3623: total valid 2
update_old_dtb()-3604: do nothing
      Amlogic multi-dtb tool
      Single dtb detected
amlkey_init() enter!
[EFUSE_MSG]keynum is 4
vpu: clk_level in dts: 7
vpu: vpu_power_on
vpu: set clk: 666667000Hz, readback: 666666667Hz(0x100)
vpu: vpu_module_init_config
vpp: vpp_init
vpp: vpp osd2 matrix rgb2yuv..............
cvbs: cpuid:0x2b
Net:   dwmac.ff3f0000amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4

CONFIG_AVB2: null 
Start read misc partition datas!
info-&amp;gt;magic = 
info-&amp;gt;version_major = 1
info-&amp;gt;version_minor = 0
info-&amp;gt;slots[0].priority = 15
info-&amp;gt;slots[0].tries_remaining = 7
info-&amp;gt;slots[0].successful_boot = 0
info-&amp;gt;slots[1].priority = 14
info-&amp;gt;slots[1].tries_remaining = 7
info-&amp;gt;slots[1].successful_boot = 0
info-&amp;gt;crc32 = -1075449479
active slot = 0
wipe_data=successful
wipe_cache=successful
upgrade_step=2
reboot_mode:::: normal
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
hpd_state=0
edid preferred_mode is &amp;lt;NULL&amp;gt;[0]
hdr mode is 0
dv  mode is ver:0  len: 0
hdr10+ mode is 0
[OSD]load fb addr from dts:/meson-fb
[OSD]load fb addr from dts:/fb
[OSD]set initrd_high: 0x7f800000
[OSD]fb_addr for logo: 0x7f800000
[OSD]load fb addr from dts:/meson-fb
[OSD]load fb addr from dts:/fb
[OSD]fb_addr for logo: 0x7f800000
[OSD]VPP_OFIFO_SIZE:0xfff01fff
[CANVAS]canvas init
[CANVAS]addr=0x7f800000 width=3840, height=2160
[OSD]osd_hw.free_dst_data: 0,719,0,575
[OSD]osd1_update_disp_freescale_enable
vpp: vpp_matrix_update: 2
cvbs performance type = 9, table = 0
cvbs_config_hdmipll_g12a
cvbs_set_vid2_clk
vpp: sdr_mode = 0
vpp: Rx hdr_info.hdr_sup_eotf_smpte_st_2084 = 0
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
InUsbBurn
noSof
sof timeout, reset usb phy tuning
gpio: pin GPIOAO_3 (gpio 3) value is 1
Command: bcb uboot-command 
Start read misc partition datas!
BCB hasn&amp;#039;t any datas,exit!
Hit Enter or space or Ctrl+C key to stop autoboot -- :  0&lt;/pre&gt;

&lt;p&gt;
Для того, чтобы прервать загрузку и скорректировать параметры загрузки нужно понажимать пробел и появится приглашение консоли &lt;strong&gt;U-Boot&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Hit Enter or space or Ctrl+C key to stop autoboot -- :  0 
g12a_u219_v1#&lt;/pre&gt;

&lt;p&gt;
Теперь можно поглядеть текущие параметры загрузки. Чтоы длинные строки можно было увиждеть целиком - включаем перенос (Ctrl+a w). 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;g12a_u219_v1#printenv
EnableSelinux=permissive
Irq_check_en=0
active_slot=normal
avb2=0
baudrate=115200
bcb_cmd=get_avb_mode;get_valid_slot;
board_defined_bootup=bootup_X3
boot_part=boot
bootargs=init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xff803000 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 o
tg_device=0 reboot_mode_android=normal logo=osd0,loaded,0x3d800000 vout=576cvbs,enable panel_type=lcd_1 hdmitx=,444,8bit hdmimode=1080p60hz frac_rate_policy=1 hdmi_read
_edid=1 cvbsmode=576cvbs osd_reverse=0 video_reverse=0 irq_check_en=0 androidboot.selinux=permissive androidboot.firstboot=0 jtag=disable androidboot.hardware=amlogic a
ndroidboot.serialno=1234567890 mac=00:df:04:00:38:30 androidboot.mac=00:df:04:00:38:30
bootcmd=ddr_auto_fast_boot_check 6 0 0 50;run storeboot
bootdelay=1
bootup_offset=0x1137ad8
bootup_size=0x3f488a
cmdline_keys=if keyman init 0x1234; then if keyman read usid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.serialno=${usid};setenv serial ${usid};else s
etenv bootargs ${bootargs} androidboot.serialno=1234567890;setenv serial 1234567890;fi;if keyman read mac ${loadaddr} str; then setenv bootargs ${bootargs} mac=${mac} a
ndroidboot.mac=${mac};fi;if keyman read deviceid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.deviceid=${deviceid};fi;fi;
colorattribute=444,8bit
cvbs_drv=0
cvbsmode=576cvbs
display_bpp=16
display_color_bg=0
display_color_fg=0xffff
display_color_index=16
display_height=576
display_layer=osd0
display_width=720
dtb_mem_addr=0x1000000
ethact=dwmac.ff3f0000
ethaddr=00:df:04:00:38:30
factory_reset_poweroff_protect=echo wipe_data=${wipe_data}; echo wipe_cache=${wipe_cache};if test ${wipe_data} = failed; then run init_display; run storeargs;if mmcinfo
; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi; if test ${wipe_cache} = failed; then run init_display; ru
n storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi; 
fb_addr=0x3d800000
fb_height=1080
fb_width=1920
fdt_high=0x20000000
firstboot=0
frac_rate_policy=1
fs_type=rootfstype=ramfs
gatewayip=10.18.9.1
hdmi_read_edid=1
hdmimode=1080p60hz
hostname=arm_gxbb
init_display=get_rebootmode;echo reboot_mode:::: ${reboot_mode};if test ${reboot_mode} = quiescent; then setenv reboot_mode_android quiescent;run storeargs;setenv boota
rgs ${bootargs} androidboot.quiescent=1;osd open;osd clear;else if test ${reboot_mode} = recovery_quiescent; then setenv reboot_mode_android quiescent;run storeargs;set
env bootargs ${bootargs} androidboot.quiescent=1;osd open;osd clear;else setenv reboot_mode_android normal;run storeargs;hdmitx hpd;hdmitx get_preferred_mode;osd open;o
sd clear;imgread pic logo bootup $loadaddr;bmp display $bootup_offset;bmp scale;vout output ${outputmode};vpp hdrpkt;fi;fi;
initargs=init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xff803000 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 
initrd_high=7f800000
ipaddr=10.18.9.97
irremote_update=if irkey 2500000 0xe31cfb04 0xb748fb04; then echo read irkey ok!; if itest ${irkey_value} == 0xe31cfb04; then run update;else if itest ${irkey_value} ==
 0xb748fb04; then run update;\
fi;fi;fi;
jtag=disable
loadaddr=1080000
lock=10001000
mac=00:df:04:00:38:30
netmask=255.255.255.0
osd_reverse=0
otg_device=0
outputmode=576cvbs
panel_type=lcd_1
preboot=run bcb_cmd; run factory_reset_poweroff_protect;run upgrade_check;run init_display;run storeargs;run usb_burning;run upgrade_key;bcb uboot-command;run switch_bo
otmode;
reboot_mode=cold_boot
reboot_mode_android=normal
recovery_from_flash=get_valid_slot;echo active_slot: ${active_slot};if test ${active_slot} = normal; then setenv bootargs ${bootargs} ${fs_type} aml_dt=${aml_dt} recove
ry_part={recovery_part} recovery_offset={recovery_offset};if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then wipeisb; bootm ${loadaddr}; fi;else se
tenv bootargs ${bootargs} ${fs_type} aml_dt=${aml_dt} recovery_part=${boot_part} recovery_offset=${recovery_offset};if imgread kernel ${boot_part} ${loadaddr}; then boo
tm ${loadaddr}; fi;fi;
recovery_from_sdcard=if fatload mmc 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload mmc 0 ${loadaddr} recovery.img; then if fatload mmc 0 ${dtb_me
m_addr} dtb.img; then echo sd dtb.img loaded; fi;wipeisb; setenv bootargs ${bootargs} ${fs_type};bootm ${loadaddr};fi;
recovery_from_udisk=if fatload usb 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload usb 0 ${loadaddr} recovery.img; then if fatload usb 0 ${dtb_mem
_addr} dtb.img; then echo udisk dtb.img loaded; fi;wipeisb; setenv bootargs ${bootargs} ${fs_type};bootm ${loadaddr};fi;
recovery_offset=0
recovery_part=recovery
rpmb_state=1
sdc_burning=sdc_burn ${sdcburncfg}
sdcburncfg=aml_sdc_burn.ini
sdr2hdr=0
serial=1234567890
serverip=10.18.9.113
stderr=serial
stdin=serial
stdout=serial
storeargs=setenv bootargs ${initargs} otg_device=${otg_device} reboot_mode_android=${reboot_mode_android} logo=${display_layer},loaded,${fb_addr} vout=${outputmode},ena
ble panel_type=${panel_type} hdmitx=${cecconfig},${colorattribute} hdmimode=${hdmimode} frac_rate_policy=${frac_rate_policy} hdmi_read_edid=${hdmi_read_edid} cvbsmode=$
{cvbsmode} osd_reverse=${osd_reverse} video_reverse=${video_reverse} irq_check_en=${Irq_check_en}  androidboot.selinux=${EnableSelinux} androidboot.firstboot=${firstboo
t} jtag=${jtag}; setenv bootargs ${bootargs} androidboot.hardware=amlogic;run cmdline_keys;
storeboot=boot_cooling;get_system_as_root_mode;echo system_mode: ${system_mode};if test ${system_mode} = 1; then setenv bootargs ${bootargs} ro rootwait skip_initramfs;
else setenv bootargs ${bootargs} ${fs_type};fi;get_valid_slot;get_avb_mode;echo active_slot: ${active_slot};if test ${active_slot} != normal; then setenv bootargs ${boo
targs} androidboot.slot_suffix=${active_slot};fi;if test ${avb2} = 0; then if test ${active_slot} = _a; then setenv bootargs ${bootargs} root=/dev/mmcblk0p23;else if te
st ${active_slot} = _b; then setenv bootargs ${bootargs} root=/dev/mmcblk0p24;fi;fi;fi;if imgread kernel ${boot_part} ${loadaddr}; then bootm ${loadaddr}; fi;run storea
rgs; run update;
switch_bootmode=get_rebootmode;if test ${reboot_mode} = factory_reset; then setenv reboot_mode_android normal;run storeargs;run recovery_from_flash;else if test ${reboo
t_mode} = update; then setenv reboot_mode_android normal;run storeargs;run update;else if test ${reboot_mode} = quiescent; then setenv reboot_mode_android quiescent;run
 storeargs;setenv bootargs ${bootargs} androidboot.quiescent=1;else if test ${reboot_mode} = recovery_quiescent; then setenv reboot_mode_android quiescent;run storeargs
;setenv bootargs ${bootargs} androidboot.quiescent=1;run recovery_from_flash;else if test ${reboot_mode} = cold_boot; then setenv reboot_mode_android normal;run storear
gs;else if test ${reboot_mode} = fastboot; then setenv reboot_mode_android normal;run storeargs;fastboot;fi;fi;fi;fi;fi;fi;
try_auto_burn=update 700 750;
update=run usb_burning; run sdc_burning; if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;
upgrade_check=echo upgrade_step=${upgrade_step}; if itest ${upgrade_step} == 3; then run init_display; run storeargs; run update;else fi;
upgrade_key=if gpio input GPIOAO_3; then echo detect upgrade key; run update;fi;
upgrade_step=2
usb_burning=update 1000
video_reverse=0
wipe_cache=successful
wipe_data=successful

Environment size: 7754/65532 bytes&lt;/pre&gt;

&lt;p&gt;
Если при вставленной SD-карте выполнить:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;fatload mmc 0 1080000 zImage&lt;/pre&gt;

&lt;p&gt;
то успешно загружается в память ядро - файлик &lt;strong&gt;zImage&lt;/strong&gt; с первго раздела вставленной SD-карточки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;g12a_u219_v1#fatload mmc 0 1080000 zImage      
reading zImage
27871744 bytes read in 1520 ms (17.5 MiB/s)&lt;/pre&gt;

&lt;p&gt;
В данном случае &lt;strong&gt;1080000&lt;/strong&gt; - это значение переменной &lt;strong&gt;loadaddr&lt;/strong&gt; из вывода &lt;strong&gt;printenv&lt;/strong&gt;. &lt;br/&gt;

&lt;br/&gt;

Для того, чтоб запустить какое-либо cтороннее ядро нам нужен образ ядра и файл &lt;strong&gt;dtb&lt;/strong&gt; (&lt;strong&gt;DeviceTreeBlob&lt;/strong&gt;). Ядро у нас есть (на карте памяти), а &lt;strong&gt;dtb&lt;/strong&gt; нужно либо скомпилировать, либо - извлечь.&lt;br/&gt;

Вот &lt;strong&gt;# cat /proc/cmdline&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xff803000 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 otg_device
=0 reboot_mode_android=normal logo=osd0,loaded,0x3d800000 vout=1080p60hz,enable panel_type=lcd_1 hdmitx=,444,8bit hdmimode=1080p60hz frac_rate_policy=1 hdmi_read_edid=1
 cvbsmode=576cvbs osd_reverse=0 video_reverse=0 irq_check_en=0 androidboot.selinux=permissive androidboot.firstboot=0 jtag=disable androidboot.hardware=amlogic androidb
oot.serialno=1234567890 mac=00:df:04:00:38:30 androidboot.mac=00:df:04:00:38:30 ro rootwait skip_initramfs androidboot.dtbo_idx=0 --cmdline root=/dev/mmcblk0p18 buildva
riant=user&lt;/pre&gt;

&lt;p&gt;
С работающего андроида
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;console:/ # uname -a
Linux localhost 4.9.113 #1 SMP PREEMPT Sat Dec 14 17:30:12 CST 2019 armv7l&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 RS-232&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043a_\u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439_\u043a\u043e\u043d\u0441\u043e\u043b\u0438_rs-232&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:19,&amp;quot;secid&amp;quot;:16,&amp;quot;range&amp;quot;:&amp;quot;34250-52133&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit17&quot; id=&quot;извлечение_dtb_devicetreeblob&quot;&gt;Извлечение dtb (DeviceTreeBlob)&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.cnx-software.com/2014/05/12/how-to-extract-a-device-tree-file-from-android-firmware-files/&quot; class=&quot;urlextern&quot; title=&quot;https://www.cnx-software.com/2014/05/12/how-to-extract-a-device-tree-file-from-android-firmware-files/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.cnx-software.com/2014/05/12/how-to-extract-a-device-tree-file-from-android-firmware-files/&lt;/a&gt; &lt;br/&gt;

Чтобы извлечь &lt;strong&gt;dtb&lt;/strong&gt; из текущей прошивки нужно сделать образ раздела &lt;strong&gt;boot&lt;/strong&gt; или &lt;strong&gt;recovery&lt;/strong&gt; и распаковать его с помощью утилиты &lt;a href=&quot;https://enck.org/tools.html#split_bootimg&quot; class=&quot;urlextern&quot; title=&quot;https://enck.org/tools.html#split_bootimg&quot; rel=&quot;ugc nofollow&quot;&gt;split_bootimg.pl&lt;/a&gt;. У меня не получилось распаковать образ раздела &lt;strong&gt;boot&lt;/strong&gt; (распаковывался неполностью), но нормально распаковался образ раздела &lt;strong&gt;recovery&lt;/strong&gt;. &lt;br/&gt;

Для этого:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Подключаем к девайсу флешку и с помощью консоли монтируем ее (или если она (ext)FAT - она смонтируется сама в &lt;strong&gt;/mnt/media_rw/xxxx&lt;/strong&gt;):&lt;pre class=&quot;code&quot;&gt;mkdir /mnt/media_rw/USB
mount /dev/sda1 /mnt/media_rw/USB&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 И создаем образ раздела &lt;strong&gt;recovery&lt;/strong&gt; (или &lt;strong&gt;boot&lt;/strong&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dd if=/dev/block/recovery of=/mnt/media/USB/recovery.img&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Отмонтируем флеху, переносим файлик на комп и распаковываем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget wget https://gist.githubusercontent.com/jberkel/1087743/raw/5be96af0e1c1346678379b0c0f0330b71df51f25/split_bootimg.pl
chmod a+x ./split_bootimg.pl
./split_bootimg.pl ./recovery.img&lt;/pre&gt;

&lt;p&gt;
Кстати, извлечь этот файлик с помощью стандартных утилит &lt;a href=&quot;https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/android-serialport-api/android_bootimg_tools.tar.gz&quot; class=&quot;urlextern&quot; title=&quot;https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/android-serialport-api/android_bootimg_tools.tar.gz&quot; rel=&quot;ugc nofollow&quot;&gt;android_bootimg_tools&lt;/a&gt; не удалось. &lt;strong&gt;RamDisk&lt;/strong&gt; и &lt;strong&gt;kernel&lt;/strong&gt; извлекаются, а вот третий файлик - нет!
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 вывод будет примерно такой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Page size: 2048 (0x00000800)
Kernel size: 9531352 (0x00916fd8)
Ramdisk size: 6839445 (0x00685c95)
Second size: 78980 (0x00013484)
Board name: 
Command line: androidboot.dtbo_idx=0 --cmdline root=/dev/mmcblk0p18 buildvariant=user
Writing recovery.img-kernel ... complete.
Writing recovery.img-ramdisk.gz ... complete.
Writing recovery.img-second.gz ... complete.&lt;/pre&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Нужный нам файлик - &lt;strong&gt;recovery.img-second.gz&lt;/strong&gt; &lt;br/&gt;

Убедиться, что полученный файлик - это &lt;strong&gt;dtb&lt;/strong&gt; можно, декомпилировав его. Как это сделать - написано ниже.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 dtb (DeviceTreeBlob)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435_dtb_devicetreeblob&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:23,&amp;quot;secid&amp;quot;:17,&amp;quot;range&amp;quot;:&amp;quot;52134-54651&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit18&quot; id=&quot;изменение_аппаратных_настроек_в_файле_dtb_с_помощью_dtc&quot;&gt;Изменение аппаратных настроек в файле dtb с помощью DTC&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://pcminipro.ru/os/apparatnaya-konfiguratsiya-redaktirovanie-fajla-dtb-v-linux-s-yadrom-mainline-4-9-x/&quot; class=&quot;urlextern&quot; title=&quot;https://pcminipro.ru/os/apparatnaya-konfiguratsiya-redaktirovanie-fajla-dtb-v-linux-s-yadrom-mainline-4-9-x/&quot; rel=&quot;ugc nofollow&quot;&gt;https://pcminipro.ru/os/apparatnaya-konfiguratsiya-redaktirovanie-fajla-dtb-v-linux-s-yadrom-mainline-4-9-x/&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Установим &lt;strong&gt;DTC&lt;/strong&gt; (если он не установлен): &lt;pre class=&quot;code&quot;&gt;sudo apt-get install device-tree-compiler&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Преобразуем двоичный файл &lt;strong&gt;dtb&lt;/strong&gt; в редактируемый текстовый файл &lt;strong&gt;dts&lt;/strong&gt;: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dtc -b 0 -O dts -I dtb -o hk1_box.dts recovery.img-second.gz&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Редактируем то, что нам нужно в файле &lt;strong&gt;dts&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;nano hk1_box.dts&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Преобразуем отредактированный файл &lt;strong&gt;dts&lt;/strong&gt; в двоичный формат &lt;strong&gt;dtb&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dtc -b 0 -O dtb -I dts -o hk1_box.dtb hk1_box.dts&lt;/pre&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 \u0444\u0430\u0439\u043b\u0435 dtb \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e DTC&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445_\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a_\u0432_\u0444\u0430\u0439\u043b\u0435_dtb_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_dtc&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:18,&amp;quot;range&amp;quot;:&amp;quot;54652-55497&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit19&quot; id=&quot;изменение_объема_памяти_выделенной_видеоадаптеру&quot;&gt;Изменение объема памяти, выделенной видеоадаптеру&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Вот в таком кусочке кода (параметр &lt;strong&gt;size&lt;/strong&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;linux,cma 
	{
	compatible = &amp;quot;shared-dma-pool&amp;quot;;
	reusable; size = &amp;lt;0x0 0x2000000&amp;gt;;
	alignment = &amp;lt;0x0 0x400000&amp;gt;;
	linux,cma-default;
    };&lt;/pre&gt;

&lt;p&gt;
Задается объем памяти, выделенной видяхе. В данном случае выдляется 32Mb.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043c\u0430 \u043f\u0430\u043c\u044f\u0442\u0438, \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0432\u0438\u0434\u0435\u043e\u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u043e\u0431\u044a\u0435\u043c\u0430_\u043f\u0430\u043c\u044f\u0442\u0438_\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439_\u0432\u0438\u0434\u0435\u043e\u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:31,&amp;quot;secid&amp;quot;:19,&amp;quot;range&amp;quot;:&amp;quot;55498-55960&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit20&quot; id=&quot;изменение_доступного_объема_ram&quot;&gt;Изменение доступного объема RAM&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/?do=findComment&amp;amp;comment=101732&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/?do=findComment&amp;amp;comment=101732&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw-aarch64-armv8/?do=findComment&amp;amp;comment=101732&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;decompile your dtb with &amp;quot;dtc -I dtb -O dts meson-gxl-s905w-tx3-mini.dtb &amp;gt; meson-gxl-s905w-tx3-mini.dts&amp;quot; and then edit the dts file: change &amp;quot;reg = &amp;lt;0x0 0x0 0x0 0x40000000&amp;gt;;&amp;quot; in the memory@0 section to &amp;quot;reg = &amp;lt;0x0 0x0 0x0 0x80000000&amp;gt;;&amp;quot; and compile it back into a dtb: &amp;quot;dtc -I dts -O dtb meson-gxl-s905w-tx3-mini.dts &amp;gt; meson-gxl-s905w-tx3-mini.dtb&amp;quot;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043c\u0430 RAM&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0433\u043e_\u043e\u0431\u044a\u0435\u043c\u0430_ram&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:32,&amp;quot;secid&amp;quot;:20,&amp;quot;range&amp;quot;:&amp;quot;55961-56502&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit21&quot; id=&quot;загрузка&quot;&gt;Загрузка&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kernel load addr: 0x01080000
dtb load addr: 0x1000000&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:32,&amp;quot;secid&amp;quot;:21,&amp;quot;range&amp;quot;:&amp;quot;56503-56597&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit22&quot; id=&quot;последние_эксперименты&quot;&gt;Последние эксперименты&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw/&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw/&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.armbian.com/topic/12162-single-armbian-image-for-rk-aml-aw/&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://yadi.sk/d/_rQgn_FosYuW0g&quot; class=&quot;urlextern&quot; title=&quot;https://yadi.sk/d/_rQgn_FosYuW0g&quot; rel=&quot;ugc nofollow&quot;&gt;https://yadi.sk/d/_rQgn_FosYuW0g&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://yadi.sk/d/_rQgn_FosYuW0g/19.11.5/20200127&quot; class=&quot;urlextern&quot; title=&quot;https://yadi.sk/d/_rQgn_FosYuW0g/19.11.5/20200127&quot; rel=&quot;ugc nofollow&quot;&gt;https://yadi.sk/d/_rQgn_FosYuW0g/19.11.5/20200127&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;setenv kernel_addr_r 0x11000000; setenv ramdisk_addr_r 0x13000000; setenv fdt_addr_r 0x1000000; setenv devnum &amp;quot;0&amp;quot;; setenv devtype &amp;quot;mmc&amp;quot;; setenv androidboot.dtbo_idx 0;
fatload ${devtype} ${devnum} ${loadaddr} uEnv.txt; env import -t ${loadaddr} ${filesize}; setenv bootargs ${APPEND}; setenv bootargs ${bootargs} mac=${mac}; fatload ${devtype} ${devnum} ${kernel_addr_r} ${LINUX}; fatload ${devtype} ${devnum} ${ramdisk_addr_r} ${INITRD}; fatload ${devtype} ${devnum} ${fdt_addr_r} ${FDT}; fdt addr ${fdt_addr_r}; booti ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}; &lt;/pre&gt;

&lt;p&gt;
Настройки (bootargs и dtb) лежат в файлике &lt;strong&gt;uEnv.txt&lt;/strong&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;setenv androidboot.dtbo_idx 0; run recovery_from_sdcard;&lt;/pre&gt;

&lt;p&gt;
В оригинале загружается содержимое раздела boot и хапускается, а там указан &lt;strong&gt;androidboot.dtbo_idx&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;imgread kernel ${boot_part} ${loadaddr}
bootm ${loadaddr}&lt;/pre&gt;

&lt;p&gt;
Вероятно, можно просто перепаковать??? boot.img - &lt;a href=&quot;https://www.whitewinterwolf.com/posts/2016/08/11/how-to-unpack-and-edit-android-boot-img/&quot; class=&quot;urlextern&quot; title=&quot;https://www.whitewinterwolf.com/posts/2016/08/11/how-to-unpack-and-edit-android-boot-img/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.whitewinterwolf.com/posts/2016/08/11/how-to-unpack-and-edit-android-boot-img/&lt;/a&gt; &lt;br/&gt;

Или просто добавить этот параметр к строке запуска ядра как тут:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[    0.000000] Kernel command line: androidboot.mode=normal androidboot.dtbo_idx=0 root=PARTUUID=af01642c-9b84-11e8-9b2a-234eb5e198a0 androidboot.verifiedbootstate=orange androidboot.slot_suffix= androidboot.serialno=HCYRK3318334473094 console=ttyFIQ0 androidboot.baseband=N/A androidboot.selinux=permissive androidboot.wificountrycode=US androidboot.veritymode=enforcing androidboot.hardware=rk30board androidboot.console=ttyFIQ0 firmware_class.path=/vendor/etc/firmware init=/init rootwait ro init=/init root=PARTUUID=af01642c-9b84-11e8-9b2a-234eb5e198a0 loop.max_part=7 buildvariant=userdebug earlycon=uart8250,mmio32,0xff130000 swiotlb=1 kpti=0&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435_\u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:32,&amp;quot;secid&amp;quot;:22,&amp;quot;range&amp;quot;:&amp;quot;56598-58719&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit23&quot; id=&quot;ошибки&quot;&gt;Ошибки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Если появляется сообщение:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;## Flattened Device Tree blob at 01000000
   Booting using the fdt blob at 0x1000000
find 1 dtbos
No androidboot.dtbo_idx configured
And no dtbos will be applied&lt;/pre&gt;

&lt;p&gt;
Значит нужно задать переменную &lt;strong&gt;androidboot.dtbo_idx&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;setenv androidboot.dtbo_idx 0&lt;/pre&gt;

&lt;p&gt;
Значение которой видно при распаковке &lt;strong&gt;boot.img&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Command line: androidboot.dtbo_idx=0 --cmdline root=/dev/mmcblk0p18 buildvariant=user&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0448\u0438\u0431\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0448\u0438\u0431\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:33,&amp;quot;secid&amp;quot;:23,&amp;quot;range&amp;quot;:&amp;quot;58720-59266&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit24&quot; id=&quot;удалось_загрузиться&quot;&gt;УДАЛОСЬ ЗАГРУЗИТЬСЯ&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Запустить скрипт путем &lt;strong&gt;update&lt;/strong&gt; не удалось (т.к. он не подписан), однако, после пристального изучения вывода &lt;strong&gt;printenv&lt;/strong&gt; оказалось, что его успешно запускает команда &lt;strong&gt;recovery_from_sdcard&lt;/strong&gt;, прописанная в &lt;strong&gt;env&lt;/strong&gt; &lt;strong&gt;U-Boot&lt;/strong&gt;. То есть - готовим флеху, в консоли RS-232 жмем пробелы и в ответ на приглашение &lt;strong&gt;U-Boot&lt;/strong&gt; вводим такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;run recovery_from_sdcard;&lt;/pre&gt;

&lt;p&gt;
В результате приставка перейдет в режим дуалбута и будет грузиться с SD-карты, когда она вставлена.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0414\u0410\u041b\u041e\u0421\u042c \u0417\u0410\u0413\u0420\u0423\u0417\u0418\u0422\u042c\u0421\u042f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u043e\u0441\u044c_\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:34,&amp;quot;secid&amp;quot;:24,&amp;quot;range&amp;quot;:&amp;quot;59267-60060&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit25&quot; id=&quot;boot_from_sd-card_log&quot;&gt;boot from sd-card log&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;Welcome to minicom 2.7.1

OPTIONS: I18n 
Compiled on May  3 2018, 15:20:11.
Port /dev/ttyUSB0, 22:43:26

Press CTRL-A Z for help on special keys

SM1:BL:511f6b:81ca2f;FEAT:A0F83180:20282000;POC:F;RCY:0;EMMC:0;READ:0;0.0;CHK:0;
bl2_stage_init 0x01
bl2_stage_init 0x81
hw id: 0x0001 - pwm id 0x00
bl2_stage_init 0xc0
bl2_stage_init 0x02

L0:00000000
L1:00000703
L2:00008067
L3:15000020
S1:00000000
B2:20282000
B1:a0f83180

TE: 158641

BL2 Built : 20:29:41, Jun 18 2019. g12a ga659aac - luan.yuan@droid15-sz

Board ID = 1
Set cpu clk to 24M
Set clk81 to 24M
Use GP1_pll as DSU clk.
DSU clk: 1200 Mhz
CPU clk: 1200 MHz
Set clk81 to 166.6M
eMMC boot @ 0
sw8 s
DDR driver_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:37
board id: 1
Load FIP HDR from eMMC, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
fw parse done
Load ddrfw from eMMC, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from eMMC, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
PIEI prepare done
fastboot data load
00000000
emmc switch 1 ok
ddr saved addr:00016000
Load ddr parameter from eMMC, src: 0x02c00000, des: 0xfffd0000, size: 0x00001000, part: 0
00000000
emmc switch 0 ok
fastboot data verify
verify result: 0
enable_fast_boot
dmc_margin_rx==12 dmc_margin_tx==12 steps
DDR3 probe
ddr clk to 672MHz
Load ddrfw from eMMC, src: 0x0002c200, des: 0xfffd0000, size: 0x0000c000, part: 0

dmc_version 0001
Check phy result
INFO : End of initialization
INFO : Training has run successfully!
aml_ddr_fw_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:43
DDR cs0 size: 3928MB
DDR cs1 size: 0MB
DMC_DDR_CTRL: 0000002dDDR size: 3928MB
cs0 DataBus test pass
cs0 AddrBus test pass

non-sec scramble use zero key
ddr scramble enabled

100bdlr_step_size ps== 483
result report
boot times 0Enable ddr reg access
00000000
emmc switch 3 ok
BL2: rpmb counter: 0x00002374
00000000
emmc switch 0 ok
Load FIP HDR from eMMC, src: 0x00010200, des: 0x01700000, size: 0x00004000, part: 0
Load BL3X from eMMC, src: 0x00078200, des: 0x01768000, size: 0x000d0000, part: 0
bl2z: ptr: 05129330, size: 00001e40
0.0;M3 CHK:0;cm4_sp_mode 0
MVN_1=0x00000000
MVN_2=0x00000000
[Image: g12a_v1.1.3389-92241b5 2019-07-02 17:22:49 luan.yuan@droid15-sz]
OPS=0x10
ring efuse init
2b 0c 10 00 01 1d 16 00 00 0c 35 30 43 57 50 50 
[0.017354 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE:  BL31: v1.3(release):4fc40b1
NOTICE:  BL31: Built : 15:57:33, May 22 2019
NOTICE:  BL31: G12A normal boot!
NOTICE:  BL31: BL33 decompress pass
ERROR:   Error initializing runtime service opteed_fast


U-Boot 2015.01 (Dec 14 2019 - 17:22:12)

DRAM:  3.8 GiB
Relocation Offset is: d6e50000
spi_post_bind(spifc): req_seq = 0
register usb cfg[0][1] = 00000000d7f3e528
NAND:  get_sys_clk_rate_mtd() 290, clock setting 200!
NAND device id: 0 ff ff ff ff ff 
No NAND device found!!!
nand init failed: -6
get_sys_clk_rate_mtd() 290, clock setting 200!
NAND device id: 0 ff ff ff ff ff 
No NAND device found!!!
nand init failed: -6
MMC:   aml_priv-&amp;gt;desc_buf = 0x00000000d3e40a70
aml_priv-&amp;gt;desc_buf = 0x00000000d3e42db0
SDIO Port B: 0, SDIO Port C: 1
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
emmc/sd response timeout, cmd8, status=0x1ff2800
emmc/sd response timeout, cmd55, status=0x1ff2800
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 40000000
aml_sd_retry_refix[983]:delay = 0x0,gadjust =0x162000
[mmc_startup] mmc refix success
init_part() 282: PART_TYPE_DOS
[mmc_init] mmc init success
      Amlogic multi-dtb tool
      Single dtb detected
start dts,buffer=00000000d3e45620,dt_addr=00000000d3e45620
get_partition_from_dts() 91: ret 0
      Amlogic multi-dtb tool
      Single dtb detected
parts: 17
00:      logo   0000000000800000 1
01:  recovery   0000000001800000 1
02:      misc   0000000000800000 1
03:      dtbo   0000000000800000 1
04:  cri_data   0000000000800000 2
05:     param   0000000001000000 2
06:      boot   0000000001000000 1
set has_boot_slot = 0
07:       rsv   0000000001000000 1
08:  metadata   0000000001000000 1
09:    vbmeta   0000000000200000 1
10:       tee   0000000002000000 1
11:    vendor   0000000014000000 1
12:       odm   0000000008000000 1
13:    system   0000000074000000 1
14:   product   0000000008000000 1
15:     cache   0000000046000000 2
16:      data   ffffffffffffffff 4
init_part() 282: PART_TYPE_DOS
eMMC/TSD partition table have been checked OK!
crc32_s:0x1577dad == storage crc_pattern:0x1577dad!!!
crc32_s:0xee152b83 == storage crc_pattern:0xee152b83!!!
crc32_s:0x79f50f07 == storage crc_pattern:0x79f50f07!!!
mmc env offset: 0x4d400000 
In:    serial
Out:   serial
Err:   serial
reboot_mode=cold_boot
[store]To run cmd[emmc dtb_read 0x1000000 0x40000]
_verify_dtb_checksum()-3406: calc 5d3b67d1, store 5d3b67d1
_verify_dtb_checksum()-3406: calc 5d3b67d1, store 5d3b67d1
dtb_read()-3623: total valid 2
update_old_dtb()-3604: do nothing
      Amlogic multi-dtb tool
      Single dtb detected
amlkey_init() enter!
[EFUSE_MSG]keynum is 4
vpu: clk_level in dts: 7
vpu: vpu_power_on
vpu: set clk: 666667000Hz, readback: 666666667Hz(0x100)
vpu: vpu_module_init_config
vpp: vpp_init
vpp: vpp osd2 matrix rgb2yuv..............
cvbs: cpuid:0x2b
Net:   dwmac.ff3f0000amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4

CONFIG_AVB2: null 
Start read misc partition datas!
info-&amp;gt;magic = 
info-&amp;gt;version_major = 1
info-&amp;gt;version_minor = 0
info-&amp;gt;slots[0].priority = 15
info-&amp;gt;slots[0].tries_remaining = 7
info-&amp;gt;slots[0].successful_boot = 0
info-&amp;gt;slots[1].priority = 14
info-&amp;gt;slots[1].tries_remaining = 7
info-&amp;gt;slots[1].successful_boot = 0
info-&amp;gt;crc32 = -1075449479
active slot = 0
wipe_data=successful
wipe_cache=successful
upgrade_step=2
reboot_mode:::: cold_boot
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
hpd_state=0
edid preferred_mode is &amp;lt;NULL&amp;gt;[0]
hdr mode is 0
dv  mode is ver:0  len: 0
hdr10+ mode is 0
[OSD]load fb addr from dts:/meson-fb
[OSD]load fb addr from dts:/fb
[OSD]set initrd_high: 0x7f800000
[OSD]fb_addr for logo: 0x7f800000
[OSD]load fb addr from dts:/meson-fb
[OSD]load fb addr from dts:/fb
[OSD]fb_addr for logo: 0x7f800000
[OSD]VPP_OFIFO_SIZE:0xfff01fff
[CANVAS]canvas init
[CANVAS]addr=0x7f800000 width=3840, height=2160
Err imgread(L544):Logo header err.
There is no valid bmp file at the given address
[OSD]osd_hw.free_dst_data: 0,719,0,575
[OSD]osd1_update_disp_freescale_enable
vpp: vpp_matrix_update: 2
cvbs performance type = 9, table = 0
cvbs_config_hdmipll_g12a
cvbs_set_vid2_clk
vpp: sdr_mode = 2
vpp: Rx hdr_info.hdr_sup_eotf_smpte_st_2084 = 0
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
InUsbBurn
noSof
sof timeout, reset usb phy tuning
gpio: pin GPIOAO_3 (gpio 3) value is 1
Command: bcb uboot-command 
Start read misc partition datas!
BCB hasn&amp;#039;t any datas,exit!
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
Hit Enter or space or Ctrl+C key to stop autoboot -- :  0 
card in
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 40000000
aml_sd_retry_refix[983]:delay = 0x0,gadjust =0x182000
[mmc_startup] mmc refix success
init_part() 282: PART_TYPE_DOS
[mmc_init] mmc init success
Device: SDIO Port B
Manufacturer ID: 3
OEM: 5344
Name: SS08G 
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 7.4 GiB
mmc clock: 40000000
Bus Width: 4-bit
reading s905_autoscript
1351 bytes read in 5 ms (263.7 KiB/s)
## Executing script at 01020000
start amlogic old u-boot
reading boot_android
** Unable to read file boot_android **
** Bad device usb 0 **
reading u-boot.ext
** Unable to read file u-boot.ext **
** Bad device usb 0 **
reading uEnv.txt
1088 bytes read in 5 ms (211.9 KiB/s)
mac=00:df:04:00:38:30
reading /zImage
23357952 bytes read in 1276 ms (17.5 MiB/s)
reading /uInitrd
13608950 bytes read in 746 ms (17.4 MiB/s)
reading /dtb.img
45989 bytes read in 5 ms (8.8 MiB/s)
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND                               +-----------------------------+
[rsvmem] fdt get prop fail.                                                      |                             |
## Loading init Ramdisk from Legacy Image at 13000000 ...                        |  Cannot open /dev/ttyUSB0!  |
   Image Name:   uInitrd                                                         |                             |
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)                   +-----------------------------+
   Data Size:    13608886 Bytes = 13 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
Start read misc partition datas!
info-&amp;gt;magic = 
info-&amp;gt;version_major = 1
info-&amp;gt;version_minor = 0
info-&amp;gt;slots[0].priority = 15
info-&amp;gt;slots[0].tries_remaining = 7
info-&amp;gt;slots[0].successful_boot = 0
info-&amp;gt;slots[1].priority = 14
info-&amp;gt;slots[1].tries_remaining = 7
info-&amp;gt;slots[1].successful_boot = 0
info-&amp;gt;crc32 = -1075449479
active slot = 0
active_slot is normal
DTBO partition header is incorrect
load dtb from 0x1000000 ......
      Amlogic multi-dtb tool
      Single dtb detected
## Flattened Device Tree blob at 01000000
   Booting using the fdt blob at 0x1000000
No valid dtbo image found
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
[rsvmem] fdt get prop fail.
   Loading Ramdisk to 7eb05000, end 7f7ff7b6 ... OK
   Loading Device Tree to 000000001fff1000, end 000000001ffff3a4 ... OK

Starting kernel ...

uboot time: 6206312 us&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;boot from sd-card log&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;boot_from_sd-card_log&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:34,&amp;quot;secid&amp;quot;:25,&amp;quot;range&amp;quot;:&amp;quot;60061-70178&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit26&quot; id=&quot;reboot_sd_card_log&quot;&gt;reboot sd card log&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;[  285.513308] reboot: Restarting system
bl31 reboot reason: 0xd
bl31 reboot reason: 0x0
system cmd  1.
SM1:BL:511f6b:81ca2f;FEAT:A0F83180:20282000;POC:F;RCY:0;EMMC:0;READ:0;0.0;CHK:0;
bl2_stage_init 0x01
bl2_stage_init 0x81
hw id: 0x0001 - pwm id 0x00
bl2_stage_init 0xc0
bl2_stage_init 0x02

L0:00000000
L1:00000703
L2:00008067
L3:15000020
S1:00000000
B2:20282000
B1:a0f83180

TE: 154850

BL2 Built : 20:29:41, Jun 18 2019. g12a ga659aac - luan.yuan@droid15-sz

Board ID = 1
Set cpu clk to 24M
Set clk81 to 24M
Use GP1_pll as DSU clk.
DSU clk: 1200 Mhz
CPU clk: 1200 MHz
Set clk81 to 166.6M
eMMC boot @ 0
sw8 s
DDR driver_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:37
board id: 1
Load FIP HDR from eMMC, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
fw parse done
Load ddrfw from eMMC, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from eMMC, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
PIEI prepare done
fastboot data load
00000000
emmc switch 1 ok
ddr saved addr:00016000
Load ddr parameter from eMMC, src: 0x02c00000, des: 0xfffd0000, size: 0x00001000, part: 0
00000000
emmc switch 0 ok
fastboot data verify
verify result: 0
enable_fast_boot
dmc_margin_rx==12 dmc_margin_tx==12 steps
DDR3 probe
ddr clk to 672MHz
Load ddrfw from eMMC, src: 0x0002c200, des: 0xfffd0000, size: 0x0000c000, part: 0

dmc_version 0001
Check phy result
INFO : End of initialization
INFO : Training has run successfully!
aml_ddr_fw_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:43
DDR cs0 size: 3928MB
DDR cs1 size: 0MB
DMC_DDR_CTRL: 0000002dDDR size: 3928MB
cs0 DataBus test pass
cs0 AddrBus test pass

non-sec scramble use zero key
ddr scramble enabled

100bdlr_step_size ps== 476
result report
boot times 1Enable ddr reg access
00000000
emmc switch 3 ok
BL2: rpmb counter: 0x00002374
00000000
emmc switch 0 ok
Load FIP HDR from eMMC, src: 0x00010200, des: 0x01700000, size: 0x00004000, part: 0
Load BL3X from eMMC, src: 0x00078200, des: 0x01768000, size: 0x000d0000, part: 0
bl2z: ptr: 05129330, size: 00001e40
0.0;M3 CHK:0;cm4_sp_mode 0
MVN_1=0x00000000
MVN_2=0x00000000
[Image: g12a_v1.1.3389-92241b5 2019-07-02 17:22:49 luan.yuan@droid15-sz]
OPS=0x10
ring efuse init
2b 0c 10 00 01 1d 16 00 00 0c 35 30 43 57 50 50 
[0.670124 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE:  BL31: v1.3(release):4fc40b1
NOTICE:  BL31: Built : 15:57:33, May 22 2019
NOTICE:  BL31: G12A normal boot!
NOTICE:  BL31: BL33 decompress pass
ERROR:   Error initializing runtime service opteed_fast


U-Boot 2015.01 (Dec 14 2019 - 17:22:12)

DRAM:  3.8 GiB
Relocation Offset is: d6e50000
spi_post_bind(spifc): req_seq = 0
register usb cfg[0][1] = 00000000d7f3e528
NAND:  get_sys_clk_rate_mtd() 290, clock setting 200!
NAND device id: 0 ff ff ff ff ff 
No NAND device found!!!
nand init failed: -6
get_sys_clk_rate_mtd() 290, clock setting 200!
NAND device id: 0 ff ff ff ff ff 
No NAND device found!!!
nand init failed: -6
MMC:   aml_priv-&amp;gt;desc_buf = 0x00000000d3e40a70
aml_priv-&amp;gt;desc_buf = 0x00000000d3e42db0
SDIO Port B: 0, SDIO Port C: 1
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
emmc/sd response timeout, cmd8, status=0x1ff2800
emmc/sd response timeout, cmd55, status=0x1ff2800
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 40000000
aml_sd_retry_refix[983]:delay = 0x0,gadjust =0x162000
[mmc_startup] mmc refix success
init_part() 282: PART_TYPE_DOS
[mmc_init] mmc init success
      Amlogic multi-dtb tool
      Single dtb detected
start dts,buffer=00000000d3e45620,dt_addr=00000000d3e45620
get_partition_from_dts() 91: ret 0
      Amlogic multi-dtb tool
      Single dtb detected
parts: 17
00:      logo   0000000000800000 1
01:  recovery   0000000001800000 1
02:      misc   0000000000800000 1
03:      dtbo   0000000000800000 1
04:  cri_data   0000000000800000 2
05:     param   0000000001000000 2
06:      boot   0000000001000000 1
set has_boot_slot = 0
07:       rsv   0000000001000000 1
08:  metadata   0000000001000000 1
09:    vbmeta   0000000000200000 1
10:       tee   0000000002000000 1
11:    vendor   0000000014000000 1
12:       odm   0000000008000000 1
13:    system   0000000074000000 1
14:   product   0000000008000000 1
15:     cache   0000000046000000 2
16:      data   ffffffffffffffff 4
init_part() 282: PART_TYPE_DOS
eMMC/TSD partition table have been checked OK!
crc32_s:0x1577dad == storage crc_pattern:0x1577dad!!!
crc32_s:0xee152b83 == storage crc_pattern:0xee152b83!!!
crc32_s:0x79f50f07 == storage crc_pattern:0x79f50f07!!!
mmc env offset: 0x4d400000 
In:    serial
Out:   serial
Err:   serial
reboot_mode=cold_boot
[store]To run cmd[emmc dtb_read 0x1000000 0x40000]
_verify_dtb_checksum()-3406: calc 5d3b67d1, store 5d3b67d1
_verify_dtb_checksum()-3406: calc 5d3b67d1, store 5d3b67d1
dtb_read()-3623: total valid 2
update_old_dtb()-3604: do nothing
      Amlogic multi-dtb tool
      Single dtb detected
amlkey_init() enter!
[EFUSE_MSG]keynum is 4
vpu: clk_level in dts: 7
vpu: vpu_power_on
vpu: set clk: 666667000Hz, readback: 666666667Hz(0x100)
vpu: vpu_module_init_config
vpp: vpp_init
vpp: vpp osd2 matrix rgb2yuv..............
cvbs: cpuid:0x2b
Net:   dwmac.ff3f0000amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4

CONFIG_AVB2: null 
Start read misc partition datas!
info-&amp;gt;magic = 
info-&amp;gt;version_major = 1
info-&amp;gt;version_minor = 0
info-&amp;gt;slots[0].priority = 15
info-&amp;gt;slots[0].tries_remaining = 7
info-&amp;gt;slots[0].successful_boot = 0
info-&amp;gt;slots[1].priority = 14
info-&amp;gt;slots[1].tries_remaining = 7
info-&amp;gt;slots[1].successful_boot = 0
info-&amp;gt;crc32 = -1075449479
active slot = 0
wipe_data=successful
wipe_cache=successful
upgrade_step=2
reboot_mode:::: cold_boot
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
hpd_state=0
edid preferred_mode is &amp;lt;NULL&amp;gt;[0]
hdr mode is 0
dv  mode is ver:0  len: 0
hdr10+ mode is 0
[OSD]load fb addr from dts:/meson-fb
[OSD]load fb addr from dts:/fb
[OSD]set initrd_high: 0x7f800000
[OSD]fb_addr for logo: 0x7f800000
[OSD]load fb addr from dts:/meson-fb
[OSD]load fb addr from dts:/fb
[OSD]fb_addr for logo: 0x7f800000
[OSD]VPP_OFIFO_SIZE:0xfff01fff
[CANVAS]canvas init
[CANVAS]addr=0x7f800000 width=3840, height=2160
Err imgread(L544):Logo header err.
There is no valid bmp file at the given address
[OSD]osd_hw.free_dst_data: 0,719,0,575
[OSD]osd1_update_disp_freescale_enable
vpp: vpp_matrix_update: 2
cvbs performance type = 9, table = 0
cvbs_config_hdmipll_g12a
cvbs_set_vid2_clk
vpp: sdr_mode = 2
vpp: Rx hdr_info.hdr_sup_eotf_smpte_st_2084 = 0
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
InUsbBurn
noSof
sof timeout, reset usb phy tuning
gpio: pin GPIOAO_3 (gpio 3) value is 0
detect upgrade key
InUsbBurn
noSof
sof timeout, reset usb phy tuning
card in
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 40000000
aml_sd_retry_refix[983]:delay = 0x0,gadjust =0x182000
[mmc_startup] mmc refix success
init_part() 282: PART_TYPE_DOS
[mmc_init] mmc init success
Device: SDIO Port B
Manufacturer ID: 3
OEM: 5344
Name: SS08G 
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 7.4 GiB
mmc clock: 40000000
Bus Width: 4-bit
Device: SDIO Port B
Manufacturer ID: 3
OEM: 5344
Name: SS08G 
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 7.4 GiB
mmc clock: 40000000
Bus Width: 4-bit
reading aml_autoscript
709 bytes read in 4 ms (172.9 KiB/s)
## Executing script at 01080000
## Error: &amp;quot;bootfromsd&amp;quot; not defined
Saving Environment to aml-storage...
mmc env offset: 0x4d400000 
Writing to MMC(1)... done
reboot use default mode: normal
bl31 reboot reason: 0xd
bl31 reboot reason: 0x1
system cmd  1.&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;reboot sd card log&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;reboot_sd_card_log&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:35,&amp;quot;secid&amp;quot;:26,&amp;quot;range&amp;quot;:&amp;quot;70179-78404&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit27&quot; id=&quot;boot_from_emmc_after_install_amlsh&quot;&gt;boot from emmc after install_aml.sh&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;SM1:BL:511f6b:81ca2f;FEAT:A0F83180:20282000;POC:F;RCY:0;EMMC:0;READ:0;0.0;CHK:0;
bl2_stage_init 0x01
bl2_stage_init 0x81
hw id: 0x0001 - pwm id 0x00
bl2_stage_init 0xc0
bl2_stage_init 0x02

L0:00000000
L1:00000703
L2:00008067
L3:15000020
S1:00000000
B2:20282000
B1:a0f83180

TE: 403002

BL2 Built : 20:29:41, Jun 18 2019. g12a ga659aac - luan.yuan@droid15-sz

Board ID = 1
Set cpu clk to 24M
Set clk81 to 24M
Use GP1_pll as DSU clk.
DSU clk: 1200 Mhz
CPU clk: 1200 MHz
Set clk81 to 166.6M
eMMC boot @ 0
sw8 s
DDR driver_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:37
board id: 1
Load FIP HDR from eMMC, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
fw parse done
Load ddrfw from eMMC, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from eMMC, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
PIEI prepare done
fastboot data load
00000000
emmc switch 1 ok
ddr saved addr:00016000
Load ddr parameter from eMMC, src: 0x02c00000, des: 0xfffd0000, size: 0x00001000, part: 0
00000000
emmc switch 0 ok
fastboot data verify
verify result: 0
enable_fast_boot
dmc_margin_rx==12 dmc_margin_tx==12 steps
DDR3 probe
ddr clk to 672MHz
Load ddrfw from eMMC, src: 0x0002c200, des: 0xfffd0000, size: 0x0000c000, part: 0

dmc_version 0001
Check phy result
INFO : End of initialization
INFO : Training has run successfully!
aml_ddr_fw_vesion: LPDDR4_PHY_V_0_1_15 build time: Jun 18 2019 20:29:43
DDR cs0 size: 3928MB
DDR cs1 size: 0MB
DMC_DDR_CTRL: 0000002dDDR size: 3928MB
cs0 DataBus test pass
cs0 AddrBus test pass

non-sec scramble use zero key
ddr scramble enabled

100bdlr_step_size ps== 480
result report
boot times 0Enable ddr reg access
00000000
emmc switch 3 ok
BL2: rpmb counter: 0x00002374
00000000
emmc switch 0 ok
Load FIP HDR from eMMC, src: 0x00010200, des: 0x01700000, size: 0x00004000, part: 0
Load BL3X from eMMC, src: 0x00078200, des: 0x01768000, size: 0x000d0000, part: 0
bl2z: ptr: 05129330, size: 00001e40
0.0;M3 CHK:0;cm4_sp_mode 0
MVN_1=0x00000000
MVN_2=0x00000000
[Image: g12a_v1.1.3389-92241b5 2019-07-02 17:22:49 luan.yuan@droid15-sz]
OPS=0x10
ring efuse init
2b 0c 10 00 01 1d 16 00 00 0c 35 30 43 57 50 50 
[0.017354 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE:  BL31: v1.3(release):4fc40b1
NOTICE:  BL31: Built : 15:57:33, May 22 2019
NOTICE:  BL31: G12A normal boot!
NOTICE:  BL31: BL33 decompress pass
ERROR:   Error initializing runtime service opteed_fast


U-Boot 2015.01 (Dec 14 2019 - 17:22:12)

DRAM:  3.8 GiB
Relocation Offset is: d6e50000
spi_post_bind(spifc): req_seq = 0
register usb cfg[0][1] = 00000000d7f3e528
NAND:  get_sys_clk_rate_mtd() 290, clock setting 200!
NAND device id: 0 ff ff ff ff ff 
No NAND device found!!!
nand init failed: -6
get_sys_clk_rate_mtd() 290, clock setting 200!
NAND device id: 0 ff ff ff ff ff 
No NAND device found!!!
nand init failed: -6
MMC:   aml_priv-&amp;gt;desc_buf = 0x00000000d3e40a70
aml_priv-&amp;gt;desc_buf = 0x00000000d3e42db0
SDIO Port B: 0, SDIO Port C: 1
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
emmc/sd response timeout, cmd8, status=0x1ff2800
emmc/sd response timeout, cmd55, status=0x1ff2800
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 40000000
aml_sd_retry_refix[983]:delay = 0x0,gadjust =0x162000
[mmc_startup] mmc refix success
init_part() 282: PART_TYPE_DOS
[mmc_init] mmc init success
      Amlogic multi-dtb tool
      Single dtb detected
start dts,buffer=00000000d3e45620,dt_addr=00000000d3e45620
get_partition_from_dts() 91: ret 0
      Amlogic multi-dtb tool
      Single dtb detected
parts: 17
00:      logo   0000000000800000 1
01:  recovery   0000000001800000 1
02:      misc   0000000000800000 1
03:      dtbo   0000000000800000 1
04:  cri_data   0000000000800000 2
05:     param   0000000001000000 2
06:      boot   0000000001000000 1
set has_boot_slot = 0
07:       rsv   0000000001000000 1
08:  metadata   0000000001000000 1
09:    vbmeta   0000000000200000 1
10:       tee   0000000002000000 1
11:    vendor   0000000014000000 1
12:       odm   0000000008000000 1
13:    system   0000000074000000 1
14:   product   0000000008000000 1
15:     cache   0000000046000000 2
16:      data   ffffffffffffffff 4
init_part() 282: PART_TYPE_DOS
eMMC/TSD partition table have been checked OK!
crc32_s:0x1577dad == storage crc_pattern:0x1577dad!!!
crc32_s:0xee152b83 == storage crc_pattern:0xee152b83!!!
crc32_s:0x79f50f07 == storage crc_pattern:0x79f50f07!!!
mmc env offset: 0x4d400000 
In:    serial
Out:   serial
Err:   serial
reboot_mode=cold_boot
[store]To run cmd[emmc dtb_read 0x1000000 0x40000]
_verify_dtb_checksum()-3406: calc 5d3b67d1, store 5d3b67d1
_verify_dtb_checksum()-3406: calc 5d3b67d1, store 5d3b67d1
dtb_read()-3623: total valid 2
update_old_dtb()-3604: do nothing
      Amlogic multi-dtb tool
      Single dtb detected
amlkey_init() enter!
[EFUSE_MSG]keynum is 4
vpu: clk_level in dts: 7
vpu: vpu_power_on
vpu: set clk: 666667000Hz, readback: 666666667Hz(0x100)
vpu: vpu_module_init_config
vpp: vpp_init
vpp: vpp osd2 matrix rgb2yuv..............
cvbs: cpuid:0x2b
Net:   dwmac.ff3f0000amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4

CONFIG_AVB2: null 
Start read misc partition datas!
info-&amp;gt;magic = 
info-&amp;gt;version_major = 1
info-&amp;gt;version_minor = 0
info-&amp;gt;slots[0].priority = 15
info-&amp;gt;slots[0].tries_remaining = 7
info-&amp;gt;slots[0].successful_boot = 0
info-&amp;gt;slots[1].priority = 14
info-&amp;gt;slots[1].tries_remaining = 7
info-&amp;gt;slots[1].successful_boot = 0
info-&amp;gt;crc32 = -1075449479
active slot = 0
wipe_data=successful
wipe_cache=successful
upgrade_step=2
reboot_mode:::: cold_boot
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
hpd_state=0
edid preferred_mode is &amp;lt;NULL&amp;gt;[0]
hdr mode is 0
dv  mode is ver:0  len: 0
hdr10+ mode is 0
[OSD]load fb addr from dts:/meson-fb
[OSD]load fb addr from dts:/fb
[OSD]set initrd_high: 0x7f800000
[OSD]fb_addr for logo: 0x7f800000
[OSD]load fb addr from dts:/meson-fb
[OSD]load fb addr from dts:/fb
[OSD]fb_addr for logo: 0x7f800000
[OSD]VPP_OFIFO_SIZE:0xfff01fff
[CANVAS]canvas init
[CANVAS]addr=0x7f800000 width=3840, height=2160
Err imgread(L544):Logo header err.
There is no valid bmp file at the given address
[OSD]osd_hw.free_dst_data: 0,719,0,575
[OSD]osd1_update_disp_freescale_enable
vpp: vpp_matrix_update: 2
cvbs performance type = 9, table = 0
cvbs_config_hdmipll_g12a
cvbs_set_vid2_clk
vpp: sdr_mode = 2
vpp: Rx hdr_info.hdr_sup_eotf_smpte_st_2084 = 0
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
InUsbBurn
noSof
sof timeout, reset usb phy tuning
gpio: pin GPIOAO_3 (gpio 3) value is 1
Command: bcb uboot-command 
Start read misc partition datas!
BCB hasn&amp;#039;t any datas,exit!
amlkey_init() enter!
amlkey_init() 71: already init!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L515:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L515:key[deviceid] not programed yet
Hit Enter or space or Ctrl+C key to stop autoboot -- :  0 
card out
(Re)start USB...
USB0:   USB3.0 XHCI init start
Register 3000140 NbrPorts 2
Starting the controller
USB XHCI 1.10
scanning bus 0 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
** Bad device usb 0 **
** Bad device usb 1 **
** Bad device usb 2 **
** Bad device usb 3 **
reading emmc_autoscript
759 bytes read in 4 ms (184.6 KiB/s)
## Executing script at 01020000
reading u-boot.emmc
** Unable to read file u-boot.emmc **
reading uEnv.txt
1103 bytes read in 3 ms (358.4 KiB/s)
reading /zImage
23357952 bytes read in 652 ms (34.2 MiB/s)
reading /uInitrd
13608950 bytes read in 382 ms (34 MiB/s)
reading /dtb.img
45989 bytes read in 4 ms (11 MiB/s)
mac=00:df:04:00:38:30
[rsvmem] get fdtaddr NULL!
rsvmem - reserve memory

Usage:
rsvmem check                   - check reserved memory
rsvmem dump                    - dump reserved memory

rsvmem check failed
## Loading init Ramdisk from Legacy Image at 13000000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    13608886 Bytes = 13 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
Start read misc partition datas!
info-&amp;gt;magic = 
info-&amp;gt;version_major = 1
info-&amp;gt;version_minor = 0
info-&amp;gt;slots[0].priority = 15
info-&amp;gt;slots[0].tries_remaining = 7
info-&amp;gt;slots[0].successful_boot = 0
info-&amp;gt;slots[1].priority = 14
info-&amp;gt;slots[1].tries_remaining = 7
info-&amp;gt;slots[1].successful_boot = 0
info-&amp;gt;crc32 = -1075449479
active slot = 0
active_slot is normal
DTBO partition header is incorrect
load dtb from 0x1000000 ......
      Amlogic multi-dtb tool
      Single dtb detected
## Flattened Device Tree blob at 01000000
   Booting using the fdt blob at 0x1000000
No valid dtbo image found
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
[rsvmem] fdt get prop fail.
   Loading Ramdisk to 7eb05000, end 7f7ff7b6 ... OK
   Loading Device Tree to 000000001fff1000, end 000000001ffff3a4 ... OK

Starting kernel ...

uboot time: 5974060 us&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;boot from emmc after install_aml.sh&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;boot_from_emmc_after_install_amlsh&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:36,&amp;quot;secid&amp;quot;:27,&amp;quot;range&amp;quot;:&amp;quot;78405-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Fri, 29 Jul 2022 15:14:18 +0000</pubDate>
        </item>
        <item>
            <title>xfce_user_settings</title>
            <link>https://wiki.autosys.tk/mainpage/xfce_user_settings</link>
            <description>
&lt;p&gt;
&lt;a href=&quot;https://forum.xfce.org/viewtopic.php?pid=32033#p32033&quot; class=&quot;urlextern&quot; title=&quot;https://forum.xfce.org/viewtopic.php?pid=32033#p32033&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.xfce.org/viewtopic.php?pid=32033#p32033&lt;/a&gt;
&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;xfce_panel_settings&quot;&gt;XFCE Panel Settings&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;XFCE Panel Settings&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xfce_panel_settings&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;56-151&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;xfce_quicklauncher&quot;&gt;XFCE QuickLauncher&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Ярлыки &lt;strong&gt;QuickLauncher&lt;/strong&gt;&amp;#039;а лежат в файликах с именами типа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;.config/xfce4/panel/quicklauncher-*.rc&lt;/pre&gt;

&lt;p&gt;
На место звездочки подставляется число. Я не понял как именно формируется имя файла. Более того, если &lt;strong&gt;QuickLauncher&lt;/strong&gt; дефолтный, то файла нет, а появляется он только если открыть свойства &lt;strong&gt;QuickLauncher&lt;/strong&gt;&amp;#039;а.&lt;br/&gt;

Для того, чтобы перенести настройки в другого пользователя я просто заменяю содержимое файла, не изменяя имя. &lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;XFCE QuickLauncher&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xfce_quicklauncher&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;152-879&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;xfce_panel&quot;&gt;XFCE Panel&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;XFCE Panel&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xfce_panel&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;880-904&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;xfce_-_list_all_panel_properties&quot;&gt;XFCE - list all panel properties&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /panels -lv&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;XFCE - list all panel properties&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xfce_-_list_all_panel_properties&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;905-995&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;xfce_-_list_panel_ids&quot;&gt;XFCE - list panel IDs&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /panels | grep -v &amp;quot;Value is an\|^$&amp;quot;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;XFCE - list panel IDs&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xfce_-_list_panel_ids&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;996-1099&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;xfce_-_list_all_panel_plugins_info&quot;&gt;XFCE - list all panel plugins info&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
going to model after existing launcher plugin
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /plugins -lv&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;XFCE - list all panel plugins info&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xfce_-_list_all_panel_plugins_info&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;1100-1240&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit7&quot; id=&quot;программное_формирование_панели_launcher&quot;&gt;Программное формирование панели launcher&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В &lt;strong&gt;XFCE&lt;/strong&gt; плагин &lt;strong&gt;Launcher&lt;/strong&gt; предназначен для добавления одного или нескольких ярлычков приложений на панель. Один лаунчер будет всегда размером с в одну иконку. Если в него добавлено несколько приложений - они будут доступны в вападающем меню лаунчера. Для нескольких кнопок нужно добавить несколько лаунчеров.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Определяем под каким номером существует текущая панель:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /panels -lv&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Смотрим какие плагины есть на панели
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /plugins -lv
/plugins/plugin-1                   tasklist
/plugins/plugin-11                  separator
/plugins/plugin-11/expand           true
/plugins/plugin-11/style            0
/plugins/plugin-3                   statusnotifier
/plugins/plugin-3/known-items       &amp;lt;&amp;lt;UNSUPPORTED&amp;gt;&amp;gt;
/plugins/plugin-4                   indicator
/plugins/plugin-4/known-indicators  &amp;lt;&amp;lt;UNSUPPORTED&amp;gt;&amp;gt;
/plugins/plugin-5                   systray
/plugins/plugin-5/names-ordered     &amp;lt;&amp;lt;UNSUPPORTED&amp;gt;&amp;gt;
/plugins/plugin-5/names-visible     &amp;lt;&amp;lt;UNSUPPORTED&amp;gt;&amp;gt;
/plugins/plugin-6                   notification-plugin
/plugins/plugin-7                   applicationsmenu
/plugins/plugin-7/button-title      Apps
/plugins/plugin-8                   cpugraph
/plugins/plugin-9                   xkb&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Добавляем плагин &lt;strong&gt;lanucher&lt;/strong&gt; в панель под свободным номером (в данном случае - 2). Плагин объединяет ярлычки приложений.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /plugins/plugin-2 -t string -s &amp;quot;launcher&amp;quot; --create&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Смотрим номера плагинов добавленных на панель и порядок их следования:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /panels/panel-2/plugin-ids| grep -v &amp;quot;Value is an\|^$&amp;quot;
7
1
11
5
6
8
9
3
4&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Удаляем плагины с панели и пересоздаем их, используя номера, полученные на предыдущем шаге и проверяем, что добавился плагин номер 2:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /panels/panel-2/plugin-ids -rR
xfconf-query -c xfce4-panel -p /panels/panel-2/plugin-ids -t int -s 7 -t int -s 2 -t int -s 1 -t int -s 11 -t int -s 5 -t int -s 6 -t int -s 8 -t int -s 9 -t int -s 3 -t int -s 4 --create
xfconf-query -c xfce4-panel -p /panels/panel-2/plugin-ids| grep -v &amp;quot;Value is an\|^$&amp;quot;
7
2
1
11
5
6
8
9
3
4&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Создадим директорию лаунчера приложения &lt;strong&gt;~/.config/xfce4/panel/launcher-xx&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;mkdir ~/.config/xfce4/panel/launcher-10&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Скопируем ярлычок приложения (один ярлычок - файл &lt;strong&gt;.desktop&lt;/strong&gt;) в созданную папку
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;cp /usr/share/applications/exo-terminal-emulator.desktop ~/.config/xfce4/panel/launcher-10&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Создадим запись о лаунчере приложения в конфиге плагина:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;xfconf-query -c xfce4-panel -p /plugins/plugin-2/items -t string -s &amp;quot;exo-terminal-emulator.desktop&amp;quot; -a --create&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Перезапустим &lt;strong&gt;xfce4-panel&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;xfce4-panel -r&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0430\u043d\u0435\u043b\u0438 launcher&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0435_\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043f\u0430\u043d\u0435\u043b\u0438_launcher&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;1241-4833&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;добавление_ранее_настроенных_лаунчеров&quot;&gt;Добавление ранее настроенных лаунчеров&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
У меня когда-то были настроены лаунчеры, но потом они почему-то слетели. Однако папки &lt;strong&gt;launcher-xx&lt;/strong&gt; с файлами &lt;strong&gt;*.desktop&lt;/strong&gt; файлами остались. Добавить их обратно в созданную панель лаунчера я смог так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;items=&amp;#039;&amp;#039;
while read -r line; do
    shortcut=&amp;quot;`cat $line | grep X-XFCE-Source | sed &amp;#039;s/^X-XFCE-Source=file:\/\///&amp;#039;`&amp;quot;
    cp $shortcut `dirname $line`/ 2&amp;gt;/dev/null
    items=&amp;quot;$items  -t string -s \&amp;quot;`basename $shortcut`\&amp;quot;&amp;quot;
    #rm -f $line
done &amp;lt; &amp;lt;(ls ~/.config/xfce4/panel/launcher-*/1*.desktop -1)
echo $items
xfconf-query -c xfce4-panel -p /plugins/plugin-2/items -rR
xfconf-query -c xfce4-panel -p /plugins/plugin-2/items $items -a --create&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u043d\u0435\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445 \u043b\u0430\u0443\u043d\u0447\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0440\u0430\u043d\u0435\u0435_\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445_\u043b\u0430\u0443\u043d\u0447\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;4834-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Wed, 23 Oct 2019 14:08:08 +0000</pubDate>
        </item>
        <item>
            <title>подготовка-к-экзамену-1y0-a26-citrix-xenserver-6-administration</title>
            <link>https://wiki.autosys.tk/citrix/%D0%BF%D0%BE%D0%B4%D0%B3%D0%BE%D1%82%D0%BE%D0%B2%D0%BA%D0%B0-%D0%BA-%D1%8D%D0%BA%D0%B7%D0%B0%D0%BC%D0%B5%D0%BD%D1%83-1y0-a26-citrix-xenserver-6-administration</link>
            <description>
&lt;p&gt;
Компиляция и перевод - Усик Михаил aka Mike - mike@autosys.tk&lt;br/&gt;

Публикация и тиражирование только с разрешения. :)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Основано на гайде от CitrixExpierence - &lt;a href=&quot;http://citrixxperience.com/free/A26ResourceGuide.pdf&quot; class=&quot;urlextern&quot; title=&quot;http://citrixxperience.com/free/A26ResourceGuide.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrixxperience.com/free/A26ResourceGuide.pdf&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;раздел_1_-_implementing_xenserver&quot;&gt;Раздел 1 - Implementing XenServer&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 1 - Implementing XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_1_-_implementing_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;305-356&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;настройка_параметров_хоста_xenserver_для_загрузки_с_san&quot;&gt;1.1 - Настройка параметров хоста XenServer для загрузки с SAN&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#boot_from_san&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#boot_from_san&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#boot_from_san&lt;/a&gt;&lt;br/&gt;

Загрузка с SAN предоставляет ряд преимуществ - высокую производительность, избыточность и консолидацию ресурсов. В такой конфигурации загрузочный том находится в SAN, а не на локальном диске хоста. Бездисковый хост взаимодействует с SAN через соответствующий адаптер шины - &lt;strong&gt;host bus adapter&lt;/strong&gt; (HBA). BIOS адаптера HBA содержит параметры, необходимые для того чтобы хост обнаружил загрузочный том.&lt;br/&gt;

Для загрузки с SAN требуется дисковый массив с интерфейсом Fibre Channel или iSCSI и соответствующий адаптер. Для создания полностью избыточной конфигурации нужно обеспечить несколько путей для доступа к массиву. Для этого на массиве нужно сконфигурировать поддержку &lt;strong&gt;multipath&lt;/strong&gt; и включить &lt;strong&gt;multipathing&lt;/strong&gt; на хосте XenServer после установки.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы установить XenServer на удаленный том SAN c &lt;strong&gt;multipathing&lt;/strong&gt;:&lt;br/&gt;

 - На экране приветствия (Welcome to XenServer) нажмите F2.&lt;br/&gt;

 - At the boot prompt, enter multipath&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы включить &lt;strong&gt;filesystem multipathing&lt;/strong&gt; при установке PXE необходимо добавить &lt;strong&gt;device_mapper_multipath=yes&lt;/strong&gt; в файл конфигурации PXE Linux. Пример файла:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;default xenserver
label xenserver
  kernel mboot.c32
  append /tftpboot/xenserver/xen.gz dom0_mem=752M com1=115200,8n1 \
  console=com1,vga --- /tftpboot/xenserver/vmlinuz \
  xencons=hvc console=hvc0 console=tty0 \ 
  device_mapper_multipath=yes \
  --- /tftpboot/xenserver/install.img&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.1 - \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0445\u043e\u0441\u0442\u0430 XenServer \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441 SAN&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432_\u0445\u043e\u0441\u0442\u0430_xenserver_\u0434\u043b\u044f_\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438_\u0441_san&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;357-2634&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;конфигурирование_сетевого_интерфейса_управления&quot;&gt;1.2 - Конфигурирование сетевого интерфейса управления&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_changing_network_config&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_changing_network_config&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_changing_network_config&lt;/a&gt;&lt;br/&gt;

Для того, чтобы изменить адаптер, используемый для управления хостом XenServer.&lt;br/&gt;

1. С помощью команды &lt;strong&gt;pif-list&lt;/strong&gt; определите физический интерфейс (PIF) соответствующий сетевому адаптеру, который будет использоваться для управления. Команда вернет идентификаторы UUID всех PIF. &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pif-list&lt;/pre&gt;

&lt;p&gt;
2. С помощью команды &lt;strong&gt;pif-param-list&lt;/strong&gt; проверьте конфигурацию адресов IP. Если необходимо - с помощью команды &lt;strong&gt;pif-reconfigure-ip&lt;/strong&gt; сконфигурируйте IP. &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pif-param-list uuid=&amp;lt;pif_uuid&amp;gt;&lt;/pre&gt;

&lt;p&gt;
3. С помощью команды &lt;strong&gt;host-management-reconfigure&lt;/strong&gt; задайте PIF, который должен использоваться для управления. Если хост входит в состав пула, то эту команду нужно выполнять из консоли хоста входящего в пул. &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-management-reconfigure pif-uuid=&amp;lt;pif_uuid&amp;gt;&lt;/pre&gt;
&lt;div class=&quot;table sectionedit4&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Помещение основного интерфейса управления в сеть VLAN не поддерживается.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;4086-4239&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.2 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e_\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2635-4240&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;отключение_интерфейса_управления&quot;&gt;Отключение интерфейса управления&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для отключения интерфейса удаленного управления используйте команду &lt;strong&gt;host-management-disable&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit6&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Если интерфейс управления отключен, то для управления хостом и повторного включения интерфейса управления потребуется физический доступ к его консоли.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table1&amp;quot;,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;4472-4775&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;4241-4776&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;изменение_интерфейса_управления_с_помощью_xencenter_и_xsconsole&quot;&gt;Изменение интерфейса управления с помощью XenCenter и xsconsole&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX121235&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX121235&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX121235&lt;/a&gt;&lt;br/&gt;

Настройка в XenCenter&lt;br/&gt;

1. В XenCenter, кликните правой кнопкой на хосте и выберите &lt;strong&gt;Management Interfaces&lt;/strong&gt;.&lt;br/&gt;

2. Из списка &lt;strong&gt;Network&lt;/strong&gt; выберите сетевой адаптер, который должен быть назначен интерфейсом управления. Сконфигурируйте его параметры.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Настройка в &lt;strong&gt;xsconsole&lt;/strong&gt;&lt;br/&gt;

1. В консоли сервера введите xsconsole. Запустится консоль управления хостом. &lt;br/&gt;

2. Выберите &lt;strong&gt;Network and Management Interfaces&lt;/strong&gt;. Отобразится теуущий интерфейс управления - &lt;strong&gt;Network 0&lt;/strong&gt; или eth0. Нажмите Enter.&lt;br/&gt;

3. Выберите &lt;strong&gt;Configure Management Interface&lt;/strong&gt; и нажмите Enter.&lt;br/&gt;

4. Введите учетные данные пользователя, имеющего права для настройки интерфейсов XenServer.&lt;br/&gt;

5. Выберите физический интерфейс, который должен стать интерфейсом управления (например eth1) и нажмите Enter.&lt;br/&gt;

6. Выберите способ конфигурирования - &lt;strong&gt;DHCP, DHCP with Manually Assigned Hostname&lt;/strong&gt;, или &lt;strong&gt;Static IP address&lt;/strong&gt;.&lt;br/&gt;

7. Если выбран Static - укажите IP address, Netmask, Gateway, и Hostname, и нажмите Enter.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e XenCenter \u0438 xsconsole&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_xencenter_\u0438_xsconsole&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;4777-6409&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;конфигурирование_сетевых_параметров_хоста_xenserver&quot;&gt;1.3 - Конфигурирование сетевых параметров хоста XenServer&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_changing_network_config&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_changing_network_config&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_changing_network_config&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.3 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0445\u043e\u0441\u0442\u0430 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0435\u0442\u0435\u0432\u044b\u0445_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432_\u0445\u043e\u0441\u0442\u0430_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;6410-6640&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;изменение_имени_хоста_-_hostname&quot;&gt;Изменение имени хоста - hostname&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-set-hostname-live host-uuid=&amp;lt;host_uuid&amp;gt; host-name=&amp;lt;host-name&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Доменное имя изменится автоматически. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0438\u043c\u0435\u043d\u0438 \u0445\u043e\u0441\u0442\u0430 - hostname&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u0438\u043c\u0435\u043d\u0438_\u0445\u043e\u0441\u0442\u0430_-_hostname&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;6641-6859&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;изменение_ip-адреса_для_хоста_не_включенного_в_пул_standalone_host&quot;&gt;Изменение IP-адреса для хоста не включенного в пул (standalone host)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Конфигурация сетевого интерфейса может быть изменена из командной строки с помощью команды &lt;strong&gt;pif-reconfigure-ip&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;pif-reconfigure-ip uuid=&amp;lt;uuid_of_pif&amp;gt; [ mode=&amp;lt;dhcp&amp;gt; | mode=&amp;lt;static&amp;gt; ] \
gateway=&amp;lt;network_gateway_address&amp;gt; IP=&amp;lt;static_ip_for_this_pif&amp;gt; \
netmask=&amp;lt;netmask_for_this_pif&amp;gt; [DNS=&amp;lt;dns_address&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Если указан режим 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mode=&amp;lt;dhcp&amp;gt;&lt;/pre&gt;

&lt;p&gt;
, то никакие дополнительные параметры можно не указывать.&lt;br/&gt;

Если указан режим 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mode=&amp;lt;static&amp;gt;&lt;/pre&gt;

&lt;p&gt;
, то нужно указать и все остальные параметры - 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;gateway=&amp;lt;network_gateway_address&amp;gt; IP=&amp;lt;static_ip_for_this_pif&amp;gt; netmask=&amp;lt;netmask_for_this_pif&amp;gt; [DNS=&amp;lt;dns_address&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u0434\u043b\u044f \u0445\u043e\u0441\u0442\u0430 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0432 \u043f\u0443\u043b (standalone host)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_ip-\u0430\u0434\u0440\u0435\u0441\u0430_\u0434\u043b\u044f_\u0445\u043e\u0441\u0442\u0430_\u043d\u0435_\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0433\u043e_\u0432_\u043f\u0443\u043b_standalone_host&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;6860-7812&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit11&quot; id=&quot;изменение_ip-адреса_хоста_входящего_в_состав_пула_не_мастер-хоста&quot;&gt;Изменение IP-адреса хоста, входящего в состав пула (не мастер-хоста)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для изменения IP-адреса используется команда &lt;strong&gt;pif-reconfigure-ip&lt;/strong&gt;.&lt;br/&gt;

Например:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pif-reconfigure-ip uuid=&amp;lt;pif_uuid&amp;gt; mode=DHCP&lt;/pre&gt;

&lt;p&gt;
Затем с помощью команды &lt;strong&gt;host-list&lt;/strong&gt; следует убедиться, что хост успешно переподключился к мастер-хосту пула и видны все хосты пула. &lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-list&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u0445\u043e\u0441\u0442\u0430, \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0432 \u0441\u043e\u0441\u0442\u0430\u0432 \u043f\u0443\u043b\u0430 (\u043d\u0435 \u043c\u0430\u0441\u0442\u0435\u0440-\u0445\u043e\u0441\u0442\u0430)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_ip-\u0430\u0434\u0440\u0435\u0441\u0430_\u0445\u043e\u0441\u0442\u0430_\u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e_\u0432_\u0441\u043e\u0441\u0442\u0430\u0432_\u043f\u0443\u043b\u0430_\u043d\u0435_\u043c\u0430\u0441\u0442\u0435\u0440-\u0445\u043e\u0441\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;7813-8396&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit12&quot; id=&quot;изменение_ip-адреса_мастер-хоста_пула&quot;&gt;Изменение IP-адреса мастер-хоста пула&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Изменение IP-адреса мастер-хоста пула требует дополнительных действий для того, чтобы каждый хост пула смог использовать измененный адрес. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit13&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Всегда, когда возможно следует использовать единственный выделенный адрес для мастер-хостов, не изменяющийся все время жизни пула.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table2&amp;quot;,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;8732-8996&amp;quot;} --&gt;&lt;pre class=&quot;code&quot;&gt;xe pif-reconfigure-ip uuid=&amp;lt;pif_uuid&amp;gt; mode=DHCP&lt;/pre&gt;

&lt;p&gt;
После изменения IP-адреса мастер-хоста все члены пула перейдут в сосотояние &lt;strong&gt;emergency mode&lt;/strong&gt;, т.к. не смогут соединиться с мастер-хостом. &lt;br/&gt;

Для того чтобы мастер-хост смог уведомить членов пула об изменении своего IP-адреса используется команда &lt;strong&gt;pool-recover-slaves&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pool-recover-slaves&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u043c\u0430\u0441\u0442\u0435\u0440-\u0445\u043e\u0441\u0442\u0430 \u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_ip-\u0430\u0434\u0440\u0435\u0441\u0430_\u043c\u0430\u0441\u0442\u0435\u0440-\u0445\u043e\u0441\u0442\u0430_\u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;8397-9554&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit14&quot; id=&quot;аутентификация_с_помощью_ad&quot;&gt;Аутентификация с помощью AD&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ad_int_configuring&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ad_int_configuring&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ad_int_configuring&lt;/a&gt;&lt;br/&gt;

XenServer поддерживает аутентификацию пользователей в домене Windows 2003 или более новой.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для аутентификации в Active Directory на хосте XenServer должны быть прописаны серверы &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;, используемые в домене. В некоторых случаях, необходимые параметры &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt; могут раздаваться централизовано, с помощью DHCP. Citrix рекомендует использовать DHCP для правильного конфигурирования хостов XenServer (например не следует использовать имена хостов типа &lt;strong&gt;localhost&lt;/strong&gt; или &lt;strong&gt;linux&lt;/strong&gt;).&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit15&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Имена хостов XenServer должны быть уникальны в пределах инсталляции&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table3&amp;quot;,&amp;quot;secid&amp;quot;:15,&amp;quot;range&amp;quot;:&amp;quot;10494-10633&amp;quot;} --&gt;
&lt;p&gt;
Учитывайте следующее:&lt;br/&gt;

 - Хосты XenServer прописываются в базу данных AD с помощью имен хостов (hostname). Следовательно, если два хоста XenServer присоединятся к домену с одинаковыми именами, то второй присоединившийся сервер перезапишет запись в AD первого сервера, независимо от того, входят сервера в один пул или нет. В результате - у первого сервера аутентификация AD работать не будет.&lt;br/&gt;

 - Использовать одинаковые hostname у двух хостов XenServer можно, если они входят в разные домены. &lt;br/&gt;

 - Хосты XenServer могут быть в разных временных зонах (time-zones), т.к. время на хостах сравнивается в формате UTC. Для того чтобы гарантировать синхронизацию времени в пределах домена следует использовать один и тот же сервер времени NTP на хостах XenServer и сервере AD.&lt;br/&gt;

 - В пределах пула не поддерживается смешанная аутентификация. Это означает, что невозможно создать пул, в котором часть серверов входят в домен, а часть нет. &lt;br/&gt;

 - Для взаимодействия с сервером домена AD хосты XenServer используют протокол Kerberos. Таким образом, хосты XenServer не смогут работать с серверами Active Directory, на которых отключен протокол Kerberos. &lt;br/&gt;

 - Для корректной работы аутентификации XenServer в Active Directory важно, чтобы часы хостов XenServer были сонхронизированы с часами сервера AD. При присоединении хоста XenServer к домену синхронизация часов проверяется и если часы идут неверно, то присоединение не удастся.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit16&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Имена хостов XenServer присоединяемых к AD не могут состоять целиком из цифр и быть длиннее 63 символов&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table4&amp;quot;,&amp;quot;secid&amp;quot;:16,&amp;quot;range&amp;quot;:&amp;quot;13046-13245&amp;quot;} --&gt;
&lt;p&gt;
Если вы включили для пула аутентификацию AD и затем присоединяете к пулу хост XenServer, то потребуется присоединить новый хост XenServer к домену. Для присоединения понядобится ввести учетные данные пользователя, обладающего привилегиями, достаточными для присоединения хоста к домену. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если между сервером AD и хостами XenServer есть межсетевой экран (firewall), то для корректной работы нужно открыть порты для исходящего трафика от хостов к серверу AD:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Port	Protocol	Use&lt;br/&gt;

53	UDP/TCP	&lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;&lt;br/&gt;

88	UDP/TCP	Kerberos 5&lt;br/&gt;

123	UDP	NTP&lt;br/&gt;

137	UDP	NetBIOS Name Service&lt;br/&gt;

139	TCP	NetBIOS Session (SMB)&lt;br/&gt;

389	UDP/TCP	LDAP&lt;br/&gt;

445	TCP	SMB over TCP&lt;br/&gt;

464	UDP/TCP	Machine password changes&lt;br/&gt;

3268	TCP	Global Catalog Search&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit17&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание. Для просмотра заданных правил firewall на хосте linux c iptables нужно использовать команду: &lt;strong&gt;iptables - nL&lt;/strong&gt;&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table5&amp;quot;,&amp;quot;secid&amp;quot;:17,&amp;quot;range&amp;quot;:&amp;quot;14306-14499&amp;quot;} --&gt;&lt;div class=&quot;table sectionedit18&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание. Для аутентификации в AD XenServer использует Likewise, а Likewise использует Kerberos для шифрования трафика между сервером AD и хостом XenServer.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table6&amp;quot;,&amp;quot;secid&amp;quot;:18,&amp;quot;range&amp;quot;:&amp;quot;14501-14752&amp;quot;} --&gt;
&lt;p&gt;
Также как и машины Windows, Likewise автоматически обновляет пароль учетной записи хоста XnServer каждые 30 дней (или в соответствии с заданной политикой). Дополнительная информация - &lt;a href=&quot;http://support.microsoft.com/kb/154501&quot; class=&quot;urlextern&quot; title=&quot;http://support.microsoft.com/kb/154501&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.microsoft.com/kb/154501&lt;/a&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e AD&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_ad&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;9555-15113&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit19&quot; id=&quot;включение_аутентификации_в_ad&quot;&gt;Включение аутентификации в AD&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Аутентификация в AD может быть включена как с помощью XenCenter, так и в CLI:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;    xe pool-enable-external-auth auth-type=AD \
      service-name=&amp;lt;full-qualified-domain&amp;gt; \
      config:user=&amp;lt;username&amp;gt; \
      config:pass=&amp;lt;password&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Пользователь должен обладать правами добавления/удаления учетных записей компьютеров в домене (Add/remove computer objects or workstations privileges).&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit20&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table7&amp;quot;,&amp;quot;secid&amp;quot;:20,&amp;quot;range&amp;quot;:&amp;quot;15707-16209&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0432 AD&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438_\u0432_ad&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:19,&amp;quot;range&amp;quot;:&amp;quot;15114-16210&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit21&quot; id=&quot;отключение_внешней_аутентификации&quot;&gt;Отключение внешней аутентификации&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Испоьзуйте XenCenter для отключения аутентификации Active Directory или такую команду CLI:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;    xe pool-disable-external-auth&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0432\u043d\u0435\u0448\u043d\u0435\u0439_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:14,&amp;quot;secid&amp;quot;:21,&amp;quot;range&amp;quot;:&amp;quot;16211-16475&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit22&quot; id=&quot;конфигурирование_синхронизации_времени_на_хосте_xenserver&quot;&gt;1.4 - Конфигурирование синхронизации времени на хосте XenServer&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#installing_xs_host&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#installing_xs_host&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#installing_xs_host&lt;/a&gt;&lt;br/&gt;

Задать временную зону и сервер с которым XenServer будет синхронизировать часы можно при установке XenServer. Кроме того, текущее время можно установить и вручную.&lt;br/&gt;

Задать сервер NTP можно как вручную, так и использовать заданный в конфигурации DHCP.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.4 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0430 \u0445\u043e\u0441\u0442\u0435 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438_\u0432\u0440\u0435\u043c\u0435\u043d\u0438_\u043d\u0430_\u0445\u043e\u0441\u0442\u0435_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:15,&amp;quot;secid&amp;quot;:22,&amp;quot;range&amp;quot;:&amp;quot;16476-17127&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit23&quot; id=&quot;установка_и_конфигурирование_локального_сервера_ntp&quot;&gt;Установка и конфигурирование локального сервера NTP&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX116307&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX116307&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX116307&lt;/a&gt;&lt;br/&gt;

Если при работе XenServer с удаленной административной консолью возникают ошибки SSL, возможно, часы хоста XenServer несихронизированы с часами хоста на котром исполняется удаленная консоль. &lt;br/&gt;

Решить эту проблему можно установив локальный NTP сервер, с которым будут синхронизированы хосты XenServer и хост с управляющей консолью.&lt;br/&gt;

 - Установите пакет сервера NTP. Он может называться примерно так: &lt;strong&gt;ntp-&lt;/strong&gt; и номер версии. Например - &lt;strong&gt;ntp-4.2.0.xxxxx&lt;/strong&gt;.&lt;br/&gt;

 - После установки отредактируйте файл &lt;strong&gt;/etc/ntp.conf&lt;/strong&gt; и укажите в нем серверы &lt;strong&gt;stratum1 &lt;/strong&gt; и  &lt;strong&gt;stratum2&lt;/strong&gt;, с которыми будет синхронизирован локальный сервер NTP:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;server yourntp.server.org # stratum1
    server secondntp.some.org # stratum2&lt;/pre&gt;

&lt;p&gt;
 - Укажите параметры доступа, для того чтобы разрешить использование этих серверов на вашем сервере. Приведенные строки запрещают изменять информацию во время исполнения или делать запросы к вашему серверу NTP:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;    restrict yourntp.server.org mask 255.255.255.255 nomodify notrap noquery
    restrict secondntp.server.org mask 255.255.255.255 nomodify notrap noquery&lt;/pre&gt;

&lt;p&gt;
    &lt;br/&gt;

 - Если вы планируете использовать этот сервер для синхронизации времени в вашей локальной сети - следует разрешить запросы синхронизации из этой сети. Добавьте:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;restrict 192.168.0.1 mask 255.255.255.0 nomodify notrap&lt;/pre&gt;

&lt;p&gt;
    &lt;br/&gt;

 ^Примечание: тут отсутствует параметр &lt;strong&gt;noquery&lt;/strong&gt;^ &lt;br/&gt;

 - Запустите сервис с помощью команды:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;service ntp start&lt;/pre&gt;

&lt;p&gt;
 - С помощью следующей команды включите автозагрузку сервиса:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;chkconfig ntpd on&lt;/pre&gt;

&lt;p&gt;
 - Укажите имя этого сервера при установке XenServer на хост. На уже установелнном хосте XenServer отредактируйте файл &lt;strong&gt;/etc/ntp.conf&lt;/strong&gt; и добавьте в него строку: &lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;server ntp-server_ip&lt;/pre&gt;

&lt;p&gt;
    &lt;br/&gt;

 - С помощью следующей команды синхронизируйте хост XenServer с заданным сервером NTP:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;ntpdate -u NTP_server_ip&lt;/pre&gt;

&lt;p&gt;
 - С помощью следующей команды убедитесь, что хост XenServer использует правильный сервер NTP:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;ntpq -p&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 NTP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u0438_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e_\u0441\u0435\u0440\u0432\u0435\u0440\u0430_ntp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:15,&amp;quot;secid&amp;quot;:23,&amp;quot;range&amp;quot;:&amp;quot;17128-20371&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit24&quot; id=&quot;как_сменить_таймзону_на_работающем_хосте_xenserver&quot;&gt;Как сменить таймзону на работающем хосте XenServer&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Есть возможность сменить таймзону на рвботающем хосте XenServer. &lt;br/&gt;

Информация о текущей таймзоне задается в файле &lt;strong&gt;/etc/localtime&lt;/strong&gt;. Этот файл является симлинком (symlink) на конкретный файл таймзоны, хранящийся в папке  &lt;strong&gt;/usr/share/zoneinfo&lt;/strong&gt;. В этой папке хрянятся файлы соответствующие разным таймзонам. Например, если при установке выбрана зона America и location New York, то в &lt;strong&gt;/etc/localtime&lt;/strong&gt; будет ссылаться на &lt;strong&gt;/usr/share/zoneinfo/America/New_York&lt;/strong&gt;.&lt;br/&gt;

Если нужно сменить таймзону, то нужно просто перезаписать симлинк &lt;strong&gt;/etc/localtime&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В нижеприведенном примере изменяется таймзона с America/New York на Pacific/Auckland:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1. Войдите на хост XenServer с учеткой root.&lt;br/&gt;

2. Проверьте текущую таймзону:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# date
Wed Dec 6 15:54:01 EST 2006

# ls -l /etc/localtime
lrwxrwxrwx 1 root root 36 Dec 6 15:55 /etc/localtime --&amp;gt; /usr/share/zoneinfo/America/New_York&lt;/pre&gt;

&lt;p&gt;
3. Переименуйте текущий симлинк на всякий случай:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# mv /etc/localtime /etc/localtime.bak&lt;/pre&gt;

&lt;p&gt;
4. Создайте новый симлинк на нужный файл таймзоны:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# ln -s /usr/share/zoneinfo/Pacific/Auckland /etc/localtime&lt;/pre&gt;

&lt;p&gt;
5. Убедитесь, что новый симлинк создался:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# ls -l /etc/localtime
lrwxrwxrwx 1 root root 36 Dec 6 10:04 /etc/localtime --&amp;gt; /usr/share/zoneinfo/Pacific/Auckland&lt;/pre&gt;

&lt;p&gt;
6. Убедитесь, что таймзона сменилась:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# date
Wed Dec 7 10:05:41 NZDT 2006 &lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u0441\u043c\u0435\u043d\u0438\u0442\u044c \u0442\u0430\u0439\u043c\u0437\u043e\u043d\u0443 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u043c \u0445\u043e\u0441\u0442\u0435 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0441\u043c\u0435\u043d\u0438\u0442\u044c_\u0442\u0430\u0439\u043c\u0437\u043e\u043d\u0443_\u043d\u0430_\u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u043c_\u0445\u043e\u0441\u0442\u0435_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:23,&amp;quot;secid&amp;quot;:24,&amp;quot;range&amp;quot;:&amp;quot;20372-22400&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit25&quot; id=&quot;раздел_2_-_управление_и_поддержка_хостов_xenserver&quot;&gt;Раздел 2 - Управление и поддержка хостов XenServer&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 2 - \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0445\u043e\u0441\u0442\u043e\u0432 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_2_-_\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0438_\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430_\u0445\u043e\u0441\u0442\u043e\u0432_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:28,&amp;quot;secid&amp;quot;:25,&amp;quot;range&amp;quot;:&amp;quot;22401-22495&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit26&quot; id=&quot;выбор_конфигурируемого_хоста&quot;&gt;Выбор конфигурируемого хоста&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_hostselectors&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_hostselectors&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_hostselectors&lt;/a&gt;&lt;br/&gt;

Многие команды команды конфигурирующие хосты XenServer требуют явного указания хоста, к которому происходит обращение. Самый простой способ указать имя хоста с помощью аргумента &lt;strong&gt;host=uuid_or_name_label&lt;/strong&gt;. Кроме того, хосты могут быть указаны с помощью фильтрации полного списка хостов по значениям заданных полей. Например - указав &lt;strong&gt;enabled=true&lt;/strong&gt; можно выбрать только те хосты, у которых включено заданное свойство. Если фильтру соответствуют несколько хостов и операция должна быть выполнена над всеми ними, то следует указывать опцию 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;--multiple&lt;/pre&gt;

&lt;p&gt;
. Полный список параметров хостов может быть получен командой &lt;strong&gt;xe host-list params=all&lt;/strong&gt;. Если в команде явно не указан никакой хост, то команда будет выполнена на всех хостах пула. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0431\u043e\u0440 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0431\u043e\u0440_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e_\u0445\u043e\u0441\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:28,&amp;quot;secid&amp;quot;:26,&amp;quot;range&amp;quot;:&amp;quot;22496-23948&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit27&quot; id=&quot;применение_патчей_и_хотфиксов&quot;&gt;2.1 - Применение патчей и хотфиксов&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#applying_hotfixes&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#applying_hotfixes&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#applying_hotfixes&lt;/a&gt;&lt;br/&gt;

Между релизами XenServer, Citrix выпускает апдейты и хотфиксы (updates and hotfixes). Хотфиксы исправляют отдельные ошибки, а апдейты содерждат в себе множественные кумулятивные исправления и обновления функционала.&lt;br/&gt;

Публичные хотфиксы и апдейты бывают доступны для скачивания из Citrix Knowledge Center. Конкретная информация и инструкции, касающиеся каждого пакета также публикуются. &lt;br/&gt;

Хотфиксы и апдейты как правило устанавливаются с минимальным воздействием на инфраструктуру XenServer. При использовании пула серверов XenServer можно сократить время простоя обновляя сервера по одному, перемещая работающие на них виртуальные машины на другие сервера. XenCenter позволяет осуществить эти действия в правильной последовательности автоматически. При использовании интерфейса командной строки &lt;strong&gt;xe&lt;/strong&gt;, эти действия нужно делать вручную. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.1 - \u041f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u0430\u0442\u0447\u0435\u0439 \u0438 \u0445\u043e\u0442\u0444\u0438\u043a\u0441\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u043f\u0430\u0442\u0447\u0435\u0439_\u0438_\u0445\u043e\u0442\u0444\u0438\u043a\u0441\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:29,&amp;quot;secid&amp;quot;:27,&amp;quot;range&amp;quot;:&amp;quot;23949-25591&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit28&quot; id=&quot;перед_применением_хотфикса_или_апдейта&quot;&gt;Перед применением хотфикса или апдейта&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;div class=&quot;table sectionedit29&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО! При применении обновлений важно четко следовать инструкциям.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table8&amp;quot;,&amp;quot;secid&amp;quot;:29,&amp;quot;range&amp;quot;:&amp;quot;25674-25803&amp;quot;} --&gt;
&lt;p&gt;
Перед применением обновлений важно знать:&lt;br/&gt;

 - Лучше всего применять обновления в течение короткого промежутка времени, т.к. работа пулов в смешанном режиме (когда одни сервера уже имеют обновления, а другие нет) не поддерживается. &lt;br/&gt;

 - Citrix рекомендует, перед применением обновлений перезагрузить каждый хост XenServer, что позволит убедиться в его работоспособности и корректности конфигурации. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit30&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ПРИМЕЧАНИЕ: XenCenter перезагрузит каждый хост автоматически во время работы мастера обновления, перед применением обновления. Если для обновления используется интерфейс &lt;strong&gt;xe CLI&lt;/strong&gt;, то перезагрузку нужно выполнить вручную.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table9&amp;quot;,&amp;quot;secid&amp;quot;:30,&amp;quot;range&amp;quot;:&amp;quot;26522-26922&amp;quot;} --&gt;
&lt;p&gt;
 - Citrix также рекомендует сделать резервную копию состояния обновляемого пула (или индивидуальных хостов). &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Перед обновлением:&lt;br/&gt;

 - Войдите на сервер с учетной записью, имеющей полные права (Pool Administrator или локальный root).&lt;br/&gt;

 - У всех останавливаемых виртуальных машин нужно извлечь CD/DVD (сделать empty).&lt;br/&gt;

 - Если включена высокая доступность (HA) - отключите ее.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если планируется применить обновление с помощью XenCenter, то XenCenter запустит ряд проверок, которые позволят убедиться, что хост готов к обновлению и совместим с данным обновлением. Эти проверки являются частью работы мастера обновлений и в случае неудачной проверки будет выведено соответствующее сообщение. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u0434 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c \u0445\u043e\u0442\u0444\u0438\u043a\u0441\u0430 \u0438\u043b\u0438 \u0430\u043f\u0434\u0435\u0439\u0442\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u0434_\u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c_\u0445\u043e\u0442\u0444\u0438\u043a\u0441\u0430_\u0438\u043b\u0438_\u0430\u043f\u0434\u0435\u0439\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:29,&amp;quot;secid&amp;quot;:28,&amp;quot;range&amp;quot;:&amp;quot;25592-28126&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit31&quot; id=&quot;обновление_отдельных_хостов_xenserver&quot;&gt;Обновление отдельных хостов XenServer&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для обноления хоста с помощью XenCenter:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 1. Скачайте обновление (файл с расширением &lt;strong&gt;.xsupdate&lt;/strong&gt;) на компьютер, на котором работает XenCenter.&lt;br/&gt;

 2. Остановите (Shut down или suspend) все виртуальные машины на обновляемом хосте. &lt;br/&gt;

 3. В меню &lt;strong&gt;Tools&lt;/strong&gt; выберите &lt;strong&gt;Install New Update&lt;/strong&gt;. Откроется мастер обновления.&lt;br/&gt;

 4. Прочитайте информацию и кликните &lt;strong&gt;Next&lt;/strong&gt; для продолжения.&lt;br/&gt;

 5. Выберите &lt;strong&gt;Add&lt;/strong&gt;, и затем укажите скачанный файл обновления. Кликните &lt;strong&gt;Open&lt;/strong&gt;. После того как файл добавится кликните &lt;strong&gt;Next&lt;/strong&gt; для продолжения. &lt;br/&gt;

 6. Выберите один или более хостов для применения обновления. &lt;br/&gt;

 7. Следуйте рекомендациям для разрешения проблем, выявленных при проверках. Если вы хотите, чтобы XenCenter автоматически решил все обнаруженные проблемы - кликните &lt;strong&gt;Resolve All&lt;/strong&gt;. После успешного прохождения всех проверок кликните &lt;strong&gt;Next&lt;/strong&gt; для продолжения.&lt;br/&gt;

 8. Выберите режим обновления - автоматический (automatic) или вручную (manual).&lt;br/&gt;

Если выбран автоматический режим, то XenCenter выполнит все необходимые действия после обновления (например перезагрузку хоста). Если выбран ручной, то требуемые дейтсвия надо выполнить вручную. Необходимые действия, выполняемые после обновления перечислены в списке ниже. Если вы хотите сохранить список в текстовый файл - кликните &lt;strong&gt;Save to File&lt;/strong&gt;.  &lt;br/&gt;

 Кликните &lt;strong&gt;Install update&lt;/strong&gt; для продолжения обновления. &lt;br/&gt;

 Мастер обновления отобразит прогресс обновления, сообщая об основных произведенных операциях. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 9. По окончании обновления кликните Finish для того чтобы закрыть мастер обновления. &lt;br/&gt;

 10. Если был выбран способ обновления вручную, то сейчас следует выполнить предписанные действия. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Обновление отдельного хоста с помощью интерфейса &lt;strong&gt;xe CLI&lt;/strong&gt;:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1. Скачайте обновление (файл с расширением &lt;strong&gt;.xsupdate&lt;/strong&gt;) на компьютер, на котором выполняются команды &lt;strong&gt;xe CLI&lt;/strong&gt;. Запомните путь к файлу.&lt;br/&gt;

2. Остановите (Shut down или suspend) все виртуальные машины на обновляемом хосте с помощью команд &lt;strong&gt;vm-shutdown&lt;/strong&gt; или &lt;strong&gt;vm-suspend&lt;/strong&gt;. &lt;br/&gt;

3. Загрузите файл обновления на обновляемый хост командой:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe -s &amp;lt;server&amp;gt; -u &amp;lt;username&amp;gt; -pw &amp;lt;password&amp;gt; patch-upload file-name=&amp;lt;filename&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 Тут ключ -s указывает имя хоста (то есть имя FQDN или просто IP-адрес). XenServer присвоит файлу обновления UUID, который будет отображен. Запомните UUID.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit32&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;СОВЕТ: После загрузки файла обновления на хост можно использовать команды &lt;strong&gt;patch-list&lt;/strong&gt; и &lt;strong&gt;patch-param-list&lt;/strong&gt; для просмотра информации о файле обновления.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table10&amp;quot;,&amp;quot;secid&amp;quot;:32,&amp;quot;range&amp;quot;:&amp;quot;31990-32252&amp;quot;} --&gt;
&lt;p&gt;
4. Если XenServer обнаружит ошибки или то, что не были выполнены подготовительные действия - (например на хоте остались запущенные виртуальные машины) он предупредит. Перед тем как продолжить обновление убедитесь, что все нужные шаги выполнены.&lt;br/&gt;

5. Обновите хост, указав UUID хоста и файла обновлений:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe patch-apply host-uuid=&amp;lt;UUID_of_host&amp;gt; uuid=&amp;lt;UUID_of_file&amp;gt;&lt;/pre&gt;

&lt;p&gt;
6. Убедитесь, что обновление прошло правильно с помощью команды &lt;strong&gt;patch-list&lt;/strong&gt;. Если обновление прошло успешно, то поле &lt;strong&gt;hosts&lt;/strong&gt; содержит UUID хоста.&lt;br/&gt;

7. Выполните необходимые после обновления операции (перезагрузка и др.). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0445\u043e\u0441\u0442\u043e\u0432 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_\u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445_\u0445\u043e\u0441\u0442\u043e\u0432_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:29,&amp;quot;secid&amp;quot;:31,&amp;quot;range&amp;quot;:&amp;quot;28127-33251&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit33&quot; id=&quot;обновление_пула_серверов_xenserver&quot;&gt;Обновление пула серверов XenServer&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
При обновлении пула с помощью XenCenter, мастер обновления Install Update автоматически определяет этапы обновления и выполняет миграцию виртуальных машин. Если требуется управлять процессом обновления и миграцией виртуальных машин вручную, то можно обновлять каждый хост отдельно, при этом основхой хост пула (pool master) следует обновлять в первую очередь.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Обновление пула с помощью XenCenter:&lt;br/&gt;

1. Скачайте обновление (файл с расширением &lt;strong&gt;.xsupdate&lt;/strong&gt;) на компьютер, на котором работает XenCenter.&lt;br/&gt;

2. Если в пуле есть виртуальные машины, которые надо остановить вручную (а не автоматически) - сделайте это. &lt;br/&gt;

 3. В меню &lt;strong&gt;Tools&lt;/strong&gt; выберите &lt;strong&gt;Install New Update&lt;/strong&gt;. Откроется мастер обновления.&lt;br/&gt;

 4. Прочитайте информацию и кликните &lt;strong&gt;Next&lt;/strong&gt; для продолжения.&lt;br/&gt;

 5. Выберите &lt;strong&gt;Add&lt;/strong&gt;, и затем укажите скачанный файл обновления. Кликните &lt;strong&gt;Open&lt;/strong&gt;. После того как файл добавится кликните &lt;strong&gt;Next&lt;/strong&gt; для продолжения. &lt;br/&gt;

 6. Выберите пул для применения обновления. Кликните Next.&lt;br/&gt;

 7. Следуйте рекомендациям для разрешения проблем, выявленных при проверках. Если вы хотите, чтобы XenCenter автоматически решил все обнаруженные проблемы - кликните &lt;strong&gt;Resolve All&lt;/strong&gt;. После успешного прохождения всех проверок кликните &lt;strong&gt;Next&lt;/strong&gt; для продолжения.&lt;br/&gt;

 8. Выберите режим обновления - автоматический (automatic) или вручную (manual).&lt;br/&gt;

Если выбран автоматический режим, то XenCenter выполнит все необходимые действия после обновления (например перезагрузку хостов). Если выбран ручной, то требуемые действия надо выполнить вручную. Необходимые действия, выполняемые после обновления перечислены в списке ниже. Если вы хотите сохранить список в текстовый файл - кликните &lt;strong&gt;Save to File&lt;/strong&gt;.  &lt;br/&gt;

 Кликните &lt;strong&gt;Install update&lt;/strong&gt; для продолжения обновления. &lt;br/&gt;

 Мастер обновления отобразит прогресс обновления, сообщая об основных произведенных операциях на каждом хосте пула. &lt;br/&gt;

 Во время обновления основного хоста пула (pool master) XenCenter временно отсоединится от пула. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 9. По окончании обновления кликните Finish для того чтобы закрыть мастер обновления. &lt;br/&gt;

 10. Если был выбран способ обновления вручную, то сейчас следует выполнить предписанные действия. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0443\u043b\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_\u043f\u0443\u043b\u0430_\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:31,&amp;quot;secid&amp;quot;:33,&amp;quot;range&amp;quot;:&amp;quot;33252-36980&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit34&quot; id=&quot;обновление_пула_серверов_xenserver_с_помощью_xe_cli&quot;&gt;Обновление пула серверов XenServer с помощью &amp;#039;&amp;#039;&amp;#039;xe CLI&amp;#039;&amp;#039;&amp;#039;:&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
1. Скачайте обновление (файл с расширением &lt;strong&gt;.xsupdate&lt;/strong&gt;) на компьютер, на котором выполняются команды &lt;strong&gt;xe CLI&lt;/strong&gt;. Запомните путь к файлу.&lt;br/&gt;

2. Загрузите файл обновления на основной хост пула (pool master) командой:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe -s &amp;lt;server&amp;gt; -u &amp;lt;username&amp;gt; -pw &amp;lt;password&amp;gt; patch-upload file-name=&amp;lt;filename&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 Тут ключ -s указывает имя хоста &lt;strong&gt;pool master&lt;/strong&gt;. XenServer присвоит файлу обновления UUID, который будет отображен. Запомните UUID.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit35&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;СОВЕТ: После загрузки файла обновления на хост можно использовать команды &lt;strong&gt;patch-list&lt;/strong&gt; и &lt;strong&gt;patch-param-list&lt;/strong&gt; для просмотра информации о файле обновления.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table11&amp;quot;,&amp;quot;secid&amp;quot;:35,&amp;quot;range&amp;quot;:&amp;quot;37739-38001&amp;quot;} --&gt;
&lt;p&gt;
4. Если XenServer обнаружит ошибки или то, что не были выполнены подготовительные действия - (например в пуле остались запущенные виртуальные машины) он предупредит. Перед тем как продолжить обновление убедитесь, что все нужные шаги выполнены.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
5. Обновите хост, указав UUID хоста и файла обновлений:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe patch-apply host-uuid=&amp;lt;UUID_of_host&amp;gt; uuid=&amp;lt;UUID_of_file&amp;gt;&lt;/pre&gt;

&lt;p&gt;
6. Убедитесь, что обновление прошло правильно с помощью команды &lt;strong&gt;patch-list&lt;/strong&gt;. Если обновление прошло успешно, то поле &lt;strong&gt;hosts&lt;/strong&gt; содержит UUID хоста.&lt;br/&gt;

7. Выполните необходимые после обновления операции (перезагрузка и др.). &lt;br/&gt;

Если нужно - остановите (Shut down или suspend) виртуальные машины в обновляемом пуле с помощью команд &lt;strong&gt;vm-shutdown&lt;/strong&gt; или &lt;strong&gt;vm-suspend&lt;/strong&gt;. &lt;br/&gt;

Для того чтобы конкретные виртуальные машины мигрировали на конкретный хост можно использовать команду &lt;strong&gt;vm-migrate&lt;/strong&gt;. С помощью команды &lt;strong&gt;vm-migrate&lt;/strong&gt; можно осуществлять полный контроль над распределением виртуальных машин по хостам пула. &lt;br/&gt;

Для автоматической “живой” миграции всех виртуальных машин внутри пула используйте команду &lt;strong&gt;host-evacuate&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
5. Обновите пул, указав UUID файла обновлений:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe patch-pool-apply uuid=&amp;lt;UUID_of_file&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Эта команда применит обновление ко всем хостам пула.&lt;br/&gt;

Кроме того. можно применять обновления и к конкретным хостам командой. содержащей UUID конкретного хоста:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe patch-apply host-uuid=&amp;lt;UUID_of_host&amp;gt; uuid=&amp;lt;UUID_of_file&amp;gt;&lt;/pre&gt;

&lt;p&gt;
6. Убедитесь, что обновление прошло правильно с помощью команды &lt;strong&gt;patch-list&lt;/strong&gt;. Если обновление прошло успешно, то поле &lt;strong&gt;hosts&lt;/strong&gt; содержит UUID хоста.&lt;br/&gt;

7. Выполните необходимые после обновления операции (перезагрузка и др.). &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit36&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ПРИМЕЧАНИЕ: Если после обновления нужно освободить место на дисках мастерхоста, то это можно сделать удалив файлы обновлений командой &lt;strong&gt;patch-clean&lt;/strong&gt;. При необходимости эти файлы можно закачать повторно командой &lt;strong&gt;patch-upload&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table12&amp;quot;,&amp;quot;secid&amp;quot;:36,&amp;quot;range&amp;quot;:&amp;quot;40713-41113&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0443\u043b\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 XenServer \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e &amp;#039;&amp;#039;&amp;#039;xe CLI&amp;#039;&amp;#039;&amp;#039;:&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_\u043f\u0443\u043b\u0430_\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432_xenserver_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_xe_cli&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:31,&amp;quot;secid&amp;quot;:34,&amp;quot;range&amp;quot;:&amp;quot;36981-41115&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit37&quot; id=&quot;при_применении_обновлении_появляется_сообщениеthe_upload_update_already_exist_check_your_settings_and_try_again&quot;&gt;При применении обновлении появляется сообщение: &amp;#039;&amp;#039;&amp;#039;The upload update already exist. Check your settings and try again&amp;#039;&amp;#039;&amp;#039;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX121325&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX121325&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX121325&lt;/a&gt;&lt;br/&gt;

Симптомы:&lt;br/&gt;

На хост уже установлены пакеты обновлений 1 и 2. При применении пакета обновления 3 появляется сообщение:&lt;br/&gt;

&lt;strong&gt;“Update Uploaded to Server &amp;lt;your server&amp;gt;&lt;br/&gt;

The upload update already exists&lt;br/&gt;

Check your settings and try again.”&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435: &amp;#039;&amp;#039;&amp;#039;The upload update already exist. Check your settings and try again&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438_\u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0438_\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438_\u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f_\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435the_upload_update_already_exist_check_your_settings_and_try_again&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:35,&amp;quot;secid&amp;quot;:37,&amp;quot;range&amp;quot;:&amp;quot;41116-41674&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit38&quot; id=&quot;как_выключить_shut_down_хост_xenserver_без_ущерба_общей_производительности&quot;&gt;2.2 - Как выключить (shut down) хост XenServer без ущерба общей производительности&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Для выключения или перезагрузки хоста XenServer, входящего в состав пула следует выполнить несколько предварительных шагов, которые подготовят хост к выключению.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.2 - \u041a\u0430\u043a \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c (shut down) \u0445\u043e\u0441\u0442 XenServer \u0431\u0435\u0437 \u0443\u0449\u0435\u0440\u0431\u0430 \u043e\u0431\u0449\u0435\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c_shut_down_\u0445\u043e\u0441\u0442_xenserver_\u0431\u0435\u0437_\u0443\u0449\u0435\u0440\u0431\u0430_\u043e\u0431\u0449\u0435\u0439_\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:35,&amp;quot;secid&amp;quot;:38,&amp;quot;range&amp;quot;:&amp;quot;41675-42110&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit39&quot; id=&quot;отключение_хоста_-_запрет_на_запуск_новых_виртуальных_машин&quot;&gt;Отключение хоста - запрет на запуск новых виртуальных машин&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для того чтобы запретить запуск на хосте виртуальных машин предусмотрена команда &lt;strong&gt;host-disable&lt;/strong&gt;:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;host-disable [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Хосты на которых следует выполнить эту операцию выбираются с помощью стандартных селекотров. Дополнительными аргументами могут быть любое число параметров хоста, описанных тут: &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_hostparameters&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_hostparameters&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_hostparameters&lt;/a&gt; .&lt;br/&gt;

 &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0445\u043e\u0441\u0442\u0430 - \u0437\u0430\u043f\u0440\u0435\u0442 \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u043d\u043e\u0432\u044b\u0445 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0445\u043e\u0441\u0442\u0430_-_\u0437\u0430\u043f\u0440\u0435\u0442_\u043d\u0430_\u0437\u0430\u043f\u0443\u0441\u043a_\u043d\u043e\u0432\u044b\u0445_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445_\u043c\u0430\u0448\u0438\u043d&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:35,&amp;quot;secid&amp;quot;:39,&amp;quot;range&amp;quot;:&amp;quot;42111-42910&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit40&quot; id=&quot;эвакуация_хоста_-_host-evacuate&quot;&gt;Эвакуация хоста - &amp;#039;&amp;#039;&amp;#039;host-evacuate&amp;#039;&amp;#039;&amp;#039;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-evacuate &amp;#039;&amp;#039;&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;&amp;#039;&amp;#039;...&lt;/pre&gt;

&lt;p&gt;
Эта команда осуществляет “живую” миграцию виртеальных машин на другие хосты пула. Перед использованием этой команды хот должен быть отключен с комопщью команды &lt;strong&gt;host-disable&lt;/strong&gt;.&lt;br/&gt;

Если эвакуируемый хост является мастер-хостом пула, то должен быть выбран другой мастерхост. Для переназначения мастер-хоста  при отключенной высокой доступности (HA) необходимо выполнить команду &lt;strong&gt;pool-designate-new-master&lt;/strong&gt; (см. &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-designate-new-master&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-designate-new-master&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-designate-new-master&lt;/a&gt;). При включенной высокой доступности (HA) можно просто выключить хост. Выборы нового мастер-хоста произойдут автоматически путем случайного выбора из имеющихся хостов. &lt;br/&gt;

Хосты на которых должна быть выполнена эта команда задаются с помощью стандартных селекторов. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042d\u0432\u0430\u043a\u0443\u0430\u0446\u0438\u044f \u0445\u043e\u0441\u0442\u0430 - &amp;#039;&amp;#039;&amp;#039;host-evacuate&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044d\u0432\u0430\u043a\u0443\u0430\u0446\u0438\u044f_\u0445\u043e\u0441\u0442\u0430_-_host-evacuate&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:36,&amp;quot;secid&amp;quot;:40,&amp;quot;range&amp;quot;:&amp;quot;42911-44357&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit41&quot; id=&quot;перезагрузка_хоста_-_host-reboot&quot;&gt;Перезагрузка хоста - &amp;#039;&amp;#039;&amp;#039;host-reboot&amp;#039;&amp;#039;&amp;#039;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-reboot [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Эта команда перезагружает указанный хост(ы). Перед перезагрузкой на хостах нужно запретить запуск новых виртуальных машин командой &lt;strong&gt;xe host-disable &lt;/strong&gt;, в противном случае будет выведено сообщение об ошибке - &lt;strong&gt;HOST_IN_USE&lt;/strong&gt;.&lt;br/&gt;

Хосты на которых должна быть выполнена эта команда задаются с помощью стандартных селекторов.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если указанный хост является членом пула, то после перезагрузки он восстановится в пуле. Если перезагружается мастер-хост пула, то пул не будет работать до тех пор, пока мастер-хост пула не будет доступен снова. При включенной высокой доступности (HA) выборы нового мастер-хоста пройдут автоматически. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0445\u043e\u0441\u0442\u0430 - &amp;#039;&amp;#039;&amp;#039;host-reboot&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430_\u0445\u043e\u0441\u0442\u0430_-_host-reboot&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:37,&amp;quot;secid&amp;quot;:41,&amp;quot;range&amp;quot;:&amp;quot;44358-45607&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit42&quot; id=&quot;обработка_отказов_хостов_xenserver&quot;&gt;Обработка отказов хостов XenServer&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#pool_failures&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#pool_failures&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#pool_failures&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043e\u0442\u043a\u0430\u0437\u043e\u0432 \u0445\u043e\u0441\u0442\u043e\u0432 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430_\u043e\u0442\u043a\u0430\u0437\u043e\u0432_\u0445\u043e\u0441\u0442\u043e\u0432_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:38,&amp;quot;secid&amp;quot;:42,&amp;quot;range&amp;quot;:&amp;quot;45608-45762&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit43&quot; id=&quot;отказ_рядовых_хостов_пула&quot;&gt;Отказ рядовых хостов пула&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При отсутствии высокой доступности (HA) мастер-хост следит за регулярными хертбитами (heartbeat messages). Если от хоста не приходит хертбит в течение 600 секунд - хост считается не работающим. Решить эту проблему можно двумя путями:&lt;br/&gt;

 Первый - восстановить работоспособность хоста (т.е. просто физически перезагрузить). После перезагрузки хост снова начнет слать хертбиты и восстановится в пуле.  &lt;br/&gt;

 Второй - Полностью выключить отказавший хост и указать мастер-хосту чтобы он “забыл” отказавший хост с помощью команды &lt;strong&gt;xe host-forget&lt;/strong&gt;. После того как отказавший хост “забыт” все виртуальные машины на нем работавшие помечаются как выключенные и могут быть повторно запущены на других хостах пула. Учтите, что крайне важно, чтобы отказавший хост XenServer был действительно выключен. В противном случае - возможно, что оставшиеся на нем работать экземпляры виртуальных машин будут конфликтовать с вновь запущенными в пуле, что может привести к повреждению данных виртуальных машин. Также возможно, что в результате выполнения команды &lt;strong&gt;xe host-forget&lt;/strong&gt; единый пул будет разделен на множество пулов, состоящих из одного хоста. Это приведет к тому, что все эти пулы будут обращаться к одному общему хранилищу (shared storage), что также может привести к повреждению данных виртуальных машин.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit44&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table13&amp;quot;,&amp;quot;secid&amp;quot;:44,&amp;quot;range&amp;quot;:&amp;quot;48104-48339&amp;quot;} --&gt;
&lt;p&gt;
Не используйте команду &lt;strong&gt;xe host-forget&lt;/strong&gt; при включенной высокой доступности (HA). Перед применением  &lt;strong&gt;xe host-forget&lt;/strong&gt; следует выключить (HA), а после применения включить снова.^&lt;br/&gt;

Может так случиться, что хост вышел из строя, но виртуальные машины по прежнему имеют статус работающих (running state). Если вы уверены в том, что хост действительно выключен, выполните команду &lt;strong&gt;xe vm-reset-powerstate&lt;/strong&gt; для того чтобы изменить состояние виртуальных машин на halted (см. &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_vm-reset-powerstate&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_vm-reset-powerstate&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_vm-reset-powerstate&lt;/a&gt;). &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit45&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! используйте эту команду только если вы полностью уверены в ее необходимости, т.к. неправильное использование может привести к повреждению данных.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table14&amp;quot;,&amp;quot;secid&amp;quot;:45,&amp;quot;range&amp;quot;:&amp;quot;49233-49524&amp;quot;} --&gt;
&lt;p&gt;
Перед тем как запустить виртуальные машины на другом хосте понадобится снять блокировки на хранилище виртуальных машин. Каждый диск виртуальной машины, хранящийся в хранилище в каждый момент времени может использоваться только одним хостом XenServer. Таким образом, для того чтобы другой хост вместо отказавшего мог использовать диски виртуальных машин следует запустить скрипт на мастер-хосте пула для каждого хранилища (SR), хранящего диски пострадавших виртуальных машин: &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;/opt/xensource/sm/resetvdis.py &amp;lt;host_UUID&amp;gt; &amp;lt;SR_UUID&amp;gt; [master]&lt;/pre&gt;

&lt;p&gt;
Третий аргумент &lt;strong&gt;master&lt;/strong&gt; следует использовать только если хост был мастером хранилища (SR) - то есть мастер-хостом пула или если хост XenServer использовал локальное хранилище в момент отказа. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit46&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! используйте эту команду только если вы полностью уверены что пострадавший хост выключен, т.к. неправильное использование может привести к повреждению данных.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table15&amp;quot;,&amp;quot;secid&amp;quot;:46,&amp;quot;range&amp;quot;:&amp;quot;50811-51125&amp;quot;} --&gt;
&lt;p&gt;
Если вы попытаетесь запустить виртуальную машин на другом хосте, перед тем как выполнили этот скрипт (если на хранилище остались блокировки), то будет выведено сообщение об ошибке - &lt;em&gt;VDI &amp;lt;UUID&amp;gt; already attached RW&lt;/em&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043a\u0430\u0437 \u0440\u044f\u0434\u043e\u0432\u044b\u0445 \u0445\u043e\u0441\u0442\u043e\u0432 \u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043a\u0430\u0437_\u0440\u044f\u0434\u043e\u0432\u044b\u0445_\u0445\u043e\u0441\u0442\u043e\u0432_\u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:38,&amp;quot;secid&amp;quot;:43,&amp;quot;range&amp;quot;:&amp;quot;45763-51496&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit47&quot; id=&quot;отказ_мастер-хоста&quot;&gt;Отказ мастер-хоста&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Каждый член пула имеею всю необходимую информацию, чтобы стать мастер-хостом в случае необходимости. При отказе мастер хоста происходит следующее:&lt;br/&gt;

1. Если высокая доступность (HA) включена - новый мастер-хост выбирается автоматически.&lt;br/&gt;

2. Если высокая доступность (HA) отключена, то члены пула будут ждать появления нового мастер-хоста. &lt;br/&gt;

Если мастер-хост вернется к работе в этот момент, то соединения в пуле будут восстановлены и пул продолжит нормальную работу. &lt;br/&gt;

Если мастер-хост действительно сдох, то нужно выбрать новый мастер-хост и запустить а нем команду &lt;strong&gt;xe pool-emergency-transition-to-master&lt;/strong&gt; и он станет мастер-хостом. Затем для восстановления подключений членов пула к новому мастер-хосту следует выполнить команду &lt;strong&gt;xe pool-recover-slaves&lt;/strong&gt;.&lt;br/&gt;

Если старый мастер-хост буде впоследствии восстановлен, то на нем следует просто переустановить XenServer и просто добавить его в пул. &lt;br/&gt;

После того, как был назначен новый мастер-хост следует проверить, что используется правильное хранилище пула по-умолчанию (default pool storage repository). Это можно сделать командой &lt;strong&gt;xe pool-param-list&lt;/strong&gt;, в выводе которой есть параметр &lt;strong&gt;default-SR&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043a\u0430\u0437 \u043c\u0430\u0441\u0442\u0435\u0440-\u0445\u043e\u0441\u0442\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043a\u0430\u0437_\u043c\u0430\u0441\u0442\u0435\u0440-\u0445\u043e\u0441\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:39,&amp;quot;secid&amp;quot;:47,&amp;quot;range&amp;quot;:&amp;quot;51497-53519&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit48&quot; id=&quot;отказы_пула_вцелом&quot;&gt;Отказы пула вцелом&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Иногда бывает так, что пул разваливается совсем и нужно восстановить базу данных пула. Убедитесь, что вы регулярно делаете резервные копии базы данных пула с помощью команды &lt;strong&gt;xe pool-dump-database&lt;/strong&gt; (см. &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-dump-database&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-dump-database&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-dump-database&lt;/a&gt;). &lt;br/&gt;

Для восстановления разваленного пула:&lt;br/&gt;

 1. Установите на новые хосты XenServer. Не создавайте пул. &lt;br/&gt;

 2. На хосте которы должен стать мастер-хостом восстановите базу данных пула из резервной копии командой &lt;strong&gt;xe pool-restore-database&lt;/strong&gt; (см. &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-restore-database&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-restore-database&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-restore-database&lt;/a&gt;). &lt;br/&gt;

 3. Подключитесь к мастер-хосту консолью XenCenter и убедитесь, что общее хранилище и виртуальные машины на месте. &lt;br/&gt;

 4. Выполните присоединение членов пула к пулу и запустите виртуальные машины. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Если новый мастер-хост не видит хранилище, то следует восстнаовить физичесоке подключение к хранилищу, а затем изменить конфигурацию хоста с помощью команд &lt;strong&gt;pbd-destroy&lt;/strong&gt; (уничтожение неработающего хранилища) и &lt;strong&gt;pbd-create&lt;/strong&gt; (создание нового) (см.&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pbd&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pbd&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pbd&lt;/a&gt;).&lt;br/&gt;

 Если вы создали новое хранилище, то затем присоедините физическое устройство к нему командой &lt;strong&gt;pbd-plug&lt;/strong&gt; или с помощью XenCenter - Storage &amp;gt; Repair Storage Repository. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043a\u0430\u0437\u044b \u043f\u0443\u043b\u0430 \u0432\u0446\u0435\u043b\u043e\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043a\u0430\u0437\u044b_\u043f\u0443\u043b\u0430_\u0432\u0446\u0435\u043b\u043e\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:39,&amp;quot;secid&amp;quot;:48,&amp;quot;range&amp;quot;:&amp;quot;53520-55684&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit49&quot; id=&quot;перезагрузка_хоста_-_host-reboot1&quot;&gt;Перезагрузка хоста - &amp;#039;&amp;#039;&amp;#039;host-reboot&amp;#039;&amp;#039;&amp;#039;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-reboot [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Эта команда перезагружает указанный хост(ы). Перед перезагрузкой на хостах нужно запретить запуск новых виртуальных машин командой &lt;strong&gt;xe host-disable &lt;/strong&gt;, в противном случае будет выведено сообщение об ошибке - &lt;strong&gt;HOST_IN_USE&lt;/strong&gt;.&lt;br/&gt;

Хосты на которых должна быть выполнена эта команда задаются с помощью стандартных селекторов.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Если указанный хост является членом пула, то после перезагрузки он восстановится в пуле. Если перезагружается мастер-хост пула, то пул не будет работать до тех пор, пока мастер-хост пула не будет доступен снова. При включенной высокой доступности (HA) выборы нового мастер-хоста пройдут автоматически. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0445\u043e\u0441\u0442\u0430 - &amp;#039;&amp;#039;&amp;#039;host-reboot&amp;#039;&amp;#039;&amp;#039;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430_\u0445\u043e\u0441\u0442\u0430_-_host-reboot1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:39,&amp;quot;secid&amp;quot;:49,&amp;quot;range&amp;quot;:&amp;quot;55685-56934&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit50&quot; id=&quot;обработка_отказов_хостов_xenserver1&quot;&gt;Обработка отказов хостов XenServer&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#pool_failures&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#pool_failures&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#pool_failures&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043e\u0442\u043a\u0430\u0437\u043e\u0432 \u0445\u043e\u0441\u0442\u043e\u0432 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430_\u043e\u0442\u043a\u0430\u0437\u043e\u0432_\u0445\u043e\u0441\u0442\u043e\u0432_xenserver1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:40,&amp;quot;secid&amp;quot;:50,&amp;quot;range&amp;quot;:&amp;quot;56935-57087&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit51&quot; id=&quot;отказ_рядовых_хостов_пула1&quot;&gt;Отказ рядовых хостов пула&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
При отсутствии высокой доступности (HA) мастер-хост следит за регулярными хертбитами (heartbeat messages). Если от хоста не приходит хертбит в течение 600 секунд - хост считается не работающим. Решить эту проблему можно двумя путями:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Первый - восстановить работоспособность хоста (т.е. просто физически перезагрузить). После перезагрузки хост снова начнет слать хертбиты и восстановится в пуле.  &lt;br/&gt;

 Второй - Полностью выключить отказавший хост и указать мастер-хосту чтобы он “забыл” отказавший хост с помощью команды &lt;strong&gt;xe host-forget&lt;/strong&gt;. После того как отказавший хост “забыт” все виртуальные машины на нем работавшие помечаются как выключенные и могут быть повторно запущены на других хостах пула. Учтите, что крайне важно, чтобы отказавший хост XenServer был действительно выключен. В противном случае - возможно, что оставшиеся на нем работать экземпляры виртуальных машин будут конфликтовать с вновь запущенными в пуле, что может привести к повреждению данных виртуальных машин. Также возможно, что в результате выполнения команды &lt;strong&gt;xe host-forget&lt;/strong&gt; единый пул будет разделен на множество пулов, состоящих из одного хоста. Это приведет к тому, что все эти пулы будут обращаться к одному общему хранилищу (shared storage), что также может привести к повреждению данных виртуальных машин.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043a\u0430\u0437 \u0440\u044f\u0434\u043e\u0432\u044b\u0445 \u0445\u043e\u0441\u0442\u043e\u0432 \u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043a\u0430\u0437_\u0440\u044f\u0434\u043e\u0432\u044b\u0445_\u0445\u043e\u0441\u0442\u043e\u0432_\u043f\u0443\u043b\u04301&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:40,&amp;quot;secid&amp;quot;:51,&amp;quot;range&amp;quot;:&amp;quot;57088-59431&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit52&quot; id=&quot;восстановление_работы_хоста_при_включенной_высокой_доступности_ha&quot;&gt;2.3 - Восстановление работы хоста при включенной высокой доступности (HA)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#id873168&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#id873168&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#id873168&lt;/a&gt;&lt;br/&gt;

Если на хосте включена HA, но по какой-то причине хосту не доступен файл состояния HA (HA statefile), то хост может стать недоступным (unreachable). Для восстановления нормальной работы может понадобиться отключить HA с помощью команды &lt;strong&gt;host-emergency-ha-disable&lt;/strong&gt;:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-emergency-ha-disable --force&lt;/pre&gt;

&lt;p&gt;
Если хост был мастером пула (pool master), то он должен запуститься нормально с отключенной HA. Подчиненные хосты должны переподключиться и также автоматически отключить HA. Если хост был подчиненным (Pool slave) и не может подключиться к мастерхосту, то может понадобиться принудительная перезагрузка хоста в режиме мастерхоста (&lt;strong&gt;xe pool-emergency-transition-to-master&lt;/strong&gt;) или сообщить хосту где теперь новый мастерхост (&lt;strong&gt;xe pool-emergency-reset-master&lt;/strong&gt;):&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pool-emergency-transition-to-master uuid=&amp;lt;host_uuid&amp;gt;		
xe pool-emergency-reset-master master-address=&amp;lt;new_master_hostname&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Когда все хосты успешно стартовали, можно заново включить HA:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pool-ha-enable heartbeat-sr-uuid=&amp;lt;sr_uuid&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.3 - \u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u044b \u0445\u043e\u0441\u0442\u0430 \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 (HA)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_\u0440\u0430\u0431\u043e\u0442\u044b_\u0445\u043e\u0441\u0442\u0430_\u043f\u0440\u0438_\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439_\u0432\u044b\u0441\u043e\u043a\u043e\u0439_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438_ha&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:40,&amp;quot;secid&amp;quot;:52,&amp;quot;range&amp;quot;:&amp;quot;59432-61210&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit53&quot; id=&quot;настройка_e-mail_уведомлений_на_уровне_пула_хоста_или_виртуальной_машины&quot;&gt;2.4 - Настройка e-mail уведомлений на уровне пула, хоста или виртуальной машины&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#monitoring_xenserver&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#monitoring_xenserver&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#monitoring_xenserver&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX136679&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX136679&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX136679&lt;/a&gt;&lt;br/&gt;

Можно настроить XenServer так, чтобы он оповещал администратора о различных системных событиях. Настройки можно произвести либо с помощью XenCenter, либо с помощью консоли командной строки. &lt;br/&gt;

По-умолчанию для отправки уведомлений используется SMTP сервер, не требующий аутентификации. &lt;br/&gt;

Для отправки оповещений через SMTP сервер, требующий аутентификации нужно указать соответствующие данные в конфигурационном файле &lt;strong&gt;/etc/mail-alarm.conf&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Включение уведомлений в XenCenter:&lt;br/&gt;

 - Кликните правой кнопкой по хосту или пулу и выберите &lt;strong&gt;Properties&lt;/strong&gt;.&lt;br/&gt;

 - В окне &lt;strong&gt;Properties&lt;/strong&gt; выберите &lt;strong&gt;Email Options&lt;/strong&gt;.&lt;br/&gt;

 - Поставьте флажок &lt;strong&gt;Send email alert notifications&lt;/strong&gt; и введите адрес e-mail и SMTP сервер (не требующий аутентификации).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Включение уведомлений  с помощью командной строки:&lt;br/&gt;

 - Зайдите на сервер по учетной записью &lt;strong&gt;root&lt;/strong&gt; (неважно, в консоли XenCenter или по SSH).&lt;br/&gt;

 - Выполните следующие команды:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; xe pool-param-set uuid=&amp;lt;uuid&amp;gt; other-config:mail-destination=&amp;lt;joe.bloggs@domain.tld&amp;gt;
        xe pool-param-set uuid=&amp;lt;uuid&amp;gt; other-config:ssmtp-mailhub=&amp;lt;smtp.domain.tld[:port]&amp;gt; &lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.4 - \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 e-mail \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u043f\u0443\u043b\u0430, \u0445\u043e\u0441\u0442\u0430 \u0438\u043b\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_e-mail_\u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439_\u043d\u0430_\u0443\u0440\u043e\u0432\u043d\u0435_\u043f\u0443\u043b\u0430_\u0445\u043e\u0441\u0442\u0430_\u0438\u043b\u0438_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439_\u043c\u0430\u0448\u0438\u043d\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:43,&amp;quot;secid&amp;quot;:53,&amp;quot;range&amp;quot;:&amp;quot;61211-63202&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit54&quot; id=&quot;конфигурирование_отправки_алертов_через_smtp-сервер_требующий_аутентификации&quot;&gt;Конфигурирование отправки алертов через SMTP-сервер, требующий аутентификации&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Утилита &lt;strong&gt;mail-alarm&lt;/strong&gt; перед отправкой уведомления проверяет конфигурационный файл &lt;strong&gt;/etc/mail-alarm.conf&lt;/strong&gt;. Если файл существует - его содержимое используется для отправки. Если его не существует - используются данные из базы XAPI (сконфигурированные в XenCenter или xe CLI).&lt;br/&gt;

Содержимое файла &lt;strong&gt;/etc/mail-alarm.conf&lt;/strong&gt; должно быть таким:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;    root=postmaster
    authUser=&amp;lt;username&amp;gt;
    authPass=&amp;lt;password&amp;gt;
    mailhub=&amp;lt;server address&amp;gt;:&amp;lt;port&amp;gt;&lt;/pre&gt;
&lt;div class=&quot;table sectionedit55&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table16&amp;quot;,&amp;quot;secid&amp;quot;:55,&amp;quot;range&amp;quot;:&amp;quot;64025-64491&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0430\u043b\u0435\u0440\u0442\u043e\u0432 \u0447\u0435\u0440\u0435\u0437 SMTP-\u0441\u0435\u0440\u0432\u0435\u0440, \u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0438\u0439 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438_\u0430\u043b\u0435\u0440\u0442\u043e\u0432_\u0447\u0435\u0440\u0435\u0437_smtp-\u0441\u0435\u0440\u0432\u0435\u0440_\u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0438\u0439_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:44,&amp;quot;secid&amp;quot;:54,&amp;quot;range&amp;quot;:&amp;quot;63203-64492&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit56&quot; id=&quot;интеграция_xenserver_в_active_directory&quot;&gt;2.5 - Интеграция XenServer в Active Directory&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ad_int&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ad_int&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ad_int&lt;/a&gt;&lt;br/&gt;

Если вы хотите аутентифицировать много пользователей для работы с XenServer, то нужно использовать учетные записи Active Directory. Это даст возможность подключаться к XenServer с учетными данными домена Windows.&lt;br/&gt;

Единственный способ управлять уровнем доступа к XenServer - это включить аутентификацию Active Directory, добавить учетные записи пользователей и назначить им роли. &lt;br/&gt;

Пользователи Active Directory могут использовать и интерфейс командной строки (указывая свои учетные данные в аргументах &lt;strong&gt;-u&lt;/strong&gt; и &lt;strong&gt;-pw&lt;/strong&gt;), а также подключаться к хостам XenServer c помощью XenCenter. &lt;br/&gt;

Контроль доступа осуществляется на уровне &lt;strong&gt;субъектов&lt;/strong&gt; (subjects). Субъект в XenServer соответствует учетной записи в AD (пользовательской или групповой). При включенной внешней аутентификации введенные учетные данные сначала сравниваются с данными локального пользователя root, а затем со списком субъектов. Для предоставления прав доступа необходимо создать запись субъекта для пользователя или группы AD. Это может быть сделано из командной строки или XenCenter.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit57&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ПРИМЕЧАНИЕ: При входе пользователя с учетными данными AD не требуется указывать полное имя (в формате mydomain\myuser или myser@mydomain.com), потому что XenCenter всегда пытается войти в домен к которому присоединен XenServer. Исключение составляет учетная запись локального суперпользователя (LSU), которая всегда аутентифицируется локально.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table17&amp;quot;,&amp;quot;secid&amp;quot;:57,&amp;quot;range&amp;quot;:&amp;quot;66440-67026&amp;quot;} --&gt;
&lt;p&gt;
Порядок аутентификации обычно такой:&lt;br/&gt;

 - Учетные данные передаются контроллеру домена Active Directory.&lt;br/&gt;

 - Контроллер домена проверяет учетные данные и если они не верны, то аутентификация немедленно прерывается. &lt;br/&gt;

 - Если учетные данные верны, то у контроллера домена запрашивается идентификатор субъекта и групповая принадлежность.&lt;br/&gt;

 - Если идентификатор субъекта соответствует тому, который хранится в XenServer, аутентификация завершается успешно. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit58&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: не поддерживается изменение вручную &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt; серверов, назначенных с помощью DHCP, т.к. неправильная конфигурация может привести к неправильной работе Active Directory и невозможности аутентифицироваться.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table18&amp;quot;,&amp;quot;secid&amp;quot;:58,&amp;quot;range&amp;quot;:&amp;quot;67841-68216&amp;quot;} --&gt;
&lt;p&gt;
Присоединение пула XenServer к домену уже описано тут: &lt;a href=&quot;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A26-Citrix-XenServer-6-Administration.ashx#%D0%90%D1%83%D1%82%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_AD_11&quot; class=&quot;urlextern&quot; title=&quot;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A26-Citrix-XenServer-6-Administration.ashx#%D0%90%D1%83%D1%82%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_AD_11&quot; rel=&quot;ugc nofollow&quot;&gt;http://wiki.autosys.tk/XenApp.%d0%9f%d0%be%d0%b4%d0%b3%d0%be%d1%82%d0%be%d0%b2%d0%ba%d0%b0-%d0%ba-%d1%8d%d0%ba%d0%b7%d0%b0%d0%bc%d0%b5%d0%bd%d1%83-1Y0-A26-Citrix-XenServer-6-Administration.ashx#%D0%90%D1%83%D1%82%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_AD_11&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.5 - \u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f XenServer \u0432 Active Directory&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f_xenserver_\u0432_active_directory&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:45,&amp;quot;secid&amp;quot;:56,&amp;quot;range&amp;quot;:&amp;quot;64493-68651&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit59&quot; id=&quot;даем_разрешение_пользователю_на_доступ_к_xenserver_с_помощью_командной_строки&quot;&gt;Даем разрешение пользователю на доступ к XenServer с помощью командной строки&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
 Добавляем в XenServer субъекта:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-add subject-name=&amp;lt;entity name&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 В данном случае &lt;strong&gt;entity name&lt;/strong&gt; - это имя пользователя или группы. Дополнительно можно указать домен - &amp;#039;&amp;lt;xendt\user1&amp;gt;&amp;#039;. Хотя это и не обязательно - можно просто&amp;#039;&amp;lt;user1&amp;gt;&amp;#039;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u0430\u0435\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043d\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u043a XenServer \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0430\u0435\u043c_\u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e_\u043d\u0430_\u0434\u043e\u0441\u0442\u0443\u043f_\u043a_xenserver_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439_\u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:45,&amp;quot;secid&amp;quot;:59,&amp;quot;range&amp;quot;:&amp;quot;68652-69183&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit60&quot; id=&quot;запрещаем_доступ_к_xenserver_с_помощью_командной_строки&quot;&gt;Запрещаем доступ к XenServer с помощью командной строки&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Сначала нужно определить имя пользователя или группы которым мы запрещаем доступ:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-list&lt;/pre&gt;

&lt;p&gt;
 К списку пользователей можно применить фильтр (например - получить идентифиатор субъекта для пользователя с именем &lt;strong&gt;user1&lt;/strong&gt;):&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-list other-config:subject-name=&amp;#039;&amp;lt;domain\user&amp;gt;&amp;#039;&lt;/pre&gt;

&lt;p&gt;
 Удаляем пользователя с помощью команды subject-remove, передавая в качестве аргумента идентификатор:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-remove subject-uuid=&amp;lt;subject-uuid&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 Также может понадобиться завершить все открытые сессии указанного пользователя. Как это сделать написано тут: &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#terminating_all_authenticated_sessions&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#terminating_all_authenticated_sessions&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#terminating_all_authenticated_sessions&lt;/a&gt;. Если этого не сделать, то удаленный пользователь будет иметь возможность работать с XenServer, пока не выйдет .&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u043c \u0434\u043e\u0441\u0442\u0443\u043f \u043a XenServer \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u043c_\u0434\u043e\u0441\u0442\u0443\u043f_\u043a_xenserver_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439_\u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:46,&amp;quot;secid&amp;quot;:60,&amp;quot;range&amp;quot;:&amp;quot;69184-70528&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit61&quot; id=&quot;получение_списка_пользователей_и_их_прав&quot;&gt;Получение списка пользователей и их прав&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
 Для получения списка пользователей и групп и их прав используется следующая команда:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-list&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438 \u0438\u0445 \u043f\u0440\u0430\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435_\u0441\u043f\u0438\u0441\u043a\u0430_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439_\u0438_\u0438\u0445_\u043f\u0440\u0430\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:49,&amp;quot;secid&amp;quot;:61,&amp;quot;range&amp;quot;:&amp;quot;70529-70805&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit62&quot; id=&quot;управление_правами_доступа_на_основе_ролей_xenserver&quot;&gt;2.6 - Управление правами доступа на основе ролей XenServer&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#rbac&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#rbac&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#rbac&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit63&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Внимание! Полная функциональность управления правами доступа на основе ролей доступна только в версии &lt;strong&gt;Citrix XenServer Enterprise Edition&lt;br/&gt;

&lt;/strong&gt; или выше.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table19&amp;quot;,&amp;quot;secid&amp;quot;:63,&amp;quot;range&amp;quot;:&amp;quot;70991-71244&amp;quot;} --&gt;
&lt;p&gt;
Делегирование прав в Citrix XenServer использует механизм ролей. Каждому пользователю назначается роль, которая определяет список доступных прав. Этот механизм называется Role Based Access Control (RBAC). &lt;br/&gt;

Для аутентификации пользователей RBAC использует инфораструктуру Active Ditrectory. Таким образом, для назначения пользователям ролей необходимо присоединить пул XenServer к домену. &lt;br/&gt;

Локальный суперпользователь (local super user - LSU), или &lt;strong&gt;root&lt;/strong&gt;, это специальная учетная запись, создаваемая при установке XenServer  и используемая в административных целях, имеющая полные права в системе. Аутентификация root&amp;#039;а происходит локально и в случае отказа внешних механизмов аутентификации root может подключиться к системе с помощью XenCenter или SSH. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для использования RBAC надо:&lt;br/&gt;

1. Присоединить пул к домену. &lt;br/&gt;

2. Добавить пользователя (или группу) Active Directory в пул и он станет субъектом (subject).&lt;br/&gt;

3. Назначить субъекту роли.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.6 - \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0430\u0432\u0430\u043c\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0440\u043e\u043b\u0435\u0439 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043f\u0440\u0430\u0432\u0430\u043c\u0438_\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u043d\u0430_\u043e\u0441\u043d\u043e\u0432\u0435_\u0440\u043e\u043b\u0435\u0439_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:50,&amp;quot;secid&amp;quot;:62,&amp;quot;range&amp;quot;:&amp;quot;70806-72830&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit64&quot; id=&quot;роли&quot;&gt;Роли&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В XenServer преднастроены следующие шесть ролей:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 &lt;strong&gt;Pool Administrator (Pool Admin)&lt;/strong&gt; – полные права, аналогичные root. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit65&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ПРИМЕЧАНИЕ. Локальный суперпользователь root всегда имеет роль “Pool Admin”.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table20&amp;quot;,&amp;quot;secid&amp;quot;:65,&amp;quot;range&amp;quot;:&amp;quot;73031-73162&amp;quot;} --&gt;
&lt;p&gt;
 &lt;strong&gt;Pool Operator (Pool Operator)&lt;/strong&gt; – имеет права на все операции, кроме добавления/удаления пользователей и изменения их ролей. Пользователи с этой ролью обслуживают хосты пула и пул вцелом. &lt;br/&gt;

 &lt;strong&gt;Virtual Machine Power Administrator (VM Power Admin)&lt;/strong&gt; – права на создание и управление виртуальными машинами. Пользователи этой роли готовят виртуальные машины к работе с ними пользователей с ролью &lt;strong&gt;VM operator&lt;/strong&gt;.&lt;br/&gt;

 &lt;strong&gt;Virtual Machine Administrator (VM Admin)&lt;/strong&gt; – тем же права, что и у &lt;strong&gt;VM Power Admin&lt;/strong&gt;, за исключением прав на миграцию  виртуальных машин и создание снимков (snapshots).&lt;br/&gt;

 &lt;strong&gt;Virtual Machine Operator (VM Operator)&lt;/strong&gt; – те же права, что и у &lt;strong&gt;VM Admin&lt;/strong&gt;, в том числе и включение/выключение виртуальных машин, кроме прав на создание/удаление виртуальных машин. &lt;br/&gt;

 &lt;strong&gt;Read-only (Read Only)&lt;/strong&gt; – права только на просмотр состояния пула и данных о производительности. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit66&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ПРИМЕЧАНИЕ: В данной версии XenServer (версия 6.0.0) создание новых ролей и изменение существующих не предусмотрено.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table21&amp;quot;,&amp;quot;secid&amp;quot;:66,&amp;quot;range&amp;quot;:&amp;quot;74541-74746&amp;quot;} --&gt;&lt;div class=&quot;table sectionedit67&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Нельзя назначить роль &lt;strong&gt;pool-admin&lt;/strong&gt; группе Active Directory, содержащей более 500 пользователей, в случае, если этм пользователям нужен доступ по SSH.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table22&amp;quot;,&amp;quot;secid&amp;quot;:67,&amp;quot;range&amp;quot;:&amp;quot;74748-75014&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u043e\u043b\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u043e\u043b\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:50,&amp;quot;secid&amp;quot;:64,&amp;quot;range&amp;quot;:&amp;quot;72831-75015&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit68&quot; id=&quot;список_ролей_и_субъектов&quot;&gt;Список ролей и субъектов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
 Получение списка пользователей: &lt;strong&gt;xe role-list&lt;/strong&gt;. Эта команда возвращает список ролей.  &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;uuid( RO): 0165f154-ba3e-034e-6b27-5d271af109ba
name ( RO): pool-admin
description ( RO): The Pool Administrator role can do anything
               
uuid ( RO): b9ce9791-0604-50cd-0649-09b3284c7dfd
name ( RO): pool-operator
description ( RO): The Pool Operator can do anything but access Dom0 \
and manage subjects and roles

uuid( RO): 7955168d-7bec-10ed-105f-c6a7e6e63249
name ( RO): vm-power-admin
description ( RO): The VM Power Administrator role can do anything \
affecting VM properties across the pool

uuid ( RO): aaa00ab5-7340-bfbc-0d1b-7cf342639a6e
name ( RO): vm-admin
description ( RO): The VM Administrator role can do anything to a VM
                
uuid ( RO): fb8d4ff9-310c-a959-0613-54101535d3d5
name ( RO): vm-operator
description ( RO): The VM Operator role can do anything to an already 
                
uuid ( RO): 7233b8e3-eacb-d7da-2c95-f2e581cdbf4e
name ( RO): read-only
description ( RO): The Read-Only role can only read values&lt;/pre&gt;

&lt;p&gt;
Для получения списка субъектов используется команда &lt;strong&gt;xe subject-list&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;uuid ( RO): bb6dd239-1fa9-a06b-a497-3be28b8dca44
subject-identifier ( RO): S-1-5-21-1539997073-1618981536-2562117463-2244
other-config (MRO): subject-name: example01\user_vm_admin; subject-upn: \
  user_vm_admin@XENDT.NET; subject-uid: 1823475908; subject-gid: 1823474177; \
  subject-sid: S-1-5-21-1539997073-1618981536-2562117463-2244; subject-gecos: \
  user_vm_admin; subject-displayname: user_vm_admin; subject-is-group: false; \
  subject-account-disabled: false; subject-account-expired: false; \
  subject-account-locked: false;subject-password-expired: false
roles (SRO): vm-admin
                
uuid ( RO): 4fe89a50-6a1a-d9dd-afb9-b554cd00c01a
subject-identifier ( RO): S-1-5-21-1539997073-1618981536-2562117463-2245
other-config (MRO): subject-name: example02\user_vm_op; subject-upn: \
  user_vm_op@XENDT.NET; subject-uid: 1823475909; subject-gid: 1823474177; \
  subject-sid: S-1-5-21-1539997073-1618981536-2562117463-2245; \
  subject-gecos: user_vm_op; subject-displayname: user_vm_op; \
  subject-is-group: false; subject-account-disabled: false; \
  subject-account-expired: false; subject-account-locked: \
  false; subject-password-expired: false
roles (SRO): vm-operator
                
uuid ( RO): 8a63fbf0-9ef4-4fef-b4a5-b42984c27267
subject-identifier ( RO): S-1-5-21-1539997073-1618981536-2562117463-2242
other-config (MRO): subject-name: example03\user_pool_op; \
  subject-upn: user_pool_op@XENDT.NET; subject-uid: 1823475906; \
  subject-gid: 1823474177; subject-s id:
  S-1-5-21-1539997073-1618981536-2562117463-2242; \
  subject-gecos: user_pool_op; subject-displayname: user_pool_op; \
  subject-is-group: false; subject-account-disabled: false; \ 
  subject-account-expired: false; subject-account-locked: \
  false; subject-password-expired: false
  roles (SRO): pool-operator&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a \u0440\u043e\u043b\u0435\u0439 \u0438 \u0441\u0443\u0431\u044a\u0435\u043a\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_\u0440\u043e\u043b\u0435\u0439_\u0438_\u0441\u0443\u0431\u044a\u0435\u043a\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:50,&amp;quot;secid&amp;quot;:68,&amp;quot;range&amp;quot;:&amp;quot;75016-78141&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit69&quot; id=&quot;добавление_субъектов&quot;&gt;Добавление субъектов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Добавление субъекта:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-add subject-name=&amp;lt;AD user/group&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0443\u0431\u044a\u0435\u043a\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0441\u0443\u0431\u044a\u0435\u043a\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:52,&amp;quot;secid&amp;quot;:69,&amp;quot;range&amp;quot;:&amp;quot;78142-78289&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit70&quot; id=&quot;назначение_роли_субъекту&quot;&gt;Назначение роли субъекту&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
После создания субъекта ему можно назначить роль. На роль можно сослаться по uuid или по имени роли:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-role-add uuid=&amp;lt;subject uuid&amp;gt; role-uuid=&amp;lt;role_uuid&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 или&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-role-add uuid=&amp;lt;subject uuid&amp;gt; role-name=&amp;lt;role_name&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 Например следующая команда назначает роль &lt;strong&gt;Pool Administrator&lt;/strong&gt; субъекту с &lt;strong&gt;uuid=b9b3d03b-3d10-79d3-8ed7-a782c5ea13b4&lt;/strong&gt;:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-role-add uuid=b9b3d03b-3d10-79d3-8ed7-a782c5ea13b4 role-name=pool-admin&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0440\u043e\u043b\u0438 \u0441\u0443\u0431\u044a\u0435\u043a\u0442\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435_\u0440\u043e\u043b\u0438_\u0441\u0443\u0431\u044a\u0435\u043a\u0442\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:53,&amp;quot;secid&amp;quot;:70,&amp;quot;range&amp;quot;:&amp;quot;78290-78957&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit71&quot; id=&quot;изменение_роли&quot;&gt;Изменение роли&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для изменения роли нужно удалить текущую роль и добавить новую:&lt;br/&gt;

Выполните команды:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe subject-role-remove uuid=&amp;lt;subject uuid&amp;gt; role-name= \ 
      &amp;lt;role_name_to_remove&amp;gt;
    xe subject-role-add uuid=&amp;lt;subject uuid &amp;gt; role-name= \    
      &amp;lt;role_name_to_add&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Для того чтобы гарантировать, что новая роль применена нужно чтобы пользователь вышел изи системы и вошел снова (logged out and logged back in again).&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit72&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! При назначении/удалении субъекту роли &lt;strong&gt;pool-admin&lt;/strong&gt; может быть задержка в несколько секунд пока все хосты пула примут изменения для сессий ssh. &lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table23&amp;quot;,&amp;quot;secid&amp;quot;:72,&amp;quot;range&amp;quot;:&amp;quot;79585-79858&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0440\u043e\u043b\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u0440\u043e\u043b\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:56,&amp;quot;secid&amp;quot;:71,&amp;quot;range&amp;quot;:&amp;quot;78958-79861&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit73&quot; id=&quot;раздел_3управление_виртуальными_машинами_и_шаблонами&quot;&gt;Раздел 3: Управление виртуальными машинами и шаблонами&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 3: \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438 \u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_3\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438_\u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438_\u0438_\u0448\u0430\u0431\u043b\u043e\u043d\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:57,&amp;quot;secid&amp;quot;:73,&amp;quot;range&amp;quot;:&amp;quot;79862-79974&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit74&quot; id=&quot;копирование_виртуальной_машины&quot;&gt;3.1 - Копирование виртуальной машины&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/5.6.0fp1/1.0/en_gb/reference.html#pool_removal&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/5.6.0fp1/1.0/en_gb/reference.html#pool_removal&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/5.6.0fp1/1.0/en_gb/reference.html#pool_removal&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#creatingVMs-clone&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#creatingVMs-clone&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#creatingVMs-clone&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Сделать копию существующей виртуальной машины можно путем клонирования шаблона. Шаблон представляет собой обычную виртуальную машину, используемую как мастер-копия для создания новых машин. Виртуальную машину можно сконвертировать в шаблон, выполнив перед этим подготовительные шаги описнные тут: &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#clone_considerations_Windows&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#clone_considerations_Windows&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#clone_considerations_Windows&lt;/a&gt;, &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#clone_considerations_Linux&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#clone_considerations_Linux&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#clone_considerations_Linux&lt;/a&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Виртуальные машины могут быть скопированы XenServer двумя способами:&lt;br/&gt;

1. Полное копирование.&lt;br/&gt;

2. Копирование при записи (Copy-on-Write - CoW).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Быстрый режим копирования при записи записывает только измененные с момента копирования блоки. Механизм CoW спроектирован так, чтобы сохранять место на дисках и обеспечивать возможность быстрого клонирования, однако он немного снижает быстродействие дисковой подсистемы. Шаблон может быть быстро склонирован много раз без замедления. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit75&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ПРИМЕЧАНИЕ: Если из шаблона склонировать виртуальную машину и потом обратно создать из виртуальной машины шаблон, то производительность дисковой подсистемы будет снижаться линейно, пропорционально тому, сколько раз произведено клонирование. Во избежание этого эффекта следует использовать команду &lt;strong&gt;vm-copy&lt;/strong&gt;, которая осуществляет полное копирование виртуальной машины и позволяет получить самое высокое быстродействие.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table24&amp;quot;,&amp;quot;secid&amp;quot;:75,&amp;quot;range&amp;quot;:&amp;quot;81837-82615&amp;quot;} --&gt;
&lt;p&gt;
Копирование виртуальной машины на другой сервер:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe vm-list (note the name of the VM you wish to copy)
xe sr-list (note the name of the storage you will to copy the VM to)
xe vm-copy (needs the following parameters to complete)
xe vm-copy vm=&amp;lt;name of VM to copy&amp;gt; sr-uuid=&amp;lt;UUID of SR to copy VM to&amp;gt; new-name-label=&amp;lt;NewNameofVM&amp;gt; new-name-description=”Description of VM”&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.1 - \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439_\u043c\u0430\u0448\u0438\u043d\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:57,&amp;quot;secid&amp;quot;:74,&amp;quot;range&amp;quot;:&amp;quot;79975-83047&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit76&quot; id=&quot;импорт-экспорт_виртуальных_машин&quot;&gt;3.2 - Импорт-экспорт виртуальных машин&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.2 - \u0418\u043c\u043f\u043e\u0440\u0442-\u044d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043c\u043f\u043e\u0440\u0442-\u044d\u043a\u0441\u043f\u043e\u0440\u0442_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445_\u043c\u0430\u0448\u0438\u043d&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:58,&amp;quot;secid&amp;quot;:76,&amp;quot;range&amp;quot;:&amp;quot;83048-83125&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit77&quot; id=&quot;экспорт_vm&quot;&gt;Экспорт VM&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#exporting_vms&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#exporting_vms&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/guest.html#exporting_vms&lt;/a&gt;&lt;br/&gt;

Экспортировать виртуальные машины в форматах OVF/OVA и XVA можно как с помощью &lt;strong&gt;XenCenter Export wizard&lt;/strong&gt;, так и в формате XVA с помощью командной строки. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042d\u043a\u0441\u043f\u043e\u0440\u0442 VM&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044d\u043a\u0441\u043f\u043e\u0440\u0442_vm&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:58,&amp;quot;secid&amp;quot;:77,&amp;quot;range&amp;quot;:&amp;quot;83126-83487&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit78&quot; id=&quot;экспорт_в_формате_ovfova&quot;&gt;Экспорт в формате OVF/OVA&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
С помощью &lt;strong&gt;XenCenter Export wizard&lt;/strong&gt;, можно экспортировать одну или несколько виртуальных машин в пакет &lt;strong&gt;OVF/OVA&lt;/strong&gt;. При экспорте в этом формате в пакет инкапсулируются конфигурационные данные и виртуальные диски. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit79&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ПРИМЕЧАНИЕ: Для экспорта в формате OVF или OVA нужно войти в систему как &lt;strong&gt;root&lt;/strong&gt; или с правами Pool Administrator. &lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table25&amp;quot;,&amp;quot;secid&amp;quot;:79,&amp;quot;range&amp;quot;:&amp;quot;83902-84086&amp;quot;} --&gt;
&lt;p&gt;
Экспорт в формате OVF/OVA с помощью XenCenter:&lt;br/&gt;

1. Выключите (Shut down) или приостановите (suspend) виртуальную машину, которая будет экспортирована.&lt;br/&gt;

2. Откройте мастер экспорта: В панели ресурсов (справа) кликните правой кнопкой по пулу или хосту, на котором находится экспортируемая виртуальная машина, а затем кликните &lt;strong&gt;Export&lt;/strong&gt;. &lt;br/&gt;

3. На первой странице мастера введите имя экспортируемого файла, укажите папку, куда будет экспортирован файл. Затем из выпадающего списка выберите формат &lt;strong&gt;OVF/OVA Package (*.ovf, *.ova)&lt;/strong&gt; и нажмите &lt;strong&gt;Next&lt;/strong&gt;.&lt;br/&gt;

4. Из списка доступных виртуальных машин выберите одну или несколько, которые будут включены в в пакет OVF/OVA и нажмите &lt;strong&gt;Next&lt;/strong&gt;.&lt;br/&gt;

5. Можно добавить предварительно подготовленный текст лицензионного соглашения в виде файла в формате .rtf или .txt. Другие форматы файлов (XML or binary) не поддерживаются. Нажмите &lt;strong&gt;Next&lt;/strong&gt; для продолжения. &lt;br/&gt;

6. На странице &lt;strong&gt;Advanced options&lt;/strong&gt; укажите манифест, цифровую подпись и параметры выходного файла или просто нажмите &lt;strong&gt;Next&lt;/strong&gt; для продолжения. &lt;br/&gt;

7. Сконфигурируйте сетевые свойства виртуальной машины: Выберите сеть из списка и укажите способ конфигурирования (вручную или автоматически) и нажмите &lt;strong&gt;Next&lt;/strong&gt;. &lt;br/&gt;

8. Проверьте параметры экспорта и при необходимости поставьте флажок &lt;strong&gt;Verify export on completion&lt;/strong&gt; для проверки экспортированного файла. Нажмите &lt;strong&gt;Finish&lt;/strong&gt; для начала процесса экспорта.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Экспорт в формате XVA выполянется аналогично, только на этапе 3 надо выбрать формат &lt;strong&gt;XVA File&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 OVF\/OVA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044d\u043a\u0441\u043f\u043e\u0440\u0442_\u0432_\u0444\u043e\u0440\u043c\u0430\u0442\u0435_ovfova&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:58,&amp;quot;secid&amp;quot;:78,&amp;quot;range&amp;quot;:&amp;quot;83488-86607&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit80&quot; id=&quot;экспорт_в_формате_xva_с_помощью_интерфейса_командной_строки&quot;&gt;Экспорт в формате XVA с помощью интерфейса командной строки:&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
1. Выключите (Shut down), виртуальную машину, которая будет экспортирована.&lt;br/&gt;

2. Экспортируйте виртуальную машину командой:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;    xe vm-export -h &amp;lt;hostname&amp;gt; -u &amp;lt;root&amp;gt; -pw &amp;lt;password&amp;gt; vm=&amp;lt;vm_name&amp;gt; \
    filename=&amp;lt;pathname_of_file&amp;gt;&lt;/pre&gt;
&lt;div class=&quot;table sectionedit81&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 rightalign&quot;&gt;   ПРИМЕЧАНИЕ: Убедитесь, что в конце имени файла есть расширение &lt;strong&gt;.xva&lt;/strong&gt;. После экспорта в файл без расширения могут возникнуть сложности при импорте.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table26&amp;quot;,&amp;quot;secid&amp;quot;:81,&amp;quot;range&amp;quot;:&amp;quot;87056-87329&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 XVA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438:&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044d\u043a\u0441\u043f\u043e\u0440\u0442_\u0432_\u0444\u043e\u0440\u043c\u0430\u0442\u0435_xva_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430_\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439_\u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:58,&amp;quot;secid&amp;quot;:80,&amp;quot;range&amp;quot;:&amp;quot;86608-87330&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit82&quot; id=&quot;конвертирование_работающего_сервера_с_помощью_xenconvert_-_physical_to_virtual_p2v_или_virtual_to_virtual_v2v&quot;&gt;3.3 - Конвертирование работающего сервера с помощью XenConvert - Physical to Virtual (P2V) или Virtual to Virtual (V2V)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Описание процесса конвертирования приведено в документации по XenConvert. Она короткая.&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX125530&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX125530&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX125530&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/servlet/KbServlet/download/28774-102-666402/XenConvertGuide.pdf&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/servlet/KbServlet/download/28774-102-666402/XenConvertGuide.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/servlet/KbServlet/download/28774-102-666402/XenConvertGuide.pdf&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.3 - \u041a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e XenConvert - Physical to Virtual (P2V) \u0438\u043b\u0438 Virtual to Virtual (V2V)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e_\u0441\u0435\u0440\u0432\u0435\u0440\u0430_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_xenconvert_-_physical_to_virtual_p2v_\u0438\u043b\u0438_virtual_to_virtual_v2v&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:59,&amp;quot;secid&amp;quot;:82,&amp;quot;range&amp;quot;:&amp;quot;87331-87808&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit83&quot; id=&quot;управление_виртуальными_машинами&quot;&gt;3.4 - Управление виртуальными машинами&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.4 - \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438_\u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:59,&amp;quot;secid&amp;quot;:83,&amp;quot;range&amp;quot;:&amp;quot;87809-87887&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit84&quot; id=&quot;команды_управления_виртуальными_машинами&quot;&gt;Команды управления виртуальными машинами&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_vm&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_vm&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_vm&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043c\u0430\u043d\u0434\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043c\u0430\u043d\u0434\u044b_\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438_\u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:59,&amp;quot;secid&amp;quot;:84,&amp;quot;range&amp;quot;:&amp;quot;87888-88067&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit85&quot; id=&quot;селекторы_виртуальных_машин&quot;&gt;Селекторы виртуальных машин&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Некоторые из описываемых команд позволяют использовать стандартный механизм селекторов для выбора одной или нескольких виртуальных машин по определенному признаку (параметру). Простейший способ выбора виртуальной машины - это указание ее идентификатора:  &lt;strong&gt;vm=&amp;lt;name_or_uuid&amp;gt;&lt;/strong&gt;. &lt;br/&gt;

Получить значения идентификаторов можно с помощью команды, которая также поддерживает селекторы: &lt;strong&gt;xe vm-list power-state=running&lt;/strong&gt;.&lt;br/&gt;

Полный список параметров, свойственных виртуальным машинам можно получить с помощью команды: &lt;strong&gt;xe vm-list params-all&lt;/strong&gt;.&lt;br/&gt;

Например применение аргумента &lt;strong&gt;power-state=halted&lt;/strong&gt; приведет к тому, что команда будет выполнена только для машин находящихся в состоянии &lt;strong&gt;halted&lt;/strong&gt;. При этом, если под фильтр попадают много машин - нужно добавлять дополнительный параметр: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;--multiple&lt;/pre&gt;

&lt;p&gt;
, указывающий что действие нужно выполнить над всем списком. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Описание команд:&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u044b \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u044b_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445_\u043c\u0430\u0448\u0438\u043d&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:59,&amp;quot;secid&amp;quot;:85,&amp;quot;range&amp;quot;:&amp;quot;88068-89633&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit86&quot; id=&quot;vm-assert-can-be-recovered&quot;&gt;vm-assert-can-be-recovered&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-assert-can-be-recovered &amp;lt;uuid&amp;gt; [&amp;lt;database&amp;gt;] &amp;lt;vdi-uuid&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Проверяет доступно ли хранилище для восстановления VM&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-assert-can-be-recovered&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-assert-can-be-recovered&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:60,&amp;quot;secid&amp;quot;:86,&amp;quot;range&amp;quot;:&amp;quot;89634-89839&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit87&quot; id=&quot;vm-cd-add&quot;&gt;vm-cd-add&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-cd-add cd-name=&amp;lt;name_of_new_cd&amp;gt; device=&amp;lt;integer_value_of_an_available_vbd&amp;gt;
[&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Добавляет новый виртуальный привод CD. Параметры устройства должны быть выбраны из списка доступных устройств VBD. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-cd-add&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-cd-add&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:61,&amp;quot;secid&amp;quot;:87,&amp;quot;range&amp;quot;:&amp;quot;89840-90197&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit88&quot; id=&quot;vm-cd-eject&quot;&gt;vm-cd-eject&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-cd-eject [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Извлекает CD из виртуального привода. Если приводов больше, чем один, то следует использовать команду &lt;strong&gt;xe vbd-eject&lt;/strong&gt; и указать UUID устройства VBD.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-cd-eject&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-cd-eject&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:62,&amp;quot;secid&amp;quot;:88,&amp;quot;range&amp;quot;:&amp;quot;90198-90533&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit89&quot; id=&quot;vm-cd-insert&quot;&gt;vm-cd-insert&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-cd-insert cd-name=&amp;lt;name_of_cd&amp;gt; [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Вставлет CD в виртуальный привод. Если приводов больше, чем один, то следует использовать команду &lt;strong&gt;xe vbd-insert&lt;/strong&gt; и указать UUID устройства VBD.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-cd-insert&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-cd-insert&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:63,&amp;quot;secid&amp;quot;:89,&amp;quot;range&amp;quot;:&amp;quot;90534-90885&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit90&quot; id=&quot;vm-cd-list&quot;&gt;vm-cd-list&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-cd-list [vbd-params] [vdi-params] [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выводит список CD, присоединенных к указанной машине.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-cd-list&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-cd-list&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:64,&amp;quot;secid&amp;quot;:90,&amp;quot;range&amp;quot;:&amp;quot;90886-91091&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit91&quot; id=&quot;vm-cd-remove&quot;&gt;vm-cd-remove&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-cd-remove cd-name=&amp;lt;name_of_cd&amp;gt; [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Удаляет CD из указанных VMs.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-cd-remove&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-cd-remove&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:65,&amp;quot;secid&amp;quot;:91,&amp;quot;range&amp;quot;:&amp;quot;91092-91246&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit92&quot; id=&quot;vm-clone&quot;&gt;vm-clone&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-clone new-name-label=&amp;lt;name_for_clone&amp;gt;
[new-name-description=&amp;lt;description_for_clone&amp;gt;] [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Клонирует указанную VM, с помощью быстрого механизма хранилища(storage-level fast disk clone). Нужно указать имя и описание результирующей машины в параметрах &lt;strong&gt;new-name-label&lt;/strong&gt; и &lt;strong&gt;new-name-description&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-clone&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-clone&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:66,&amp;quot;secid&amp;quot;:92,&amp;quot;range&amp;quot;:&amp;quot;91247-91718&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit93&quot; id=&quot;vm-compute-maximum-memory&quot;&gt;vm-compute-maximum-memory&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-compute-maximum-memory total=&amp;lt;amount_of_available_physical_ram_in_bytes&amp;gt;
[approximate=&amp;lt;add overhead memory for additional vCPUS? true | false&amp;gt;]
[&amp;lt;vm_selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Вычисляет максимальное количество статической памяти, которое может быть выделено виртуальной машине. Опциональный аргумент &lt;strong&gt;approximate&lt;/strong&gt; резервирует дополнительную память для добавляемый впоследствии новых vCPU.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Пример:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe vm-compute-maximum-memory vm=testvm total=`xe host-list params=memory-free --minimal`&lt;/pre&gt;

&lt;p&gt;
Эта команда использует значение параметра &lt;strong&gt;memory-free&lt;/strong&gt;, возвращаемое командой &lt;strong&gt;xe host-list&lt;/strong&gt;, для того, чтобы выделить виртуальной машине максимальное количество свободной памяти виртуальной машине &lt;strong&gt;testvm&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-compute-maximum-memory&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-compute-maximum-memory&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:67,&amp;quot;secid&amp;quot;:93,&amp;quot;range&amp;quot;:&amp;quot;91719-92822&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit94&quot; id=&quot;vm-copy&quot;&gt;vm-copy&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-copy new-name-label=&amp;lt;name_for_copy&amp;gt; [new-name-description=&amp;lt;description_for_copy&amp;gt;]
[sr-uuid=&amp;lt;uuid_of_sr&amp;gt;] [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
 Команда копирует существующую виртульную машину без использования механизмов быстрого копирования. Получаемая копия - это полная копия, не являющаяся частью цепочки copy-on-write (CoW).&lt;br/&gt;

Нужно указать имя и описание результирующей машины в параметрах &lt;strong&gt;new-name-label&lt;/strong&gt; и &lt;strong&gt;new-name-description&lt;/strong&gt;, а также идентификатор системы хранения, куда будет скопирована VM с помощью аргумента &lt;strong&gt;sr-uuid&lt;/strong&gt;. Если &lt;strong&gt;sr-uuid&lt;/strong&gt; не указан - копирование будет произведено на то же хранилище, где находится оригинальная VM.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-copy&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-copy&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:69,&amp;quot;secid&amp;quot;:94,&amp;quot;range&amp;quot;:&amp;quot;92823-93855&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit95&quot; id=&quot;vm-crashdump-list&quot;&gt;vm-crashdump-list&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-crashdump-list [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выводит список аварийных дампов указанной VM.&lt;br/&gt;

Если используется опциональный аргумент &lt;strong&gt;params&lt;/strong&gt; - в нем можно указать список параметров, которые нужно отобразить. Кроме того, можно использовать ключевое слово &lt;strong&gt;all&lt;/strong&gt;, для отображения всех параметров. Если аргумент &lt;strong&gt;params&lt;/strong&gt; не используется, то выводится набор параметров, заданный по-умолчанию.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-crashdump-list&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-crashdump-list&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:70,&amp;quot;secid&amp;quot;:95,&amp;quot;range&amp;quot;:&amp;quot;93856-94567&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit96&quot; id=&quot;vm-data-source-list&quot;&gt;vm-data-source-list&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-data-source-list [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выводит список источников данных о производительности виртуальной машины. &lt;br/&gt;

Источники данных имеют два параметра: &lt;strong&gt;standard&lt;/strong&gt; и &lt;strong&gt;enabled&lt;/strong&gt;. Если источник данных имеет параметр &lt;strong&gt;enabled&lt;/strong&gt; со значением &lt;strong&gt;true&lt;/strong&gt;, то данные записываются в базу данных производительности.&lt;br/&gt;

Если источник данных имеет параметр &lt;strong&gt;standard&lt;/strong&gt; со значением &lt;strong&gt;true&lt;/strong&gt; то данные записываются в базу данных производительности по-умолчанию.&lt;br/&gt;

Если параметры источника данных имеют значение &lt;strong&gt;false&lt;/strong&gt;, то запись значений в базу данных не ведется.&lt;br/&gt;

Для начала записи значений в базу данных нужно выполнить команду &lt;strong&gt;vm-data-source-record&lt;/strong&gt;. Эта команда установит параметру &lt;strong&gt;enabled&lt;/strong&gt; значение &lt;strong&gt;true&lt;/strong&gt;. Для остановки записи нужно выполнить команду &lt;strong&gt;vm-data-source-forget&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-data-source-list&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-data-source-list&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:71,&amp;quot;secid&amp;quot;:96,&amp;quot;range&amp;quot;:&amp;quot;94568-95914&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit97&quot; id=&quot;vm-data-source-record&quot;&gt;vm-data-source-record&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-data-source-record data-source=&amp;lt;name_description_of_data-source&amp;gt; [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Начинает запись значений указанного источника данных в базу данных о производительности. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-data-source-record&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-data-source-record&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:72,&amp;quot;secid&amp;quot;:97,&amp;quot;range&amp;quot;:&amp;quot;95915-96233&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit98&quot; id=&quot;vm-data-source-forget&quot;&gt;vm-data-source-forget&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-data-source-forget data-source=&amp;lt;name_description_of_data-source&amp;gt; [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Останавливает запись значений указанного источника данных в базу данных о производительности. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-data-source-forget&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-data-source-forget&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:73,&amp;quot;secid&amp;quot;:98,&amp;quot;range&amp;quot;:&amp;quot;96234-96561&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit99&quot; id=&quot;vm-data-source-query&quot;&gt;vm-data-source-query&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-data-source-query data-source=&amp;lt;name_description_of_data-source&amp;gt; [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Отображает значение указанного источника данных. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-data-source-query&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-data-source-query&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:74,&amp;quot;secid&amp;quot;:99,&amp;quot;range&amp;quot;:&amp;quot;96562-96803&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit100&quot; id=&quot;vm-destroy&quot;&gt;vm-destroy&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-destroy uuid=&amp;lt;uuid_of_vm&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Уничтожает указанную виртуальную машину. При этом, виртуальные диски этой машины остаются в хранилище. Для уничтожения машины и удаления дисков используется команда &lt;strong&gt;xe vm-uninstall&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-destroy&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-destroy&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:75,&amp;quot;secid&amp;quot;:100,&amp;quot;range&amp;quot;:&amp;quot;96804-97192&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit101&quot; id=&quot;vm-disk-add&quot;&gt;vm-disk-add&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-disk-add disk-size=&amp;lt;size_of_disk_to_add&amp;gt; device=&amp;lt;uuid_of_device&amp;gt;
[&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Добавляет новый виртуальный диск указанной VM. Параметр &lt;strong&gt;device&lt;/strong&gt; выбирается из значений &lt;strong&gt;allowed-VBD-devices&lt;/strong&gt; данной VM.&lt;br/&gt;

Параметр &lt;strong&gt;disk-size&lt;/strong&gt; может быть указан в байтах или с помощью суффиксов KiB (2^10 bytes), MiB (2^20 bytes), GiB (2^30 bytes), и TiB (2^40).&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-disk-add&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-disk-add&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:76,&amp;quot;secid&amp;quot;:101,&amp;quot;range&amp;quot;:&amp;quot;97193-97725&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit102&quot; id=&quot;vm-disk-list&quot;&gt;vm-disk-list&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-disk-list [vbd-params] [vdi-params] [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выводит список дисков, присоединенных к данной VM. Аргументы &lt;strong&gt;vbd-params&lt;/strong&gt; и &lt;strong&gt;vdi-params&lt;/strong&gt; задают поля соответсвующих объектов, указанные через запятую или всемто них можно использовать ключевое слово &lt;strong&gt;all&lt;/strong&gt;, для полного списка. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-disk-list&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-disk-list&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:77,&amp;quot;secid&amp;quot;:102,&amp;quot;range&amp;quot;:&amp;quot;97726-98232&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit103&quot; id=&quot;vm-disk-remove&quot;&gt;vm-disk-remove&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-disk-remove device=&amp;lt;integer_label_of_disk&amp;gt; [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Удаляет диск из указанной виртуальной машины и уничтожает его. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-disk-remove&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-disk-remove&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:78,&amp;quot;secid&amp;quot;:103,&amp;quot;range&amp;quot;:&amp;quot;98233-98471&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit104&quot; id=&quot;vm-export&quot;&gt;vm-export&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-export filename=&amp;lt;export_filename&amp;gt;
[metadata=&amp;lt;true | false&amp;gt;]
[&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Экспортирует указанную VM (включая и диски) в файл на локальной машине. В параметре &lt;strong&gt;filename&lt;/strong&gt; нужно указать имя файла, куда будет экспортирована VM. Имя файла должно содержать расширение .xva.&lt;br/&gt;

Если параметр &lt;strong&gt;metadata&lt;/strong&gt; имеет значение true, то экспортируются только метаданные, а диски экспортированы не будут. Этот режим используется в случаях, когда в качестве виртуальных дисков подключены физические носители и требуется только экспорт информации о них.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-export&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-export&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:79,&amp;quot;secid&amp;quot;:104,&amp;quot;range&amp;quot;:&amp;quot;98472-99419&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit105&quot; id=&quot;vm-import&quot;&gt;vm-import&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-import filename=&amp;lt;export_filename&amp;gt;
[metadata=&amp;lt;true | false&amp;gt;]
[preserve=&amp;lt;true | false&amp;gt;]
[sr-uuid=&amp;lt;destination_sr_uuid&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Выполняет импорт предварительно экспортированной машины. Если параметр &lt;strong&gt;preserve&lt;/strong&gt; имеет значение &lt;strong&gt;true&lt;/strong&gt;, то будет сохранен MAC-адрес оригинальной машины. Параметр &lt;strong&gt;sr-uuid&lt;/strong&gt; задает на каком хранилище будут размещены виртуальные диски, а если он не указан, то будет использовано хранилище по-умолчанию. &lt;br/&gt;

Старые версии XenServer (начиная с версии 3.2)экспортировали машины в папку, а не в файл, поэтому параметр &lt;strong&gt;filename&lt;/strong&gt; также может указывать на на корневую директорию экспорта XVA, а не на конкретный файл. Последующий экспорт импортированной машины будет производиться уже в новом формате. ^Примечание: Старый формат экспорта в папку не полностью сохранял аттрибуты виртуальной машины. В частности, не сохранялась информация о сетевых интерфейсах, которые придется создать заново с помощью команд &lt;strong&gt;vif-create&lt;/strong&gt; и &lt;strong&gt;vif-plug&lt;/strong&gt;.^&lt;br/&gt;

Если параметр &lt;strong&gt;metadata&lt;/strong&gt; имеет значение &lt;strong&gt;true&lt;/strong&gt;, то экспортированные метаданные могут быть импортированы без дисков. Импорт только метаданных завершится неудачно, если какие-либо VDI не будут обнаружены. Использование опции 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;--force&lt;/pre&gt;

&lt;p&gt;
 позволит импортировать машину в отсутствие ее VDI. Импорт-экспорт метаданных может быть полезен в случаях, когда нужно перенести машины между пулами, имеющими доступ к одной системе хранения. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit106&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Импорт машин происходит быстрее в последовательном режиме, а не в параллельном. &lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table27&amp;quot;,&amp;quot;secid&amp;quot;:106,&amp;quot;range&amp;quot;:&amp;quot;101805-101978&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-import&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-import&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:80,&amp;quot;secid&amp;quot;:105,&amp;quot;range&amp;quot;:&amp;quot;99420-101979&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit107&quot; id=&quot;vm-install&quot;&gt;vm-install&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-install new-name-label=&amp;lt;name&amp;gt;
[ template-uuid=&amp;lt;uuid_of_desired_template&amp;gt; | [template=&amp;lt;uuid_or_name_of_desired_template&amp;gt;]]
[ sr-uuid=&amp;lt;sr_uuid&amp;gt; | sr-name-label=&amp;lt;name_of_sr&amp;gt; ]
[ copy-bios-strings-from=&amp;lt;uuid of host&amp;gt; ]&lt;/pre&gt;

&lt;p&gt;
Устанавливает или клонирует виртуальную машину из шаблона. Нужно указывать либо название шаблона в параметром &lt;strong&gt;template&lt;/strong&gt;, либо его идентификатор uuid в параметре &lt;strong&gt;template-uuid&lt;/strong&gt;. Укажите хранилище параметром &lt;strong&gt;sr-uuid&lt;/strong&gt; или &lt;strong&gt;sr-name-label&lt;/strong&gt;. Укажите uuid хоста, с которого будут скопированы данные BIOS. &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Примечание: при установке из шаблона, в котором есть диски, новые диски будут созданы на том же хранилище, на котором лежат диски шаблона. Если хранилище поддерживает механизмы быстрого копирования, то новые диски будут клонированы &amp;quot;быстрым&amp;quot; методом. Если указано другое хранилище, то новые диски будут созданы там. Если быстрое копирование невозможно, то новые диски будут скопированы полностью. &lt;/pre&gt;

&lt;p&gt;
Если происходит установка из шаблона, в котором нет дисков, то новые диски будут создаваться на указанном хранилище, или на хранилище по-умолчанию.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-install&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-install&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:82,&amp;quot;secid&amp;quot;:107,&amp;quot;range&amp;quot;:&amp;quot;101980-103751&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit108&quot; id=&quot;vm-memory-shadow-multiplier-set&quot;&gt;vm-memory-shadow-multiplier-set&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-memory-shadow-multiplier-set [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]
[multiplier=&amp;lt;float_memory_multiplier&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Задает коэффициент “теневой” памяти для VM. &lt;br/&gt;

Этот параметр задает количество &lt;em&gt;shadow memory&lt;/em&gt;, выделенной аппаратно-поддержаной (hardware-assisted) VM. В некоторых случаях специализированных нагрузок, например - Citrix XenApp, дополнительная “теневая память” необходима для достижения максимального быстродействия. &lt;br/&gt;

Эта память будет избыточной. Она отделена от объема памяти, используемого VM. При выполнении этой команды количество свободной памяти XenServer будет уменьшено соответственно множителю. В случае нехватки физической памяти будет зафиксирована ошибка. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-memory-shadow-multiplier-set&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-memory-shadow-multiplier-set&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:84,&amp;quot;secid&amp;quot;:108,&amp;quot;range&amp;quot;:&amp;quot;103752-104909&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit109&quot; id=&quot;vm-migrate&quot;&gt;vm-migrate&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-migrate [[host-uuid=&amp;lt;destination XenServer host UUID&amp;gt; ] | [host=&amp;lt;name or UUID of destination XenServer host&amp;gt; ]] [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...] [live=&amp;lt;true | false&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Команда запускает миграцию виртуальной машины между физическими хостами. Параметр &lt;strong&gt;host&lt;/strong&gt; может быть либо именем, либо идентификатором UUID хоста XenServer.&lt;br/&gt;

По-умолчанию, виртуальная машина будет остановлена (suspended), перемещена и затем оживлена на другом хосте. Параметр &lt;strong&gt;live&lt;/strong&gt; активирует механизм XenMotion и позволяет машине работать во время перемещения, минимизируя время простоя до секунды. В некоторых случаях (например высокая нагрузка на память), XenMotion автоматически откатится к режиму миграции по-умолчанию и остановит VM на короткой промежуток времени, перед переносом состояния памяти. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-migrate&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-migrate&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:85,&amp;quot;secid&amp;quot;:109,&amp;quot;range&amp;quot;:&amp;quot;104910-106187&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit110&quot; id=&quot;vm-reboot&quot;&gt;vm-reboot&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-reboot [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...] [force=&amp;lt;true&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Перезагружает указанную машину. &lt;br/&gt;

Принудительную перезагрузку можно произвести с помощью аргумента &lt;strong&gt;force&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-reboot&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-reboot&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:86,&amp;quot;secid&amp;quot;:110,&amp;quot;range&amp;quot;:&amp;quot;106188-106481&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit111&quot; id=&quot;vm-recover&quot;&gt;vm-recover&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-recover &amp;lt;vm-uuid&amp;gt; [&amp;lt;database&amp;gt;] [&amp;lt;vdi-uuid&amp;gt;] [&amp;lt;force&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Восстанвливает виртуальную машину из указанной базы. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-recover&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-recover&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:87,&amp;quot;secid&amp;quot;:111,&amp;quot;range&amp;quot;:&amp;quot;106482-106671&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit112&quot; id=&quot;vm-reset-powerstate&quot;&gt;vm-reset-powerstate&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-reset-powerstate [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...] {force=true}&lt;/pre&gt;

&lt;p&gt;
Эта команда используется в случаях, когда хост пула выходит из строя и работавшие на нем машины не возможно выключить. Эта команда принудительно переводит машины в состояние &lt;strong&gt;halted&lt;/strong&gt;. На самом деле, эта команда разблокирует диски виртуальной машины и после этого ее можно запустить на другом хосте пула. Эта команда требует обязательного указания аргумента &lt;strong&gt;force&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-reset-powerstate&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-reset-powerstate&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:88,&amp;quot;secid&amp;quot;:112,&amp;quot;range&amp;quot;:&amp;quot;106672-107448&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit113&quot; id=&quot;vm-resume&quot;&gt;vm-resume&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-resume [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...] [force=&amp;lt;true | false&amp;gt;] [on=&amp;lt;XenServer host UUID&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Возвращает к работе машину, находящуюся в приостановленном состоянии. &lt;br/&gt;

Если машина находится на общем (shared) хранилище пула, то следует использовать аргумент &lt;strong&gt;on&lt;/strong&gt;, который указывает на каком хосте следует запустить машину. По-умолчанию, система сама определяет подходящий хост.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-resume&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-resume&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:89,&amp;quot;secid&amp;quot;:113,&amp;quot;range&amp;quot;:&amp;quot;107449-108087&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit114&quot; id=&quot;vm-shutdown&quot;&gt;vm-shutdown&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-shutdown [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...] [force=&amp;lt;true | false&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Выключает указанную виртуальную машину.&lt;br/&gt;

Аргумент &lt;strong&gt;force&lt;/strong&gt; позволяет принудительно выключить VM. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-shutdown&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-shutdown&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:90,&amp;quot;secid&amp;quot;:114,&amp;quot;range&amp;quot;:&amp;quot;108088-108369&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit115&quot; id=&quot;vm-start&quot;&gt;vm-start&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-start [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...] [force=&amp;lt;true | false&amp;gt;] [on=&amp;lt;XenServer host UUID&amp;gt;] [--multiple]&lt;/pre&gt;

&lt;p&gt;
Запускает указанную машину.&lt;br/&gt;

Если машина находится на общем (shared) хранилище пула, то следует использовать аргумент &lt;strong&gt;on&lt;/strong&gt;, который указывает на каком хосте следует запустить машину. По-умолчанию, система сама определяет подходящий хост.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-start&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-start&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:91,&amp;quot;secid&amp;quot;:115,&amp;quot;range&amp;quot;:&amp;quot;108370-108940&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit116&quot; id=&quot;vm-suspend&quot;&gt;vm-suspend&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-suspend [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Приостанавливает работу указанной машины.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-suspend&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-suspend&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:92,&amp;quot;secid&amp;quot;:116,&amp;quot;range&amp;quot;:&amp;quot;108941-109102&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit117&quot; id=&quot;vm-uninstall&quot;&gt;vm-uninstall&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-uninstall [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...] [force=&amp;lt;true | false&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Полностью удаляет виртуальную машину, включая метаданные и подключенные диски (только те VDI, которые имеют режим RW и присоединены только к этой машине). &lt;br/&gt;

Для удаления только метаданных используется команда &lt;strong&gt;xe vm-destroy&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-uninstall&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-uninstall&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:93,&amp;quot;secid&amp;quot;:117,&amp;quot;range&amp;quot;:&amp;quot;109103-109610&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit118&quot; id=&quot;vm-vcpu-hotplug&quot;&gt;vm-vcpu-hotplug&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-vcpu-hotplug new-vcpus=&amp;lt;new_vcpu_count&amp;gt; [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Динамически изменяет количество VCPU, доступных виртуальной машине Linux, в пределах, ограниченных параметром &lt;strong&gt;VCPUs-max&lt;/strong&gt;. Виртуальные машины Windows всегда используют число VCPU, заданное параметром &lt;strong&gt;VCPUs-max&lt;/strong&gt; и для его изменения должны быть перезагружены. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-vcpu-hotplug&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-vcpu-hotplug&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:94,&amp;quot;secid&amp;quot;:118,&amp;quot;range&amp;quot;:&amp;quot;109611-110175&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit119&quot; id=&quot;vm-vif-list&quot;&gt;vm-vif-list&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;vm-vif-list [&amp;lt;vm-selector&amp;gt;=&amp;lt;vm_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выводит список виртуальных сетевых адаптеров данной VM.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;vm-vif-list&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vm-vif-list&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:95,&amp;quot;secid&amp;quot;:119,&amp;quot;range&amp;quot;:&amp;quot;110176-110364&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit120&quot; id=&quot;команды_для_работы_с_хостами_xenserver&quot;&gt;Команды для работы с хостами XenServer&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0445\u043e\u0441\u0442\u0430\u043c\u0438 XenServer&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043c\u0430\u043d\u0434\u044b_\u0434\u043b\u044f_\u0440\u0430\u0431\u043e\u0442\u044b_\u0441_\u0445\u043e\u0441\u0442\u0430\u043c\u0438_xenserver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:96,&amp;quot;secid&amp;quot;:120,&amp;quot;range&amp;quot;:&amp;quot;110365-110438&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit121&quot; id=&quot;host-backup&quot;&gt;host-backup&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-backup file-name=&amp;lt;backup_filename&amp;gt; host=&amp;lt;host_name&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Сохраняет резервную копию управляющего домена (control domain) указанного хоста XenServer на машину, с коротой запущена команда.	^Внимание! Несмотря на то, что команду можно запустить на локальном хосте (не указывая параметр &lt;strong&gt;host&lt;/strong&gt;), в таком образом её использовать не следует, потому что раздел управляющего домена (control domain) будет полностью заполнен файлом бекапа. Эту команду следует выполнять с другого хоста, на котором есть место для сохранения бекапа. ^&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-backup&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-backup&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:96,&amp;quot;secid&amp;quot;:121,&amp;quot;range&amp;quot;:&amp;quot;110439-111342&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit122&quot; id=&quot;host-bugreport-upload&quot;&gt;host-bugreport-upload&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-bugreport-upload [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...] [url=&amp;lt;destination_url&amp;gt;]
[http-proxy=&amp;lt;http_proxy_name&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Создает свежий отчет о багах (утилитой &lt;strong&gt;xen-bugtool&lt;/strong&gt; со всеми включенными опциями) и загружает его на сервер службы поддержки Citrix Support или указанный сервер ftp.&lt;br/&gt;

Дополнительные параметры - &lt;strong&gt;http-proxy&lt;/strong&gt; и &lt;strong&gt;url&lt;/strong&gt; предписывает использовать указанный proxy и удаленый сервер. По-умолчанию отчет выгружается на серер Citrix Support.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-bugreport-upload&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-bugreport-upload&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:97,&amp;quot;secid&amp;quot;:122,&amp;quot;range&amp;quot;:&amp;quot;111343-112063&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit123&quot; id=&quot;host-crashdump-destroy&quot;&gt;host-crashdump-destroy&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-crashdump-destroy uuid=&amp;lt;crashdump_uuid&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Удаляет дамп, с заданным UUID.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-crashdump-destroy&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-crashdump-destroy&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:98,&amp;quot;secid&amp;quot;:123,&amp;quot;range&amp;quot;:&amp;quot;112064-112204&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit124&quot; id=&quot;host-crashdump-upload&quot;&gt;host-crashdump-upload&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-crashdump-upload uuid=&amp;lt;crashdump_uuid&amp;gt;
[url=&amp;lt;destination_url&amp;gt;]
[http-proxy=&amp;lt;http_proxy_name&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Выгружает аварийный дамп на сервер Citrix Support или указанный сервер. &lt;br/&gt;

Дополнительные параметры - &lt;strong&gt;http-proxy&lt;/strong&gt; и &lt;strong&gt;url&lt;/strong&gt; предписывает использовать указанный proxy и удаленый сервер. По-умолчанию дамп выгружается на серер Citrix Support.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-crashdump-upload&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-crashdump-upload&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:99,&amp;quot;secid&amp;quot;:124,&amp;quot;range&amp;quot;:&amp;quot;112205-112743&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit125&quot; id=&quot;host-disable&quot;&gt;host-disable&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-disable [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Отключает указанный хост XenServer. После выполнения этой команды на хосте запрещен запуск виртуальных машин. Это действие подготавливает хост к выключению или перезагрузке.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-disable&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-disable&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:100,&amp;quot;secid&amp;quot;:125,&amp;quot;range&amp;quot;:&amp;quot;112744-113148&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit126&quot; id=&quot;host-dmesg&quot;&gt;host-dmesg&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-dmesg [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выводит журнал ядра указанного хоста (dmesg). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-dmesg&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-dmesg&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:101,&amp;quot;secid&amp;quot;:126,&amp;quot;range&amp;quot;:&amp;quot;113149-113314&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit127&quot; id=&quot;host-emergency-management-reconfigure&quot;&gt;host-emergency-management-reconfigure&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-emergency-management-reconfigure interface=&amp;lt;uuid_of_management_interface_pif&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Переконфигурирует основной интерфейс управления данного хоста XenServer. Эту команду следует использовать только если хост находится в аварийном режиме (emergency mode), то есть является членом пула, мастер-хост которого пропал из сети и не доступен после нескольких попыток связаться с ним. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-emergency-management-reconfigure&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-emergency-management-reconfigure&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:102,&amp;quot;secid&amp;quot;:127,&amp;quot;range&amp;quot;:&amp;quot;113315-113974&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit128&quot; id=&quot;host-enable&quot;&gt;host-enable&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-enable [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Включает указанный хост, разрешая запуск на нем виртуальных машин. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-enable&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-enable&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:103,&amp;quot;secid&amp;quot;:128,&amp;quot;range&amp;quot;:&amp;quot;113975-114187&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit129&quot; id=&quot;host-evacuate&quot;&gt;host-evacuate&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-evacuate [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Запускает миграцию виртуальных машин на другие подходящие хосты пула. Перед запуском этой команды хост должен быть отключен командой &lt;strong&gt;host-disable&lt;/strong&gt;.&lt;br/&gt;

Если эвакуируемый хост - это мастер-хост пула, то нужно назначить другой мастер-хост. Для назначения нового мастер-хоста при выключенной высокой доступности (HA) нужно выполнить команду &lt;strong&gt;pool-designate-new-master&lt;/strong&gt;.&lt;br/&gt;

При включенной HA - выборы мастер-хоста произойдут автоматически. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-evacuate&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-evacuate&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:104,&amp;quot;secid&amp;quot;:129,&amp;quot;range&amp;quot;:&amp;quot;114188-115038&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit130&quot; id=&quot;host-forget&quot;&gt;host-forget&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-forget uuid=&amp;lt;XenServer_host_UUID&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Агент xapi “забудет” об указанном хосте XenServer, не связываясь с ним.&lt;br/&gt;

Аргумент 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;--force&lt;/pre&gt;

&lt;p&gt;
 следует использовать для того чтобы запретить запрос подтверждения этой операции. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit131&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВНИМАНИЕ! Не используйте эту команду при включенной высокой доступности (HA). Сначала следует отключить HA, затем “забыть” хост и потом включить HA снова.&lt;/th&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Совет: Эта команда применима, если хост сдох. Если хост все-таки жив, то следует использовать команду &lt;strong&gt;xe pool-eject&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table28&amp;quot;,&amp;quot;secid&amp;quot;:131,&amp;quot;range&amp;quot;:&amp;quot;115421-115905&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-forget&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-forget&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:105,&amp;quot;secid&amp;quot;:130,&amp;quot;range&amp;quot;:&amp;quot;115039-115906&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit132&quot; id=&quot;host-get-system-status&quot;&gt;host-get-system-status&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-get-system-status filename=&amp;lt;name_for_status_file&amp;gt;
[entries=&amp;lt;comma_separated_list&amp;gt;] [output=&amp;lt;tar.bz2 | zip&amp;gt;] [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выгружает информацию о состоянии системы в указанный файл. Дополнительные параметры вводятся через запятую. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-get-system-status&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-get-system-status&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:107,&amp;quot;secid&amp;quot;:132,&amp;quot;range&amp;quot;:&amp;quot;115907-116309&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit133&quot; id=&quot;host-get-system-status-capabilities&quot;&gt;host-get-system-status-capabilities&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-get-system-status-capabilities [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Получает характеристики состояния системы указанного хоста в виде файла XML, который выглядит примерно так:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; ?&amp;gt;	&amp;lt;system-status-capabilities&amp;gt;
 		&amp;lt;capability content-type=&amp;quot;text/plain&amp;quot; default-checked=&amp;quot;yes&amp;quot; key=&amp;quot;xenserver-logs&amp;quot;  \
           max-size=&amp;quot;150425200&amp;quot; max-time=&amp;quot;-1&amp;quot; min-size=&amp;quot;150425200&amp;quot; min-time=&amp;quot;-1&amp;quot; \
		   pii=&amp;quot;maybe&amp;quot;/&amp;gt;
 		&amp;lt;capability content-type=&amp;quot;text/plain&amp;quot; default-checked=&amp;quot;yes&amp;quot; \
		   key=&amp;quot;xenserver-install&amp;quot; max-size=&amp;quot;51200&amp;quot; max-time=&amp;quot;-1&amp;quot; min-size=&amp;quot;10240&amp;quot; \
		   min-time=&amp;quot;-1&amp;quot; pii=&amp;quot;maybe&amp;quot;/&amp;gt;
 		...
	&amp;lt;/system-status-capabilities&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Каждя запись имеет ряд аттрибутов:&lt;br/&gt;

&lt;strong&gt;key&lt;/strong&gt;	Уникальный идентификатор характеристики&lt;br/&gt;

&lt;strong&gt;content-type&lt;/strong&gt;	Имеет значение либо &lt;em&gt;text/plain&lt;/em&gt; либо &lt;em&gt;application/data&lt;/em&gt;. Показывает, может ли интерфейс отобразить запись в читаемом виде. &lt;br/&gt;

&lt;strong&gt;default-checked&lt;/strong&gt;	Имеет значение либо &lt;em&gt;yes&lt;/em&gt; либо &lt;em&gt;no&lt;/em&gt;. Показывает, будет ли запись отображена по-умолчанию. &lt;br/&gt;

&lt;strong&gt;min-size, max-size&lt;/strong&gt;	Показвает примерный диапазон размера записи в байтах. Значение -1 говорит, что размер не важен. &lt;br/&gt;

&lt;strong&gt;min-time, max-time&lt;/strong&gt;	Показывает примерную продолжительность сбора данных записи. Значение -1 говорит, что продолжительность не важна.&lt;br/&gt;

&lt;strong&gt;pii&lt;/strong&gt;	Персонально идентифицируемая информация. Показывает, будет ли в записи информация, идентифицирующая владельца системы или подробности сетевой топологии. Принимает значения: no, yes, maybe, if_customized&lt;br/&gt;

 &lt;br/&gt;

Пароли никогда не указываются ни в каких отчетах. Они могут быть указаны только в самим администратором в PII. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-get-system-status-capabilities&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-get-system-status-capabilities&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:108,&amp;quot;secid&amp;quot;:133,&amp;quot;range&amp;quot;:&amp;quot;116310-118673&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit134&quot; id=&quot;host-is-in-emergency-mode&quot;&gt;host-is-in-emergency-mode&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-is-in-emergency-mode&lt;/pre&gt;

&lt;p&gt;
Возвращает &lt;em&gt;true&lt;/em&gt;, если хост находится в аварийном режиме. Эта команда работает на подчиненных хостах (slave hosts), даже если мастер-хост недоступен. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-is-in-emergency-mode&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-is-in-emergency-mode&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:110,&amp;quot;secid&amp;quot;:134,&amp;quot;range&amp;quot;:&amp;quot;118674-119009&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit135&quot; id=&quot;host-apply-edition&quot;&gt;host-apply-edition&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-apply-edition [host-uuid=&amp;lt;XenServer_host_UUID&amp;gt;] [edition=xenserver_edition=&amp;lt;&amp;quot;free&amp;quot;&amp;gt;&amp;lt;&amp;quot;advanced&amp;quot;&amp;gt;&amp;lt;&amp;quot;enterprise&amp;quot;&amp;gt;&amp;lt;&amp;quot;platinum&amp;quot;&amp;gt;&amp;lt;&amp;quot;enterprise-xd&amp;quot;&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Назначает лицензию хосту XenServer.  При назначении лицензии XenServer соединяется с сервером лицензий &lt;strong&gt;Citrix License Server&lt;/strong&gt; и запрашивает нужный тип лицензии. Если лицензия доступна - он получает ее от сервера лицензий. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для Citrix XenServer for XenDesktop используется &lt;strong&gt;&amp;lt;“enterprise-xd”&amp;gt;&lt;/strong&gt;.&lt;br/&gt;

Для начальной конфигурации - нужно сконфигурировать параметры &lt;strong&gt;license-server-address&lt;/strong&gt; и &lt;strong&gt;license-server-port&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-apply-edition&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-apply-edition&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:111,&amp;quot;secid&amp;quot;:135,&amp;quot;range&amp;quot;:&amp;quot;119010-119833&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit136&quot; id=&quot;host-license-add&quot;&gt;host-license-add&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-license-add [license-file=&amp;lt;path/license_filename&amp;gt;] [host-uuid=&amp;lt;XenServer_host_UUID&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
For XenServer (free edition), use to parses a local license file and adds it to the specified XenServer host.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-license-add&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-license-add&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:112,&amp;quot;secid&amp;quot;:136,&amp;quot;range&amp;quot;:&amp;quot;119834-120073&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit137&quot; id=&quot;host-license-view&quot;&gt;host-license-view&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-license-view [host-uuid=&amp;lt;XenServer_host_UUID&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Отображает содержимое лицензии хоста XenServer.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-license-view&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-license-view&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:113,&amp;quot;secid&amp;quot;:137,&amp;quot;range&amp;quot;:&amp;quot;120074-120246&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit138&quot; id=&quot;host-logs-download&quot;&gt;host-logs-download&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-logs-download [file-name=&amp;lt;logfile_name&amp;gt;] [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выгружает копию логов указанного хоста XenServer. Копия сохраняется по-умолчанию в файле с именем соотвествующим дате в формате &lt;strong&gt;hostname-yyyy-mm-dd T hh:mm:ssZ.tar.gz&lt;/strong&gt;. Также можно указать и другое имя с помощью соответствующего аргумента.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit139&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table29&amp;quot;,&amp;quot;secid&amp;quot;:139,&amp;quot;range&amp;quot;:&amp;quot;120780-121074&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-logs-download&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-logs-download&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:114,&amp;quot;secid&amp;quot;:138,&amp;quot;range&amp;quot;:&amp;quot;120247-121075&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit140&quot; id=&quot;host-management-disable&quot;&gt;host-management-disable&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-management-disable&lt;/pre&gt;

&lt;p&gt;
Отключает интерфейс управления хостом и отключает всех подключенных клиентов. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit141&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Внимание! После отключения интерфейса управления включить его можно только с помощью локальной консоли хоста.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table30&amp;quot;,&amp;quot;secid&amp;quot;:141,&amp;quot;range&amp;quot;:&amp;quot;121292-121499&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-management-disable&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-management-disable&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:115,&amp;quot;secid&amp;quot;:140,&amp;quot;range&amp;quot;:&amp;quot;121076-121500&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit142&quot; id=&quot;host-management-reconfigure&quot;&gt;host-management-reconfigure&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-management-reconfigure [interface=&amp;lt;device&amp;gt; ] | [pif-uuid=&amp;lt;uuid&amp;gt; ]&lt;/pre&gt;

&lt;p&gt;
Конфигурирует хост Xenserver для использования указанного интерфейса в качестве основного интерфейса управления (для подключения XenCenter). &lt;br/&gt;

Эта команда изменяет параметр &lt;strong&gt;MANAGEMENT_INTERFACE&lt;/strong&gt; в файле &lt;strong&gt;/etc/xensource-inventory&lt;/strong&gt;.&lt;br/&gt;

Если интерфейсу присовен IP-адрес в команде указано имя устройства интерфейса (device name), то конфигурирование произойдет сразу. Команда работает как в номальном, так и в аварийном (emergency) режиме.&lt;br/&gt;

Если указн идентификатор UUID объекта PIF, то XenServer определяет IP адрес. В таком варианте команда работает только в нормальном режиме хоста (не аварийном).&lt;br/&gt;

Внимание! Используйте эту команду осторожно, т.к. возможна потеря связи с хостом. Предварительно надо настроить интерфейс командой &lt;strong&gt;pif-reconfigure&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-management-reconfigure&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-management-reconfigure&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:116,&amp;quot;secid&amp;quot;:142,&amp;quot;range&amp;quot;:&amp;quot;121501-122886&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit143&quot; id=&quot;host-power-on&quot;&gt;host-power-on&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-power-on [host=&amp;lt;host_uuid&amp;gt; ]&lt;/pre&gt;

&lt;p&gt;
Включает хост, на котором включена соответствующая функциональность (Host Power On functionality). Перед использованием этой команды, на хосте следует выполнить команду &lt;strong&gt;host-set-power-on&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-power-on&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-power-on&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:117,&amp;quot;secid&amp;quot;:143,&amp;quot;range&amp;quot;:&amp;quot;122887-123268&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit144&quot; id=&quot;host-get-cpu-features&quot;&gt;host-get-cpu-features&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-get-cpu-features {features=&amp;lt;pool_master_cpu_features&amp;gt;} [uuid=&amp;lt;host_uuid&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Выводит в шестнадцатеричном виде список возможностей физического процессора. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-get-cpu-features&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-get-cpu-features&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:118,&amp;quot;secid&amp;quot;:144,&amp;quot;range&amp;quot;:&amp;quot;123269-123537&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit145&quot; id=&quot;host-set-cpu-features&quot;&gt;host-set-cpu-features&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-set-cpu-features {features=&amp;lt;pool_master_cpu_features&amp;gt;} [uuid=&amp;lt;host_uuid&amp;gt;]&lt;/pre&gt;

&lt;p&gt;
Эта команда пытается привести список возможностей физического процессора к заданному. СТрока-аргумент представляет собой 32-х символьную шестнадцатеричную строку (возможно содержащую пробелы), аналогичную выводу команды  &lt;strong&gt;host-get-cpu-features&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-set-cpu-features&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-set-cpu-features&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:119,&amp;quot;secid&amp;quot;:145,&amp;quot;range&amp;quot;:&amp;quot;123538-124097&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit146&quot; id=&quot;host-set-power-on&quot;&gt;host-set-power-on&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-set-power-on {host=&amp;lt;host uuid&amp;gt; {power-on-mode=&amp;lt;&amp;quot;&amp;quot;&amp;gt; &amp;lt;&amp;quot;wake-on-lan&amp;quot;&amp;gt; &amp;lt;&amp;quot;iLO&amp;quot;&amp;gt; &amp;lt;&amp;quot;DRAC&amp;quot;&amp;gt; &amp;lt;&amp;quot;custom&amp;quot;&amp;gt; } | [power-on-config=&amp;lt;&amp;quot;power_on_ip&amp;quot;&amp;gt;&amp;lt;&amp;quot;power_on_user&amp;quot;&amp;gt;&amp;lt;&amp;quot;power_on_password_secret&amp;quot;&amp;gt;] }&lt;/pre&gt;

&lt;p&gt;
Включает возможность удаленного включения питания хоста. При балансировке нагрузке в режиме максимальной плотности (Maximum Density mode) может понадобиться включать и выключать неиспользуемые хосты. При выполнении этой команды нужно указать тип используемого решения управления питанием (аргумент &lt;strong&gt;&amp;lt;power-on-mode&amp;gt;&lt;/strong&gt;). Затем, указать опции конфигурации с помощью аргумента &amp;lt;power-on-config&amp;gt; и пар параметр-значение. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-set-power-on&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-set-power-on&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:120,&amp;quot;secid&amp;quot;:146,&amp;quot;range&amp;quot;:&amp;quot;124098-125046&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit147&quot; id=&quot;host-reboot&quot;&gt;host-reboot&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-reboot [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Перезагружает указанный хост XenServer. Перед перезагрузкой хост должен быть отключен командой &lt;strong&gt;xe host-disable&lt;/strong&gt;. В противном случает будет зафиксирована ошибка &lt;strong&gt;HOST_IN_USE&lt;/strong&gt;.&lt;br/&gt;

Если указанный хост член пула, то после перезагрузки его возвращение в пул будет обработано правильно, а во время перезагрузки мастер-хост и другие члены пула будут нормально работать. Если перезагружается мастер-хост, то пул не будет доступен пока мастер-хост не вернется в строй или до тех пор, пока не будет назначен новый мастер-хост. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-reboot&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-reboot&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:121,&amp;quot;secid&amp;quot;:147,&amp;quot;range&amp;quot;:&amp;quot;125047-126050&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit148&quot; id=&quot;host-restore&quot;&gt;host-restore&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-restore [file-name=&amp;lt;backup_filename&amp;gt;] [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Восстанавливает из указанной резервной копии состояние хоста XenServer. В данном случае под восстановлением понимается не полное восстановление, а просто распаковка конфигурационных файлов на строй раздел диска. После выполнения &lt;strong&gt;xe host-restore&lt;/strong&gt; нужно загрузиться с установочного диска и выбрать опцию &lt;strong&gt;Restore from Backup&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-restore&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-restore&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:122,&amp;quot;secid&amp;quot;:148,&amp;quot;range&amp;quot;:&amp;quot;126051-126738&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit149&quot; id=&quot;host-set-hostname-live&quot;&gt;host-set-hostname-live&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-set-hostname host-uuid=&amp;lt;uuid_of_host&amp;gt; hostname=&amp;lt;new_hostname&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Меняет имя хоста XenServer с указанным UUID. Эта команда изменяет имя хоста как на самом хосте, так и в базе данных домена. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit150&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: имя хоста (hostname) это не тоже самое, что и &lt;strong&gt;name_label&lt;/strong&gt;&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table31&amp;quot;,&amp;quot;secid&amp;quot;:150,&amp;quot;range&amp;quot;:&amp;quot;127061-127173&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-set-hostname-live&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-set-hostname-live&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:123,&amp;quot;secid&amp;quot;:149,&amp;quot;range&amp;quot;:&amp;quot;126739-127174&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit151&quot; id=&quot;host-shutdown&quot;&gt;host-shutdown&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-shutdown [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
КОманда выключает указанный хост XenServer. Перед выключением следует отключить (запретить запуск новых виртуальных машин на нем) хост командой &lt;strong&gt;xe host-disable&lt;/strong&gt;. В противном случае - будет выведено сообщение об ошибке: HOST_IN_USE.&lt;br/&gt;

Если указанный хост является членом пула, то его выключение (и последующее возвращение в работу) будет правильно обработано без прерывания работы пула. Если выключается мастер-хост, то пул не будет доступен пока мастер-хост не вернется в строй или до тех пор, пока не будет назначен новый мастер-хост. Если включена высокая доступность (HA), то новый мастер-хост назначается автоматически. Если HA отключена, то нужно вручную назначить мастерхост командой &lt;strong&gt;pool-designate-new-master&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-shutdown&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-shutdown&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:124,&amp;quot;secid&amp;quot;:151,&amp;quot;range&amp;quot;:&amp;quot;127175-128524&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit152&quot; id=&quot;host-syslog-reconfigure&quot;&gt;host-syslog-reconfigure&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-syslog-reconfigure [&amp;lt;host-selector&amp;gt;=&amp;lt;host_selector_value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Переконфигурирует демон &lt;strong&gt;syslog&lt;/strong&gt; на указанном хосте. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-syslog-reconfigure&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-syslog-reconfigure&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:125,&amp;quot;secid&amp;quot;:152,&amp;quot;range&amp;quot;:&amp;quot;128525-128731&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit153&quot; id=&quot;host-data-source-list&quot;&gt;host-data-source-list&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-data-source-list [&amp;lt;host-selectors&amp;gt;=&amp;lt;host selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Выводит список источников данных о производительности хоста.&lt;br/&gt;

При запуске команды без уточнения хоста - команда будет выполнена для всех хостов.&lt;br/&gt;

Источники данных о производительности хоста имеют два параметра - &lt;strong&gt;standard&lt;/strong&gt; и &lt;strong&gt;enabled&lt;/strong&gt;. Если параметр &lt;strong&gt;enabled&lt;/strong&gt; имеет значение &lt;strong&gt;true&lt;/strong&gt; - это значит, что данные из этого источника фиксируются в базе данных производительности хоста. &lt;br/&gt;

Если параметр &lt;strong&gt;standard&lt;/strong&gt; имеет значение &lt;strong&gt;true&lt;/strong&gt; - это значит, что данные фиксируются в базе по-умолчанию (то есть параметр &lt;strong&gt;enabled&lt;/strong&gt; также имеет значение &lt;strong&gt;true&lt;/strong&gt;). &lt;br/&gt;

Если параметр &lt;strong&gt;standard&lt;/strong&gt; имеет значение &lt;strong&gt;false&lt;/strong&gt; - это значит, что данные не фиксируются в базе по-умолчанию (то есть параметр &lt;strong&gt;enabled&lt;/strong&gt; также имеет значение &lt;strong&gt;false&lt;/strong&gt;). &lt;br/&gt;

Для того чтобы начать фиксировать данные о производительности в базе предназначена команда &lt;strong&gt;host-data-source-record&lt;/strong&gt; (параметр &lt;strong&gt;enabled&lt;/strong&gt; будет установлен в значение &lt;strong&gt;true&lt;/strong&gt;). &lt;br/&gt;

Для того чтобы прекратить фиксировать данные о производительности в базе предназначена команда &lt;strong&gt;host-data-source-forget&lt;/strong&gt; (параметр &lt;strong&gt;enabled&lt;/strong&gt; будет установлен в значение &lt;strong&gt;false&lt;/strong&gt;). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-data-source-list&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-data-source-list&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:126,&amp;quot;secid&amp;quot;:153,&amp;quot;range&amp;quot;:&amp;quot;128732-130666&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit154&quot; id=&quot;host-data-source-record&quot;&gt;host-data-source-record&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-data-source-record data-source=&amp;lt;name_description_of_data-source&amp;gt; [&amp;lt;host-selectors&amp;gt;=&amp;lt;host selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
При выполнении этой команды начинается запись данных о производительности с указанного источника для указанного хоста. &lt;br/&gt;

При запуске команды без уточнения хоста - команда будет выполнена для всех хостов.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-data-source-record&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-data-source-record&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:127,&amp;quot;secid&amp;quot;:154,&amp;quot;range&amp;quot;:&amp;quot;130667-131202&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit155&quot; id=&quot;host-data-source-forget&quot;&gt;host-data-source-forget&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-data-source-forget data-source=&amp;lt;name_description_of_data-source&amp;gt; [&amp;lt;host-selectors&amp;gt;=&amp;lt;host selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Команда останавливает запись данных о производительности с указанного источника для указанного хоста. &lt;br/&gt;

При запуске команды без уточнения хоста - команда будет выполнена для всех хостов.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-data-source-forget&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-data-source-forget&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:128,&amp;quot;secid&amp;quot;:155,&amp;quot;range&amp;quot;:&amp;quot;131203-131707&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit156&quot; id=&quot;host-data-source-query&quot;&gt;host-data-source-query&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;host-data-source-query data-source=&amp;lt;name_description_of_data-source&amp;gt; [&amp;lt;host-selectors&amp;gt;=&amp;lt;host selector value&amp;gt;...]&lt;/pre&gt;

&lt;p&gt;
Отображает данные о производительности с указанного источника.&lt;br/&gt;

При запуске команды без уточнения хоста - команда будет выполнена для всех хостов.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;host-data-source-query&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;host-data-source-query&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:129,&amp;quot;secid&amp;quot;:156,&amp;quot;range&amp;quot;:&amp;quot;131708-132137&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit157&quot; id=&quot;раздел_4_конфигурирование_и_работа_с_пулами_серверов&quot;&gt;Раздел 4. Конфигурирование и работа с пулами серверов&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0434\u0435\u043b 4. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u0443\u043b\u0430\u043c\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0434\u0435\u043b_4_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0438_\u0440\u0430\u0431\u043e\u0442\u0430_\u0441_\u043f\u0443\u043b\u0430\u043c\u0438_\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:130,&amp;quot;secid&amp;quot;:157,&amp;quot;range&amp;quot;:&amp;quot;132138-132248&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit158&quot; id=&quot;добавление_серверов_в_пул_и_удаление_их_из_пула&quot;&gt;4.1 - Добавление серверов в пул и удаление их из пула&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Серверы XenServer могут быть объединены в пул. Такое объединение дает возможность управлять множеством хостов XenServer как единым ресурсом, внутри которого исполняются виртуальные машины. Пул предствляет собой множество (два и более) хостов XenServer, использующих общее (shared) хранилище, на котором хранятся данные виртуальных машин. Таким образом виртуальная машина может быть запущена на любом хосте пула, а также может динамически мигрировать с одного хоста на другой, обеспечивая минимальное время простоя (технология  XenMotion).&lt;br/&gt;

При выходе из строя отдельных хостов пула, администратор может перезапустить остановленные виртуальные машины на рабочих хостах пула, а при включенной функции высокой готовности (high availability - HA), виртуальные маишны будут перезапущены автоматически. В пул могут входить до 16 серверов, хотя это ограничение не является строгим. &lt;br/&gt;

В состав пула всегда входит хотя бы один хост, который является мастер-хостом. Только мастер-хост предоставляет административный интерфейс для работы с пулом, перенаправляя команды XenCenter и XenServer Command Line Interface  (xe CLI) отдельным хостам. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit159&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание. При выходе из строя мастер-хоста автоматические перевыборы мастер-хоста происходят только при включенной HA.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table32&amp;quot;,&amp;quot;secid&amp;quot;:159,&amp;quot;range&amp;quot;:&amp;quot;134331-134556&amp;quot;} --&gt;
&lt;p&gt;
Пулы бывают гомогенные (то есть состоящие из хостов с одинаковыми CPU) либо гетерогенные (состоящие из хостов с разными CPU).&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Условия, которые должны быть соблюдены для создания пула:&lt;br/&gt;

 - в хостах XenServer установлены одинаковые процессоры (производитель, модель и функции)&lt;br/&gt;

 - хосты работают под управлением одной версии XenServer&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Также должны быть соблюдены некоторые условия конфигурации:&lt;br/&gt;

 - Хост присоединяемый к пулу не должен входить в состав других пулов.&lt;br/&gt;

 - На нем не должно быть сконфигурировано общего (shared) хранилища&lt;br/&gt;

 - на присоединяемом хосте не должно быть запущенных или приостановленных (suspended) виртуальных машин&lt;br/&gt;

 - на присоединяемом хосте не должно выполняться никаких текущих процедур с виртуальными машинами (например выключение ВМ)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Также следует проверить, что часы присоединяемого хоста и мастер-хоста пула синхронизированы с одним сервером NTP. Также интерфейс управления хостом должен иметь статический IP (сконфигурированный на хосте или через DHCP) и не должен быть объединен с другим интерфейсов в группу (bonded) - объединение можно сконфигурировать после присоединения к пулу.&lt;br/&gt;

Хосты могут иметь разное количество сетевых интерфейсов и локальные хранилища разного размера. Кроме того допускаются незначительные отличия в используемых CPU. Если вы уверены, что отличия в CPU хостов незначительны, то для присоединеня к пулу может понадобиться использовать параметр &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;--force&lt;/pre&gt;

&lt;p&gt;
 &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit160&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание. Статический IP адрес должен быть также у хранилищ NFS или iSCSI, используемых пулом.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table33&amp;quot;,&amp;quot;secid&amp;quot;:160,&amp;quot;range&amp;quot;:&amp;quot;137108-137278&amp;quot;} --&gt;
&lt;p&gt;
Хотя наличие общего (shared) хранилища не является обязательным условием работы пула, однако использование общего хранилища позволяет указывать на каком конкретно хосте должна исполняться виртуальная машина, а также динамически перемещать ВМ между хостами XenServer.&lt;br/&gt;

По возможности не следует создавать пул без общего хранилища, а после того как в пуле появляется общее хранилище следует переместить ВМ на общее хранилище с помощью команды &lt;strong&gt;xe vm-copy&lt;/strong&gt; или XenCenter.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.1 - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432 \u043f\u0443\u043b \u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0438\u0445 \u0438\u0437 \u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432_\u0432_\u043f\u0443\u043b_\u0438_\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u0438\u0445_\u0438\u0437_\u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:130,&amp;quot;secid&amp;quot;:158,&amp;quot;range&amp;quot;:&amp;quot;132249-138116&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit161&quot; id=&quot;создание_resource_pool&quot;&gt;Создание Resource Pool&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Пул XenServer можно создать либо из XenCenter, либо с помощью консоли и CLI. При присоединении хоста к пулу, хост синхронизирует свою локальную базу данных с базой данных пула и наследует некоторые настройки:&lt;br/&gt;

 - Информация о виртуальных машинах, а также локальных и удаленных хранилищах попадает в базу данных пула, но локальные ресурсы все еще будут привязаны к хосту, до тех пор, пока они не будут объявлены общими.&lt;br/&gt;

 - Присоединяемый к пулу хост наследует настройки общего хранилища пула и соответствующее PBD (физическое блочное устройство) будет создано автоматически.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Информация о сетевых настройках наследуется частично. Наследуются структурные детали сетевых адаптеров, VLANов и объединенных интерфейсов, но не наследуются политики, в частности &lt;strong&gt;НЕ&lt;/strong&gt; наследуются:&lt;br/&gt;

 - не наследуются настройки IP-адреса интерфейса управления.&lt;br/&gt;

 - не наследуются параметры основного интерфейса управления хоста.&lt;br/&gt;

 - не наследуются параметры адаптеров, выделенных для работы с общим хранилищем. Адаптеры выделенные для присоединения хранилищ должны быть перенастроены, а PBD переподключены. Это происходит потому что в процессе присоединения не присваиваются IP-адреса адаптерам хоста. Подробнее конфигурирование выделенного адаптера для взаимодействия с хранилищем описано тут: &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_config-config_dedicated_storage_nic&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_config-config_dedicated_storage_nic&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#networking-standalone_host_config-config_dedicated_storage_nic&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Для объединения хостов XenServer &lt;strong&gt;host1&lt;/strong&gt; и &lt;strong&gt;host2&lt;/strong&gt; в один пул XenServer с помощью интерфейса командной строки:&lt;br/&gt;

 - откройте консоль &lt;strong&gt;host1&lt;/strong&gt; и &lt;strong&gt;host2&lt;/strong&gt;&lt;br/&gt;

 - В консоли &lt;strong&gt;host2&lt;/strong&gt; выполните команду присоединения к host1:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pool-join master-address=&amp;lt;host1&amp;gt; master-username=&amp;lt;administrators_username&amp;gt; master-password=&amp;lt;password&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Параметр &lt;strong&gt;master-address&lt;/strong&gt; - это полное FQDN имя хоста &lt;strong&gt;host1&lt;/strong&gt;, а &lt;strong&gt;password&lt;/strong&gt; - это пароль администратора, задаваемый при установке XenServer.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 Resource Pool&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_resource_pool&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:131,&amp;quot;secid&amp;quot;:161,&amp;quot;range&amp;quot;:&amp;quot;138117-141280&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit162&quot; id=&quot;именование_пула&quot;&gt;Именование пула&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
По-умолчанию хосты принадлежат к пулу без имени. Переименовать пул можно командой (для завершения строки и заполнения uuid можно использовать tab):&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pool-param-set name-label=&amp;lt;&amp;quot;New Pool&amp;quot;&amp;gt; uuid=&amp;lt;pool_uuid&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435_\u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:132,&amp;quot;secid&amp;quot;:162,&amp;quot;range&amp;quot;:&amp;quot;141281-141657&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit163&quot; id=&quot;создание_гетерогенных_пулов&quot;&gt;Создание гетерогенных пулов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;div class=&quot;table sectionedit164&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: гетерогенные пулы можно создавать только в версиях XenServer Advanced и старше.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table34&amp;quot;,&amp;quot;secid&amp;quot;:164,&amp;quot;range&amp;quot;:&amp;quot;141719-141875&amp;quot;} --&gt;
&lt;p&gt;
XenServer 6.0 упрощает расширение ферм, позволяя объединять в пулы хосты с разным аппаратным обеспечением - так называемые гетерогенные пулы.  Создание гетерогенных пулов стало возможным благодаря использованию таких технологий как Intel (FlexMigration) и AMD (Extended Migration), которые позволяют конфигурировать CPU так, чтобы он представлял нужный набор функций. Таким образом, можно создавать пулы на базе хостов с разными процессорами, и поддерживающими “живую миграцию”.&lt;br/&gt;

“Маскирование” CPU новых серверов для того, чтобы они соответствовали старым CPU требует соблюдения следующих условий:&lt;br/&gt;

 - CPU существующих и добавляемых серверов должны быть одного производителя (AMD или Intel)&lt;br/&gt;

 - CPU добавляемых серверов должны поддерживать либо технологию &lt;strong&gt;Intel FlexMigration&lt;/strong&gt; либо &lt;strong&gt;AMD Enhanced Migration&lt;/strong&gt;.&lt;br/&gt;

 - Набор функций CPU существующих серверов должен поддерживаться CPU устанавливаемых серверов&lt;br/&gt;

 - На устанавливаемых серверах должна быть та же версия XenServer (включая хотфиксы), что и на существующих&lt;br/&gt;

 - XenServer Advanced edition или выше&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 Наиболее просто создавать гетерогенные пулы с помощью XenCenter, который автоматически применяет “маскирование” CPU. &lt;br/&gt;

Для добавления хоста в гетерогенный пул с помощью командной строки:&lt;br/&gt;

 - Определите набор функций процессоров существующих серверов пула с помощью команды: &lt;strong&gt;xe host-get-cpu-features&lt;/strong&gt;&lt;br/&gt;

 - На добавляемом хосте с помощью команды &lt;strong&gt;xe host-set-cpu-features&lt;/strong&gt; надо установить нужный набор функций CPU:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-set-cpu-features features=&amp;lt;pool_master&amp;#039;s_cpu_ features&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 - Перезагрузите добавляемый сервер&lt;br/&gt;

 - Выполните команду &lt;strong&gt;xe pool-join &lt;/strong&gt; для присоединения у пулу&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для возвращения “замаскированного” CPU к нормальному состоянию нужно выполнить команду &lt;strong&gt;xe host-reset-cpu-features&lt;/strong&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit165&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Для отображения списка всех свойств CPU используется команда &lt;strong&gt;xe host-cpu-info&lt;/strong&gt;&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table35&amp;quot;,&amp;quot;secid&amp;quot;:165,&amp;quot;range&amp;quot;:&amp;quot;144816-144973&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0433\u0435\u0442\u0435\u0440\u043e\u0433\u0435\u043d\u043d\u044b\u0445 \u043f\u0443\u043b\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0433\u0435\u0442\u0435\u0440\u043e\u0433\u0435\u043d\u043d\u044b\u0445_\u043f\u0443\u043b\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:133,&amp;quot;secid&amp;quot;:163,&amp;quot;range&amp;quot;:&amp;quot;141658-144975&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit166&quot; id=&quot;добавление_общего_хранилища_shared_storage&quot;&gt;Добавление общего хранилища (Shared Storage)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В данном разделе описано добавление общего хранилища NFS.&lt;br/&gt;

Добавление общего хранилища NFS с помощью командной строки:&lt;br/&gt;

 - Подготовьте разделяемый ресурс NFS по адресу &lt;strong&gt;&amp;lt;server:/path&amp;gt;&lt;/strong&gt;&lt;br/&gt;

 - Откройте консоль&lt;br/&gt;

 - Создайте хранилище (storage repository) по адресу &lt;strong&gt;&amp;lt;server:/path&amp;gt;&lt;/strong&gt; командой:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe sr-create content-type=user type=nfs name-label=&amp;lt;&amp;quot;Example SR&amp;quot;&amp;gt; shared=true \
      device-config:server=&amp;lt;server&amp;gt; \
      device-config:serverpath=&amp;lt;path&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 Параметр &lt;strong&gt;device-config:server&lt;/strong&gt; указывает на имя хоста (hostname) на котором размещен ресурс NFS.  Параметр &lt;strong&gt;device-config:serverpath&lt;/strong&gt; указывает путь на сервере NFS. Так как &lt;strong&gt;shared&lt;/strong&gt; имеет значение &lt;strong&gt;true&lt;/strong&gt;, общее хранилище будет автоматичсеки подключено ко всем хостам пула и ко всем хостам, которые будут впоследствии подключены к пулу. Универсальный идентификатор (UUID) созданного хранилища будет выведен на экран.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Определите UUID пула командой &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pool-list&lt;/pre&gt;

&lt;p&gt;
 - Установите созданное общее хранилище как хранилище для пула по-умолчанию:&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit167&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;xe pool-param-set uuid=&amp;lt;pool_uuid&amp;gt; default-SR=&amp;lt;sr_uuid&amp;gt;&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table36&amp;quot;,&amp;quot;secid&amp;quot;:167,&amp;quot;range&amp;quot;:&amp;quot;146628-146687&amp;quot;} --&gt;
&lt;p&gt;
Так как было задано общее хранилище для пула по-умолчанию, все виртуальные машины, создаваемые в будущем будут размещены на этом хранилище. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431\u0449\u0435\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 (Shared Storage)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043e\u0431\u0449\u0435\u0433\u043e_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_shared_storage&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:134,&amp;quot;secid&amp;quot;:166,&amp;quot;range&amp;quot;:&amp;quot;144976-146949&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit168&quot; id=&quot;удаление_хоста_xenserver_из_пула&quot;&gt;Удаление хоста XenServer из пула&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;div class=&quot;table sectionedit169&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Перед удалением хоста из пула убедитесь, что выключены все виртуальные машины на этом хосте. В противном случае будет выведено предупреждение и хост не удастся удалить.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table37&amp;quot;,&amp;quot;secid&amp;quot;:169,&amp;quot;range&amp;quot;:&amp;quot;147010-147345&amp;quot;} --&gt;
&lt;p&gt;
После удаления хоста из пула, система перезагружается, инициализируется и остается в том состоянии как после чистой установки XenServer.&lt;br/&gt;

Таким образом важно не извлекать (eject) хост из пула, если на нем есть важные данные на локальных дисках. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для удаления хоста из пула с помощью командой но строки:&lt;br/&gt;

 - Откройте консоль хоста&lt;br/&gt;

 - Определите UUID хоста командой:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-list&lt;/pre&gt;

&lt;p&gt;
 - Извлеките хост из пула командой:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pool-eject host-uuid=&amp;lt;host_uuid&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 Хост будет извлечен и приведен в состояние как после чистой установки XenServer.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit170&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table38&amp;quot;,&amp;quot;secid&amp;quot;:170,&amp;quot;range&amp;quot;:&amp;quot;148280-148299&amp;quot;} --&gt;
&lt;p&gt;
Не извлекайте хост из пула, если на нем есть важные данные на локальных дисках. При извлечении из пула все данные будут уничтожены.&lt;br/&gt;

Если нужно сохранить эти данные - скопируйте виртуальные машины на общее хранилище (shared storage) пула с помощью XenCenter или команды &lt;strong&gt;xe vm-copy&lt;/strong&gt;.^&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При извлечении из пула хоста XenServer, содержащего на своем локальном хранилище виртуальные машины, эти ВМ будут представлены в базе данных пула и доступны остальным хостам пула, однако не смогут быть запущены до тех пор, пока их виртуальные диски не будут перемещены на хранилище, доступное хостам пула. Именно по этой причине при присоединении к пулу настойчиво рекомендуется перемещать данные с локальных хранилищ на общее, для того чтобы отдельные хосты XenServer можно было извлечь быстро и безопасно без потерь данных. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0445\u043e\u0441\u0442\u0430 XenServer \u0438\u0437 \u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u0445\u043e\u0441\u0442\u0430_xenserver_\u0438\u0437_\u043f\u0443\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:136,&amp;quot;secid&amp;quot;:168,&amp;quot;range&amp;quot;:&amp;quot;146950-149741&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit171&quot; id=&quot;подготовка_хостов_пула_к_обслуживанию_maintenance&quot;&gt;Подготовка хостов пула к обслуживанию (Maintenance)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Перед проведением  обслуживания хоста XenServer, входящего в пул, следует отключить (disable) его (то есть запретить запуск виртуальных машин на хосте), затем мигрировать виртуальные машины на другие хосты пула. Это проще всего осуществить установив для хоста режим обслуживания (Maintenance mode) с помощью XenCenter. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit172&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: перевод мастер-хоста в режим обслуживания приведет к тому, что будут потеряны последние обновления RRD для выключенных виртуальных машин за последние 24 часа, т.к. синхронизация выполняется раз в сутки.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table39&amp;quot;,&amp;quot;secid&amp;quot;:172,&amp;quot;range&amp;quot;:&amp;quot;150383-150775&amp;quot;} --&gt;&lt;div class=&quot;table sectionedit173&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table40&amp;quot;,&amp;quot;secid&amp;quot;:173,&amp;quot;range&amp;quot;:&amp;quot;150777-150797&amp;quot;} --&gt;
&lt;p&gt;
Citrix настойчиво рекомендует перезагружать все хосты XenServer ПЕРЕД установкой обновлений и затем проверять их конфигурацию. Некоторые изменения в конфигурации вступают в силу только после перезагрузки и таким образом перезагрузка может помочь выявить проблемы в конфигурации, которые могут сделать невозможным обновление. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit174&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table41&amp;quot;,&amp;quot;secid&amp;quot;:174,&amp;quot;range&amp;quot;:&amp;quot;151393-151396&amp;quot;} --&gt;
&lt;p&gt;
Для подготовки хоста XenServer к обслуживанию (maintenance):&lt;br/&gt;

 - Выполните команды:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-disable uuid=&amp;lt;xenserver_host_uuid&amp;gt;
    xe host-evacuate uuid=&amp;lt;xenserver_host_uuid&amp;gt;&lt;/pre&gt;

&lt;p&gt;
В результате хост будет отключен, а затем виртуальные машины мигрируют на другие хосты пула. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 - Выполните нужные операции обслуживания.&lt;br/&gt;

 - После выполнения обслуживания задействуйте хост, для чего выполните команду:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-enable&lt;/pre&gt;

&lt;p&gt;
 - Запустите выключенные и приостановленные виртуальные машины.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Также перевести хост в режим обслуживания можно с помощью XenCenter. &lt;br/&gt;

Нужно кликнуть правой кнопкой по хосту и в меню кликнуть пункт &lt;strong&gt;Enter Maintenance Mode&lt;/strong&gt;, или выделить хост, а затем в меню &lt;strong&gt;Server&lt;/strong&gt; кликнуть пункт &lt;strong&gt;Enter Maintenance Mode&lt;/strong&gt;.&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/right-click.jpg&quot; class=&quot;media&quot; title=&quot;right-click.jpg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/right-click.jpg?w=200&amp;amp;tok=ba8176&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0445\u043e\u0441\u0442\u043e\u0432 \u043f\u0443\u043b\u0430 \u043a \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044e (Maintenance)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430_\u0445\u043e\u0441\u0442\u043e\u0432_\u043f\u0443\u043b\u0430_\u043a_\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044e_maintenance&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:138,&amp;quot;secid&amp;quot;:171,&amp;quot;range&amp;quot;:&amp;quot;149742-152618&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit175&quot; id=&quot;обслуживание_пула_maintenance_при_включенной_высокой_доступности_ha&quot;&gt;4.2 - Обслуживание пула (Maintenance) при включенной высокой доступности (HA)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://citrixxperience.com/2012/06/06/ha-best-practices-xenserver-host-maintenance/&quot; class=&quot;urlextern&quot; title=&quot;http://citrixxperience.com/2012/06/06/ha-best-practices-xenserver-host-maintenance/&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrixxperience.com/2012/06/06/ha-best-practices-xenserver-host-maintenance/&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;http://citrixxperience.com/2012/06/05/xenserver-maintenance-mode-and-workload-balancing/&quot; class=&quot;urlextern&quot; title=&quot;http://citrixxperience.com/2012/06/05/xenserver-maintenance-mode-and-workload-balancing/&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrixxperience.com/2012/06/05/xenserver-maintenance-mode-and-workload-balancing/&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При работе с включенной высокой доступностью (HA) не следует вносить изменения в конфигурацию пула. Если необходимо внести существенные изменения в конфигурацию (например - установить обновления) следует сначала отключить HA, внести изменения, а затем включить HA снова. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Отключение HA: &lt;br/&gt;

1. В XenCenter в панели ресурсов выбрать пул.&lt;br/&gt;

2. Перейти на вкладку HA.&lt;br/&gt;

3. Кликнуть &lt;strong&gt;Disable HA&lt;/strong&gt; и затем подтвердить - OK.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/_media/ha-enabled.jpg&quot; class=&quot;media&quot; title=&quot;ha-enabled.jpg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/ha-enabled.jpg?w=200&amp;amp;tok=976c17&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.2 - \u041e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u043f\u0443\u043b\u0430 (Maintenance) \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 (HA)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435_\u043f\u0443\u043b\u0430_maintenance_\u043f\u0440\u0438_\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439_\u0432\u044b\u0441\u043e\u043a\u043e\u0439_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438_ha&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:140,&amp;quot;secid&amp;quot;:175,&amp;quot;range&amp;quot;:&amp;quot;152619-153696&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit176&quot; id=&quot;назначение_нового_мастер-хоста_при_включенной_и_отключенной_ha&quot;&gt;4.3 - Назначение нового мастер-хоста при включенной и отключенной HA&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_ref_host-evacuate&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_ref_host-evacuate&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_ref_host-evacuate&lt;/a&gt;&lt;br/&gt;

Для переназначения мастер-хоста  при отключенной высокой доступности (HA) необходимо выполнить команду &lt;strong&gt;pool-designate-new-master&lt;/strong&gt; (см. &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-designate-new-master&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-designate-new-master&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#cli-xe-commands_pool-designate-new-master&lt;/a&gt;).&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;pool-designate-new-master host-uuid=&amp;lt;UUID of member XenServer host to become new master&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Данная команда назначает указанный хост мастер-хостом пула. В результате - роль мастер-хоста передается указанному хосту. Эту команду можно выполнить только если текущий мастер-хост присутствует в пуле. Если текущий мастер-хост вышел из строя, то нужно выполнить команду &lt;strong&gt;pool-emergency-transition-to-master&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;pool-emergency-transition-to-master&lt;/pre&gt;

&lt;p&gt;
Команда предписывает хосту стать мастер-хостом. Команда будет выполнена только хостом, находящимся в режиме &lt;strong&gt;emergency mode&lt;/strong&gt;. Подразумевается, что мастер-хост пропал из сети и остается недоступен после нескольких попыток связаться с ним. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При включенной высокой доступности (HA) можно просто выключить хост. Выборы нового мастер-хоста произойдут автоматически путем случайного выбора из имеющихся хостов. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.3 - \u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u043c\u0430\u0441\u0442\u0435\u0440-\u0445\u043e\u0441\u0442\u0430 \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 HA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435_\u043d\u043e\u0432\u043e\u0433\u043e_\u043c\u0430\u0441\u0442\u0435\u0440-\u0445\u043e\u0441\u0442\u0430_\u043f\u0440\u0438_\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439_\u0438_\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439_ha&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:140,&amp;quot;secid&amp;quot;:176,&amp;quot;range&amp;quot;:&amp;quot;153697-155713&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit177&quot; id=&quot;создание_хранилища_для_заданной_конфигурации&quot;&gt;4.4 - Создание хранилища для заданной конфигурации&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ck_reference_storage_repository_types&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ck_reference_storage_repository_types&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#ck_reference_storage_repository_types&lt;/a&gt;&lt;br/&gt;

Различные типы хранилищ поддерживаются XenServer с помощью подключения плагинов. Новые плагины могут быть добавлены в дирректорию &lt;strong&gt;/opt/xensource/sm&lt;/strong&gt;. Изменение этих файлов не поддерживается, однако они доступны для просмотра и могут быть полезны разработчикам и продвинутым пользователям. Новые плагины, размещенные в этой директории автоматически распознаются XenServer. Для просмотра списка поддерживаемых типов хранилищ (SR types) используется команда &lt;strong&gt;sm-list&lt;/strong&gt;.&lt;br/&gt;

Новые хранилища создаются в XenCenter с помощью мастера &lt;strong&gt;New Storage&lt;/strong&gt;. Также для создания хранилища можно использовать команду &lt;strong&gt;sr-create&lt;/strong&gt;, которая создаст хранилище на указанном устройстве, уничтожив там все данные. Также автоматически будут созданы объекты SR &lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt; и записи о физическом блочном устройстве (PBD). При успешном создании хранилища PBD подключается автоматически. Если указан флаг &lt;strong&gt;shared=true&lt;/strong&gt;, то запись о физическом блочном устройстве (PBD) появится на всех хостах пула. &lt;br/&gt;

Все типы хранилищ XenServer поддерживают изменение размера VDI (VDI resize), быстрое клонирование (fast cloning) и создание мгновенных снимков (snapshot).&lt;br/&gt;

Хранилища на базе LVM (local, iSCSI или HBA) поддерживают «thin provisioning» (методика выделения пространства хранения приложениям не сразу при создании диска, а по мере возникновения в нем потребности у данных приложения, «on demand») для снэпшотов и скрытых родительских нод. Другие типы хранилищ поддерживают полных механизм thin provisioning (full thin provisioning), в том числе для активных виртуальных дисков. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit178&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Примечание: Автоматическое архивирование метаданных LVM по-умолчанию отключено. Однако это не мешает восстанавливать метаданные для групп LVM.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table42&amp;quot;,&amp;quot;secid&amp;quot;:178,&amp;quot;range&amp;quot;:&amp;quot;158539-158802&amp;quot;} --&gt;&lt;div class=&quot;table sectionedit179&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table43&amp;quot;,&amp;quot;secid&amp;quot;:179,&amp;quot;range&amp;quot;:&amp;quot;158804-158824&amp;quot;} --&gt;
&lt;p&gt;
По-умолчанию неприсоединенные к виртуальной машине (например снэпшот) VHD VDI (логический том lvm с образом диска виртуальной машины) хранится в режиме «thin provisioning». Следовательно, перед присоединением к виртуальной машине и запуском следует убедиться, что на хранилище достаточно места для того, чтобы образ диска развернулся полностью (стал  thickly provisioned).^&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;\\&lt;/pre&gt;

&lt;p&gt;
Максимальные поддерживаемые размеры VDI:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Тип хранилища - - Максимальный размер VDI&lt;br/&gt;

EXT3 - - - - - - - - 2TB&lt;br/&gt;

LVM - - - - - - - -  2TB&lt;br/&gt;

NetApp - - - - - - - 2TB&lt;br/&gt;

EqualLogic - - -  - 15TB&lt;br/&gt;

ONTAP(NetApp) - - - 12TB&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.4 - \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_\u0434\u043b\u044f_\u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:142,&amp;quot;secid&amp;quot;:177,&amp;quot;range&amp;quot;:&amp;quot;155714-159762&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit180&quot; id=&quot;local_lvm&quot;&gt;Local LVM&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Тип хранилища &lt;strong&gt;Local LVM&lt;/strong&gt; - это локальный диск хоста, на котором размещена группа томов LVM (Volume Group).&lt;br/&gt;

По-умолчанию XenServer использует локальный диск хоста, на который он установлен. Для управления хранилищем используется Linux Logical Volume Manager (LVM). VDI (образы дисков виртуальных машин) хранятся в формате VHD в виде томов LVM нужного размера. &lt;br/&gt;

Версии XenServer до 6.0 не исползовали формат VHD. Дополнительную информацию о переводе хранилищ в новый формат можно найти тут: &lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#upgrading_to_lvhd&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#upgrading_to_lvhd&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#upgrading_to_lvhd&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Local LVM&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;local_lvm&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:142,&amp;quot;secid&amp;quot;:180,&amp;quot;range&amp;quot;:&amp;quot;159763-160687&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit181&quot; id=&quot;создание_local_lvm_sr_lvm&quot;&gt;Создание Local LVM SR (lvm)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для создания &lt;strong&gt;local lvm SR&lt;/strong&gt; на устройстве &lt;strong&gt;/dev/sdb&lt;/strong&gt; используется следующая команда:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe sr-create host-uuid=&amp;lt;valid_uuid&amp;gt; content-type=user \
name-label=&amp;lt;&amp;quot;Example Local LVM SR&amp;quot;&amp;gt; shared=false \
device-config:device=/dev/sdb type=lvm&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 Local LVM SR (lvm)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_local_lvm_sr_lvm&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:142,&amp;quot;secid&amp;quot;:181,&amp;quot;range&amp;quot;:&amp;quot;160688-161031&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit182&quot; id=&quot;local_ext3_vhd&quot;&gt;Local EXT3 VHD&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Хранилище типа &lt;strong&gt;Local EXT3 VHD&lt;/strong&gt; - это набор файлов в формате VHD, хранящихся в каталоге, доступном локально.&lt;br/&gt;

Локальные диски хоста могут быть хранилищем типа EXT3 VHD. &lt;br/&gt;

Локальные хранилища типа EXT3 VHD не могут быть общими в пуле (shared) и, следовательно, хранящиеся на них образы виртуальных машин не могут мигрировать в пуле. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Local EXT3 VHD&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;local_ext3_vhd&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:143,&amp;quot;secid&amp;quot;:182,&amp;quot;range&amp;quot;:&amp;quot;161032-161625&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit183&quot; id=&quot;создание_хранилища_типа_local_ext3_sr_ext&quot;&gt;Создание хранилища типа Local EXT3 SR (ext)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для создания &lt;strong&gt;local ext3 SR&lt;/strong&gt; на устройстве &lt;strong&gt;/dev/sdb&lt;/strong&gt; используется следующая команда:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe sr-create host-uuid=&amp;lt;valid_uuid&amp;gt; content-type=user \
   name-label=&amp;lt;&amp;quot;Example Local EXT3 SR&amp;quot;&amp;gt; shared=false \
   device-config:device=/dev/sdb type=ext&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0442\u0438\u043f\u0430 Local EXT3 SR (ext)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_\u0442\u0438\u043f\u0430_local_ext3_sr_ext&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:143,&amp;quot;secid&amp;quot;:183,&amp;quot;range&amp;quot;:&amp;quot;161626-162006&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit184&quot; id=&quot;хранилище_iso&quot;&gt;Хранилище ISO&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В хранилище типа ISO хранятся образы дисков CD в формате ISO. Этот тип предназначен для создания библиотек образов дисков в формате ISO. Для таких хранилищ параметр &lt;strong&gt;content-type&lt;/strong&gt; должен иметь значение &lt;strong&gt;iso&lt;/strong&gt;.&lt;br/&gt;

Например:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe sr-create host-uuid=&amp;lt;valid_uuid&amp;gt; content-type=iso \
  type=iso name-label=&amp;lt;&amp;quot;Example ISO SR&amp;quot;&amp;gt; \
  device_config:location=&amp;lt;nfs server:path&amp;gt;&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 ISO&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435_iso&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:144,&amp;quot;secid&amp;quot;:184,&amp;quot;range&amp;quot;:&amp;quot;162007-162573&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit185&quot; id=&quot;хранилища_software_iscsi&quot;&gt;Хранилища Software iSCSI&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
XenServer поддерживает хранилища на базе iSCSI LUNs. iSCSI поддерживается с помощью программного open-iSCSI  инициатора, либо с помощью аппаратного адаптера iSCSI Host Bus Adapter (HBA). &lt;br/&gt;

Программный инициатор iSCSI позволяет работать с общим (shared) хранилищем на базе Linux Volume Manager (LVM) и предоставляет такую же производительность и функционал как и хранилище типа Local LVM,  в том числе и “живую” миграцию XenMotion.&lt;br/&gt;

Хранилища iSCSI используют целый LUN, указываемый при создании хранилища и не могут включать в себя больше одного LUN. Для аутентификации поддерживается CHAP (как на этапе data path initialization, так и LUN discovery).&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 Software iSCSI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_software_iscsi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:145,&amp;quot;secid&amp;quot;:185,&amp;quot;range&amp;quot;:&amp;quot;162574-163657&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit186&quot; id=&quot;конфигурирование_хоста_xenserver_для_использования_iscsi&quot;&gt;Конфигурирование хоста XenServer для использования iSCSI&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Все инициаторы и таргеты iSCSI должны иметь уникальные имена. Инициатор и таргет имеют адреса iSCSI - iSCSI Qualified Names или коротко - - IQN.   &lt;br/&gt;

Хост XenServer поддерживает один инициатор iSCSI, автоматически создаваемый при установке хоста, которому дается случайное имя IQN. Этот инициатор может подключаться к нескольким таргетам одновременно. &lt;br/&gt;

Таргеты iSCSI обычно предоставляют доступ данным в соответствии с заданным списком разрешенных инициаторов iSCSI. Таким образом, для того чтобы хост XenServer могу получить доступ к таргету может понадобиться внести имя его инициатора в список доступа. Аналогично, для того чтобы выступать в роли общего хранилища пула, таргет и LUN должны быть настроены соответсвующим образом, предоставляя доступ к LUN для всех iSCSI инициаторов хостов пула. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit187&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table44&amp;quot;,&amp;quot;secid&amp;quot;:187,&amp;quot;range&amp;quot;:&amp;quot;165149-165173&amp;quot;} --&gt;
&lt;p&gt;
Как правило, если iSCSI таргет не поддерживает списков доступа, то он обеспечивает целостность данных путем предоставления доступа к одному LUN только одного инициатора. Для того чтобы таргет мог использоваться как общее хранилище для хостов пула, он должен поддерживать подключение нескольких инициаторов к одному LUN.^&lt;br/&gt;

Значение IQN хоста XenServer может быть переопределено либо с помощью XenCenter, либо командой: &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-param-set uuid=&amp;lt;valid_host_id&amp;gt; other-config:iscsi_iqn=&amp;lt;new_initiator_iqn&amp;gt;&lt;/pre&gt;
&lt;div class=&quot;table sectionedit188&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table45&amp;quot;,&amp;quot;secid&amp;quot;:188,&amp;quot;range&amp;quot;:&amp;quot;166011-166031&amp;quot;} --&gt;
&lt;p&gt;
Имена таргетов и инициаторов iSCSI обязательно должны иметь уникальные IQN. В противном случае LUN может стать недоступен, или возможны повреждения данных.^&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit189&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table46&amp;quot;,&amp;quot;secid&amp;quot;:189,&amp;quot;range&amp;quot;:&amp;quot;166312-166332&amp;quot;} --&gt;
&lt;p&gt;
Нельзя изменять IQN хоста XenServer при подключенных хранилищах iSCSI. Если изменить имя, не отключив хранилище, то могут возникнуть проблемы при доступе к новым, либо уже подключенным хранилищам.^&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0445\u043e\u0441\u0442\u0430 XenServer \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f iSCSI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0445\u043e\u0441\u0442\u0430_xenserver_\u0434\u043b\u044f_\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f_iscsi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:145,&amp;quot;secid&amp;quot;:186,&amp;quot;range&amp;quot;:&amp;quot;163658-166681&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit190&quot; id=&quot;создание_общего_хранилища_iscsi_в_пуле&quot;&gt;Создание общего хранилища iSCSI в пуле&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#id885653&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#id885653&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#id885653&lt;/a&gt;&lt;br/&gt;

Для создания общего хранилища iSCSI в пуле нужно в консоли любого хоста пула выполнить команду:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe sr-create name-label=&amp;lt;name_for_sr&amp;gt; \
    content-type=user device-config-target=&amp;lt;iscsi_server_ip_address&amp;gt; \ 
    device-config-targetIQN=&amp;lt;iscsi_target_iqn&amp;gt; \
    device-config-localIQN=&amp;lt;iscsi_local_iqn&amp;gt; \
    type=lvmoiscsi shared=true device-config-LUNid=&amp;lt;lun_id&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Аргумент &lt;strong&gt;device-config-target&lt;/strong&gt; - это FQDN имя или IP адрес сервера iSCSI. &lt;br/&gt;

Аргумент &lt;strong&gt;device-config-LUNid&lt;/strong&gt; - это список LUN ID (разделенных запятыми). &lt;br/&gt;

Так как аргумент &lt;strong&gt;shared&lt;/strong&gt; имеет значение &lt;strong&gt;true&lt;/strong&gt;, общее хранилище будет добавлено на всех хостах пула и хосты подключатся к хранилищу.&lt;br/&gt;

Команда возвращает UUID созданного хранилища.&lt;br/&gt;

Можно установить это хранилище используемым по-умолчанию в пуле:&lt;br/&gt;

Нужно выяснить UUID пула, с помощью команды &lt;strong&gt;pool-list&lt;/strong&gt;.&lt;br/&gt;

Установить хранилище используемым по-умолчанию в пуле:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe pool-param-set uuid=&amp;lt;pool_uuid&amp;gt; default-SR=&amp;lt;iscsi_shared_sr_uuid&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Теперь все создаваемые виртуальные машины будут размещены на этом хранилище.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u0449\u0435\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 iSCSI \u0432 \u043f\u0443\u043b\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043e\u0431\u0449\u0435\u0433\u043e_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_iscsi_\u0432_\u043f\u0443\u043b\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:146,&amp;quot;secid&amp;quot;:190,&amp;quot;range&amp;quot;:&amp;quot;166682-168394&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit191&quot; id=&quot;хранилища_citrix_storagelink&quot;&gt;Хранилища Citrix StorageLink&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Хранилища Citrix StorageLink (CSL) используют прямой доступ к программным интерфейсам (&lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt;) аппаратных систем хранения, для разгрузки хостов от типичных “тяжелых” задач, таких как создание снэпшотов, клонирование и других. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
CSL поддерживают несколько типов адаптеров, соответствующих &lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt; систем хранения. Сконфигурированный адаптер берет на себя задачи предоставления ресурсов СХД хостам XenServer по их требованию.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Так как хранилища CSL могут работать на базе разных СХД, точный набор поддерживаемых функций зависит от конкретной СХД.  Все хранилища CSL используют модель LUN-per-VDI, то есть каждому виртуальному диску соответствует (VDI) отдельный LUN.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Хранилища CSL могут сосуществовать на одной СХД с хранилищами других типов. В пуле может быть создано несколько хранилищ Citrix StorageLink.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Хранилища CSL поддерживают СХД следующих типов:&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 Citrix StorageLink&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_citrix_storagelink&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:148,&amp;quot;secid&amp;quot;:191,&amp;quot;range&amp;quot;:&amp;quot;168395-169926&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit192&quot; id=&quot;netappibm_n_series&quot;&gt;NetApp/ IBM N Series&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;div class=&quot;table sectionedit193&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table47&amp;quot;,&amp;quot;secid&amp;quot;:193,&amp;quot;range&amp;quot;:&amp;quot;169954-169968&amp;quot;} --&gt;
&lt;p&gt;
При использовании СХД NetApp в качестве хранилища StorageLink, на СХД для хоста XenServer автоматически создаются &lt;strong&gt;Initiator Groups&lt;/strong&gt;. Для этих &lt;strong&gt;Initiator Groups&lt;/strong&gt; в качестве Operating System (&lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;) указан &lt;strong&gt;Linux&lt;/strong&gt;.&lt;br/&gt;

Добавление Initiator Groups вручную с другими типами &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; не рекомендуется. ^&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;NetApp\/ IBM N Series&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;netappibm_n_series&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:148,&amp;quot;secid&amp;quot;:192,&amp;quot;range&amp;quot;:&amp;quot;169927-170406&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit194&quot; id=&quot;dell_equallogic_ps_series&quot;&gt;Dell EqualLogic PS Series&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;div class=&quot;table sectionedit195&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table48&amp;quot;,&amp;quot;secid&amp;quot;:195,&amp;quot;range&amp;quot;:&amp;quot;170439-170453&amp;quot;} --&gt;
&lt;p&gt;
Dell EqualLogic &lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt; использует SNMP для взаимодействия. Требуется поддержка SNMP v3 и следовательно версия firmware v5.0.0 или более новая. Если ваша СХД EqualLogic работает под более старой firmware, то следует обновить firmware до версии v5.0.0. &lt;br/&gt;

После обновления нужно явно сбросить пароль администратора (grpadmin). Это нужно для того, чтобы пароль сконвертировался в ключи ауетнтификации и шифрования SNMPv3. Сбросить пароль можно подключившись к СХД с помощью telnet или ssh и выполнив команду:&lt;br/&gt;

 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;account select grpadmin passwd&lt;/pre&gt;

&lt;p&gt;
Пароль может быть таким же как и был до этого.^&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Dell EqualLogic PS Series&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;dell_equallogic_ps_series&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:148,&amp;quot;secid&amp;quot;:194,&amp;quot;range&amp;quot;:&amp;quot;170407-171414&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit196&quot; id=&quot;изменение_iqn_инициатора_iscsi&quot;&gt;Изменение IQN инициатора iSCSI&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX131761&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX131761&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX131761&lt;/a&gt;&lt;br/&gt;

По-умолчанию, при установке программному инициатору iSCSI назначается случайный IQN. &lt;br/&gt;

Если значение IQN по-умолчанию не устраивает, то следует изменить его.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit197&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table49&amp;quot;,&amp;quot;secid&amp;quot;:197,&amp;quot;range&amp;quot;:&amp;quot;171804-171828&amp;quot;} --&gt;
&lt;p&gt;
Необходимо создать файл &lt;strong&gt;/etc/iscsi/initiatorname.iscsi&lt;/strong&gt;, если его не существует.^ &lt;br/&gt;

Текущее значение IQN инициатора хоста можно найти в XenCenter на вкладке General данного хоста.&lt;br/&gt;

Для определения uuid хоста на до в консоли выполнить команду&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-list&lt;/pre&gt;

&lt;p&gt;
Затем для изменения IQN выполнить команду:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-param-set uuid=&amp;lt;host UUD&amp;gt; other-config:iscsi_iqn=&amp;lt;New IQN&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Дальше следует убедиться, что в файле &lt;strong&gt;/etc/iscsi/initiatorname.iscsi&lt;/strong&gt; указано новое имя IQN.&lt;br/&gt;

Если это не так, то нужно открыть файл в редакторе (например nano) и изменить указанный там IQN вручную. Содержимое файла должно соотвествовать фомату: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;InitiatorName=iqn.yyyy-mm.&amp;lt;reversed domain name&amp;gt;[:identifier]&lt;/pre&gt;

&lt;p&gt;
То есть быть примерно таким:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; InitiatorName=iqn.2001-04.com.redhat:fc6&lt;/pre&gt;

&lt;p&gt;
 &lt;br/&gt;

После этого надо перезапустить службу iSCSI:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;service open-iscsi restart&lt;/pre&gt;

&lt;p&gt;
Удостовериться, что сервис iSCSI запускается автоматически при старте системы:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;chkconfig open-iscsi on
chkconfig --list&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 IQN \u0438\u043d\u0438\u0446\u0438\u0430\u0442\u043e\u0440\u0430 iSCSI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_iqn_\u0438\u043d\u0438\u0446\u0438\u0430\u0442\u043e\u0440\u0430_iscsi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:149,&amp;quot;secid&amp;quot;:196,&amp;quot;range&amp;quot;:&amp;quot;171415-173331&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit198&quot; id=&quot;конфигурирование_хранилища_intellicache&quot;&gt;4.5 - Конфигурирование хранилища Intellicache&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#intellicache&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#intellicache&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/installation.html#intellicache&lt;/a&gt;&lt;br/&gt;

Применение IntelliCache позволяет более эффективно использовать ресурсы инфраструктуры, благодаря комбинации общего и локального хранилищ. В частности - в случаях когда есть много виртуальных машин, использующих один образ операционной системы, применение IntelliCache позволяет снизить нагрузку на СХД и повысить производительность. Благодаря тому что образ ОС кешируется на локальном хранилище, также снижается и сетевой трафик от СХД. &lt;br/&gt;

IntelliCache кеширует данные из основного VDI виртуальной машины на локальном хранилище хоста, на котором работает виртуальная машина. &lt;br/&gt;

Для работы IntelliCache требуется чтобы локальное хранилище поддерживало  Thin Provisioning, то есть выделение требуемого места по требованию. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit199&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table50&amp;quot;,&amp;quot;secid&amp;quot;:199,&amp;quot;range&amp;quot;:&amp;quot;174775-174789&amp;quot;} --&gt;
&lt;p&gt;
Включение Thin Provisioning изменяет тип локального хранилища с LVM на EXT3.^ &lt;br/&gt;

Thin Provisioning позволяет использовать отображать больше места, чем есть на хранилище. Фактическое выделение пространства на хранилище происходит только когда виртуальная машина записывает данные.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit200&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table51&amp;quot;,&amp;quot;secid&amp;quot;:200,&amp;quot;range&amp;quot;:&amp;quot;175271-175291&amp;quot;} --&gt;
&lt;p&gt;
Хранилища использующие Thin Provisioning могут быть переполнены, в результате активной записи данных виртуальными машинами. IntelliCache обрабатывает эту ситуацию автоматически, перенося образы дисков виртуальных машин обратно на общее хранилище. Не рекомендуется на одном хранилище смешивать обычные виртуальные машины и виртуальные машины  поддержкой IntelliCache, так как образы дисков машин IntelliCache могут быстро расти.^&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
IntelliCache можно включить как при установке хоста XenServer, так и вручную с помощью командной строки.&lt;br/&gt;

Citrix рекомендует использовать максимально быстрые устройства в качестве локального хранилища (SSD или RAID). Общее хранилище может быть либо NFS, либо  EXT.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.5 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 Intellicache&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_intellicache&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:155,&amp;quot;secid&amp;quot;:198,&amp;quot;range&amp;quot;:&amp;quot;173332-176490&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit201&quot; id=&quot;включение_intellicache_при_установке&quot;&gt;Включение IntelliCache при установке&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для включения IntelliCache при установке, на стадии &lt;strong&gt;Virtual Machine Storage&lt;/strong&gt; следует выбрать &lt;strong&gt;Enable thin provisioning (Optimized storage for XenDesktop)&lt;/strong&gt;.&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/installer_thin_prov_enable.png&quot; class=&quot;media&quot; title=&quot;installer_thin_prov_enable.png&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/installer_thin_prov_enable.png?w=200&amp;amp;tok=5a7584&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 IntelliCache \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_intellicache_\u043f\u0440\u0438_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:155,&amp;quot;secid&amp;quot;:201,&amp;quot;range&amp;quot;:&amp;quot;176491-176814&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit202&quot; id=&quot;преобразование_существующего_локального_хранилища_в_хранилище_с_поддержкой_thin_provisioning&quot;&gt;Преобразование существующего локального хранилища в хранилище с поддержкой Thin Provisioning&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для того чтобы заменить текущее локальное хранилище LVM на хранилище типа EXT3 с поддержкой Thin Provisioning выполните следующие команды:&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit203&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table52&amp;quot;,&amp;quot;secid&amp;quot;:203,&amp;quot;range&amp;quot;:&amp;quot;177218-177238&amp;quot;} --&gt;
&lt;p&gt;
Выполнение этих команд уничтожит все данные на локальном хранилище.^&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;localsr=`xe sr-list type=lvm host=&amp;lt;hostname&amp;gt; params=uuid --minimal`
    echo localsr=$localsr
    pbd=`xe pbd-list sr-uuid=$localsr params=uuid --minimal`
    echo pbd=$pbd

    xe pbd-unplug uuid=$pbd
    xe pbd-destroy uuid=$pbd
    xe sr-forget uuid=$localsr
    sed -i &amp;quot;s/&amp;#039;lvm&amp;#039;/&amp;#039;ext&amp;#039;/&amp;quot; /etc/firstboot.d/data/default-storage.conf
    rm -f /etc/firstboot.d/state/10-prepare-storage
    rm -f /etc/firstboot.d/state/15-set-default-storage
    service firstboot start
    xe sr-list type=ext&lt;/pre&gt;

&lt;p&gt;
 &lt;br/&gt;

Для того чтобы включить кеширование на локальном хранилище:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;xe host-disable host=&amp;lt;hostname&amp;gt;
    localsr=`xe sr-list type=ext host=&amp;lt;hostname&amp;gt; params=uuid --minimal`
    xe host-enable-local-storage-caching host=&amp;lt;hostname&amp;gt; sr-uuid=$localsr
    xe host-enable host=&amp;lt;hostname&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 Thin Provisioning&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e_\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_\u0432_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435_\u0441_\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439_thin_provisioning&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:155,&amp;quot;secid&amp;quot;:202,&amp;quot;range&amp;quot;:&amp;quot;176815-178222&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit204&quot; id=&quot;варианты_загрузки_виртуальной_машины&quot;&gt;Варианты загрузки виртуальной машины&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Виртуальная машина может быть загружена в двух вариантах:&lt;br/&gt;

&lt;strong&gt;Shared Desktop Mode&lt;/strong&gt; - В этом режиме виртуальная машина НЕ сохраняет сделанные пользователем изменения и всегда загружается в одном и том же состоянии. &lt;br/&gt;

 &lt;br/&gt;

&lt;strong&gt;Private Desktop Mode&lt;/strong&gt; - В этом режиме виртуальная машина сохраняет сделанные пользователем изменения и загружается в том же состоянии, в котором была выключена. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b_\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439_\u043c\u0430\u0448\u0438\u043d\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:157,&amp;quot;secid&amp;quot;:204,&amp;quot;range&amp;quot;:&amp;quot;178223-178962&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit205&quot; id=&quot;параметры_управляющие_кешированием_виртуальных_машин&quot;&gt;Параметры, управляющие кешированием виртуальных машин&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Параметр VDI &lt;strong&gt;allow-caching&lt;/strong&gt; задает режим кеширования:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Shared Desktop Mode&lt;/strong&gt; - параметр &lt;strong&gt;on-boot&lt;/strong&gt; имеет значение &lt;strong&gt;reset&lt;/strong&gt;, а флаг &lt;strong&gt;allow-caching&lt;/strong&gt; установлен в значение &lt;strong&gt;true&lt;/strong&gt;. Новые данные, генерируемые во время работы, будут записываться только на локальном хранилище. Таким образом, нагрузка на общее хранилище будет существенно снижена. В этом режиме машина НЕ сможет мигрировать между хостами.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Private Desktop Mode&lt;/strong&gt; - параметр &lt;strong&gt;on-boot&lt;/strong&gt; имеет значение &lt;strong&gt;persist&lt;/strong&gt;, а флаг &lt;strong&gt;allow-caching&lt;/strong&gt; установлен в значение &lt;strong&gt;true&lt;/strong&gt;. Новые данные, генерируемые во время работы, будут записываться и на локальное и на общее хранилище. Таким образом, нагрузка на общее хранилище снижается только при чтении данных. В этом режиме машина сможет мигрировать между хостами.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0435 \u043a\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b_\u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0435_\u043a\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c_\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445_\u043c\u0430\u0448\u0438\u043d&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:157,&amp;quot;secid&amp;quot;:205,&amp;quot;range&amp;quot;:&amp;quot;178963-180355&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit206&quot; id=&quot;конфигурирование_dmp_и_mpp_multipathing&quot;&gt;4.6 - Конфигурирование DMP и MPP multipathing&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX129309&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX129309&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX129309&lt;/a&gt;&lt;br/&gt;

Протокол iSCSI не приспособлен к обработке отказов оборудования и не поддерживает обработку отключения соединения или повторную отправку пакетов. Таким образом, крайне важно обеспечить максимальную надежность подключения хостов XenServer к СХД.&lt;br/&gt;

&lt;strong&gt;Multipathing&lt;/strong&gt; - это механизм, позволяющий подключить СХД к хосту или пулу XenServer с помощью двух адаптеров одновременно. Таким образом обеспечивается повышение отказоустойсивости подключения (защита от выхода из строя аппаратных компонент), а также увеличение производительности. &lt;br/&gt;

В отличие от механизма объединения адаптеров (NIC bonding), который обеспечивает только избыточность, &lt;strong&gt;multipathing&lt;/strong&gt; работает в режиме active-active, что позволяет не только повысить надежность, но и увеличить производительность. &lt;br/&gt;

Citrix рекомендует всегда вместо объединения адаптеров (NIC bonding) использовать &lt;strong&gt;multipathing&lt;/strong&gt; и никогда не смешивать их в одной конфигурации. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Multipathing&lt;/strong&gt; поддерживается при работе с хранилищами NFS и iSCSI. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При конфигурировании &lt;strong&gt;Multipathing&lt;/strong&gt; следует учитывать следующее:&lt;br/&gt;

 - Тип &lt;strong&gt;Multipathing&lt;/strong&gt;, поддерживаемый СХД&lt;br/&gt;

 - Количество  IQN, предоставляемых СХД - один или много.&lt;br/&gt;

При включении &lt;strong&gt;Multipathing&lt;/strong&gt; в пуле следует его сконфигурировать на всех хостах.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit207&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;Совет: Узнать включен ли multipathing на хосте можно выбрав в XenCenter хост, на вкладке Multipathing.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table53&amp;quot;,&amp;quot;secid&amp;quot;:207,&amp;quot;range&amp;quot;:&amp;quot;182600-182758&amp;quot;} --&gt;
&lt;p&gt;
Multipathing создает несколько подключений между хостом и хранилищем. Эти подключения называются пути (paths). &lt;br/&gt;

XenServer поддерживает обработчик &lt;strong&gt;DM-MP multipath handler&lt;/strong&gt;. Основная задача &lt;strong&gt;DM-MP handler&lt;/strong&gt; - представление в системе одного устройства хранения для каждого LUN ( которому установлено несколько подключений),  а не множества устройств на каждое подключение (path). То есть DM-MP объединяет множество подключений к одному LUN в единое устройство хранения в системе. Без DM-MP Linux создает по одному устройству на каждый path. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для подключения хоста XenServer к СХД должо быть установлено соединение между инициатором (клиентом) iSCSI и таргетом (сервером). Инициатор XenServer делает запрос к таргету СХД и ждет ответа о готовности со списком доступных IQN. Затем XenServer подключается к нужному IQN.&lt;br/&gt;

Установленное соединение между хостом XenServer и таргетом остается активным и должно быть установлено повтороно только в случае перезагрузки хоста. После конфигурирования &lt;strong&gt;multipath&lt;/strong&gt; XenServer может создавать два (и более) подключения к СХД - по одному на каждое физичекое подключение (link).&lt;br/&gt;

Получив список IQN, который включает в себя серийные номера LUN, обработчик Multipath сравнивает серийные номера LUN на разных подключениях и определяет, являются ли обнаруженные LUN несколькими разными LUN, либо это один LUN и к нему установлено несколько подключений, а также определяет количество подключений установленных к одному LUN.&lt;br/&gt;

При создании хранилища (storage repository) с влюченным multipath, а именно - при создании Physical Block Device (PBD), XenServer добавляет параметр &lt;strong&gt;multihome&lt;/strong&gt;, который указывает на то что логическое устройство связано с СХД несколькими подключениями. &lt;br/&gt;

Если в конфигурации XenServer не указано, что устройство хранения &lt;strong&gt;multihomed&lt;/strong&gt; (например -  multipath не был включен в момент создания PBD или хранилища (storage repository)), то XenServer сможет устанавливать к этому LUN только одно подключение. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
При подключении к СХД с интерфейсом iSCSI лучше всего создавать конфигурацию &lt;strong&gt;multipath&lt;/strong&gt; сразу. Хотя, если хранилище было создано при отключенном &lt;strong&gt;multipath&lt;/strong&gt;, то можно перевести хост в режим обслуживания (maintenance mode) и сконфигурировать multipathing. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit208&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table54&amp;quot;,&amp;quot;secid&amp;quot;:208,&amp;quot;range&amp;quot;:&amp;quot;186470-186490&amp;quot;} --&gt;
&lt;p&gt;
Для СХД с интерфейсом Fibre Channel, Citrix настойчиво рекомендует конфигурировать multipath и ставить флажок &lt;strong&gt;multipathing&lt;/strong&gt; в XenCenter перед созданием хранилища (storage repository).&lt;br/&gt;

Для всех типов СХД рекомендуется планировать и конфигурировать подключения к массивам дисков заранее, до запуска пула в работу. Настройка multipathing после запуска пула в работу приведет к остановкам - настройка multipath повлияет на все виртуальные машины, размещенные на хранилище. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit209&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table55&amp;quot;,&amp;quot;secid&amp;quot;:209,&amp;quot;range&amp;quot;:&amp;quot;187280-187283&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.6 - \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 DMP \u0438 MPP multipathing&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_dmp_\u0438_mpp_multipathing&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:157,&amp;quot;secid&amp;quot;:206,&amp;quot;range&amp;quot;:&amp;quot;180356-187284&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit210&quot; id=&quot;поддержка_обработчиков_multipath&quot;&gt;Поддержка обработчиков Multipath&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
XenServer поддерживает два обработчика multipath - &lt;strong&gt;Device Mapper Multipathing (DM-MP)&lt;/strong&gt; и &lt;strong&gt;Multipathing Proxy Redundant Disk Array Controller (MPP RDAC)&lt;/strong&gt;. Кроме того, поддерживается и сочетание &lt;strong&gt;DMP RDAC&lt;/strong&gt;.&lt;br/&gt;

По-умолчанию &lt;strong&gt;XenServer&lt;/strong&gt; использует встроенный в Linux multipath -  &lt;strong&gt;DM-MP&lt;/strong&gt;. При этом, XenServer поддерживает различные расширения этого обработчика и может использовать различные функции, сецифичные для СХД разных производителей (vendor-specific features). Типичные примеры СХД с поддержкой режима портала (portal mode) - это многие СХД NetApp, HP Storage Works Modular Smart Array (MSA) и HP Storage Works Enterprise Virtual Array (EVA).&lt;br/&gt;

Для работы с СХД производства LSI XenServer поддерживает &lt;strong&gt;LSI Multi-Path Proxy Driver (MPP)&lt;/strong&gt; для &lt;strong&gt;Redundant Disk Array Controller (RDAC)&lt;/strong&gt;. &lt;strong&gt;MPP RDAC&lt;/strong&gt; работает иначе, чем &lt;strong&gt;DMP&lt;/strong&gt; и требует некоторых подготовительных действий, выполненных в правильной последовательности. Начиная с &lt;strong&gt;XenServer 5.6 Feature Pack 1&lt;/strong&gt;, XenServer имеет специальную команду интерфейса CLI, которая включает поддержку &lt;strong&gt;MPP RDAC&lt;/strong&gt; и выполняет нужную последовательность действий в правильном порядке. Типичным примером СХД &lt;strong&gt;MPP RDAC&lt;/strong&gt; является серии СХД &lt;strong&gt;Dell MD3000-series&lt;/strong&gt;, &lt;strong&gt;IBM DS4000&lt;/strong&gt; и другие, указанные в статье &lt;strong&gt;CTX122824&lt;/strong&gt;.&lt;br/&gt;

За дополнительными сведениями о поддерживаемых алгоритмах &lt;strong&gt;multipath&lt;/strong&gt; Citrix рекомендует обращаться к документации, поставляемой с СХД. При возникновении разногласий следует учесть, что СХД на базе LSI как правило лучше всего работают с &lt;strong&gt;MPP RDAC&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 Multipath&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430_\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432_multipath&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:157,&amp;quot;secid&amp;quot;:210,&amp;quot;range&amp;quot;:&amp;quot;187285-189655&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit211&quot; id=&quot;правильная_настройка_физических_подключений_и_подсети&quot;&gt;Правильная настройка физических подключений и подсети&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Самым правильным решением, для обеспечения отказоустойчивости, является использование двух коммутаторов. Однако, в случае если два коммутатора не используются, то следует логически разделить пути (paths), то есть назначить каждому сетевому адаптеру СХД (NIC) свою подсеть и соотвествующим образом настроить адаптеры хостов XenServer. И, разумеется, правильно настроить параметры TCP/IP.&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/multipath_subnets.jpg&quot; class=&quot;media&quot; title=&quot;multipath_subnets.jpg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/multipath_subnets.jpg?w=200&amp;amp;tok=60f47a&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

После правильного физического подключения можно включить или выключить поддержку &lt;strong&gt;multipathing&lt;/strong&gt; в XenCenter на вкладке хоста  &lt;strong&gt;Multipathing&lt;/strong&gt;. Это проще сделать, когда хранилище (storage repository) еще не создано. Вцелом процесс включения &lt;strong&gt;multipathing&lt;/strong&gt; требует выполнения ряда задач, приведенных далее. &lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit212&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО! не следует использовать основной интерфейс управления хостом XenServer для передачи трафика iSCSI&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table56&amp;quot;,&amp;quot;secid&amp;quot;:212,&amp;quot;range&amp;quot;:&amp;quot;191002-191187&amp;quot;} --&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u0438 \u043f\u043e\u0434\u0441\u0435\u0442\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f_\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0445_\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439_\u0438_\u043f\u043e\u0434\u0441\u0435\u0442\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:157,&amp;quot;secid&amp;quot;:211,&amp;quot;range&amp;quot;:&amp;quot;189656-191188&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit213&quot; id=&quot;настройка_программного_инициатора_iscsi_для_поддержки_multipathing&quot;&gt;Настройка программного инициатора iSCSI для поддержки Multipathing&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;div class=&quot;table sectionedit214&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО! Citrix рекомендует либо включать &lt;strong&gt;multipathing&lt;/strong&gt; с помощю XenCenter перед подключением пула к СХД, либо (если хранилище XenServer уже создано) переводить хост в &lt;strong&gt;Maintenance Mode&lt;/strong&gt; перед включением &lt;strong&gt;multipathing&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table57&amp;quot;,&amp;quot;secid&amp;quot;:214,&amp;quot;range&amp;quot;:&amp;quot;191307-191652&amp;quot;} --&gt;
&lt;p&gt;
Если multipathing включен когда хост подключен к хранилищу (storage repository), то XenServer может не суметь правильно сконфигурировать multipathing. Если хранилище (storage repository) уже создано и нужно сконфигурировать multipathing, то сначала следует перевести все хосты пула в режим &lt;strong&gt;Maintenance Mode&lt;/strong&gt;, а затем сконфигурировать multipathing на всех хостах пула. Это гарантирует, что данные всех работающих виртуальных машин мигрируют, перед применением изменений.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Приведенная ниже инструкция предполагает использование XenCenter.&lt;br/&gt;

Настройка программного инициатора iSCSI с использованием multipathing: &lt;br/&gt;

1.	Создайте избыточные (резервные) физические подключения и настройте параметры подсетей TCP/IP. Убедитесь, что созданы подсети как для адаптеров хостов XenServer, так и для адаптеров СХД и адаптеры подключены правильно. &lt;br/&gt;

2.	В соотвествии с рекомендациями производителя СХД сконфигурируйте СХД и создайте LUN с поддержкой multipathing.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit215&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ВАЖНО! следите за тем, чтобы все IQN (и таргетов и инициаторов) были уникальны! В случае наличия в сети одинаковых IQN возможно повреждение данных, а также нарушение доступа к iSCSI таргету. &lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table58&amp;quot;,&amp;quot;secid&amp;quot;:215,&amp;quot;range&amp;quot;:&amp;quot;193249-193587&amp;quot;} --&gt;
&lt;p&gt;
3.	Убедитесь, что порты таргета iSCSI работают в режиме портала (portal mode):&lt;br/&gt;

В XenCenter, запустите мастер &lt;strong&gt;New Storage Repository&lt;/strong&gt; (Storage menu &amp;gt; New Storage Repository).&lt;br/&gt;

i.     На странице мастера &lt;strong&gt;Enter a name and path for the new iSCSI storage&lt;/strong&gt; кликните &lt;strong&gt;Discover IQNs&lt;/strong&gt;. XenServer запросит у таргета список IQN.&lt;br/&gt;

ii.     Проверьте, что список &lt;strong&gt;Target IQN&lt;/strong&gt; на странице &lt;strong&gt;Location&lt;/strong&gt;. Если порты таргета iSCSI работают в режиме портала (portal mode), то все IP таргета должны показаться на странице &lt;strong&gt;Location&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
4.	Включите обработчик multipath одним из способов:&lt;br/&gt;

•   В случае MPP RDAC, включите multipathing в XenCenter (то есть выберите &lt;strong&gt;Enable multipathing&lt;/strong&gt; на сервере на вкладке Multipathing), дополнительную информацию о работе СХД LSI смотрите раздел “Enabling MPP RDAC Handler Support for LSI Arrays”.&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;table sectionedit216&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt;ПРИМЕЧАНИЕ: Citrix рекомендует обратиться к документации СХД для выбора оптимального обработчика multipath. СХД LSI обычно лучше работают с &lt;strong&gt;MPP RDAC&lt;/strong&gt;.&lt;/th&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table59&amp;quot;,&amp;quot;secid&amp;quot;:216,&amp;quot;range&amp;quot;:&amp;quot;194768-195027&amp;quot;} --&gt;
&lt;p&gt;
•   При использовании &lt;strong&gt;DMP&lt;/strong&gt;, то есть выберите &lt;strong&gt;Enable multipathing&lt;/strong&gt; на сервере на вкладке Multipathing в свойствах хоста. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u0438\u043d\u0438\u0446\u0438\u0430\u0442\u043e\u0440\u0430 iSCSI \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 Multipathing&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e_\u0438\u043d\u0438\u0446\u0438\u0430\u0442\u043e\u0440\u0430_iscsi_\u0434\u043b\u044f_\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438_multipathing&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:157,&amp;quot;secid&amp;quot;:213,&amp;quot;range&amp;quot;:&amp;quot;191189-195222&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit217&quot; id=&quot;включение_обработчика_mpp_rdac_для_схд_lsi&quot;&gt;Включение обработчика &amp;#039;&amp;#039;&amp;#039;MPP RDAC&amp;#039;&amp;#039;&amp;#039; для СХД LSI&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для включения поддержки &lt;strong&gt;MPP RDAC&lt;/strong&gt; нужно выполнить приведенную ниже процедуру на всех хостах пула:&lt;br/&gt;

1.	В консоли хоста выполните следующую команду:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# /opt/xensource/libexec/mpp-rdac --enable&lt;/pre&gt;

&lt;p&gt;
2.	Перезагрузите хост.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 &amp;#039;&amp;#039;&amp;#039;MPP RDAC&amp;#039;&amp;#039;&amp;#039; \u0434\u043b\u044f \u0421\u0425\u0414 LSI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430_mpp_rdac_\u0434\u043b\u044f_\u0441\u0445\u0434_lsi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:157,&amp;quot;secid&amp;quot;:217,&amp;quot;range&amp;quot;:&amp;quot;195223-195669&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit218&quot; id=&quot;создание_хранилища_storage_repository_после_включения_multipathing&quot;&gt;Создание хранилища (Storage Repository) после включения Multipathing&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Лучше всего создавать хранилище (storage repository) после конфигурирования multipathing на всех хостах пула. При создании хранилища на хостах с включенным multipathing нужно указать правильное количество IQN таргета, возвращаемое СХД. &lt;br/&gt;

При создании хранилища нужно указать IQN таргета, то есть адреса, указывающего на нужное устройство iSCSI, однако в ответ на запрос СХД может возвращать несколько IQN, в зависимости от конфигурации СХД. &lt;br/&gt;

После включения &lt;strong&gt;multipathing&lt;/strong&gt; оба пути (paths) должны указывать на один и тот же LUN, а таргет должен возвращать единственный IQN. Однако, некоторые СХД даже после включения multipath возвращают разные IQN (одного и того же LUN) на разных подключениях. &lt;br/&gt;

Вид IQN-ов в мастере &lt;strong&gt;Storage Repository&lt;/strong&gt; может несколько удивить, так как там отображаются некоторые дополнительные сведения. В отличие от вывода консольной команды &lt;strong&gt;xe sr-probe&lt;/strong&gt;, в XenCenter отображаются IP-адреса сетевых адаптеров контролера СХД, а такде номер порта, хост и имя СХД. &lt;br/&gt;

Если СХД возвращает один или несколько IQN, то в XenCenter будет отображаться примерно следующее:&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/iqn.jpg&quot; class=&quot;media&quot; title=&quot;iqn.jpg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/iqn.jpg?w=200&amp;amp;tok=cc7722&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

Первая часть IQN - указывает на тип, дату создания и имя. ВТорая часть - задается производителем СХД. Третья - IP адрес контроллера СХД и порт.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Некоторые СХД, например DataCore и StarWind имеют возмжность возвращать несколько  IQN (multi-IQN feature). Для работы с данным типом СХД следует указывать IP-адреса всех таргетов в поле &lt;strong&gt;Target Host&lt;/strong&gt; на странице мастера &lt;strong&gt;Location&lt;/strong&gt;. и разделять IP-адреса запятыми. После ввода адресов и нажатия на кнопку &lt;strong&gt;Discover IQNs&lt;/strong&gt;, XenCenter покажет несколько IQN-ов с разными именами. &lt;br/&gt;

Для СХД, возвращающих несколько IQN, при создании хранилища следует выбирать опцию &lt;strong&gt;Wildcard Masking (*)&lt;/strong&gt; в XenCenter, которая обозначается звездочкой (*) в начале поля &lt;strong&gt;Target IQN&lt;/strong&gt; как показано ниже:&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/targetiqns.jpg&quot; class=&quot;media&quot; title=&quot;targetiqns.jpg&quot;&gt;&lt;img src=&quot;https://wiki.autosys.tk/_media/targetiqns.jpg?w=200&amp;amp;tok=e15426&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для создания хранилища после включения multipathing:&lt;br/&gt;

1.	В XenCenter создайте новое хранилище (storage repository) с помощью мастера &lt;strong&gt;New Storage Repository&lt;/strong&gt;.&lt;br/&gt;

2.	На этапе ввода параметров iSCSI (Enter a name and path for the new iSCSI storage) заполните поля до этапа &lt;strong&gt;Discover IQNs&lt;/strong&gt;.&lt;br/&gt;

3.	Кликните &lt;strong&gt;Discover IQNs&lt;/strong&gt;. XenServer получит от СХД список IQN-ов. Затем:&lt;br/&gt;

•	Если возвращается только одно (одинаковое) значение IQN, то выберите нужный LUN и сконфигурируйте его. &lt;br/&gt;

•	Если возвращается много IQN-ов, то выберите опцию (*) из списка &lt;strong&gt;Target IQN&lt;/strong&gt;.&lt;br/&gt;

4.	Finish creating the storage repository and exit the wizard.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 (Storage Repository) \u043f\u043e\u0441\u043b\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f Multipathing&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430_storage_repository_\u043f\u043e\u0441\u043b\u0435_\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f_multipathing&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:158,&amp;quot;secid&amp;quot;:218,&amp;quot;range&amp;quot;:&amp;quot;195670-199786&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit219&quot; id=&quot;создание_сети_и_назначение_vlan&quot;&gt;4.7 - Создание сети и назначение VLAN&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Source: Citrix XenServer Design: Designing XenServer Network Configurations,&lt;br/&gt;

Pages 30 - 32&lt;br/&gt;

&lt;a href=&quot;http://support.citrix.com/article/CTX129320&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX129320&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX129320&lt;/a&gt;&lt;br/&gt;

Source: Citrix XenServer 6.0 Administrator’s Guide&lt;br/&gt;

&lt;a href=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#network&quot; class=&quot;urlextern&quot; title=&quot;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#network&quot; rel=&quot;ugc nofollow&quot;&gt;http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/reference.html#network&lt;/a&gt;&lt;br/&gt;

ing-standalone_host_config-vlans&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.7 - \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0438 \u0438 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 VLAN&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0441\u0435\u0442\u0438_\u0438_\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435_vlan&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:158,&amp;quot;secid&amp;quot;:219,&amp;quot;range&amp;quot;:&amp;quot;199787-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>setup_centos_workstation_with_ansible_playbook</title>
            <link>https://wiki.autosys.tk/linux_faq/setup_centos_workstation_with_ansible_playbook</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;задача&quot;&gt;Задача&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Мне нужно создать &lt;strong&gt;playbook&lt;/strong&gt; для &lt;strong&gt;ansible&lt;/strong&gt;, который будет настраивать систему на базе клона &lt;strong&gt;CentOS&lt;/strong&gt; (&lt;strong&gt;ОСь&lt;/strong&gt; от &lt;strong&gt;НЦИ&lt;/strong&gt; - &lt;a href=&quot;http://www.os-rt.ru/&quot; class=&quot;urlextern&quot; title=&quot;http://www.os-rt.ru/&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.os-rt.ru/&lt;/a&gt; ). &lt;br/&gt;

А именно: устанавливать необходимые пакеты, настраивать систему для авторизации средствами &lt;strong&gt;AD&lt;/strong&gt;, настраивать &lt;strong&gt;autodiscovery&lt;/strong&gt; для почтового клиента &lt;strong&gt;evolution&lt;/strong&gt; для работы с &lt;strong&gt;MS Exchange&lt;/strong&gt; и производить мелкий тюнинг системы. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-637&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;playbook&quot;&gt;PlayBook&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;---
- hosts: nci-os
  vars:
    hostname: szud-os1
    domain_name: sigma.sbrf.ru
    dns_servers:
      - 10.21.7.212
      - 10.21.7.213
#      - 192.168.122.1
#      - 4.2.2.4
    domain_search: &amp;quot;{{ domain_name }} sberbank.ru&amp;quot;
    ca_cert_prefix: SberBank_Root_CA
    domain_controllers: &amp;quot;{{ dns_servers }}&amp;quot;
  remote_user: root
  tasks:

#### Setup Network Settings ####
  - name: setting DNS
    shell: |
      nmcli con mod {{ ansible_default_ipv4.interface }} ipv4.dns-search &amp;quot;{{ domain_search }}&amp;quot;
      nmcli con mod {{ ansible_default_ipv4.interface }} ipv4.dns &amp;quot;{{ dns_servers | join(&amp;#039; &amp;#039;) }}&amp;quot;
      nmcli con down {{ ansible_default_ipv4.interface }}
      nmcli con up {{ ansible_default_ipv4.interface }}

  - name: Disable IPv6
    sysctl:
      name: net.ipv6.conf.{{ item }}.disable_ipv6
      value: 1
      sysctl_set: yes
      state: present
      reload: yes
    with_items:
    - all
    - default
    - lo
    - &amp;quot;{{ ansible_default_ipv4.interface }}&amp;quot;
    
  - name: Set hostname
    shell: |
      sysctl kernel.hostname=&amp;quot;{{ hostname }}&amp;quot;
      sysctl -p
      hostnamectl set-hostname &amp;quot;{{ hostname }}&amp;quot; ##.&amp;quot;{{ domain_name }}&amp;quot;
      sed -i &amp;#039;/^127./D&amp;#039; /etc/hosts
  - lineinfile:
      name: /etc/hosts 
      regexp: &amp;#039;^127\.0\.0\.1&amp;#039;
      line: &amp;#039;127.0.0.1 {{ hostname }}.{{ domain_name }} {{ hostname }} localhost.localdomain localhost&amp;#039;
  - lineinfile:
      name: /etc/hosts
      regexp: &amp;#039;/^::1/D&amp;#039;
      state: absent
  - name: restart NetworkManager service
    service: name=NetworkManager state=restarted

#### Import IronPort Certificates ####
  - name: Import Certificates
    shell: |
      update-ca-trust force-enable
      echo &amp;quot;Trying to reach ya.ru...&amp;quot;
      ping -c 5 ya.ru &amp;amp;&amp;gt; /dev/null &amp;amp;&amp;amp; openssl s_client -showcerts -connect ya.ru:443 &amp;lt;/dev/null &amp;gt; chain.pem || exit
      csplit -k -f &amp;quot;{{ ca_cert_prefix }}&amp;quot; ./chain.pem &amp;#039;/END CERTIFICATE/+1&amp;#039; {10}
      find ./ -iname &amp;quot;{{ ca_cert_prefix }}&amp;quot;\* -type f -exec grep -F -L &amp;#039;END CERTIFICATE&amp;#039; &amp;#039;{}&amp;#039; + | xargs -d &amp;#039;\n&amp;#039; rm
      for file in &amp;quot;{{ ca_cert_prefix }}&amp;quot;* ; do sudo mv &amp;quot;$file&amp;quot; /etc/pki/ca-trust/source/anchors/&amp;quot;$file&amp;quot;.pem ; done
      for file in /etc/pki/ca-trust/source/anchors/&amp;quot;{{ ca_cert_prefix }}&amp;quot;* ; do sudo cp &amp;quot;$file&amp;quot; /etc/ssl/certs/ ; done
      update-ca-trust extract
      rm -f ./chain.pem
      exit 0

####  Setup Software ####
  - name: upgrade all packages
    yum:
      name: &amp;#039;*&amp;#039;
      state: latest

  - name: install packages
    yum: state=present name={{ item }}
    with_items:
    - nano
    - curl
    - openssl
    - nss-tools
    - chrony
    - authconfig
    - krb5-workstation
    - samba
    - samba-client
    - samba-winbind
    - samba-winbind-clients
    - pam_krb5
    - oddjob-mkhomedir
    - cyrus-sasl-gssapi
    - cyrus-sasl-ntlm
    - openldap-clients
    - cifs-utils
    - aspell
    - evolution
    - evolution-ews
    - desktop-file-utils
    - xorg-x11-server-Xvfb
    - &amp;quot;@Development tools&amp;quot;
    - glibc.i686
    - http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm
    - java-1.8.0-openjdk
  - name: install flash-plugin
    yum:
      name: flash-plugin
      state: present

#### Setup Chrony NTP Client ####
  - lineinfile:
      name: /etc/chrony.conf
      regexp: &amp;quot;{{ item.regexp }}&amp;quot;
      state: absent
    with_items:
      - { regexp: &amp;#039;^pool.*&amp;#039; }
      - { regexp: &amp;#039;^server.*&amp;#039; }
  - lineinfile:
      name: /etc/chrony.conf
      line: &amp;#039;server {{ item }} iburst&amp;#039;
    with_items: &amp;quot;{{ domain_controllers }}&amp;quot;
  - service:
      name: chronyd
      state: restarted
      
#### Setup Kerberos and Samba ####
  - name: run Authconfig
    shell: |
      DEFAULT_REALM=&amp;quot;{{ domain_name | upper }}&amp;quot;
      DOMAIN_CONTROLLERS=&amp;quot;$(host -t srv _ldap._tcp.&amp;quot;{{ domain_name }}&amp;quot; | awk {&amp;#039;print $8&amp;#039;} | sed &amp;#039;s/.$//g&amp;#039;)&amp;quot;
      NEW_DOMAINNAME=&amp;quot;{{ domain_name }}&amp;quot;
      mv /etc/krb5.conf /etc/krb5.conf_&amp;quot;$(date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;)&amp;quot;
      touch /etc/krb5.conf
      authconfig --disablecache --disablesssd --disablesssdauth --enablewinbind --enablewinbindauth \
      --smbsecurity=ads --smbworkgroup=$DEFAULT_REALM --smbrealm=$DEFAULT_REALM --enablewinbindusedefaultdomain \
      --winbindtemplatehomedir=/home/%U --winbindtemplateshell=/bin/bash --enablekrb5 --krb5realm=$DEFAULT_REALM \
      --disablekrb5realmdns --enablekrb5kdcdns --enablelocauthorize --enablemkhomedir --enablepamaccess --updateall
      
      LIBDEFAULTS=&amp;quot;$(cat &amp;lt;&amp;lt;EOF
      [libdefaults]
      dns_lookup_kdc = true
      dns_lookup_realm = false
      default_realm = $DEFAULT_REALM
      clockskew = 300
      default_ccache_name = FILE:/tmp/krb5cc_%{uid}
      EOF
      )&amp;quot;

      REALMS_KDC=&amp;quot;$(for kdc in $DOMAIN_CONTROLLERS; do echo &amp;quot;kdc = $kdc&amp;quot;;done)&amp;quot;
      REALMS=&amp;quot;$(cat &amp;lt;&amp;lt;EOF

      [realms]
      $DEFAULT_REALM = {
      $REALMS_KDC
      default_domain = $DEFAULT_REALM
      }
      EOF
      )&amp;quot;
      DOMAIN_REALM=&amp;quot;$(cat &amp;lt;&amp;lt;EOF

      [domain_realm]
      .$NEW_DOMAINNAME = $DEFAULT_REALM
      $NEW_DOMAINNAME = $DEFAULT_REALM

      [appdefaults]
      pam = {
      ticket_lifetime = 1d
      renew_lifetime = 1d
      forwardable = true
      proxiable = false
      minimum_uid = 1
      }
      EOF
      )&amp;quot;
      echo &amp;quot;$LIBDEFAULTS&amp;quot; &amp;gt; /etc/krb5.conf
      echo &amp;quot;$REALMS&amp;quot; &amp;gt;&amp;gt; /etc/krb5.conf
      echo &amp;quot;$DOMAIN_REALM&amp;quot; &amp;gt;&amp;gt; /etc/krb5.conf

  - name: Setup Samba config
    shell: |
      mv /etc/samba/smb.conf /etc/samba/smb.conf.bak_&amp;quot;$(date +&amp;quot;%d.%m.%y_%H-%M&amp;quot;)&amp;quot;
      SMBCONF=&amp;quot;$(cat &amp;lt;&amp;lt;EOF
      [global]
        workgroup = {{ domain_name.split(&amp;#039;.&amp;#039;)[0] | upper }}
        passdb backend = tdbsam
        map to guest = Bad User
        include = /etc/samba/dhcp.conf
        usershare allow guests = No
        idmap gid = 10000-20000
        idmap uid = 10000-20000
        realm = {{ domain_name | upper }}
        security = ADS
        template homedir = /home/%D/%U
        template shell = /bin/bash
        usershare max shares = 100
        encrypt passwords = yes
        kerberos method = secrets and keytab
        winbind nested groups = yes
        winbind offline logon = no
        winbind refresh tickets = yes
        winbind use default domain = yes
        dns proxy = no
        domain master = no
        local master = no
        preferred master = no
        load printers = no
        show add printer wizard = no
        printcap name = /dev/null
        disable spoolss = yes
        client use spnego = yes
        client ntlmv2 auth = yes
      EOF
      )&amp;quot;
      echo &amp;quot;$SMBCONF&amp;quot; &amp;gt; /etc/samba/smb.conf
  - lineinfile:
      name: /etc/security/pam_winbind.conf
      regexp: &amp;#039;^.*krb5_auth&amp;#039;
      line: &amp;#039;krb5_auth = yes&amp;#039;
      
#### Install CitrixVDA ####
  - name: Add Base CentOS repository
    yum_repository:
      name: base_centos
      file: CentOS_Base
      description: Base CentOS repository
#      baseurl: http://mirrorlist.centos.org/?release=7&amp;amp;arch=x86_64&amp;amp;repo=os&amp;amp;infra=stock
#      baseurl: http://ftp.nsc.ru/pub/centos/7/os/x86_64/ 
      baseurl: http://mirror.yandex.ru/centos/7.3.1611/os/x86_64/ 
      gpgcheck: no
  - name: Install PostgreSQL
    yum: state=present name={{ item }}
    with_items:
    - postgresql-server
    - postgresql-jdbc
    - java-1.8.0-openjdk
    - open-vm-tools
  - shell: |
      postgresql-setup initdb
      systemctl start postgresql
      systemctl enable postgresql

  - name: Install VDA
#    yum: state=present name=http://szud-linux-repo.sigma.sbrf.ru/XenDesktopVDA-7.13.0.382-1.el7_2.x86_64.rpm
#    yum: state=present name=http://10.38.246.21/XenDesktopVDA-7.13.0.382-1.el7_2.x86_64.rpm
    yum: state=present name=http://10.38.246.21/XenDesktopVDA-7.14.0.400-1.el7_2.x86_64.rpm
  - name: Remove CentOS Base Repo
    yum_repository: name=base_centos state=absent
    notify: yum-clean-metadata

  - name: Setup Evolution
    file:
      path: /usr/bin/ews_autodiscovery.sh
      state: absent
    ignore_errors: yes
  - blockinfile:
      path: /usr/bin/ews_autodiscovery.sh
      create: yes
      mode: 0755
      block: |
        #!/bin/bash
        export GIO_USE_NETWORK_MONITOR=base
        DOMAINNAME=`hostname -d`
        ##################################################
        ### Check if Evolution EWS source file exist
        ##################################################
        if [ -f ~/.config/evolution/sources/ews.$USER.$DOMAINNAME.1.source ]; then
        echo
        else
        ##########################################
        ## Check if connected to AD
        ##########################################
        if ! wbinfo -P; then
        echo &amp;quot;NETLOGON test failed&amp;quot; &amp;gt;&amp;gt; ~/.ews_setup.log
        else
        echo &amp;quot;NETLOGON test OK&amp;quot; &amp;gt;&amp;gt; ~/.ews_setup.log
        CURRENT_DC=`wbinfo -P | awk &amp;#039;{print $9}&amp;#039; | awk -F &amp;quot;\&amp;quot;&amp;quot; &amp;#039;{print $2}&amp;#039;`
        FULL_NAME=`wbinfo -i $USER | awk -F &amp;quot;:&amp;quot; &amp;#039;{print $5}&amp;#039;`
        BASEDN=`echo $CURRENT_DC | sed s/&amp;quot;\.&amp;quot;/,dc=/g | sed -r &amp;#039;s!^[^dc=]+!!&amp;#039;`
        MAIL=`ldapsearch -h $CURRENT_DC -b &amp;quot;$BASEDN&amp;quot; &amp;quot;sAMAccountName=$USER&amp;quot; | grep mail: | awk &amp;#039;{print $2 }&amp;#039;`
        ###############################################################################################
        ### MS Exchange autodiscovery
        #### https://github.com/sys4/automx/blob/master/src/automx-test
        #### http://stackoverflow.com/questions/38509837/when-using-negotiate-with-curl-is-a-keytab-file-required
        #### Joined AD with samba/winbind and have package gss-ntlmssp
        #### libsasl2-modules-gssapi-mit
        ###############################################################################################
        AUTOD_URL=&amp;quot;https://autodiscover.`echo $MAIL | sed &amp;#039;s/^.*@//&amp;#039;`&amp;quot;/autodiscover/autodiscover.xml
        REQUEST=$(cat &amp;lt;&amp;lt;EOF
        &amp;lt;Autodiscover xmlns=&amp;quot;http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006&amp;quot;&amp;gt;
        &amp;lt;Request&amp;gt;
        &amp;lt;EMailAddress&amp;gt;$MAIL&amp;lt;/EMailAddress&amp;gt;
        &amp;lt;AcceptableResponseSchema&amp;gt;http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a&amp;lt;/AcceptableResponseSchema&amp;gt;
        &amp;lt;/Request&amp;gt;
        &amp;lt;/Autodiscover&amp;gt;
        EOF
        )
        bash -c &amp;quot;curl -k -d &amp;#039;$REQUEST&amp;#039; --header \&amp;quot;Content-Type: text/xml\&amp;quot; -s --negotiate -u : $AUTOD_URL&amp;quot; &amp;gt; ~/.autodiscover.xml
        OABUrl=$(cat ~/.autodiscover.xml | grep -m 1 OABUrl | awk -F &amp;#039;[&amp;lt;&amp;gt;]&amp;#039; &amp;#039;{ print $3 }&amp;#039;)oab.xml
        EwsUrl=$(cat ~/.autodiscover.xml | grep -m 1 EwsUrl | awk -F &amp;#039;[&amp;lt;&amp;gt;]&amp;#039; &amp;#039;{ print $3 }&amp;#039;)
        EwsHost=$(echo $EwsUrl | awk -F &amp;#039;/&amp;#039; &amp;#039;{ print $3 }&amp;#039;)
        rm ~/.autodiscover.xml     
        echo CURRENT_DC - $CURRENT_DC &amp;gt; ~/.ews_setup.log
        echo FULL_NAME - $FULL_NAME &amp;gt;&amp;gt; ~/.ews_setup.log
        echo BASEDN - $BASEDN &amp;gt;&amp;gt; ~/.ews_setup.log
        echo MAIL - $MAIL &amp;gt;&amp;gt; ~/.ews_setup.log
        echo DOMAINNAME - $DOMAINNAME &amp;gt;&amp;gt; ~/.ews_setup.log
        echo OABUrl - $OABUrl &amp;gt;&amp;gt; ~/.ews_setup.log
        echo EwsUrl - $EwsUrl &amp;gt;&amp;gt; ~/.ews_setup.log
        echo EwsHost - $EwsHost &amp;gt;&amp;gt; ~/.ews_setup.log
        ################################################################
        ### Check URLs format
        ################################################################
        echo $OABUrl | grep -E &amp;#039;(https|http)://(([[:alnum:]]|-|_|\.|~|!|\*|;|:|@|&amp;amp;|=|+|\$|,|/|\?|%|#|\[|\]])*/(oab|OAB)([[:alnum:]]|-|_|\.|~|!|\*|;|:|@|&amp;amp;|=|+|\$|,|/|\?|%|#|\[|\]])*/oab.xml)&amp;#039;
        OAB_URL_Check=$?
        echo $EwsUrl | grep -E &amp;#039;(https|http)://(([[:alnum:]]|-|_|\.|~|!|\*|;|:|@|&amp;amp;|=|+|\$|,|/|\?|%|#|\[|\]])*/(ews|EWS)([[:alnum:]]|-|_|\.|~|!|\*|;|:|@|&amp;amp;|=|+|\$|,|/|\?|%|#|\[|\]])*/exchange.asmx)&amp;#039;
        EWS_URL_Check=$?
        if [ $OAB_URL_Check != 0 ] || [ $EWS_URL_Check != 0 ]; then
        echo &amp;quot;OAB and EWS URLs check failed... Exit...&amp;quot; &amp;gt;&amp;gt; ~/.ews_setup.log
        else
        echo &amp;quot;OAB and EWS URLs check OK&amp;quot; &amp;gt;&amp;gt; ~/.ews_setup.log
        ######################################################################
        ### CleaningUp and creating evolution source files
        ######################################################################
        killall evolution-source-registry
        rm -Rf ~/.config/evolution/sources
        mkdir --parents ~/.config/evolution/sources
        #####################################################################################
        cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/ews.$USER.$DOMAINNAME.1.source
        [Data Source]
        DisplayName=$MAIL
        Enabled=true
        Parent=
        
        [Offline]
        StaySynchronized=true
        
        [Authentication]
        Host=$EwsHost
        #Method=none
        Method=GSSAPI
        Port=443
        ProxyUid=system-proxy
        RememberPassword=true
        User=$USER
        CredentialName=
        
        [Collection]
        BackendName=ews
        CalendarEnabled=true
        ContactsEnabled=true
        Identity=$USER
        MailEnabled=true
        
        [Security]
        Method=none
        
        [Ews Backend]
        FilterInbox=true
        StoreChangesInterval=3
        CheckAll=true
        ListenNotifications=true
        Email=$MAIL
        FilterJunk=true
        FilterJunkInbox=false
        FoldersInitialized=true
        GalUid=ews.$USER.$DOMAINNAME
        Hosturl=$EwsUrl
        Oaburl=$OABUrl
        OabOffline=true
        OalSelected=
        Timeout=300
        UseImpersonation=false
        ImpersonateUser=
        EOF
        
        ######################################################################
        cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/ews.$USER.$DOMAINNAME.0.source
        [Data Source]
        DisplayName=$MAIL
        Enabled=true
        Parent=ews.$USER.$DOMAINNAME.1
        
        [Mail Composition]
        Bcc=
        Cc=
        DraftsFolder=folder://ews.$USER.$DOMAINNAME/%d0%a7%d0%b5%d1%80%d0%bd%d0%be%d0%b2%d0%b8%d0%ba%d0%b8
        SignImip=true
        TemplatesFolder=folder://local/Templates
        
        [Mail Identity]
        Address=$MAIL
        Name=$FULL_NAME
        Organization=
        ReplyTo=
        SignatureUid=none
        
        [Mail Submission]
        SentFolder=folder://ews.$USER.$DOMAINNAME/%d0%9e%d1%82%d0%bf%d1%80%d0%b0%d0%b2%d0%bb%d0%b5%d0%bd%d0%bd%d1%8b%d0%b5
        TransportUid=ews.$USER.$DOMAINNAME.13
        RepliesToOriginFolder=false
        EOF
        
        ######################################################################
        cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/ews.$USER.$DOMAINNAME.3.source
        [Data Source]
        DisplayName=$MAIL
        Enabled=true
        Parent=ews.$USER.$DOMAINNAME.1
        
        [Refresh]
        Enabled=true
        IntervalMinutes=3
        
        [Mail Account]
        BackendName=ews
        IdentityUid=ews.$USER.$DOMAINNAME
        ArchiveFolder=
        EOF
        
        ###############################################################################
        cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/ews.$USER.$DOMAINNAME.13.source
        [Data Source]
        DisplayName=$MAIL
        Enabled=true
        Parent=ews.$USER.$DOMAINNAME.1
        
        [Mail Transport]
        BackendName=ews
        EOF
        
        ################################################################################
        cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/local.source
        # Special built-in mail store.
        [Data Source]
        DisplayName=On This Computer
        Enabled=false
        Parent=
        
        [Mail Account]
        BackendName=maildir
        IdentityUid=self
        ArchiveFolder=
        
        [Maildir Backend]
        FilterInbox=true
        Path=$HOME/.local/share/evolution/mail/local
        EOF
        
        ########################################################################
        cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/sources/vfolder.source
        # Special built-in mail store.
        
        [Data Source]
        DisplayName=Search Folders
        Enabled=false
        Parent=
        
        [Mail Account]
        BackendName=vfolder
        IdentityUid=self
        ArchiveFolder=
        
        [Vfolder Backend]
        FilterInbox=true
        EOF
        
        ##################################################################
        mkdir --parents ~/.config/evolution/mail/
        cat &amp;lt;&amp;lt;EOF &amp;gt; ~/.config/evolution/mail/state.ini
        [GlobalFolder]
        GroupByThreads=false
        PreviewVisible=true
        
        [Store ews.$USER.$DOMAINNAME.3]
        Expanded=true
        
        [Search Bar]
        SearchScope=mail-scope-current-folder
        SearchOption=mail-search-subject-or-addresses-contain
        
        [Folder Tree]
        Selected=folder://ews.$USER.$DOMAINNAME.3/%d0%92%d1%85%d0%be%d0%b4%d1%8f%d1%89%d0%b8%d0%b5
        
        [Folder folder://ews.$USER.$DOMAINNAME.3/%d0%92%d1%85%d0%be%d0%b4%d1%8f%d1%89%d0%b8%d0%b5]
        GroupByThreads=false
        PreviewVisible=true
        Expanded=true
        EOF
        
        fi
        fi
        fi
        
  - file:
      path: /etc/skel/.config/autostart/
      state: directory
      mode: 0755
  - file:
      path: /etc/skel/.config/autostart/ews_autodiscovery.desktop
      state: absent
    ignore_errors: yes            
  - blockinfile:
      path: /etc/skel/.config/autostart/ews_autodiscovery.desktop
      create: yes
      mode: 0644
      marker: &amp;quot;&amp;quot;
      block: |
        [Desktop Entry]
        Encoding=UTF-8
        Version=1.0
        Type=Application
        Name=Evolution Mail Client Preconfigure
        Comment=Evolution Mail Client Preconfigure
        Exec=/usr/bin/ews_autodiscovery.sh &amp;amp;
        StartupNotify=false
        Terminal=false
        Hidden=false
        OnlyShowIn=GNOME;XFCE;LXDE;
        X-GNOME-Autostart-enabled=true
  - file:
      path: /etc/skel/.config/xfce4/
      state: directory
      mode: 0755
  - file: 
      path: /etc/skel/.config/xfce4/helpers.rc
      state: touch
      mode: 0644
  - lineinfile:
      path: /etc/skel/.config/xfce4/helpers.rc
      state: present
      regexp: &amp;#039;^MailReader=&amp;#039;
      line: &amp;#039;MailReader=evolution&amp;#039;

#### Disable ScreenSaver
  - name: Disable Screen Saver
    blockinfile:
      path: /etc/skel/.Xdefaults
      create: yes
      mode: 0644
      marker: &amp;quot;&amp;quot;
      block: |
        xautolock.locker:z-securelock auth_none saver_z_screensaver
        xautolock.time:1000
        xsaver_xautolock:Случайно
        xtime_xautolock:0
...

&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;PlayBook&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;playbook&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;638-18928&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;join_ad_domain_setup_citrix_vda_playbook&quot;&gt;Join AD Domain Setup Citrix VDA Playbook&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;---
- hosts: nci_os_szud
  vars:
    hostname: szud-os2
  tasks:

  - name: Set hostname
    shell: |
      sysctl kernel.hostname=&amp;quot;{{ hostname }}&amp;quot;
      sysctl -p
      hostnamectl set-hostname &amp;quot;{{ hostname }}&amp;quot; ##.&amp;quot;{{ domain_name }}&amp;quot;
      sed -i &amp;#039;/^127./D&amp;#039; /etc/hosts
  - lineinfile:
      name: /etc/hosts 
      regexp: &amp;#039;^127\.0\.0\.1&amp;#039;
      line: &amp;#039;127.0.0.1 {{ hostname }}.{{ domain_name }} {{ hostname }} localhost.localdomain localhost&amp;#039;
  - lineinfile:
      name: /etc/hosts
      regexp: &amp;#039;/^::1/D&amp;#039;
      state: absent
  - name: restart NetworkManager service
    service: name=NetworkManager state=restarted
  - shell: |
      net ads join -U ADDSIGMACA%PASSWORD
      /opt/Citrix/VDA/sbin/ctxcleanup.sh
      CTX_XDL_SUPPORT_DDC_AS_CNAME=N \
      CTX_XDL_DDC_LIST=&amp;quot;v-szud-ctxdc-01.sigma.sbrf.ru v-szud-ctxdc-02.sigma.sbrf.ru&amp;quot; \
      CTX_XDL_VDA_PORT=80 \
      CTX_XDL_REGISTER_SERVICE=Y \
      CTX_XDL_ADD_FIREWALL_RULES=Y \
      CTX_XDL_AD_INTEGRATION=1 \
      CTX_XDL_HDX_3D_PRO=N \
      CTX_XDL_VDI_MODE=Y \
      CTX_XDL_SITE_NAME=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
      CTX_XDL_LDAP_LIST=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
      CTX_XDL_SEARCH_BASE=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
      CTX_XDL_START_SERVICE=Y \
      /opt/Citrix/VDA/sbin/ctxsetup.sh

      sleep 10
      reboot
...&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Join AD Domain Setup Citrix VDA Playbook&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;join_ad_domain_setup_citrix_vda_playbook&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;18929-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>installation_of_msi_file_failed_with_code_installfailure_1603</title>
            <link>https://wiki.autosys.tk/citrix/installation_of_msi_file_failed_with_code_installfailure_1603</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Попытка установки (переустановки) VDA-агента версии 7.6.1000 (и других) заканчивается ошибками типа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; Installation of MSI File &amp;#039;IcaTS_x64.msi&amp;#039; failed with code &amp;#039;InstallFailure&amp;#039; (1603).&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-292&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;причина&quot;&gt;Причина&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В соотвествии со статьей microsoft: &lt;a href=&quot;https://support.microsoft.com/ru-ru/kb/834484&quot; class=&quot;urlextern&quot; title=&quot;https://support.microsoft.com/ru-ru/kb/834484&quot; rel=&quot;ugc nofollow&quot;&gt;https://support.microsoft.com/ru-ru/kb/834484&lt;/a&gt;
эти ошибки связаны с тем, что MSInstaller не может получить права на запись либо в какую-то папку либо в реестр.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u0447\u0438\u043d\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u0447\u0438\u043d\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;293-617&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Лучше всего в этих случаях пользоваться &lt;a href=&quot;https://support.citrix.com/article/CTX209255&quot; class=&quot;urlextern&quot; title=&quot;https://support.citrix.com/article/CTX209255&quot; rel=&quot;ugc nofollow&quot;&gt;VDA CleanUp Utility&lt;/a&gt;, которая исправно обновляется, а в новых версиях VDA, она уже входит в дистрибутив и может быть установлена вместе с VDA.
&lt;/p&gt;

&lt;p&gt;
После удаления VDA на &lt;strong&gt;Windows server 2008 R2&lt;/strong&gt; я просто удалил папки &lt;strong&gt;Citrix&lt;/strong&gt; из &lt;strong&gt;Program Files&lt;/strong&gt; и &lt;strong&gt;Program Files(x86)&lt;/strong&gt; и удалил ветки &lt;strong&gt;Citrix&lt;/strong&gt; из реестра:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix]
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\citrix]&lt;/pre&gt;

&lt;p&gt;
Вот тут указывают более конкретную ветку реестра на котрую не хватает прав:&lt;br/&gt;
&lt;a href=&quot;https://discussions.citrix.com/topic/379383-ltsr-cu1-install-error-1603/&quot; class=&quot;urlextern&quot; title=&quot;https://discussions.citrix.com/topic/379383-ltsr-cu1-install-error-1603/&quot; rel=&quot;ugc nofollow&quot;&gt;https://discussions.citrix.com/topic/379383-ltsr-cu1-install-error-1603/&lt;/a&gt;&lt;br/&gt;

Нужно дать всем пользователям полные права на ветку: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;HKLM\SOFTWARE\Wow6432Node\CITRIX\EUEM&lt;/pre&gt;

&lt;p&gt;
Эти ветки реестра иногда не удаляются даже с помощью &lt;strong&gt;VDA CleanUp Utility&lt;/strong&gt;. Также у меня не получилось удалить их от имени &lt;strong&gt;SYSTEM&lt;/strong&gt; с помощью &lt;strong&gt;psexec&lt;/strong&gt;. Оказалось, как написано тут: &lt;a href=&quot;https://support.citrix.com/article/CTX215992&quot; class=&quot;urlextern&quot; title=&quot;https://support.citrix.com/article/CTX215992&quot; rel=&quot;ugc nofollow&quot;&gt;https://support.citrix.com/article/CTX215992&lt;/a&gt; на проблемную ветку &lt;strong&gt;HKLM\Software\Wow6432Node\Citrix\EUEM\LoggedEvents&lt;/strong&gt; имеют полные права юзеры из локальной группы &lt;strong&gt;Remote Desktop Users&lt;/strong&gt;. То есть, для того, чтобы получить права на удаление этой ветки нужно включить себя в группу &lt;strong&gt;Remote Desktop Users&lt;/strong&gt; и перелогиниться:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;net localgroup &amp;quot;Remote Desktop users&amp;quot; &amp;quot;DOMAIN\USER&amp;quot; /add&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;618-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>migrate_roaming_profiles_to_citrix_profile_management</title>
            <link>https://wiki.autosys.tk/citrix/migrate_roaming_profiles_to_citrix_profile_management</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;задача&quot;&gt;Задача&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Есть ферма &lt;strong&gt;Citrix XenDesktop 7.15&lt;/strong&gt;. Она раздает рабочие столы &lt;strong&gt;Windows Server 2016&lt;/strong&gt; - &lt;strong&gt;hosted shared&lt;/strong&gt;. &lt;br/&gt;

В данный момент используются &lt;strong&gt;roaming profiles&lt;/strong&gt;, которые лежат на файловом сервере и доступны через DFS. &lt;br/&gt;

Нужно внедрить &lt;strong&gt;Citrix Profile Management&lt;/strong&gt; и мигрировать туда все профили. &lt;br/&gt;

&lt;a href=&quot;https://docs.citrix.com/en-us/profile-management/downloads/profile-management-7-15.pdf&quot; class=&quot;urlextern&quot; title=&quot;https://docs.citrix.com/en-us/profile-management/downloads/profile-management-7-15.pdf&quot; rel=&quot;ugc nofollow&quot;&gt;https://docs.citrix.com/en-us/profile-management/downloads/profile-management-7-15.pdf&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://www.carlstalhood.com/citrix-profile-management/&quot; class=&quot;urlextern&quot; title=&quot;https://www.carlstalhood.com/citrix-profile-management/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.carlstalhood.com/citrix-profile-management/&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-618&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;619-648&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;пути_к_профилям_nus_-_network_user_store&quot;&gt;Пути к профилям (NUS - network user store)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
В путях к профилям могут быть использованы значения аттрибутов, заключенные в # - &lt;strong&gt;#attributename#&lt;/strong&gt; и переменные окружения - заключенные в % - &lt;strong&gt;%VARIABLE_VALUE%&lt;/strong&gt;, а также параметры &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;. Например - &lt;strong&gt;&lt;a href=&quot;file://///server/profiles$&quot; class=&quot;windows&quot; title=&quot;\\server\profiles$&quot;&gt;\\server\profiles$&lt;/a&gt;\#attributename#\%USERNAME%.%USERDOMAIN%\!CTX_OSNAME!!CTX_OSBITNESS!&lt;/strong&gt; &lt;br/&gt;

Путь к профилям (NUS - network user store)- &lt;strong&gt;\\domain\#extensionAttribute1#\Profiles\&lt;/strong&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0443\u0442\u0438 \u043a \u043f\u0440\u043e\u0444\u0438\u043b\u044f\u043c (NUS - network user store)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0443\u0442\u0438_\u043a_\u043f\u0440\u043e\u0444\u0438\u043b\u044f\u043c_nus_-_network_user_store&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;649-1239&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;перенаправление_папок&quot;&gt;Перенаправление папок&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Citrix&lt;/strong&gt; рекомендует перенаправлять все папки, содержимое которых используется нерегулярно или не изменяется в процессе работы.  Список папок, перенаправление которых возможно в данной ОС можно найти в реестре - &lt;strong&gt;HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders&lt;/strong&gt;&lt;br/&gt;

В &lt;strong&gt;XenDesktop 7&lt;/strong&gt; перенапрвляемые папки должны быть сконфигурированы в политике &lt;strong&gt;Xendesktop&lt;/strong&gt; с помощью &lt;strong&gt;Studio&lt;/strong&gt;.
В моем случае Групповые политики перенаправляют папки:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Documents&lt;/strong&gt; (и вложенные &lt;strong&gt;My Music&lt;/strong&gt;, &lt;strong&gt;My Pictures&lt;/strong&gt;, &lt;strong&gt;My Videos&lt;/strong&gt;) - &lt;strong&gt;\\domain\#extensionAttribute1#\Users\#samAccountName#\Documents&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Desktop&lt;/strong&gt; - &lt;strong&gt;\\domain\#extensionAttribute1#\Environment\Standard\Desktop&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
  &lt;strong&gt;StartMenu&lt;/strong&gt; - &lt;strong&gt;\\domain\#extensionAttribute1#\Environment\Standard\StartMenu&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043f\u043e\u043a&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043f\u0430\u043f\u043e\u043a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;1240-2370&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;установка&quot;&gt;Установка&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Обычно, компоненты &lt;strong&gt;Citrix Profile management&lt;/strong&gt; устанавливаются в составе VDA. &lt;br/&gt;

проверить, установлен ли &lt;strong&gt;Citrix Profile management&lt;/strong&gt; можно командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wmic product list | find &amp;quot;Citrix Profile management&amp;quot;&lt;/pre&gt;

&lt;p&gt;
Мне придется переустановить &lt;strong&gt;VDA&lt;/strong&gt; на многих серваках. Предварительно, удалив его с помощью &lt;strong&gt;VDACleanupUtility&lt;/strong&gt;. Важно помнить, что для корректного удаления всех элементов VDA, пользователь, производящий удаление должен не только быть локальным админом, но и членом группы &lt;strong&gt;Remote Desktop Users&lt;/strong&gt;. &lt;br/&gt;

&lt;br/&gt;

Для того, чтобы настраивать эти компоненты нужно добавить в домен шаблоны политик (&lt;strong&gt;admx templates&lt;/strong&gt;), которые есть в составе ISO-образа в папке &lt;strong&gt;\x64\ProfileManagement\ADM_Templates&lt;/strong&gt;. Раскладывать так:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;\x64\ProfileManagement\ADM_Templates\en\ctxprofile7.15.300.admx&lt;/strong&gt; → &lt;strong&gt;&lt;a href=&quot;file://///domain/SYSVOL/domain_fqdn/Policies/PolicyDefinitions&quot; class=&quot;windows&quot; title=&quot;\\domain\SYSVOL\domain_fqdn\Policies\PolicyDefinitions&quot;&gt;\\domain\SYSVOL\domain_fqdn\Policies\PolicyDefinitions&lt;/a&gt;\&lt;/strong&gt; (или в &lt;strong&gt;C:\Windows\PolicyDefinitions&lt;/strong&gt; на контроллере домена). Старые шаблоны политик (файлы &lt;strong&gt;ctxprofile*.admx&lt;/strong&gt;) надо удалять.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;\x64\ProfileManagement\ADM_Templates\en\ctxprofile7.15.3000.adml&lt;/strong&gt; → &lt;strong&gt;&lt;a href=&quot;file://///domain/SYSVOL/domain_fqdn/Policies/PolicyDefinitions/en-us&quot; class=&quot;windows&quot; title=&quot;\\domain\SYSVOL\domain_fqdn\Policies\PolicyDefinitions\en-us&quot;&gt;\\domain\SYSVOL\domain_fqdn\Policies\PolicyDefinitions\en-us&lt;/a&gt;\&lt;/strong&gt; (или в &lt;strong&gt;C:\Windows\PolicyDefinitions\en-us\&lt;/strong&gt; на контроллере домена). Старые файлы &lt;strong&gt;ctxprofile*.adml&lt;/strong&gt; надо удалять.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Файлы &lt;strong&gt;CitrixBase.admx&lt;/strong&gt; и &lt;strong&gt;CitrixBase.adml&lt;/strong&gt; из папки &lt;strong&gt;\x64\ProfileManagement\ADM_Templates\CitrixBase&lt;/strong&gt; нужно разложить аналогично в папки &lt;strong&gt;PolicyDefinitions&lt;/strong&gt; и &lt;strong&gt;PolicyDefinitions\en-us\&lt;/strong&gt;. Старые файлы &lt;strong&gt;CitrixBase*.&lt;/strong&gt;* удалить/заменить.
&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;2371-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>сессия_пользователя_на_2008r2_active_но_ни_подключиться_к_ ...</title>
            <link>https://wiki.autosys.tk/citrix/%D1%81%D0%B5%D1%81%D1%81%D0%B8%D1%8F_%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F_%D0%BD%D0%B0_2008r2_active_%D0%BD%D0%BE_%D0%BD%D0%B8_%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C%D1%81%D1%8F_%D0%BA_%D0%BD%D0%B5%D0%B9_%D0%BD%D0%B8_%D1%81%D0%BB%D0%B5%D0%B4%D0%B0%D1%82%D1%8C_logoff_%D0%BD%D0%B5%D0%BB%D1%8C%D0%B7%D1%8F</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
На терминальных серверах под управлением &lt;strong&gt;Windows 2008R2&lt;/strong&gt; в составе фермы &lt;strong&gt;Citrix Xendesktop 7.6&lt;/strong&gt; периодически возникает ситуация, когда сессия пользователя есть на сервере, она в состоянии &lt;strong&gt;Active&lt;/strong&gt;, однако у нее отсутствует &lt;strong&gt;Session ID&lt;/strong&gt; (вида &lt;strong&gt;ica-tcp#–&lt;/strong&gt;). При этом ни подключиться к этой сессии. ни закрыть ее не получается. &lt;strong&gt;TaskManager&lt;/strong&gt; при попытке завершения процессов пользователя перестает отвечать. Не удалется завершить ни один процесс пользователя и из командной строки с помощью
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;taskkill /f /FI &amp;quot;USERNAME eq Domain_name\user_name&amp;quot;&lt;/pre&gt;

&lt;p&gt;
При этом, сервер невозможно штатно перезагрузить. Он не уходит в перезагрузку и помогает только кнопка Reset. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1121&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Microsoft&lt;/strong&gt; утверждает. что причина в &lt;strong&gt;deadlock&amp;#039;e&lt;/strong&gt; в файлике &lt;strong&gt;Win32k.sys&lt;/strong&gt; - &lt;a href=&quot;https://support.microsoft.com/en-us/kb/2866519&quot; class=&quot;urlextern&quot; title=&quot;https://support.microsoft.com/en-us/kb/2866519&quot; rel=&quot;ugc nofollow&quot;&gt;https://support.microsoft.com/en-us/kb/2866519&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Напрямую можно скачать тут: &lt;a href=&quot;http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix462371/7600/free/465697_intl_x64_zip.exe&quot; class=&quot;urlextern&quot; title=&quot;http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix462371/7600/free/465697_intl_x64_zip.exe&quot; rel=&quot;ugc nofollow&quot;&gt;http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix462371/7600/free/465697_intl_x64_zip.exe&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Package: Win32k.sys
----------------------------------------------------------- 
KB Article Number (s) : 2866519  
Language: All (Global)  
Platform: x64  
Location: ( http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix462371/7600/free/465697_intl_x64_zip.exe )&lt;/pre&gt;

&lt;p&gt;
Или тут: &lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/windows2008r2_sessiondeadlockfix_windows6.1-kb2866519-x64.msu.zip&quot; class=&quot;media mediafile mf_zip&quot; title=&quot;citrix:windows2008r2_sessiondeadlockfix_windows6.1-kb2866519-x64.msu.zip (1.6 MB)&quot;&gt;windows2008r2_sessiondeadlockfix_windows6.1-kb2866519-x64.msu.zip&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1122-1882&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;установка&quot;&gt;Установка&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
При установке патча система может ругнуться, что &lt;strong&gt;This update does not apply to this system&lt;/strong&gt;.
В этом случае можно распаковать и установить патч вручную:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;expand -F:* Windows_patchname.msu %temp%\kb_xxxxxx\
start /w %SystemRoot%\system32\pkgmgr.exe /ip /m:%temp%\kb_xxxx\Windows_patchname.cab&lt;/pre&gt;

&lt;p&gt;
Также можно и удалить этот патч, заменив &lt;strong&gt;/ip&lt;/strong&gt; на &lt;strong&gt;/up&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1883-2399&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;если_это_не_помогает&quot;&gt;Если это не помогает&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Вот еще апдейты на эту тему: &lt;br/&gt;

&lt;a href=&quot;https://support.microsoft.com/en-us/kb/2578159&quot; class=&quot;urlextern&quot; title=&quot;https://support.microsoft.com/en-us/kb/2578159&quot; rel=&quot;ugc nofollow&quot;&gt;KB2578159 - The logon process stops responding in Windows Server 2008 R2 or in Windows 7&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://support.microsoft.com/en-us/kb/2383928&quot; class=&quot;urlextern&quot; title=&quot;https://support.microsoft.com/en-us/kb/2383928&quot; rel=&quot;ugc nofollow&quot;&gt; KB2383928 - Remote desktop sessions do not completely exit, and you cannot establish new remote desktop sessions to a computer that is running Windows Server 2008 R2&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://support.microsoft.com/en-us/kb/124873&quot; class=&quot;urlextern&quot; title=&quot;https://support.microsoft.com/en-us/kb/124873&quot; rel=&quot;ugc nofollow&quot;&gt; KB124873 - Disabling System Hard Error Message Dialog Boxes&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://support.microsoft.com/en-us/kb/2661332&quot; class=&quot;urlextern&quot; title=&quot;https://support.microsoft.com/en-us/kb/2661332&quot; rel=&quot;ugc nofollow&quot;&gt; KB2661332 - You cannot reestablish a Remote Desktop Services session to a Windows Server 2008 R2-based server &lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://support.microsoft.com/en-us/kb/2526870&quot; class=&quot;urlextern&quot; title=&quot;https://support.microsoft.com/en-us/kb/2526870&quot; rel=&quot;ugc nofollow&quot;&gt; KB2526870 - Windows Vista, Windows Server 2008, Windows 7, or Windows Server 2008 R2 may stop responding at the Welcome screen&lt;/a&gt;  - важная хрень (входит в состав KB2775511) ! &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
также сообщают что кумулятивный апдейт KB2775511 ( &lt;a href=&quot;http://support.microsoft.com/kb/2775511/en-us&quot; class=&quot;urlextern&quot; title=&quot;http://support.microsoft.com/kb/2775511/en-us&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.microsoft.com/kb/2775511/en-us&lt;/a&gt;) чинит ситуацию с зависанием на этапе Welcome Screen, но я не смог его поставить. Ставился сутки.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0435\u0441\u043b\u0438_\u044d\u0442\u043e_\u043d\u0435_\u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;2400-3700&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit5&quot; id=&quot;ответ_поддержки_citrix&quot;&gt;Ответ поддержки Citrix&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Поддержка Citrix (росийская от софтлайн) утвержает, что для решения этой проблемы должен быть установлен следующий набор патчей:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;KB2479943
KB2506212
KB2509553
KB2511455
KB2544893
KB2560656
KB2564958
KB2570947
KB2585542
KB2604115
KB2620704
KB2621440
KB2631813
KB2654428
KB2667402
KB2676562
KB2690533
KB2698365
KB2705219
KB2706045
KB2727528
KB2728738
KB2732673
KB2736422
KB2742599
KB2758857
KB2765809
KB2770660
KB2803821
KB2807986
KB2813347
KB2847927
KB2878378&lt;/pre&gt;

&lt;p&gt;
Получить список уже установленных патчей можно командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;systeminfo &lt;/pre&gt;

&lt;p&gt;
или
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wmic qfe list brief&lt;/pre&gt;

&lt;p&gt;
Затем я кладу список установленных патчей в файлик &lt;strong&gt;installed&lt;/strong&gt; (только hotfixID), а список необходимых - &lt;strong&gt;musthave&lt;/strong&gt; и сравниваю в linux командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;grep -viFf installed musthave&lt;/pre&gt;

&lt;p&gt;
В моем случае на большинстве серверов отсутствовали следующие патчи:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;KB2479943
KB2727528
KB2728738
KB2732673
KB2736422
KB2803821
KB2847927
KB2878378&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u0432\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 Citrix&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u0432\u0435\u0442_\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438_citrix&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;3701-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>kde_task_manager_launchers</title>
            <link>https://wiki.autosys.tk/linux_faq/kde_task_manager_launchers</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;контектстное_меню_show_a_launcher_when_not_running&quot;&gt;Контектстное меню **Show A Launcher When Not Running**&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Как в KDE вручную отредактировать лаунчеры (или посмотреть что запускает тот или иной лаунчер), которые создаются с помощью контектстного меню &lt;strong&gt;Show A Launcher When Not Running&lt;/strong&gt; ?
&lt;/p&gt;

&lt;p&gt;
список этих лаунчеров находится в файле &lt;strong&gt; ~/.kde/share/config/plasma-desktop-appletsrc&lt;/strong&gt; &lt;br/&gt;

там есть раздел в названии которого в конце указано &lt;strong&gt;[Launchers]&lt;/strong&gt;. &lt;br/&gt;

В моем случае это: &lt;strong&gt;[Containments][22][Applets][26][Configuration][Launchers]&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
и Выглядит он как-то так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[Containments][22][Applets][26][Configuration][Launchers]
Items=preferred://browser?wmClass=%20,preferred://filemanager?wmClass=%20,file:///usr/share/applications/viber.desktop?wmClass=ViberPC,file:///usr/share/applications/kde4/ksysguard.desktop?wmClass$
browser=preferred://browser, , ,\s
filemanager=preferred://filemanager, , ,\s
liteide=file:///home/local/RIMOS_NT_01/usikmi/liteide/bin/liteide,,liteide,,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAACi9JREFUaIG9Wn9sG9Ud/7y7$&lt;/pre&gt;

&lt;p&gt;
В строке &lt;strong&gt;Items=preferred:&lt;/strong&gt; через запятую указаны файлы ярлыков запускаемых проложений.
&lt;/p&gt;

&lt;/div&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>lxde_vnc-в-контейнере-lxc</title>
            <link>https://wiki.autosys.tk/linux_faq/lxde_vnc-%D0%B2-%D0%BA%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%B5-lxc</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;для_чего&quot;&gt;Для чего&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Мне нужен &lt;strong&gt;headless&lt;/strong&gt; LXC-контейнер с экономичным декстопным окружением, доступ к которому будет осуществляться по &lt;strong&gt;VNC&lt;/strong&gt;, а лучше - по &lt;strong&gt;RDP&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043b\u044f \u0447\u0435\u0433\u043e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043b\u044f_\u0447\u0435\u0433\u043e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-274&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;варианты_решения&quot;&gt;Варианты решения&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В качестве ОС контейнера выступает &lt;strong&gt;Ubuntu 16.04&lt;/strong&gt;. &lt;br/&gt;

Для запуска иксов в &lt;strong&gt;headless&lt;/strong&gt;-контейнере понадобится эмуляция видеоадаптера. &lt;br/&gt;

Для этих целей можно использовать либо &lt;strong&gt;xvfb&lt;/strong&gt; (&lt;strong&gt;X Virtual Frame Buffer&lt;/strong&gt;) либо &lt;strong&gt;xdummy&lt;/strong&gt;. Оба пакета присутствуют в репозиториях большинства дистрибутивов, однако, более продвинутым является &lt;strong&gt;xdummy&lt;/strong&gt;. &lt;br/&gt;

В данной заметке я рассмотрю настройку двух этих решений. &lt;br/&gt;

В качестве десктопного окружения я протестирую пару - &lt;strong&gt;Xfce&lt;/strong&gt; и &lt;strong&gt;LXDE&lt;/strong&gt;. Сразу скажу, что вариант с &lt;strong&gt;Xfce&lt;/strong&gt; мне понравился гораздо больше. &lt;br/&gt;

Для доступа к графической оболочке я планирую использовать &lt;strong&gt;VNC&lt;/strong&gt; или &lt;strong&gt;RDP&lt;/strong&gt; (но можно использовать и другие протоколы). Например: &lt;strong&gt;SPICE&lt;/strong&gt; - &lt;a href=&quot;https://discuss.linuxcontainers.org/t/access-container-via-spice-sharing-clipboard/2544/3&quot; class=&quot;urlextern&quot; title=&quot;https://discuss.linuxcontainers.org/t/access-container-via-spice-sharing-clipboard/2544/3&quot; rel=&quot;ugc nofollow&quot;&gt;https://discuss.linuxcontainers.org/t/access-container-via-spice-sharing-clipboard/2544/3&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0440\u0435\u0448\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b_\u0440\u0435\u0448\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;275-1562&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;xfce_xdummy_xrdp&quot;&gt;Xfce + xdummy + xrdp&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Установка необходимых компонент:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get -y install nano curl xserver-xorg-video-dummy xserver-xorg-core x11vnc xubuntu-desktop&lt;/pre&gt;

&lt;p&gt;
Настройки &lt;strong&gt;X&lt;/strong&gt; для работы с &lt;strong&gt;xdummy&lt;/strong&gt; (файлик &lt;strong&gt;/etc/X11/xorg.conf&lt;/strong&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; 
# This xorg configuration file is meant to be used
# to start a dummy X11 server.
# For details, please see:
# https://www.xpra.org/xorg.conf

# Here we setup a Virtual Display of 1600x900 pixels

Section &amp;quot;Device&amp;quot;
    Identifier &amp;quot;Configured Video Device&amp;quot;
    Driver &amp;quot;dummy&amp;quot;
    #VideoRam 4096000
    #VideoRam 256000
    VideoRam 16384
EndSection

Section &amp;quot;Monitor&amp;quot;
    Identifier &amp;quot;Configured Monitor&amp;quot;
    HorizSync 5.0 - 1000.0
    VertRefresh 5.0 - 200.0
    Modeline &amp;quot;1600x900&amp;quot; 33.92 1600 1632 1760 1792 900 921 924 946
EndSection

Section &amp;quot;Screen&amp;quot;
    Identifier &amp;quot;Default Screen&amp;quot;
    Monitor &amp;quot;Configured Monitor&amp;quot;
    Device &amp;quot;Configured Video Device&amp;quot;
    DefaultDepth 24
    SubSection &amp;quot;Display&amp;quot;
        Viewport 0 0
        Depth 24
        Virtual 1600 900
    EndSubSection
EndSection&lt;/pre&gt;

&lt;p&gt;
Список строчек для различных режимов:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;    Modeline &amp;quot;1920x1080&amp;quot; 23.53 1920 1952 2040 2072 1080 1106 1108 1135
    Modeline &amp;quot;1680x1050&amp;quot; 20.08 1680 1712 1784 1816 1050 1075 1077 1103
    Modeline &amp;quot;1600x1200&amp;quot; 22.04 1600 1632 1712 1744 1200 1229 1231 1261
    Modeline &amp;quot;1600x900&amp;quot; 33.92 1600 1632 1760 1792 900 921 924 946
    Modeline &amp;quot;1440x900&amp;quot; 30.66 1440 1472 1584 1616 900 921 924 946
    ModeLine &amp;quot;1366x768&amp;quot; 72.00 1366 1414 1446 1494 768 771 777 803
    Modeline &amp;quot;1280x1024&amp;quot; 31.50 1280 1312 1424 1456 1024 1048 1052 1076
    Modeline &amp;quot;1280x800&amp;quot; 24.15 1280 1312 1400 1432 800 819 822 841
    Modeline &amp;quot;1280x768&amp;quot; 23.11 1280 1312 1392 1424 768 786 789 807
    Modeline &amp;quot;1360x768&amp;quot; 24.49 1360 1392 1480 1512 768 786 789 807
    Modeline &amp;quot;1024x768&amp;quot; 18.71 1024 1056 1120 1152 768 786 789 807&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Xfce + xdummy + xrdp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xfce_xdummy_xrdp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1563-3499&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;xrdp&quot;&gt;XRDP&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Я буду использовать связку &lt;strong&gt;xrdp&lt;/strong&gt; + &lt;strong&gt;xorgrdp&lt;/strong&gt;. Раньше довольно популярным было использование &lt;strong&gt;x11rdp&lt;/strong&gt;, однако его поддержки нужно пересобрать &lt;strong&gt;Xorg&lt;/strong&gt;, а в случае с &lt;strong&gt;xorgrdp&lt;/strong&gt; этого не требуется. &lt;br/&gt;

&lt;strong&gt;Xrdp&lt;/strong&gt; можно установить из репозитория, однако он там довольно старый. Я предпочитаю собирать последнюю версию.  
Ставим средства для сборки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install git autoconf libtool pkg-config gcc g++ make  libssl-dev libpam0g-dev libjpeg-dev libx11-dev libxfixes-dev libxrandr-dev  flex bison libxml2-dev intltool xsltproc xutils-dev python-libxml2 g++ xutils libfuse-dev libmp3lame-dev nasm libpixman-1-dev xserver-xorg-dev&lt;/pre&gt;

&lt;p&gt;
Скачиваем и собираем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mkdir ./xrdp
cd xrdp/
wget https://github.com/neutrinolabs/xorgxrdp/releases/download/v0.2.1/xorgxrdp-0.2.1.tar.gz
wget https://github.com/neutrinolabs/xrdp/releases/download/v0.9.2/xrdp-0.9.2.tar.gz
tar -xvf ./xrdp-0.9.2.tar.gz 
cd ./xrdp-0.9.2
./bootstrap
./configure --enable-fuse --enable-rfxcodec --enable-mp3lame --enable-pixman --disable-painter --disable-ipv6
make
sudo make install
sudo ln -s /usr/local/sbin/xrdp{,-sesman} /usr/sbin
cd ..
tar xvfz xorgxrdp-0.2.1.tar.gz 
cd xorgxrdp-0.2.1
./bootstrap
./configure
make
sudo make install&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;XRDP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;xrdp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;3500-5010&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;настройка_xrdp&quot;&gt;Настройка XRDP&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В принципе, достаточно просто включить сервис и уже можно подключаться.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo systemctl enable xrdp
sudo service xrdp start &lt;/pre&gt;

&lt;p&gt;
Однако, неплохо бы немного скорректировать список доступных при подключении опций - по умолчанию он избыточен.&lt;br/&gt;

Для этого открываем файлик &lt;strong&gt;/etc/xrdp/xrdp.ini&lt;/strong&gt; и в нижней части в разделе &lt;strong&gt;Session types&lt;/strong&gt; удаляем или комментируем все, кроме:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;;
; Session types
;

[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 XRDP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_xrdp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;5011-5767&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;lightdm&quot;&gt;lightdm&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;/etc/lightdm/lightdm.conf&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[Seat:*]
xserver-allow-tcp=false
xserver-command=X -nolisten tcp&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;lightdm&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;lightdm&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;5768-5895&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;проблемы&quot;&gt;Проблемы&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
После обновления контейнера &lt;strong&gt;Ubutnu 16.04&lt;/strong&gt; до &lt;strong&gt;18.04&lt;/strong&gt; перестал работать &lt;strong&gt;xrdp&lt;/strong&gt;. &lt;br/&gt;

После ввода логина и пароля он долго тупит, а потом выдает: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;login successful for display 10
started connecting
connection problem, giving up
some problem&lt;/pre&gt;

&lt;p&gt;
В логе &lt;strong&gt;/var/log/xrdp.log&lt;/strong&gt; ошибки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[DEBUG] Closed socket 19 (AF_UNIX)&lt;/pre&gt;

&lt;p&gt;
В логе &lt;strong&gt;/var/log/xrdp-sesman.log&lt;/strong&gt; ошибка:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[ERROR] X server for display 10 startup timeout&lt;/pre&gt;

&lt;p&gt;
В директории пользователя, который логинится в файле &lt;strong&gt;~/.xorgxrdp.XX.log&lt;/strong&gt; такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[  4034.806] (II) LoadModule: &amp;quot;xorgxrdp&amp;quot;
[  4034.807] (II) Loading /usr/lib/xorg/modules/libxorgxrdp.so
[  4034.807] (II) Module XORGXRDP: vendor=&amp;quot;X.Org Foundation&amp;quot;
[  4034.807]    compiled for 1.18.4, module version = 1.0.0
[  4034.807]    ABI class: X.Org Video Driver, version 20.0
[  4034.807] (EE) xorgxrdp: module ABI major version (20) doesn&amp;#039;t match the server&amp;#039;s version (23)
[  4034.807] (II) UnloadModule: &amp;quot;xorgxrdp&amp;quot;
[  4034.807] (II) Unloading xorgxrdp
[  4034.807] (EE) Failed to load module &amp;quot;xorgxrdp&amp;quot; (module requirement mismatch, 0)&lt;/pre&gt;

&lt;p&gt;
Причина - несоответствие &lt;strong&gt;ABI&lt;/strong&gt; собранного вручную модуля &lt;strong&gt;xorgxrdp&lt;/strong&gt; и текущего &lt;strong&gt;Xorg&lt;/strong&gt;. &lt;br/&gt;

Решение - пересобрать &lt;strong&gt;xorgxrdp&lt;/strong&gt; с текущими библиотеками &lt;strong&gt;xserver-xorg-dev&lt;/strong&gt; и переустановить его. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;5896-7456&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit8&quot; id=&quot;lxde_xvfb_x11vnc&quot;&gt;LXDE + Xvfb + x11vnc&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В качестве ОС контейнера выступает &lt;strong&gt;Ubuntu 16.04&lt;/strong&gt;, а в качестве &lt;strong&gt;DE&lt;/strong&gt; - пакет &lt;strong&gt;lubuntu-desktop&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get update &amp;amp;&amp;amp; sudo apt-get -y upgrade
sudo apt-get -y install nano curl xvfb xserver-xorg-core x11vnc lubuntu-desktop&lt;/pre&gt;

&lt;p&gt;
Дальше план такой - в скрипт &lt;strong&gt;/etc/X11/xinit/xserverrc&lt;/strong&gt; прописываем запуск &lt;strong&gt;Xvfb&lt;/strong&gt; - в результате у нас будет дисплей &lt;strong&gt;:0&lt;/strong&gt; и прописываем в конфигурацию &lt;strong&gt;lightdm&lt;/strong&gt; запуск этого скрипта (вместо дефолтной команды &lt;strong&gt;X&lt;/strong&gt;). В результате при старте &lt;strong&gt;lightdm&lt;/strong&gt; у нас запустится &lt;strong&gt;Xvfb&lt;/strong&gt;. Потом создадим сервис &lt;strong&gt;x11vnc&lt;/strong&gt; и настроим его автозапуск. &lt;br/&gt;

Поехали.&lt;br/&gt;

Настраиваем &lt;strong&gt;lightdm&lt;/strong&gt;, чтобы он запускал при старте иксов &lt;strong&gt;/etc/X11/xinit/xserverrc&lt;/strong&gt;, а не дефолтную команду &lt;strong&gt;xserver-command=X&lt;/strong&gt; . Для этого в файлик &lt;strong&gt;/etc/lightdm/lightdm.conf&lt;/strong&gt; пишем вот что:                                                                                                                         
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[SeatDefaults]
greeter-session=lightdm-gtk-greeter
user-session=Xubuntu
xserver-command=/etc/X11/xinit/xserverrc&lt;/pre&gt;

&lt;p&gt;
Cкорректируем &lt;strong&gt;/etc/X11/xinit/xserverrc&lt;/strong&gt;, чтобы запускался &lt;strong&gt;Xvfb&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/sh

#exec /usr/bin/X -nolisten tcp &amp;quot;$@&amp;quot;
exec Xvfb :0 -screen 0 1024x768x24&lt;/pre&gt;

&lt;p&gt;
Теперь нужно организовать автоматический запуск &lt;strong&gt;x11vnc&lt;/strong&gt;. Это можно сделать двумя путями. Либо прописать строку запуска в &lt;strong&gt;/etc/rc.local&lt;/strong&gt;, либо создать сервис в &lt;strong&gt;systemd&lt;/strong&gt;. Создадим сервис. В файлик &lt;strong&gt;/lib/systemd/system/x11vnc.service&lt;/strong&gt; напишем такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[Unit]
Description=Remote control service x11vnc
After=graphical.target

[Service]
Restart=always
RestartSec=5
Type=simple
ExecStart=-/usr/bin/x11vnc -display :0 -auth &amp;quot;/var/run/lightdm/root/:0&amp;quot; -rfbauth /etc/x11vnc.pass -o /var/log/x11vnc.log
User=x11vnc
Group=x11vnc

[Install]
WantedBy=graphical.target&lt;/pre&gt;

&lt;p&gt;
Создадим пользователя для запуска этого сервиса, создадим файлик с логами и дадим на него права:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo useradd x11vnc --system
sudo touch /var/log/x11vnc.log
sudo chown -R x11vnc /var/log/x11vnc.log &lt;/pre&gt;

&lt;p&gt;
Включаем и запускаем сервис:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo systemctl enable x11vnc.service
sudo systemctl start x11vnc.service&lt;/pre&gt;

&lt;p&gt;
Проверяем статус сервиса:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo systemctl status x11vnc.service&lt;/pre&gt;

&lt;p&gt;
И, наконец, задаем пароль для &lt;strong&gt;VNC&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo x11vnc -storepasswd yourVNCpasswordHERE /etc/x11vnc.pass
sudo chown x11vnc /etc/x11vnc.pass&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;LXDE + Xvfb + x11vnc&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;lxde_xvfb_x11vnc&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;7457-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Wed, 11 Sep 2019 07:17:56 +0000</pubDate>
        </item>
        <item>
            <title>автозапуск-в-ubuntu</title>
            <link>https://wiki.autosys.tk/linux_faq/%D0%B0%D0%B2%D1%82%D0%BE%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA-%D0%B2-ubuntu</link>
            <description>
&lt;p&gt;
Несколько способов автозапуска приложений в Ubuntu:&lt;br/&gt;

&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;etcinitd&quot;&gt;/etc/init.d/&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Первый - из &lt;strong&gt;/etc/init.d/&lt;/strong&gt;. Установка запуска с помощью &lt;strong&gt;update-rc.d&lt;/strong&gt;. Запускается при старте системы, независимо от того вошел ли кто-то в систему или нет. Не подходит для задач, которым нужны ИКСЫ.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\/etc\/init.d\/&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;etcinitd&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;95-462&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;при_входе_пользователя_в_терминал&quot;&gt;При входе пользователя в терминал&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Запуск при входе пользователя через ssh или запуска терминала - файл &lt;strong&gt;~/.bashrc&lt;/strong&gt; . Другой способ - создать файл &lt;strong&gt;~/.ssh/config&lt;/strong&gt; и добавить опцию &lt;strong&gt;LocalCommand&lt;/strong&gt; (и &lt;strong&gt;PermitLocalCommand&lt;/strong&gt;).  see man ssh_config.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438 \u0432\u0445\u043e\u0434\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438_\u0432\u0445\u043e\u0434\u0435_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f_\u0432_\u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;463-847&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;настройка_автозапуска_приложений_x_из_gui&quot;&gt;Настройка автозапуска приложений X из GUI&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В ubuntu 12.04 в dash надо набрать &lt;strong&gt;startup applications&lt;/strong&gt;. Дальше все просто.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 X \u0438\u0437 GUI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a\u0430_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439_x_\u0438\u0437_gui&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;848-1044&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;настройка_автозапуска_приложений_x_из_командной_строки&quot;&gt;Настройка автозапуска приложений X из командной строки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Автозапуск приложений после входа запуска X описывается в файлах &lt;strong&gt;.desktop&lt;/strong&gt;, лежащих в &lt;strong&gt;~/.config/autostart&lt;/strong&gt;. Они выполняются после входа пользователя. &lt;br/&gt;

Файлы .desktop для установленых приложений можно найти в папке &lt;strong&gt;/usr/share/applications&lt;/strong&gt;.&lt;br/&gt;

Имеют примерно такое содержимое (только &amp;lt; и &amp;gt; надо убрать):&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[Desktop Entry]
Type=Application
Name=&amp;lt;Name of application as displayed&amp;gt;
Exec=&amp;lt;command to execute&amp;gt;
Icon=&amp;lt;full path to icon&amp;gt;
Comment=&amp;lt;optinal comments&amp;gt;
X-GNOME-Autostart-enabled=true&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 X \u0438\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a\u0430_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439_x_\u0438\u0437_\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439_\u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;1045-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>сборка_системы_для_arm-роутера_на_pc</title>
            <link>https://wiki.autosys.tk/linux_faq/%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B0_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B_%D0%B4%D0%BB%D1%8F_arm-%D1%80%D0%BE%D1%83%D1%82%D0%B5%D1%80%D0%B0_%D0%BD%D0%B0_pc</link>
            <description>
&lt;p&gt;
У меня есть такой роутер: &lt;a href=&quot;https://wiki.autosys.tk/home/router?s[]=nano&amp;amp;s[]=pi#nano_pi_r1_1gb&quot; class=&quot;urlextern&quot; title=&quot;https://wiki.autosys.tk/home/router?s[]=nano&amp;amp;s[]=pi#nano_pi_r1_1gb&quot; rel=&quot;ugc nofollow&quot;&gt;Nano Pi R1 &lt;/a&gt; и я бы хотел собрать для него образ &lt;a href=&quot;https://freedombox.org/ FreedomBox&quot; class=&quot;urlextern&quot; title=&quot;https://freedombox.org/ FreedomBox&quot; rel=&quot;ugc nofollow&quot;&gt;https://freedombox.org/ FreedomBox&lt;/a&gt;. &lt;br/&gt;

И собирать его я бы хотел на PC. &lt;br/&gt;

Вот тут много информации (хотя и не всегда свежей) о сборке и загрузке debian на платформах Allwinner - &lt;a href=&quot;https://wiki.debian.org/InstallingDebianOn/Allwinner&quot; class=&quot;urlextern&quot; title=&quot;https://wiki.debian.org/InstallingDebianOn/Allwinner&quot; rel=&quot;ugc nofollow&quot;&gt;https://wiki.debian.org/InstallingDebianOn/Allwinner&lt;/a&gt;. &lt;br/&gt;

Тем, кому не хочется ничего собирать - &lt;a href=&quot;https://www.armbian.com/nanopi-r1/&quot; class=&quot;urlextern&quot; title=&quot;https://www.armbian.com/nanopi-r1/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.armbian.com/nanopi-r1/&lt;/a&gt; и если хочется, но не вдаваясь в подробности - &lt;a href=&quot;https://github.com/armbian/build&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/armbian/build&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/armbian/build&lt;/a&gt;
&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;armbian&quot;&gt;Armbian&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
При попытке загрузить образ &lt;strong&gt;Armbian_20.02.1_Nanopi-r1_buster_current_5.4.20.img&lt;/strong&gt; система останавливалась при попытке распаковать ядро:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Starting kernel ...

Uncompressing Linux... done, booting the kernel.&lt;/pre&gt;

&lt;p&gt;
В итоге &lt;strong&gt;Armbian&lt;/strong&gt; удалось загрузить так:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Берем официальный образ &lt;strong&gt;nanopi-r1_sd_friendlycore-xenial_4.14_armhf_20191219.img&lt;/strong&gt;. На нем три раздела. Подключаем &lt;strong&gt;loop-device&lt;/strong&gt; и потом монтируем куда-то: &lt;pre class=&quot;code&quot;&gt; sudo partx -a -v ./nanopi-r1_sd_friendlycore-xenial_4.14_armhf_20191219.img&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Берем образ &lt;strong&gt;armbian&lt;/strong&gt; и также подключаем его как &lt;strong&gt;loop-device&lt;/strong&gt;. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Берем с образа &lt;strong&gt;armbian&lt;/strong&gt; из директории &lt;strong&gt;boot&lt;/strong&gt; файлики &lt;strong&gt;zImage&lt;/strong&gt; и &lt;strong&gt;initrd&lt;/strong&gt; (вернее файлики на которые указывают эти симлинки), а также &lt;strong&gt;sun8i-h3-nanopi-r1.dtb&lt;/strong&gt; и переносим их на официальный образ в раздел &lt;strong&gt;boot&lt;/strong&gt; (заменив старые). Переименовываем &lt;strong&gt;initrd&lt;/strong&gt; - на официальном образе он называется &lt;strong&gt;rootfs.cpio.gz&lt;/strong&gt;. Остальные &lt;strong&gt;dtb&lt;/strong&gt; с официального образа удаляем, во избежание путаницы.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 На официальном образе удаляем всё с раздела &lt;strong&gt;rootfs&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Переносим всю файловую систему с единственного раздела образа &lt;strong&gt;armbian&lt;/strong&gt; на раздел &lt;strong&gt;rootfs&lt;/strong&gt; официального образа: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo rsync -av ./source ./destination&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Отмонтируем &lt;strong&gt;loop&lt;/strong&gt;-устройства и заливаем официальный образ (c ядром, initrd и файловой системой от armbian), на флеху.
&lt;/p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;
Для сборки загружающегося образа я сделал скриптец:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/bash
armbian_img=&amp;#039;Armbian_20.05.0-trunk_Nanopi-r1_bionic_current_5.4.32.img&amp;#039;
friendlyarm_img=&amp;#039;nanopi-r1_sd_friendlycore-xenial_4.14_armhf_20191219.img&amp;#039;

echo &amp;#039;Copying Original FriendlyARM image...&amp;#039;
cp $friendlyarm_img &amp;quot;Armbian_bootable.img&amp;quot;

mkdir ./original_armbian
mkdir ./bootable_armbian_boot
mkdir ./bootable_armbian_rootfs

armbian_offset=`/sbin/fdisk -lu $armbian_img | grep ${armbian_img}1 | awk &amp;#039;{ print $2}&amp;#039;`

echo &amp;quot;Armbian partition Offset - &amp;quot; $(( $armbian_offset * 512 ))

mount -o loop,offset=$(($armbian_offset * 512)) $armbian_img ./original_armbian

friendlyarm_boot_offset=`/sbin/fdisk -lu $friendlyarm_img | grep ${friendlyarm_img}1 | awk &amp;#039;{ print $2}&amp;#039;`
friendlyarm_rootfs_offset=`/sbin/fdisk -lu $friendlyarm_img | grep ${friendlyarm_img}2 | awk &amp;#039;{ print $2}&amp;#039;`

mount -o loop,offset=$(($friendlyarm_boot_offset * 512)) ./Armbian_bootable.img ./bootable_armbian_boot

echo &amp;quot;Copying kernel...&amp;quot;
cp -L ./original_armbian/boot/zImage ./bootable_armbian_boot/zImage

echo &amp;quot;Copying initrd...&amp;quot;
cp -L ./original_armbian/boot/uInitrd ./bootable_armbian_boot/rootfs.cpio.gz

echo &amp;quot;Copying DTB&amp;quot;
rm -f ./bootable_armbian_boot/sun8i*.dtb
cp ./original_armbian/boot/dtb/sun8i-h3-nanopi-r1.dtb ./bootable_armbian_boot/

umount ./bootable_armbian_boot

mount -o loop,offset=$(($friendlyarm_rootfs_offset * 512)) ./Armbian_bootable.img ./bootable_armbian_rootfs
rm -Rf ./bootable_armbian_rootfs/*

echo &amp;quot;Copying rootfs&amp;quot;
rsync -a ./original_armbian/ ./bootable_armbian_rootfs/
rm -rf ./bootable_armbian_rootfs/boot/*

umount ./bootable_armbian_rootfs
umount ./original_armbian

echo &amp;#039;Done!&amp;#039;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Armbian&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;armbian&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;747-4445&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit2&quot; id=&quot;проблемы&quot;&gt;Проблемы&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В один прекрасный момент интернет, который раздавал этот роутер отвалился. В журнале обнаружилось вот что:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[482827.380398] ------------[ cut here ]------------
[482827.380448] WARNING: CPU: 0 PID: 0 at net/sched/sch_generic.c:448 dev_watchdog+0x213/0x214
[482827.380459] NETDEV WATCHDOG: eth1 (r8152): transmit queue 0 timed out
[482827.380466] Modules linked in: nft_masq nft_nat nft_chain_nat nf_nat nft_counter nft_ct nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 nf_tables_set nf_tables nfnetlink evdev brcmfmac brcmutil cfg80211 lima sun8i_codec_analog snd_soc_simple_card sun4i_gpadc_iio sun8i_adda_pr_regmap sun4i_i2s snd_soc_simple_card_utils gpu_sched rfkill snd_soc_core industrialio snd_pcm_dmaengine sun8i_thermal snd_pcm cdc_ether snd_timer usbnet option snd r8152 soundcore usb_wwan usbserial sunxi_cedrus(C) v4l2_mem2mem uio_pdrv_genirq gpio_keys uio cpufreq_dt zram sch_fq_codel usb_f_acm u_serial g_serial libcomposite ip_tables x_tables pwrseq_simple uas realtek
[482827.380668] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G         C        5.4.32-sunxi #trunk
[482827.380674] Hardware name: Allwinner sun8i Family
[482827.380717] [&amp;lt;c010da8d&amp;gt;] (unwind_backtrace) from [&amp;lt;c010a0ad&amp;gt;] (show_stack+0x11/0x14)
[482827.380745] [&amp;lt;c010a0ad&amp;gt;] (show_stack) from [&amp;lt;c0951e8f&amp;gt;] (dump_stack+0x6f/0x7c)
[482827.380775] [&amp;lt;c0951e8f&amp;gt;] (dump_stack) from [&amp;lt;c011b5ff&amp;gt;] (__warn+0xb7/0xb8)
[482827.380799] [&amp;lt;c011b5ff&amp;gt;] (__warn) from [&amp;lt;c011b8ab&amp;gt;] (warn_slowpath_fmt+0x5f/0x74)
[482827.380822] [&amp;lt;c011b8ab&amp;gt;] (warn_slowpath_fmt) from [&amp;lt;c085019b&amp;gt;] (dev_watchdog+0x213/0x214)
[482827.380848] [&amp;lt;c085019b&amp;gt;] (dev_watchdog) from [&amp;lt;c01720c3&amp;gt;] (call_timer_fn+0x27/0x128)
[482827.380869] [&amp;lt;c01720c3&amp;gt;] (call_timer_fn) from [&amp;lt;c0172c3d&amp;gt;] (run_timer_softirq+0x3f9/0x418)
[482827.380891] [&amp;lt;c0172c3d&amp;gt;] (run_timer_softirq) from [&amp;lt;c01022f7&amp;gt;] (__do_softirq+0xdf/0x288)
[482827.380912] [&amp;lt;c01022f7&amp;gt;] (__do_softirq) from [&amp;lt;c0120353&amp;gt;] (irq_exit+0x7b/0x90)
[482827.380938] [&amp;lt;c0120353&amp;gt;] (irq_exit) from [&amp;lt;c0160517&amp;gt;] (__handle_domain_irq+0x47/0x84)
[482827.380968] [&amp;lt;c0160517&amp;gt;] (__handle_domain_irq) from [&amp;lt;c05e3bed&amp;gt;] (gic_handle_irq+0x39/0x6c)
[482827.380992] [&amp;lt;c05e3bed&amp;gt;] (gic_handle_irq) from [&amp;lt;c0101ae5&amp;gt;] (__irq_svc+0x65/0x94)
[482827.381002] Exception stack(0xc0f01f20 to 0xc0f01f68)
[482827.381022] 1f20: 00000000 54e7da08 ef69ff34 c0116341 ffffe000 c0f04f68 c0f04fb0 00000001
[482827.381041] 1f40: c0f04f48 00000000 c0ec48f0 c0ff67f6 ffffffff c0f01f70 c010792f c0107930
[482827.381050] 1f60: 40070033 ffffffff
[482827.381074] [&amp;lt;c0101ae5&amp;gt;] (__irq_svc) from [&amp;lt;c0107930&amp;gt;] (arch_cpu_idle+0x28/0x2c)
[482827.381100] [&amp;lt;c0107930&amp;gt;] (arch_cpu_idle) from [&amp;lt;c013fa47&amp;gt;] (do_idle+0x15b/0x1cc)
[482827.381121] [&amp;lt;c013fa47&amp;gt;] (do_idle) from [&amp;lt;c013fcb1&amp;gt;] (cpu_startup_entry+0x19/0x20)
[482827.381146] [&amp;lt;c013fcb1&amp;gt;] (cpu_startup_entry) from [&amp;lt;c0e00c6d&amp;gt;] (start_kernel+0x3fb/0x40c)
[482827.381158] ---[ end trace df317a78f05c9e9f ]---&lt;/pre&gt;

&lt;p&gt;
Ядро: Linux nanopi-r1 5.4.32-sunxi #trunk SMP Sat Apr 25 21:48:40 UTC 2020 armv7l armv7l armv7l GNU/Linux
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;4446-7565&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;сборка_armbian&quot;&gt;Сборка Armbian&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;/home/mike/build/userpatches/config-example.conf

./compile.sh  BOARD=nanopi-r1 BRANCH=dev RELEASE=buster BUILD_MINIMAL=no BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=yes&lt;/pre&gt;

&lt;p&gt;
или так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./compile.sh  BOARD=nanopi-r1 BRANCH=current RELEASE=buster BUILD_MINIMAL=no BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no&lt;/pre&gt;

&lt;p&gt;
На &lt;strong&gt;NanoPi R1&lt;/strong&gt; у меня работает вот так собранный &lt;strong&gt;Armbian&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo ./compile.sh  BOARD=nanopi-r1 BRANCH=current RELEASE=bionic BUILD_MINIMAL=no BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0431\u043e\u0440\u043a\u0430 Armbian&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0431\u043e\u0440\u043a\u0430_armbian&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;7566-8156&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;cобрать_образ_armbian_с_какой-то_конкрентной_версией_ядра&quot;&gt;Cобрать образ armbian с какой-то конкрентной версией ядра&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Нужно добавить строку вида:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;KERNELBRANCH=&amp;#039;tag:v4.14.52&amp;#039;&lt;/pre&gt;

&lt;p&gt;
в файл &lt;strong&gt;build/userpatches/lib.config&lt;/strong&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo &amp;#039;KERNELBRANCH=&amp;quot;branch:orange-pi-5.7&amp;quot;&amp;#039; &amp;gt; ./build/userpatches/lib.config&lt;/pre&gt;

&lt;p&gt;
Подробнее тут - &lt;a href=&quot;https://forum.armbian.com/topic/10427-specific-kernel-build/&quot; class=&quot;urlextern&quot; title=&quot;https://forum.armbian.com/topic/10427-specific-kernel-build/&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.armbian.com/topic/10427-specific-kernel-build/&lt;/a&gt; &lt;br/&gt;

Чтобы выяснить - откуда берутся сорцы ядра и какие там есть бранчи или теги идем в файлик конфига нашего устройства, например, сюда &lt;strong&gt;./config/boards/nanopi-r1.conf&lt;/strong&gt;. &lt;br/&gt;

Там видим - &lt;strong&gt;BOARDFAMILY=“sun8i”&lt;/strong&gt; &lt;br/&gt;

Значит дальше идем сюда: &lt;strong&gt;./config/sources/families/sun8i.conf&lt;/strong&gt;. &lt;br/&gt;

Там видим: &lt;strong&gt;source “${BASH_SOURCE%/*}/include/sunxi_common.inc”&lt;/strong&gt; &lt;br/&gt;

И далее смотрим сюда: &lt;strong&gt;config/sources/families/include/sunxi_common.inc&lt;/strong&gt; и видим такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;case $BRANCH in
        legacy)

                KERNELSOURCE=&amp;quot;https://github.com/megous/linux&amp;quot;
                KERNELBRANCH=&amp;quot;branch:orange-pi-5.4&amp;quot;
                KERNELPATCHDIR=&amp;#039;sunxi-&amp;#039;$BRANCH

        ;;

        current)

                KERNELSOURCE=&amp;quot;https://github.com/megous/linux&amp;quot;
                KERNELBRANCH=&amp;quot;branch:orange-pi-5.8&amp;quot;
                KERNELPATCHDIR=&amp;#039;sunxi-&amp;#039;$BRANCH

        ;;

        dev)

                KERNELSOURCE=&amp;quot;https://github.com/megous/linux&amp;quot;
                KERNELBRANCH=&amp;quot;branch:orange-pi-5.9&amp;quot;
                KERNELPATCHDIR=&amp;#039;sunxi-&amp;#039;$BRANCH
                BOOTBRANCH=&amp;#039;tag:v2020.07&amp;#039;

        ;;
esac&lt;/pre&gt;

&lt;p&gt;
Тут видно откуда берутся исходники и какие бранчи скрываются за псевдонимами (legacy, current, dev).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;C\u043e\u0431\u0440\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0437 armbian \u0441 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043a\u043e\u043d\u043a\u0440\u0435\u043d\u0442\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u044f\u0434\u0440\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;c\u043e\u0431\u0440\u0430\u0442\u044c_\u043e\u0431\u0440\u0430\u0437_armbian_\u0441_\u043a\u0430\u043a\u043e\u0439-\u0442\u043e_\u043a\u043e\u043d\u043a\u0440\u0435\u043d\u0442\u043d\u043e\u0439_\u0432\u0435\u0440\u0441\u0438\u0435\u0439_\u044f\u0434\u0440\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;8157-9992&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit5&quot; id=&quot;сборка_ядра_и_u-boot_для_nano_pi_r1_allwinner_h3&quot;&gt;Сборка ядра и u-boot для Nano Pi R1 (Allwinner H3)&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://wiki.friendlyarm.com/wiki/index.php/Building_U-boot_and_Linux_for_H5/H3/H2%2B&quot; class=&quot;urlextern&quot; title=&quot;http://wiki.friendlyarm.com/wiki/index.php/Building_U-boot_and_Linux_for_H5/H3/H2%2B&quot; rel=&quot;ugc nofollow&quot;&gt;http://wiki.friendlyarm.com/wiki/index.php/Building_U-boot_and_Linux_for_H5/H3/H2%2B&lt;/a&gt; &lt;br/&gt;

Ставим софт:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apt-get install git swig python-dev python3-dev build-essential bc bison flex u-boot-tools screen gcc-arm-linux-gnueabi libncurses-dev&lt;/pre&gt;

&lt;p&gt;
Распаковываем тулчейн (его можно найти &lt;a href=&quot;https://drive.google.com/drive/folders/1pr5qG4GHf20hv4OncTrgULM0H-haJIjW&quot; class=&quot;urlextern&quot; title=&quot;https://drive.google.com/drive/folders/1pr5qG4GHf20hv4OncTrgULM0H-haJIjW&quot; rel=&quot;ugc nofollow&quot;&gt;тут&lt;/a&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;tar xf arm-cortexa9-linux-gnueabihf-4.9.3-20160512.tar.xz -C /opt/FriendlyARM/toolchain/
export PATH=/opt/FriendlyARM/toolchain/4.9.3/bin:$PATH
export GCC_COLORS=auto
. ~/.bashrc
arm-linux-gcc -v&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0431\u043e\u0440\u043a\u0430 \u044f\u0434\u0440\u0430 \u0438 u-boot \u0434\u043b\u044f Nano Pi R1 (Allwinner H3)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0431\u043e\u0440\u043a\u0430_\u044f\u0434\u0440\u0430_\u0438_u-boot_\u0434\u043b\u044f_nano_pi_r1_allwinner_h3&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:6,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;9993-10685&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;собираем_u-boot&quot;&gt;Собираем U-Boot&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;cd ~
git clone https://github.com/friendlyarm/u-boot.git -b sunxi-v2017.x --depth 1
cd u-boot/
make nanopi_h3_defconfig ARCH=arm CROSS_COMPILE=arm-linux-
make ARCH=arm CROSS_COMPILE=arm-linux-&lt;/pre&gt;

&lt;p&gt;
в результате получится файлик &lt;strong&gt;u-boot-sunxi-with-spl.bin&lt;/strong&gt;, который можно записать на SD-карточку:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dd if=u-boot-sunxi-with-spl.bin of=/dev/sdX bs=1024 seek=8&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0431\u0438\u0440\u0430\u0435\u043c U-Boot&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c_u-boot&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:6,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;10686-11142&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;собираем_ядро&quot;&gt;Собираем ядро&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Вариантов пара - собрать то что предлагает &lt;strong&gt;FriendlyARM&lt;/strong&gt;, либо &lt;strong&gt;mainline kernel&lt;/strong&gt;. &lt;br/&gt;

В конце концов, я пришел к тому, что собрать придется оба ядра! &lt;br/&gt;

Mainline - новое и хорошее, при его работе (в по крайней мере под qemu) не возникает некоторых ошибок типа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;thermal thermal_zone0: failed to read out thermal zone (-16)&lt;/pre&gt;

&lt;p&gt;
Зато с ядром от &lt;strong&gt;FriendlyARM&lt;/strong&gt; собираются родные для этих устройств файлы &lt;strong&gt;DTB&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0431\u0438\u0440\u0430\u0435\u043c \u044f\u0434\u0440\u043e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c_\u044f\u0434\u0440\u043e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:6,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;11143-11798&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit8&quot; id=&quot;ядро_от_friendlyarm_-_414&quot;&gt;Ядро от FriendlyARM - 4.14&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;cd ~
git clone https://github.com/friendlyarm/linux.git -b sunxi-4.14.y --depth 1
cd linux
touch .scmversion
make sunxi_defconfig ARCH=arm CROSS_COMPILE=arm-linux-
make zImage dtbs ARCH=arm CROSS_COMPILE=arm-linux-&lt;/pre&gt;

&lt;p&gt;
Теперь образы ядра и файлики dtb можно скопировать на загрузочный разле флехи:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cp arch/arm/boot/zImage /media/SD/boot/
cp arch/arm/boot/dts/sun8i-*-nanopi-*.dtb /media/SD/boot/&lt;/pre&gt;

&lt;p&gt;
Теперь соберем модули:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cd ~/linux
make modules ARCH=arm CROSS_COMPILE=arm-linux-&lt;/pre&gt;

&lt;p&gt;
и скопируем их на флеху. Считаем, что корневой раздел системы смонтирован в /media/SD/rootfs/:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cd ~/linux
make modules_install INSTALL_MOD_PATH=/media/SD/rootfs/ ARCH=arm CROSS_COMPILE=arm-linux-&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042f\u0434\u0440\u043e \u043e\u0442 FriendlyARM - 4.14&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044f\u0434\u0440\u043e_\u043e\u0442_friendlyarm_-_414&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:6,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;11799-12677&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit9&quot; id=&quot;ядро_mainline&quot;&gt;Ядро Mainline&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;git clone https://github.com/torvalds/linux.git -b master --depth 1 mainline_linux
cd mainline_linux&lt;/pre&gt;

&lt;p&gt;
Вот &lt;a href=&quot;https://www.qemu.org/docs/master/system/arm/orangepi.html#running-mainline-linux&quot; class=&quot;urlextern&quot; title=&quot;https://www.qemu.org/docs/master/system/arm/orangepi.html#running-mainline-linux&quot; rel=&quot;ugc nofollow&quot;&gt;тут написано&lt;/a&gt;, что под &lt;strong&gt;orangepi&lt;/strong&gt; ядро надо собирать с помощью &lt;strong&gt;arm-linux-gnueabi-&lt;/strong&gt;, однако у &lt;strong&gt;FriendlyARM&lt;/strong&gt; написано, что с помощью &lt;strong&gt;arm-linux-&lt;/strong&gt; из их тулчейна. Я буду собирать с  &lt;strong&gt;arm-linux-&lt;/strong&gt;. Хотя, в чем именно разница - я не знаю, по крайней мере пока. &lt;br/&gt;

Для начала - скопируем файлик &lt;strong&gt;sunxi_defconfig&lt;/strong&gt;, который идет с ядром от &lt;strong&gt;FriendlyARM&lt;/strong&gt;, в &lt;strong&gt;mainline&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cp ./linux/arch/arm/configs/sunxi_defconfig ./mainline_linux/arch/arm/configs/sunxi_defconfig&lt;/pre&gt;

&lt;p&gt;
Также, в &lt;strong&gt;mainline&lt;/strong&gt; может не быть исходников некоторых модулей. Скопируем их:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cp ./linux/drivers/net/ethernet/allwinner/* ./mainline_linux/drivers/net/ethernet/allwinner/&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt;export PATH=/opt/FriendlyARM/toolchain/4.9.3/bin:$PATH
export GCC_COLORS=auto
ARCH=arm CROSS_COMPILE=arm-linux- make mrproper
make sunxi_defconfig ARCH=arm CROSS_COMPILE=arm-linux-
make ARCH=arm CROSS_COMPILE=arm-linux-&lt;/pre&gt;

&lt;p&gt;
И соберем модули:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;make modules ARCH=arm CROSS_COMPILE=arm-linux-&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042f\u0434\u0440\u043e Mainline&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044f\u0434\u0440\u043e_mainline&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:6,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;12678-14111&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit10&quot; id=&quot;запуск_в_эмуляторе&quot;&gt;Запуск в эмуляторе&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Вот тут страничка &lt;strong&gt;qemu-system-arm&lt;/strong&gt;, посвященная эмуляции &lt;strong&gt;OrangePi&lt;/strong&gt; (который тоже на &lt;strong&gt;Allwinner H3&lt;/strong&gt;): &lt;a href=&quot;https://www.qemu.org/docs/master/system/arm/orangepi.html&quot; class=&quot;urlextern&quot; title=&quot;https://www.qemu.org/docs/master/system/arm/orangepi.html&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.qemu.org/docs/master/system/arm/orangepi.html&lt;/a&gt; &lt;br/&gt;

Судя по &lt;a href=&quot;https://lore.kernel.org/qemu-devel/6d774864-2bea-ecd6-0b14-a28d0756bfbc@adacore.com/&quot; class=&quot;urlextern&quot; title=&quot;https://lore.kernel.org/qemu-devel/6d774864-2bea-ecd6-0b14-a28d0756bfbc@adacore.com/&quot; rel=&quot;ugc nofollow&quot;&gt;обсуждениям патчей&lt;/a&gt; поддержка эмуляции машин на &lt;strong&gt;Allwinner H3&lt;/strong&gt; появилась совсем недавно - в конце 2019 года. &lt;br/&gt;

Вот тут описан запуск собранного u-boot и ядра: &lt;br/&gt;

&lt;a href=&quot;https://dev.to/rulyrudel/how-to-execute-u-boot-on-qemu-system-arm-2b22&quot; class=&quot;urlextern&quot; title=&quot;https://dev.to/rulyrudel/how-to-execute-u-boot-on-qemu-system-arm-2b22&quot; rel=&quot;ugc nofollow&quot;&gt;https://dev.to/rulyrudel/how-to-execute-u-boot-on-qemu-system-arm-2b22&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://pandysong.github.io/blog/post/run_u-boot_in_qemu/&quot; class=&quot;urlextern&quot; title=&quot;https://pandysong.github.io/blog/post/run_u-boot_in_qemu/&quot; rel=&quot;ugc nofollow&quot;&gt;https://pandysong.github.io/blog/post/run_u-boot_in_qemu/&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043f\u0443\u0441\u043a \u0432 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043f\u0443\u0441\u043a_\u0432_\u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;14112-14885&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit11&quot; id=&quot;собираем_последний_qemu&quot;&gt;Собираем последний qemu&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.qemu.org/download/#source&quot; class=&quot;urlextern&quot; title=&quot;https://www.qemu.org/download/#source&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.qemu.org/download/#source&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cd ~
apt-get install git build-essential zlib1g-dev pkg-config libglib2.0-dev binutils-dev libboost-all-dev autoconf libtool libssl-dev libpixman-1-dev libpython-dev python-pip python-capstone virtualenv
git clone https://git.qemu.org/git/qemu.git
cd qemu
git submodule init
git submodule update --recursive
./configure
make&lt;/pre&gt;

&lt;p&gt;
Теперь можно посмотреть список машин, который поддерживается и попробывать запустить собранное ядро или u-boot:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cd ~
./qemu/arm-softmmu/qemu-system-arm -machine help | grep orangepi
...
./qemu/arm-softmmu/qemu-system-arm -M orangepi-pc -nic user -nographic \
    kernel ./linux/arch/arm/boot/zImage \
    -append &amp;#039;console=ttyS0,115200&amp;#039; \
    -dtb ./linux/arch/arm/boot/dts/sun8i-h3-nanopi-r1.dtb&lt;/pre&gt;

&lt;p&gt;
Так как никакой корневой файловой системы у нас нет, то всё закончится так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;.....
[    4.075519] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)&lt;/pre&gt;

&lt;p&gt;
Но ядро запустилось!
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 qemu&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c_\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439_qemu&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;14886-16117&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit12&quot; id=&quot;сборка_образа_минимальной_системы_debian&quot;&gt;Сборка образа минимальной системы debian&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.debian.org/EmDebian/CrossDebootstrap#Cross-installing_Debian_using_debootstrap.2Fmultistrap&quot; class=&quot;urlextern&quot; title=&quot;https://wiki.debian.org/EmDebian/CrossDebootstrap#Cross-installing_Debian_using_debootstrap.2Fmultistrap&quot; rel=&quot;ugc nofollow&quot;&gt;https://wiki.debian.org/EmDebian/CrossDebootstrap#Cross-installing_Debian_using_debootstrap.2Fmultistrap&lt;/a&gt; &lt;br/&gt;

&lt;br/&gt;

&lt;a href=&quot;https://wiki.debian.org/Multistrap&quot; class=&quot;urlextern&quot; title=&quot;https://wiki.debian.org/Multistrap&quot; rel=&quot;ugc nofollow&quot;&gt;https://wiki.debian.org/Multistrap&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://manpages.debian.org/jessie/multistrap/multistrap.1&quot; class=&quot;urlextern&quot; title=&quot;https://manpages.debian.org/jessie/multistrap/multistrap.1&quot; rel=&quot;ugc nofollow&quot;&gt;https://manpages.debian.org/jessie/multistrap/multistrap.1&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://gitlab.mister-muffin.de/josch/multistrap/commit/b54b65b9f73bdb97d9c2486f0eb021b2b1a2d30e&quot; class=&quot;urlextern&quot; title=&quot;https://gitlab.mister-muffin.de/josch/multistrap/commit/b54b65b9f73bdb97d9c2486f0eb021b2b1a2d30e&quot; rel=&quot;ugc nofollow&quot;&gt;https://gitlab.mister-muffin.de/josch/multistrap/commit/b54b65b9f73bdb97d9c2486f0eb021b2b1a2d30e&lt;/a&gt;  &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install multistrap kpartx qemu qemu-user-static binfmt-support dpkg-cross &lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0431\u043e\u0440\u043a\u0430 \u043e\u0431\u0440\u0430\u0437\u0430 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b debian&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0431\u043e\u0440\u043a\u0430_\u043e\u0431\u0440\u0430\u0437\u0430_\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439_\u0441\u0438\u0441\u0442\u0435\u043c\u044b_debian&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;16118-16605&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit13&quot; id=&quot;создаем_образ_флехи&quot;&gt;Создаем образ флехи&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt; cd ~
fallocate -l 4G debian-stable.img
disk=&amp;#039;debian-stable.img&amp;#039;
sgdisk --zap-all $disk
sgdisk --mbrtogpt --clear $disk
sgdisk --new=1:2048:+64Mib $disk
sgdisk --typecode=1:8300 $disk
sgdisk -N0 $disk
sgdisk --typecode=2:8300 $disk&lt;/pre&gt;

&lt;p&gt;
Создадим loop-устройства и обнаружим на них партиции:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo kpartx -v -a ./debian-stable.img&lt;/pre&gt;

&lt;p&gt;
В выводе будет что-то такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;add map loop4p1 (253:2): 0 524289 linear 7:4 2048
add map loop4p2 (253:3): 0 7860191 linear 7:4 528384&lt;/pre&gt;

&lt;p&gt;
Отформатируем эти партиции, создадим точки монтирования и смонтируем их! &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mkfs.ext4 /dev/mapper/loop4p2
sudo mkfs.ext2 /dev/mapper/loop4p1
mkdir debian-stable
sudo mount  /dev/mapper/loop4p2 ./debian-stable
sudo mkdir ./debian-stable/boot
sudo mount  /dev/mapper/loop4p1 ./debian-stable/boot&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043e\u0431\u0440\u0430\u0437 \u0444\u043b\u0435\u0445\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u0435\u043c_\u043e\u0431\u0440\u0430\u0437_\u0444\u043b\u0435\u0445\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;16606-17568&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit14&quot; id=&quot;заливка_минимальной_системы_debian&quot;&gt;Заливка минимальной системы debian&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Для создания системы я применю &lt;a href=&quot;https://wiki.debian.org/Multistrap&quot; class=&quot;urlextern&quot; title=&quot;https://wiki.debian.org/Multistrap&quot; rel=&quot;ugc nofollow&quot;&gt;Multistrap&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043b\u0438\u0432\u043a\u0430 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b debian&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043b\u0438\u0432\u043a\u0430_\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439_\u0441\u0438\u0441\u0442\u0435\u043c\u044b_debian&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:12,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;17569-17748&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit15&quot; id=&quot;debian-stableconf&quot;&gt;./debian-stable.conf&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Минимальный конфигурационный файлик &lt;strong&gt;Multistrap&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[General]
unpack=true
bootstrap=Debian
aptsources=Debian
#cleanup=true

[Debian]
packages=systemd libnss-systemd libpam-systemd dbus default-dbus-session-bus
source=http://ftp.ru.debian.org/debian
keyring=debian-archive-keyring
suite=stable&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;.\/debian-stable.conf&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;debian-stableconf&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:12,&amp;quot;secid&amp;quot;:15,&amp;quot;range&amp;quot;:&amp;quot;17749-18118&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit16&quot; id=&quot;заливаем_систему&quot;&gt;Заливаем систему&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Теперь на смонтированные разделы нашего файла-образа я залью минимальную систему &lt;strong&gt;debian&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo multistrap -a armhf -d ./debian-stable -f ./debian-stable.conf&lt;/pre&gt;

&lt;p&gt;
При попытке собрать файловую систему появляется ошибка:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;E: The repository &amp;#039;http://ftp.ru.debian.org/debian buster InRelease&amp;#039; is not signed.  &lt;/pre&gt;

&lt;p&gt;
Причина в том, что в скрипте &lt;strong&gt;multistrap&lt;/strong&gt; некорректно устанавливается значение опции &lt;strong&gt;AllowUnauthenticated&lt;/strong&gt;. Описано тут: &lt;a href=&quot;https://github.com/volumio/Build/issues/348#issuecomment-462271607&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/volumio/Build/issues/348#issuecomment-462271607&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/volumio/Build/issues/348#issuecomment-462271607&lt;/a&gt; &lt;br/&gt;

Патчим &lt;strong&gt;multistrap&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo sed -i &amp;#039;s/Apt::Get::AllowUnauthenticated=true/Acquire::AllowInsecureRepositories=true/g&amp;#039;  /usr/sbin/multistrap&lt;/pre&gt;

&lt;p&gt;
и пробуем снова (в конфигурации должна быть опция &lt;strong&gt;keyring=debian-archive-keyring&lt;/strong&gt;, а &lt;strong&gt;noauth=true&lt;/strong&gt; быть не должно!):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo multistrap -a armhf -d ./debian-stable -f ./debian-stable.conf&lt;/pre&gt;

&lt;p&gt;
В результате всё получается и в директории &lt;strong&gt;./debian-stable&lt;/strong&gt; (куда смонтирован второй раздел файлика-образа) мы наблюдаем корневую файловую систему текущей стабильной версии &lt;strong&gt;Debian&lt;/strong&gt; для архитектуры &lt;strong&gt;armhf&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043b\u0438\u0432\u0430\u0435\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043b\u0438\u0432\u0430\u0435\u043c_\u0441\u0438\u0441\u0442\u0435\u043c\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:16,&amp;quot;range&amp;quot;:&amp;quot;18119-19610&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit17&quot; id=&quot;первичная_конфигурация_пакетов&quot;&gt;Первичная конфигурация пакетов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Запускать в &lt;strong&gt;chroot&lt;/strong&gt; исполняемые файлы для архитектуры &lt;strong&gt;arm&lt;/strong&gt; нам позволят ранее установленные в хостовой системе пакеты &lt;strong&gt;qemu-user-static&lt;/strong&gt;, &lt;strong&gt;binfmt-support&lt;/strong&gt; и &lt;strong&gt;dpkg-cross&lt;/strong&gt;. &lt;br/&gt;

Подключим &lt;strong&gt;/dev&lt;/strong&gt; (что необходимо для работы с &lt;strong&gt;/dev/null&lt;/strong&gt; и &lt;strong&gt;/dev/urandom&lt;/strong&gt;) и настроим пакеты:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mount -o bind /dev/ ./debian-stable/dev/
sudo LC_ALL=C LANGUAGE=C LANG=C DEBIAN_FRONTEND=noninteractive chroot debian-stable bash -c &amp;#039;echo &amp;quot;dash dash/sh boolean false&amp;quot; | debconf-set-selections &amp;amp;&amp;amp;  dpkg --configure -a&amp;#039;&lt;/pre&gt;

&lt;p&gt;
Для настройки некоторых пакетов нужно задать пароль &lt;strong&gt;root&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo chroot debian-stable/ passwd&lt;/pre&gt;

&lt;p&gt;
Теперь донастроим оставшиеся пакеты:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo LC_ALL=C LANGUAGE=C LANG=C DEBIAN_FRONTEND=noninteractive chroot debian-stable dpkg --configure -a&lt;/pre&gt;

&lt;p&gt;
Теперь скопируем ядро и &lt;strong&gt;dtb&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo cp ./mainline_linux/arch/arm/boot/zImage ./debian-stable/boot/
sudo cp ./mainline_linux/arch/arm/boot/dts/sun8i-h3-nanopi-r1.dt* ./debian-stable/boot/&lt;/pre&gt;

&lt;p&gt;
Дальше нужно перенести в систему модули ядра, которые мы собрали раньше:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cd ./mainline_linux
sudo PATH=/opt/FriendlyARM/toolchain/4.9.3/bin:$PATH make modules_install INSTALL_MOD_PATH=../debian-stable ARCH=arm CROSS_COMPILE=arm-linux-&lt;/pre&gt;

&lt;p&gt;
Теперь можно сделать файлик &lt;strong&gt;/etc/fstab&lt;/strong&gt;. Для этого - посмотрим UUID партиций и создадим &lt;strong&gt;/etc/fstab&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;blkid /dev/mapper/loop4p1
/dev/mapper/loop4p1: UUID=&amp;quot;85b026f4-afd7-4ecf-8679-dd0c87e628bb&amp;quot; TYPE=&amp;quot;ext2&amp;quot; PARTUUID=&amp;quot;f9c59bb5-1bde-441b-8e5a-9eeff8e77693&amp;quot;
blkid /dev/mapper/loop4p2
/dev/mapper/loop4p2: UUID=&amp;quot;683177df-8d27-4733-a490-c8e69fb0b525&amp;quot; TYPE=&amp;quot;ext4&amp;quot; PARTUUID=&amp;quot;9faf1102-5994-4226-ac73-adc6b6e4e043&amp;quot;&lt;/pre&gt;

&lt;p&gt;
В итоге &lt;strong&gt;/etc/fstab&lt;/strong&gt; будет такой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;UUID=683177df-8d27-4733-a490-c8e69fb0b525   /      ext4   defaults,discard,noatime,nodiratime   0   1
UUID=85b026f4-afd7-4ecf-8679-dd0c87e628     /boot  ext2   defaults,discard,noatime,nodiratime   0   1&lt;/pre&gt;

&lt;p&gt;
Заменим дефолтный target: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo rm -f ./debian-stable/etc/systemd/system/default.target
sudo ln -s /lib/systemd/system/multi-user.target ./debian-stable/etc/systemd/system/default.target&lt;/pre&gt;

&lt;p&gt;
И создадим симлинк для того, чтобы появилось устройство &lt;strong&gt;ttyS0&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo ln -s /lib/systemd/system/getty@.service ./debian-stable/etc/systemd/system/getty.target.wants/getty@ttyS0.service&lt;/pre&gt;

&lt;p&gt;
Если этого не сделать - будут ошибки типа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[  *** ] A start job is running for /dev/ttyS0 (1min 29s / 1min 30s)
[ TIME ] Timed out waiting for device /dev/ttyS0.
[DEPEND] Dependency failed for Serial Getty on ttyS0.&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0432\u0438\u0447\u043d\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043f\u0430\u043a\u0435\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0432\u0438\u0447\u043d\u0430\u044f_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f_\u043f\u0430\u043a\u0435\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:17,&amp;quot;range&amp;quot;:&amp;quot;19611-22597&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit18&quot; id=&quot;отмонтируем_файл-образ_и_попробуем_запуститься&quot;&gt;Отмонтируем файл-образ и попробуем запуститься&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;cd ~
sudo umount ./debian-stable/boot
sudo umount ./debian-stable&lt;/pre&gt;

&lt;p&gt;
Удалим loop-устройства:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo kpartx -d ./debian-stable.img&lt;/pre&gt;

&lt;p&gt;
И попробуем запуститься с ядром &lt;strong&gt;mainline&lt;/strong&gt; и &lt;strong&gt;dtb&lt;/strong&gt; из поставки ядра от &lt;strong&gt;FriendlyARM&lt;/strong&gt;!
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./qemu/arm-softmmu/qemu-system-arm -M orangepi-pc \
-nic user -nographic -kernel ./mainline_linux/arch/arm/boot/zImage  \
-append &amp;#039;console=ttyS0,115200 root=/dev/mmcblk0p2&amp;#039; \
-dtb ./linux/arch/arm/boot/dts/sun8i-h3-nanopi-r1.dtb \
-sd ./debian-stable.img&lt;/pre&gt;

&lt;p&gt;
В итоге - не смотря на некоторые ошибки с сервисами &lt;strong&gt;systemd&lt;/strong&gt;, система смогла загрузиться, а я смог в нее залогиниться с паролем, заданным на этапе создания образа.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043c\u043e\u043d\u0442\u0438\u0440\u0443\u0435\u043c \u0444\u0430\u0439\u043b-\u043e\u0431\u0440\u0430\u0437 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c\u0441\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043c\u043e\u043d\u0442\u0438\u0440\u0443\u0435\u043c_\u0444\u0430\u0439\u043b-\u043e\u0431\u0440\u0430\u0437_\u0438_\u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c_\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c\u0441\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:18,&amp;quot;range&amp;quot;:&amp;quot;22598-23541&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit19&quot; id=&quot;загрузка_системы_на_реальной_железке&quot;&gt;Загрузка системы на реальной железке&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Самым логичным способом, чтобы настройки загрузки на флехе соотвествовали настройкам U-Boot в железке, было бы взять образ флехи от производителя (например с ubuntu xenial), подмонтировать его и заменить файлик ядра и корневую файловую систему.&lt;br/&gt;

Я так и поступил. &lt;br/&gt;

&lt;br/&gt;

Но можно пойти трудным путем и пытаться сделать все вручную.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043d\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439 \u0436\u0435\u043b\u0435\u0437\u043a\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430_\u0441\u0438\u0441\u0442\u0435\u043c\u044b_\u043d\u0430_\u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439_\u0436\u0435\u043b\u0435\u0437\u043a\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:14,&amp;quot;secid&amp;quot;:19,&amp;quot;range&amp;quot;:&amp;quot;23542-24204&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit20&quot; id=&quot;исследование_конфигурации_u-boot&quot;&gt;Исследование конфигурации U-Boot&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Судя по начальным сообщениям:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;DRAM: 1024 MiB(408MHz)
CPU Freq: 408MHz
memory test: 1
Pattern 55aa  Writing...Reading...OK
Trying to boot from MMC2
Boot device: emmc


U-Boot 2017.11 (Oct 18 2019 - 02:50:31 +0800) Allwinner Technology

CPU:   Allwinner H3 (SUN8I 1680)
Model: FriendlyElec NanoPi H3
DRAM:  1 GiB
CPU Freq: 1008MHz
MMC:   SUNXI SD/MMC: 1, SUNXI SD/MMC: 0
*** Warning - bad CRC, using default environment&lt;/pre&gt;

&lt;p&gt;
И судя по тому, что начинает загружаться предустановленная система - я что-то сделал не так. &lt;br/&gt;

Наверное надо взять официальный образ и посмотреть что внутри. &lt;br/&gt;

Кстати, в выводе &lt;strong&gt;printenv&lt;/strong&gt; некоторые особенности. Чтобы &lt;strong&gt;printenv&lt;/strong&gt; выводил длинные строки целиком необходимо в терминале включить &lt;strong&gt;wrapping&lt;/strong&gt; в minicom это можно сделать нажав &lt;strong&gt;Ctrl-A&lt;/strong&gt;, затем &lt;strong&gt;Z&lt;/strong&gt; и затем &lt;strong&gt;W&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;arch=arm
baudrate=115200
board=nanopi-r1
board_name=sunxi
boot_a_script=load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}
boot_efi_binary=if fdt addr ${fdt_addr_r}; then bootefi bootmgr ${fdt_addr_r};else bootefi bootmgr ${fdtcontroladdr};fi;load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} efi/booti
boot_extlinux=sysboot ${devtype} ${devnum}:${distro_bootpart} any ${scriptaddr} ${prefix}extlinux/extlinux.conf
boot_mmc=2
boot_net_usb_start=usb start
boot_prefixes=/ /boot/
boot_script_dhcp=boot.scr.uimg
boot_scripts=boot.scr.uimg boot.scr
boot_targets=fel mmc_auto usb0 pxe dhcp 
bootcmd=fatload mmc 0:1 ${scriptaddr} boot.scr; source ${scriptaddr}
bootcmd_dhcp=run boot_net_usb_start; if dhcp ${scriptaddr} ${boot_script_dhcp}; then source ${scriptaddr}; fi;setenv efi_fdtfile ${fdtfile}; if test -z &amp;quot;${fdtfile}&amp;quot; -a -n &amp;quot;${soc}&amp;quot;; then sete;
bootcmd_fel=if test -n ${fel_booted} &amp;amp;&amp;amp; test -n ${fel_scriptaddr}; then echo &amp;#039;(FEL boot)&amp;#039;; source ${fel_scriptaddr}; fi
bootcmd_mmc0=setenv devnum 0; run mmc_boot
bootcmd_mmc1=setenv devnum 1; run mmc_boot
bootcmd_mmc_auto=run bootcmd_mmc0
bootcmd_pxe=run boot_net_usb_start; dhcp; if pxe get; then pxe boot; fi
bootcmd_usb0=setenv devnum 0; run usb_boot
bootdelay=2
bootm_size=0xa000000
console=ttyS0,115200
cpu=h3
dfu_alt_info_ram=kernel ram 0x42000000 0x1000000;fdt ram 0x43000000 0x100000;ramdisk ram 0x43300000 0x4000000
distro_bootcmd=for target in ${boot_targets}; do run bootcmd_${target}; done
efi_dtb_prefixes=/ /dtb/ /dtb/current/
ethaddr=02:81:8a:99:42:c5
fdt_addr_r=0x43000000
fdtcontroladdr=7bf4fa48
fdtfile=sun8i-h3-nanopi-m1-plus.dtb
kernel_addr_r=0x42000000
load_efi_dtb=load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} ${prefix}${efi_fdtfile}
mmc_boot=if mmc dev ${devnum}; then setenv devtype mmc; run scan_dev_for_boot_part; fi
mmc_bootdev=1
preboot=usb start
pxefile_addr_r=0x43200000
ramdisk_addr_r=0x43300000
scan_dev_for_boot=echo Scanning ${devtype} ${devnum}:${distro_bootpart}...; for prefix in ${boot_prefixes}; do run scan_dev_for_extlinux; run scan_dev_for_scripts; done;run scan_dev_for_efi;
scan_dev_for_boot_part=part list ${devtype} ${devnum} -bootable devplist; env exists devplist || setenv devplist 1; for distro_bootpart in ${devplist}; do if fstype ${devtype} ${devnum}:${die
scan_dev_for_efi=setenv efi_fdtfile ${fdtfile}; if test -z &amp;quot;${fdtfile}&amp;quot; -a -n &amp;quot;${soc}&amp;quot;; then setenv efi_fdtfile ${soc}-${board}${boardver}.dtb; fi; for prefix in ${efi_dtb_prefixes}; do if te
scan_dev_for_extlinux=if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}extlinux/extlinux.conf; then echo Found ${prefix}extlinux/extlinux.conf; run boot_extlinux; echo SCRIPT FAILi
scan_dev_for_scripts=for script in ${boot_scripts}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script}; run boot_a_scre
scriptaddr=0x43100000
serial#=02c000818a9942c5
soc=sunxi
stderr=serial
stdin=serial,usbkbd
stdout=serial
usb_boot=usb start; if usb dev ${devnum}; then setenv devtype usb; run scan_dev_for_boot_part; fi
wifi_mac_node=[2 c5 42 99 8a 81]&lt;/pre&gt;

&lt;p&gt;
Во-первых - &lt;strong&gt;DTB&lt;/strong&gt; не от &lt;strong&gt;nanopi-r1&lt;/strong&gt;, а &lt;strong&gt;sun8i-h3-nanopi-m1-plus.dtb&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 U-Boot&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438_u-boot&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:14,&amp;quot;secid&amp;quot;:20,&amp;quot;range&amp;quot;:&amp;quot;24205-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Tue, 17 Nov 2020 18:28:35 +0000</pubDate>
        </item>
        <item>
            <title>отключился_rdp</title>
            <link>https://wiki.autosys.tk/ms_windows_ms_sql/%D0%BE%D1%82%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D0%BB%D1%81%D1%8F_rdp</link>
            <description>
&lt;p&gt;
2008R2
Отключился RDP
Что попробывал:
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
1. if the patches show installed
Windows Server 2008 R2 for x64-based Systems and Windows Server 2008 R2 for x64-based Systems Service Pack 1*
OR
Windows 7 for x86 or x64 based Systems Service Pack 1*
(KB2621440)
Windows Server 2008 R2 for x64-based Systems and Windows Server 2008 R2 for x64-based Systems Service Pack 1*
OR
Windows 7 for x86 or x64 based Systems Service Pack 1*
(KB2667402)
please uninstall these patches and reboot your box.
run sfc /scannow to confirm that theres no file level corruption
ensure that rdpcorekmts.dll file exists and is SP1 version that is it 6.1.7601.xxxx
2. Export following registry entry from working RDP machine and  Import to machine having RDP issue.
HKEY_CLASSES_ROOT\CLSID\{18b726bb-6fe6-4fb9-9276-ed57ce7c7cb2}
reboot the box. Post reboot ensure that 3389 is listening using  command netstat -a
3. Import the following registry entries and try to RDP
HKLM\SYSTEM\CurrentControlSet\Control\Video\{DEB039CC-B704-4F53-B43E-9DD4432FA2E9}
HKLM\SYSTEM\CurrentControlSet\services\RDPDD
Able to RDP fine.
4. reinstall Windows Server 2008 R2 for x64-based Systems and Windows Server 2008 R2 for x64-based Systems Service Pack 1*
OR
Windows 7 for x86 or x64 based Systems Service Pack 1*
(KB2621440)
Windows Server 2008 R2 for x64-based Systems and Windows Server 2008 R2 for x64-based Systems Service Pack 1*
OR
Windows 7 for x86 or x64 based Systems Service Pack 1*
(KB2667402)   -  
reboot and verify that RDP is still working
I hope this will help many people with same RDP problem. If this works for you as well then put comment to help others.
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
1) Go to a working system, run Regedit and “Export”
&lt;/p&gt;

&lt;p&gt;
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
&lt;/p&gt;

&lt;p&gt;
to a .REG file;
&lt;/p&gt;

&lt;p&gt;
2) Go to the NOT working system, stops the services “Remote Desktop Services”, “Remote Desktop Configuration” and “Remote Desktop Services UserMode Port Redirector”;
&lt;/p&gt;

&lt;p&gt;
3) Import de .REG file created in the step 1 and Reboot the system;
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
Uninstall 
&lt;/p&gt;

&lt;p&gt;
KB2830477 
KB2592687
&lt;/p&gt;

&lt;p&gt;
Не помогло
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
А помогло удаление ветки реестра [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp] и импорт с начисто установленной системы.
&lt;/p&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>citrix_vda_on_ubuntu_1604_kde</title>
            <link>https://wiki.autosys.tk/citrix/citrix_vda_on_ubuntu_1604_kde</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Пакет &lt;strong&gt;Citrix XenDesktop VDA 7.13&lt;/strong&gt; для &lt;strong&gt;Ubuntu 16.04&lt;/strong&gt; расчитан на установку в стандартной поставке &lt;strong&gt;Ubuntu&lt;/strong&gt; с &lt;strong&gt;Unity (Gnome)&lt;/strong&gt;.
Если попытаться установить пакет в &lt;strong&gt;Kubuntu 16.04&lt;/strong&gt; (или &lt;strong&gt;ubuntu server&lt;/strong&gt; + &lt;strong&gt;KDE&lt;/strong&gt;), то он не установится, ссылаясь на отсутствующую зависимость &lt;strong&gt;ubuntu-desktop&lt;/strong&gt;. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-468&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Для того, чтобы установить &lt;strong&gt;Citrix XenDesktop VDA&lt;/strong&gt; для &lt;strong&gt;Ubuntu 16.04&lt;/strong&gt; в &lt;strong&gt;Kubuntu 16.04&lt;/strong&gt; нужно отредактировать список зависимостей в пакете.
Для этого:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dpkg-deb -x xendesktopvda_7.13.0.382-1.ubuntu16.04_amd64.deb vda_temp
dpkg-deb --control xendesktopvda_7.13.0.382-1.ubuntu16.04_amd64.deb vda_temp/DEBIAN
sed -i &amp;#039;s/, ubuntu-desktop.\{5,10\})//&amp;#039; ./vda_temp/DEBIAN/control
dpkg -b vda_temp xendesktopvda_7.13.0.382-1.Kubuntu16.04_amd64.deb&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;469-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>manual_configure_license_server_for_rds_2012</title>
            <link>https://wiki.autosys.tk/citrix/manual_configure_license_server_for_rds_2012</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Сервера Windows 2012 в составе фермы XenDesktop 2012 не видит никаких серверов лицензирования RDS и не пускает пользователей. Задать сервер лицензирования с помощью &lt;abbr title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/abbr&gt; или Powershell можно только в составе фермы RDS Microsoft. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-401&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Можно указать сервер лицнзирования с помощью локальной политики.
Запускаем &lt;strong&gt;gpedit.msc&lt;/strong&gt;
Дальше идем в раздельчик: &lt;strong&gt;Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Licensing&lt;/strong&gt; и тут указываем необходимые параметры. 
&lt;/p&gt;

&lt;p&gt;
Также можно задать сервер лицензирования напрямую в реестре: &lt;strong&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;LicenseServers 	&amp;lt;license server&amp;gt;
LicensingMode 	2 for PerDevice; 4 for PerUser &lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;402-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>powershell_script_for_batch_update_vda</title>
            <link>https://wiki.autosys.tk/citrix/powershell_script_for_batch_update_vda</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;для_чего_это_всё&quot;&gt;Для чего это всё&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Данный скрипт предназначен для массового апдейта &lt;strong&gt;Citrix VDA&lt;/strong&gt; (в моем случае с версии 7.8 до 7.15) на виртуальных (&lt;strong&gt;Machine Creation Service&lt;/strong&gt;) либо физических машинах. &lt;br/&gt;

Разработка и тестирование этого скрипта проводились в сети с жесткими политиками безопасности, где запрещены файловые шары, невозможно использование &lt;strong&gt;RPC&lt;/strong&gt; (в том числе &lt;strong&gt;psexec.exe&lt;/strong&gt; - на машинах выключена служба “Сервер”), невозможно использование удаленного &lt;strong&gt;powershell&lt;/strong&gt;, запрещена даже установка пакетов &lt;strong&gt;MSU&lt;/strong&gt; с помощью &lt;strong&gt;wusa.exe&lt;/strong&gt;.  Есть только учетные данные локального администратора. Все манипуляции на удаленных машинах производятся с помощью вызова методов &lt;strong&gt;WMI&lt;/strong&gt;. &lt;br/&gt;

В процессе тестирования были выявлены проблемы, связанные с библиотеками &lt;strong&gt;С++&lt;/strong&gt; (ошибки &lt;strong&gt;1603&lt;/strong&gt;, &lt;strong&gt;1157&lt;/strong&gt; и &lt;strong&gt;1723&lt;/strong&gt;). Решение этой проблемы - &lt;a href=&quot;https://wiki.autosys.tk/citrix/vda_7.x_installation_error_1723_applycomsecuritycustomaction&quot; class=&quot;wikilink1&quot; title=&quot;citrix:vda_7.x_installation_error_1723_applycomsecuritycustomaction&quot; data-wiki-id=&quot;citrix:vda_7.x_installation_error_1723_applycomsecuritycustomaction&quot;&gt;ТУТ.&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043b\u044f \u0447\u0435\u0433\u043e \u044d\u0442\u043e \u0432\u0441\u0451&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043b\u044f_\u0447\u0435\u0433\u043e_\u044d\u0442\u043e_\u0432\u0441\u0451&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1467&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;как_работает&quot;&gt;Как работает&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Скрипт берет из указанного пула машины, версия &lt;strong&gt;VDA&lt;/strong&gt; на которых не соответствует целевой. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Затем обрабатывает каждую машину в отдельном job. Переводит машину в &lt;strong&gt;Maintenance Mode&lt;/strong&gt;, включает ее, дожидается включения, затем проверяет версию установленного &lt;strong&gt;VDA&lt;/strong&gt; средствами &lt;strong&gt;WMI&lt;/strong&gt; (на случай, если нужная версия уже установлена, но машина не регистрируется и на &lt;strong&gt;DDC&lt;/strong&gt; новая версия не видна).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Затем скачивает с http-сервера &lt;strong&gt;VDA CleanUp Utility&lt;/strong&gt; и запускает его. Выполняется удаление &lt;strong&gt;VDA&lt;/strong&gt; (с нужным количеством перезагрузок). 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Затем c http-сервера скачивается дистрибутив &lt;strong&gt;VDA&lt;/strong&gt;, распаковывается, устанавливаются &lt;strong&gt;prerequisites&lt;/strong&gt;, устанавливается нужный апдейт(ы) (пакет &lt;strong&gt;MSU&lt;/strong&gt;). 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Затем устанавливается &lt;strong&gt;VDA&lt;/strong&gt; и проверяется его версия, а также возможность регистрации на &lt;strong&gt;DDC&lt;/strong&gt;. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Скрипт способен выполняться параллельно на заданном числе машин. Сведения о проделанной работе сваливаются в файлик. 
&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;pre class=&quot;code&quot;&gt;#$ErrorActionPreference=&amp;#039;SilentlyContinue&amp;#039;

$catalogName=&amp;#039;Developers&amp;#039;                         # Citrix Machine Catalog name
$MachinesPerRound=15                              # Number of simultaneously upgraded machines
$TargetAgentVersion=&amp;#039;7.15.0.15097&amp;#039;                # Verision of VDA, showed in Citrix Studio and Director
$Citrix_DDC=&amp;#039;ddc.domain.local&amp;#039;                    # FQDN of Citrix Delivery Controller
$timeout=1500                                     # Timeout for jobs in seconds
Asnp Citrix*


$jobContent={
    ########################################### Job Block ############################################################ 
            $update_server=&amp;#039;http://updates.domain.local&amp;#039;                                         # HTTP Resource from which updates to be downloaded
            $VDA_sourcefile=&amp;#039;VDAWorkstationSetup_7.15.exe&amp;#039;                                       # VDA distr file name on update server
            $VDA_destfile=&amp;#039;c:\windows\temp\VDAWorkstationSetup_7.15.exe&amp;#039;                         # VDA distr file name on target machine
            $VDA_CleanUp_source_file=&amp;#039;VDACleanupUtility.exe&amp;#039;                                     # VDA CleanUpUtility file name on update server
            $VDA_CleanUp_dest_file=&amp;#039;c:\windows\temp\VDACleanupUtility.exe&amp;#039;                       # VDA CleanUpUtility file name on target machine
            $VDA_ExtractDir=&amp;#039;c:\windows\temp\VDA_Install\&amp;#039;                                       # 
            $path_to_VDASetup=&amp;#039;\Extract\Image-full\x64\XenDesktop Setup\XenDesktopVdaSetup.exe&amp;#039;  # Path to XenDesktopVDASetup.exe file
            $setupargs=&amp;#039;/quiet /components VDA /controllers &amp;quot;ddc.domain.local ddc2.domain.local&amp;quot; /remotepc /optimize /virtualmachine /enable_hdx_ports /enable_real_time_transport&amp;#039;
            $ApplicationName = &amp;#039;Citrix Virtual Desktop Agent - x64&amp;#039;
            $TargetVersion = &amp;#039;7.15.0.82&amp;#039; ### Version of $ApplicationName (Citrix Virtual Desktop Agent - x64) component 
            $Citrix_DDC=&amp;#039;ddc.domain.local&amp;#039;
            $logfile=&amp;#039;c:\temp\VDA_Update_Results.txt&amp;#039;

            $username=&amp;#039;.\Администратор&amp;#039;
            $password=&amp;#039;P@ssw0rd&amp;#039;

            $password = ConvertTo-SecureString $password -asplaintext -force
            $credentials = New-Object -Typename System.Management.Automation.PSCredential -argumentlist $username,$password
            $MachineName=$args[0]
            $Machine=Get-Brokermachine -MachineName $MachineName -AdminAddress $Citrix_DDC
            $node=$Machine.DNSName
    ############################################### Functions ##################################################

            function DownloadFile ($node, $credentials, $update_server, $source_file, $destination_file) {
                $link=$update_server+&amp;#039;/&amp;#039;+$source_file
                $posh_string = &amp;#039;powershell -nop -exec bypass -c (New-Object Net.WebClient).DownloadFile(&amp;#039; + &amp;#039;&amp;#039;&amp;#039;&amp;#039; + $link + &amp;#039;&amp;#039;&amp;#039;&amp;#039; + &amp;#039;, &amp;#039; + &amp;#039;&amp;#039;&amp;#039;&amp;#039; + $destination_file + &amp;#039;&amp;#039;&amp;#039;&amp;#039; + &amp;#039;)&amp;#039;
                Write-Host &amp;quot;Starting download file&amp;quot; $link to $destination_file
                $proc=Invoke-WmiMethod -Class win32_process -Name Create -Argumentlist $posh_string -Credential $credentials -Computername $node
                $duration=Measure-Command { 
                    do {
                    Start-Sleep -Seconds 1 
                    } 
                    until ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where {$_.ProcessID -eq $proc.ProcessId}) -eq $null)
                }
                $query=&amp;#039;Select * From CIM_datafile Where Name = &amp;#039; + &amp;#039;&amp;#039;&amp;#039;&amp;#039;+($destination_file -replace &amp;#039;\\&amp;#039;, &amp;#039;\\&amp;#039;)+&amp;#039;&amp;#039;&amp;#039;&amp;#039;
                $file=Get-WmiObject -query $query -Credential $credentials -Computername $node
                If ( $file -ne $null ) { 
                    Write-Host &amp;quot;Download completed in&amp;quot; $([math]::Round($duration.TotalSeconds,1)) &amp;quot;Seconds&amp;quot;
                    return &amp;#039;OK&amp;#039; }
                else { 
                Write-Host &amp;quot;Download Failed&amp;quot;
                return &amp;#039;DWNLD_FAILED&amp;#039; }
            }
            function VDACleanUp ($node, $credentials, $cleanuputility) {
            $runstring = &amp;#039;cmd /c &amp;quot;&amp;#039;+ $cleanuputility + &amp;#039; /unattended &amp;amp;&amp;amp; mkdir c:\windows\temp\vdacleanup_ok || mkdir c:\windows\temp\reboot_needed&amp;quot;&amp;#039;
            $removerebootflag = &amp;#039;cmd /c &amp;quot;rmdir /Q /S c:\windows\temp\reboot_needed&amp;quot;&amp;#039;
            $executable = Split-Path $cleanuputility -leaf
            do {
                if ((Get-WMIObject win32_bios -Credential $credentials -Computername $node) -ne $null) {
                    if ((Get-WmiObject -Class Win32_Directory  -Credential $credentials -Computername $node -Filter &amp;quot;Name=&amp;#039;c:\\windows\\temp\\vdacleanup_ok&amp;#039;&amp;quot;) -eq $null) {
                        if ((Get-WmiObject -Class Win32_Directory -Credential $credentials -Computername $node -Filter &amp;quot;Name=&amp;#039;c:\\windows\\temp\\reboot_needed&amp;#039;&amp;quot;) -eq $null) {
                            if ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where {$_.Name -eq $executable}) -eq $null) {
                                Write-Host -NoNewLine &amp;#039;VDA CleanUp in progress...&amp;#039;
                                $proc=Invoke-WmiMethod -Class win32_process -Name Create -Argumentlist $runstring -Credential $credentials -Computername $node
                                Start-Sleep -Seconds 10
                            } else { (Write-Host -NoNewLine &amp;quot;.&amp;quot;), (Start-Sleep -Seconds 3) }
                        } else {
                        Write-Host &amp;quot;&amp;quot;
                        Write-Host &amp;quot;Rebooting...&amp;quot;
                        Invoke-WmiMethod -Class win32_process -Name Create -Argumentlist $removerebootflag -Credential $credentials -Computername $node | Out-Null
                        Start-Sleep -Seconds 4
                        if ((Get-WmiObject -Class Win32_Directory -Credential $credentials -Computername $node -Filter &amp;quot;Name=&amp;#039;c:\\windows\\temp\\reboot_needed&amp;#039;&amp;quot;) -eq $null) {
                            $Win32OS=Get-WMIObject Win32_OperatingSystem -computername $node -Credential $credentials -EnableAllPrivileges
                            $Win32OS.win32shutdown(6) | Out-Null }
                        else { Write-Host &amp;quot;Cannot remove c:\windows\temp\reboot_needed...&amp;quot; }
                        Start-Sleep -Seconds 30 
                        }
                    }
                    else {
                        Write-Host &amp;quot;CleanUp Completed&amp;quot;
                        $cleanup=&amp;#039;OK&amp;#039;
                        Invoke-WmiMethod -Class win32_process -Name Create -Argumentlist &amp;#039;cmd /c &amp;quot;rmdir /Q /S c:\windows\temp\vdacleanup_ok&amp;quot;&amp;#039; -Credential $credentials -Computername $node  | Out-Null
                        $setup_string=&amp;#039;cmd /c &amp;quot;del /F /Q /S &amp;#039;+$cleanuputility+&amp;#039;&amp;quot;&amp;#039;
                        Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                        return $cleanup
                    }
                }
                else {Start-Sleep -Seconds 15}
            }
            while ($cleanup -ne &amp;#039;OK&amp;#039;)

            }
            Function ExtractVDA ($node, $credentials, $VDA_distr, $VDA_ExtractDir) {
                $executable = Split-Path $VDA_distr -leaf
                Write-Host -NoNewLine &amp;quot;Extracting VDA...&amp;quot;
                $setup_string = &amp;#039;cmd.exe /c &amp;quot;mkdir &amp;#039; + $VDA_ExtractDir +&amp;#039;&amp;quot;&amp;#039;
                Invoke-WmiMethod -Class win32_process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                $setup_string = $VDA_distr + &amp;#039; /extract &amp;#039;+ $VDA_ExtractDir
                Invoke-WmiMethod -Class win32_process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                Start-Sleep -Seconds 1
                do {(Write-Host -NoNewLine &amp;quot;..&amp;quot;), (Start-Sleep -Seconds 1)}
                while ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where { $_.Name -eq $executable }) -ne $null)
                Write-Host &amp;quot;VDA extraction completed!&amp;quot;
                $setup_string=&amp;#039;cmd /c &amp;quot;del /F /Q /S &amp;#039;+$VDA_distr+&amp;#039;&amp;quot;&amp;#039;
                Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                return &amp;#039;OK&amp;#039;
            }
            function InstallVDA ($node, $credentials, $VDA_ExtractDir, $path_to_VDASetup, $setupargs, $ApplicationName) {
                $executable = Split-Path $path_to_VDASetup -leaf
                $setup_string = $VDA_ExtractDir + &amp;#039;\&amp;#039; + $path_to_VDASetup + &amp;#039; &amp;#039; + $setupargs
                $iteration=0
                do {
                    Write-Host -NoNewLine &amp;quot;Setting up VDA... Running&amp;quot; $executable
                    Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                    Start-Sleep -Seconds 2
                    do {(Write-Host -NoNewLine &amp;quot;.&amp;quot;), (Start-Sleep -Seconds 1)}
                    while ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where { $_.Name -eq $executable }) -ne $null)
                    $Win32OS=Get-WMIObject Win32_OperatingSystem -computername $node -Credential $credentials -EnableAllPrivileges
                    $Win32OS.win32shutdown(6) | Out-Null
                    Write-Host &amp;quot;&amp;quot;
                    Write-Host -NoNewLine &amp;quot;Rebooting...&amp;quot;
                    Start-Sleep 15
                    do { (Write-Host -NoNewLine &amp;quot;.&amp;quot;), (Start-Sleep 15) }
                    While ((Get-WMIObject win32_bios -Credential $credentials -Computername $node) -eq $null)
                    $iteration++
                    $VDA_Present=Get-WMIObject -Class Win32_Product -Credential $credentials -Computername $node | Where-Object { $_.Name -like &amp;quot;*&amp;quot;+$ApplicationName+&amp;quot;*&amp;quot; }
                }
                While ( $VDA_Present -eq $null -and $iteration -lt 3 )
                if ( $VDA_Present -ne $null ) { (Write-Host &amp;quot;VDA Update Completed !!!&amp;quot;)
                $status=&amp;#039;OK&amp;#039; }
                else { $status=&amp;#039;VDA_Not_Installed&amp;#039; }
                $setup_string=&amp;#039;cmd /c &amp;quot;rmdir /Q /S &amp;#039;+$VDA_ExtractDir +&amp;#039;&amp;quot;&amp;#039;
                Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                Return $status
            }
            function InstallPrerequisite ($node, $credentials, $VDA_ExtractDir, $path_to_setup) {
                $executable = Split-Path $path_to_setup -leaf
                $setup_string = $VDA_ExtractDir + $path_to_setup + &amp;#039; /q /norestart&amp;#039;
                Write-Host -NoNewLine &amp;#039;Setting up &amp;#039; $setup_string
                Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                Start-Sleep -Seconds 2
                do {(Write-Host -NoNewLine &amp;quot;.&amp;quot;), (Start-Sleep -Seconds 1)}
                while ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where { $_.Name -eq $executable }) -ne $null) 
                Write-Host &amp;quot;Complete!&amp;quot;
            }
            function Install_MSU ($node, $credentials, $update_server, $MSU_KBName) {
                $link=$update_server+&amp;#039;/&amp;#039;+$MSU_KBName
                $destination_file=&amp;#039;c:\windows\temp\&amp;#039;+$MSU_KBName
                $posh_string = &amp;#039;powershell -nop -exec bypass -c (New-Object Net.WebClient).DownloadFile(&amp;#039; + &amp;#039;&amp;#039;&amp;#039;&amp;#039; + $link + &amp;#039;&amp;#039;&amp;#039;&amp;#039; + &amp;#039;, &amp;#039; + &amp;#039;&amp;#039;&amp;#039;&amp;#039; + $destination_file + &amp;#039;&amp;#039;&amp;#039;&amp;#039; + &amp;#039;)&amp;#039;
                $proc=Invoke-WmiMethod -Class win32_process -Name Create -Argumentlist $posh_string -Credential $credentials -Computername $node
                do {Start-Sleep -Seconds 1} 
                until ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where {$_.ProcessID -eq $proc.ProcessId}) -eq $null)
                $query=&amp;#039;Select * From CIM_datafile Where Name = &amp;#039; + &amp;#039;&amp;#039;&amp;#039;&amp;#039;+($destination_file -replace &amp;#039;\\&amp;#039;, &amp;#039;\\&amp;#039;)+&amp;#039;&amp;#039;&amp;#039;&amp;#039;
                $file=Get-WmiObject -query $query -Credential $credentials -Computername $node
                if ( $file -ne $null ){
                    Write-Host -NoNewLine &amp;quot;Start installation of &amp;quot; $MSU_KBName &amp;quot;....&amp;quot;
                    $MSU_ExtractDir=&amp;#039;c:\windows\temp\&amp;#039;+($destination_file -replace &amp;#039;\.[^.\\/]+$&amp;#039;).split(&amp;#039;\&amp;#039;)[-1]
                    $setup_string = &amp;#039;cmd.exe /c &amp;quot;mkdir &amp;#039; + $MSU_ExtractDir +&amp;#039;&amp;quot;&amp;#039;
                    $proc=Invoke-WmiMethod -Class win32_process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                    do {Start-Sleep -Seconds 1} 
                    until ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where {$_.ProcessID -eq $proc.ProcessId}) -eq $null)
                    $setup_string=&amp;#039;wusa.exe &amp;#039;+$destination_file+&amp;#039; /extract:&amp;#039;+$MSU_ExtractDir 
                    $proc=Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                    do {Start-Sleep -Seconds 1} 
                    until ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where {$_.ProcessID -eq $proc.ProcessId}) -eq $null)
                    $cabname=($destination_file -replace &amp;#039;\.[^.\\/]+$&amp;#039;).split(&amp;#039;\&amp;#039;)[-1] +&amp;#039;.cab&amp;#039;
                    $setup_string=&amp;#039;cmd.exe /c &amp;quot;dism.exe /online /add-package /PackagePath:&amp;#039;+$MSU_ExtractDir+&amp;#039;\&amp;#039;+$cabname+&amp;#039;&amp;quot;&amp;#039;
                    $proc=Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                    do {Start-Sleep -Seconds 1} 
                    until ((Get-WMIObject -Class Win32_process -Credential $credentials -Computername $node | where {$_.ProcessID -eq $proc.ProcessId}) -eq $null)
                    Start-Sleep -Seconds 15
                }
                else { (Write-Host &amp;quot;Download &amp;quot; $MSU_KBName &amp;quot;failed&amp;quot;), ($status=&amp;#039;DWNLD_FAILED&amp;#039;) }
                if ((Get-WMIObject -Class Win32_QuickFixEngineering -Credential $credentials -Computername $node | Where-Object { $_.HotFixID -like $cabname.split(&amp;#039;-&amp;#039;)[-2] }) -ne $null){(Write-Host &amp;#039;Installation of &amp;#039; $MSU_KBName &amp;#039;completed!&amp;#039;), ($status=&amp;#039;OK&amp;#039;)}
                else { (Write-Host &amp;#039;Installation of &amp;#039; $MSU_KBName &amp;#039;NOT completed!&amp;#039;), ($status=&amp;#039;INSTALLATION_NOT_COMPLETED&amp;#039;) }
                $setup_string=&amp;#039;cmd /c &amp;quot;del /F /Q /S &amp;#039;+$destination_file+&amp;#039;&amp;quot;&amp;#039;
                Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                $setup_string=&amp;#039;cmd /c &amp;quot;rmdir /Q /S &amp;#039;+$MSU_ExtractDir+&amp;#039;&amp;quot;&amp;#039;
                Invoke-WmiMethod -class Win32_Process -Name Create -Argumentlist $setup_string -Credential $credentials -Computername $node | Out-Null
                return $status
            }
            function CheckVersion ($node, $credentials, $ApplicationName, $TargetVersion) {
                $App = Get-WMIObject -Class Win32_Product -Credential $credentials -Computername $node | Where-Object { $_.Name -like &amp;quot;*&amp;quot;+$ApplicationName+&amp;quot;*&amp;quot; }
                If (($App.Version).Equals($TargetVersion)) { 
                    Write-Host &amp;#039;Installed version of the&amp;#039; $ApplicationName &amp;#039;match target version&amp;#039;
                    return &amp;#039;OK&amp;#039; }
                Else  { Write-Host &amp;#039;Installed version of the&amp;#039; $ApplicationName &amp;#039;NOT match target version&amp;#039;
                    return &amp;#039;VersionBAD&amp;#039;}
            }
            function CheckFreeSpace ($node, $credentials){
                $Disk=get-WmiObject win32_logicaldisk -Credential $credentials -Computername $node | Where { $_.DeviceId -eq &amp;#039;C:&amp;#039; }
                If ($Disk.FreeSpace -gt 1080000000) { return &amp;#039;OK&amp;#039;}
                else { return &amp;#039;LowDiskSpace&amp;#039;}
            }
    ######################################## Script ########################################################

            $duration=Measure-Command {
            $Result=$node+&amp;#039; &amp;#039;
            if ($args[0].SessionState -ne &amp;#039;Active&amp;#039;) {
            $InitialMaintenanceMode=(Get-BrokerMachine -MachineName $MachineName).InMaintenanceMode
            $InitialPowerState=(Get-BrokerMachine -MachineName $MachineName).PowerState
            #Enable MaintenanceMode
            Set-BrokerMachineMaintenanceMode -InputObject $MachineName $true
            if ((Get-BrokerMachine -MachineName $MachineName | fl InMaintenanceMode) -ne $null) {
                if ((Get-WMIObject win32_bios -Credential $credentials -Computername $node) -eq $null) { 
                    #PowerOn Machine
                    New-BrokerHostingPowerAction  -Action &amp;quot;TurnOn&amp;quot; -MachineName $MachineName
                    Write-Host -NoNewLine &amp;#039;Starting Machine &amp;#039; $node 
                    do { (Start-Sleep 5), (Write-Host -NoNewLine &amp;#039;.&amp;#039;) }
                    while ((Get-WMIObject win32_bios -Credential $credentials -Computername $node) -eq $null)
                } 
                Start-Sleep 30
                #CheckVersion
                if ( (CheckVersion -node $node -credentials $credentials -ApplicationName $ApplicationName  -TargetVersion $TargetVersion) -ne &amp;#039;OK&amp;#039; ) {
                    #Check FreeSpace on disk
                    if ((CheckFreeSpace -node $node -credentials $credentials) -eq &amp;#039;OK&amp;#039;) {
                        if ((DownloadFile -node $node -credentials $credentials -update_server $update_server -source_file $VDA_CleanUp_source_file -destination_file $VDA_CleanUp_dest_file) -eq &amp;#039;OK&amp;#039;) {
                            if ((VDACleanUp -node $node -credentials $credentials -cleanuputility $VDA_CleanUp_dest_file) -eq &amp;#039;OK&amp;#039;) {
                                if ((DownloadFile -node $node -credentials $credentials -update_server $update_server -source_file $VDA_sourcefile -destination_file $VDA_destfile) -eq &amp;#039;OK&amp;#039;) {
                                    ExtractVDA -node $node -credentials $credentials -VDA_distr $VDA_destfile -VDA_ExtractDir $VDA_ExtractDir
                                    InstallPrerequisite -node $node -credentials $credentials -VDA_ExtractDir $VDA_ExtractDir -path_to_setup &amp;#039;\Extract\Image-Full\Support\VcRedist_2013_RTM\vcredist_x86.exe&amp;#039;
                                    InstallPrerequisite -node $node -credentials $credentials -VDA_ExtractDir $VDA_ExtractDir -path_to_setup &amp;#039;\Extract\Image-Full\Support\VcRedist_2013_RTM\vcredist_x64.exe&amp;#039;
                                    InstallPrerequisite -node $node -credentials $credentials -VDA_ExtractDir $VDA_ExtractDir -path_to_setup &amp;#039;\Extract\Image-Full\Support\VcRedist_2015\vc_redist.x86.exe&amp;#039;
                                    InstallPrerequisite -node $node -credentials $credentials -VDA_ExtractDir $VDA_ExtractDir -path_to_setup &amp;#039;\Extract\Image-Full\Support\VcRedist_2015\vc_redist.x64.exe&amp;#039;
                                    if ((Install_MSU -node $node -credentials $credentials -update_server $update_server -MSU_KBName &amp;#039;Windows6.1-KB2999226-x64.msu&amp;#039;) -eq &amp;#039;OK&amp;#039;) {
                                        if ((InstallVDA -node $node -credentials $credentials -VDA_ExtractDir $VDA_ExtractDir -path_to_VDASetup $path_to_VDASetup -setupargs $setupargs -ApplicationName $ApplicationName) -eq &amp;#039;OK&amp;#039;) {
                                            if ((CheckVersion -node $node -credentials $credentials -ApplicationName $ApplicationName  -TargetVersion $TargetVersion) -eq &amp;#039;OK&amp;#039;){ $result=$result+&amp;#039;VDA Installed. Version Checked.&amp;#039; }
                                            else { $result=$result+&amp;#039;VDA Present, But Version Mismatch.&amp;#039;}
                                        } else {  $result=$result+&amp;#039;VDA NOT Installed.&amp;#039; }
                                    } else {  $result=$result+&amp;#039;MSU Install failed.&amp;#039; }
                                } else {  $result=$result+&amp;#039;VDA Download Failed.&amp;#039; }
                            } else {  $result=$result+&amp;#039;VDA CleanUp Failed.&amp;#039; }
                        } else {  $result=$result+&amp;#039;VDA CleanUp Utility Download Failed.&amp;#039; }
                    } else { $result=$result+&amp;#039;Not enough disk free space.&amp;#039;}
                } else {  $result=$result+&amp;#039;No need to upgrade VDA.&amp;#039; }
            } else { $result=$result+&amp;#039;Can not enable maintenance mode.&amp;#039; }



            #Check if Machine registered successfully
            if ((Get-BrokerMachine -MachineName $MachineName -RegistrationState &amp;#039;Registered&amp;#039;) -ne $null) {
            $result=$result+&amp;#039; Machine Registered.&amp;#039; 
            #Revert to Initial MaintenanceMode
            Set-BrokerMachineMaintenanceMode -InputObject $MachineName $InitialMaintenanceMode
            }
                else {
                $result=$result+&amp;#039; Machine UnRegistered. Leave Machine in Maintenance Mode.&amp;#039;
                New-BrokerHostingPowerAction  -Action &amp;quot;ShutDown&amp;quot; -MachineName $MachineName
                }
            }
            #Revert to Initial Power State
            if ( $InitialPowerState -eq &amp;#039;Off&amp;#039; ) { New-BrokerHostingPowerAction  -Action &amp;quot;ShutDown&amp;quot; -MachineName $MachineName } 
            $result=$result+&amp;#039; Initial Maintenance Mode - &amp;#039;+ $InitialMaintenanceMode + &amp;quot;Job completed in&amp;quot; $([math]::Round($duration.TotalSeconds,1)) &amp;quot;Seconds.&amp;quot;
            $Result &amp;gt;&amp;gt; $logfile
            }
   }########################################## End of Job #######################################################

###################################################################################################################
$Filter=&amp;#039;CatalogName -like &amp;quot;&amp;#039;+$catalogName+&amp;#039;&amp;quot; -and AgentVersion -ne &amp;quot;&amp;#039;+$TargetAgentVersion+&amp;#039;&amp;quot;&amp;#039;
Get-BrokerMachine -Filter $Filter -ReturnTotalRecordCount -AdminAddress $Citrix_DDC | out-null
$machinescount = $error[0].TotalAvailableResultCount
$rounds=[math]::floor($machinescount / $MachinesPerRound)

for ( $round=0; $round -le $rounds; $round++) {
    Write-Host &amp;#039;Round - &amp;#039; $round
    Get-Brokermachine -Filter $Filter -Skip ($round*$MachinesPerRound) -MaxRecordCount $MachinesPerRound -AdminAddress $Citrix_DDC | Select MachineName
    Get-Brokermachine -Filter $Filter -Skip ($round*$MachinesPerRound) -MaxRecordCount $MachinesPerRound -AdminAddress $Citrix_DDC | ForEach-Object {
    $jobname=&amp;#039;VDA_Install_&amp;#039;+$_.HostedMachineName
    if ((Get-Job -name $jobname | Where { $_.State -eq &amp;quot;Running&amp;quot; } ) -eq $null) {
        Start-Job -name $jobname -initializationScript { Asnp Citrix* } -ArgumentList $_.MachineName -scriptblock $jobContent | out-null }
}
$timer=0
Do { 
    Start-Sleep 10
    Write-Host -NoNewline &amp;#039;.&amp;#039;
    $timer=$timer + 10
    }
while ((Get-Job | Where { $_.State -eq &amp;quot;Running&amp;quot; }) -ne $null -and $timer -lt $timeout)
If ($timer -ge $timeout) { 
    Write-Host &amp;#039;Timeout for Jobs:&amp;#039;
    Get-Job | Where { $_.State -eq &amp;quot;Running&amp;quot; } | Select Name
    Get-Job | Where { $_.State -eq &amp;quot;Running&amp;quot; } | Stop-Job
}
Write-Host &amp;#039; &amp;#039;
}
&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1468-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>настройка_citrix_reciever_4.3_c_помощью_admx_based_gpo</title>
            <link>https://wiki.autosys.tk/citrix/%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_citrix_reciever_4.3_c_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_admx_based_gpo</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;задача&quot;&gt;Задача&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Настроить сквозную аутентифкацию (Pass-Through Authentication) Citrix Reciever 4.3  с помощью GPO. &lt;br/&gt;

&lt;br/&gt;

Для этого понадобится:&lt;br/&gt;

 - Установить Citrix Receiver с включенным SSO (SingleSignOn).
 - Создать централизованное хранилище шаблонов admx и разместить там шаблоны. &lt;br/&gt;

 - Создать объекты GPO на базе шаблонов admx и настроить параметры.&lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Новый &lt;strong&gt;Citrix Receiver&lt;/strong&gt; (от 30 июня 2015) при установке предлагает поставить галочку SSO.
Старый нужно ставить с ключем &lt;strong&gt;/includeSSON&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-775&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;создание_централизованного_хранилище_шаблонов_admx&quot;&gt;Создание централизованного  хранилище шаблонов admx&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Описано тут: &lt;a href=&quot;https://technet.microsoft.com/ru-ru/library/cc748955%28v=ws.10%29.aspx&quot; class=&quot;urlextern&quot; title=&quot;https://technet.microsoft.com/ru-ru/library/cc748955%28v=ws.10%29.aspx&quot; rel=&quot;ugc nofollow&quot;&gt;https://technet.microsoft.com/ru-ru/library/cc748955%28v=ws.10%29.aspx&lt;/a&gt;&lt;br/&gt;

&lt;br/&gt;

В двух словах.&lt;br/&gt;

Создаем папки  &lt;strong&gt;%systemroot% \sysvol\domain\policies\PolicyDefinitions&lt;/strong&gt;  и &lt;strong&gt;%systemroot% \sysvol\domain\policies\PolicyDefinitions\EN-US&lt;/strong&gt; &lt;br/&gt;

&lt;br/&gt;

Потом в папку &lt;strong&gt;%systemroot% \sysvol\domain\policies\PolicyDefinitions&lt;/strong&gt; кладем файлики:&lt;br/&gt;

&lt;strong&gt;C:\Program Files (x86)\Citrix\ICA Client\Configuration\HdxFlash-Client.admx&lt;/strong&gt;&lt;br/&gt;

&lt;strong&gt;C:\Program Files (x86)\Citrix\ICA Client\Configuration\ica-file-signing.admx&lt;/strong&gt;&lt;br/&gt;

&lt;strong&gt;C:\Program Files (x86)\Citrix\ICA Client\Configuration\receiver.admx&lt;/strong&gt;&lt;br/&gt;

&lt;br/&gt;

А в папку &lt;strong&gt;%systemroot% \sysvol\domain\policies\PolicyDefinitions\EN-US&lt;/strong&gt; кладем файлики:&lt;br/&gt;

&lt;strong&gt;C:\Program Files (x86)\Citrix\ICA Client\Configuration\receiver.adml&lt;/strong&gt;&lt;br/&gt;

&lt;strong&gt;C:\Program Files (x86)\Citrix\ICA Client\Configuration\ica-file-signing.adml&lt;/strong&gt;&lt;br/&gt;

&lt;strong&gt;C:\Program Files (x86)\Citrix\ICA Client\Configuration\en-US\HdxFlash-Client.adml&lt;/strong&gt;&lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e  \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 admx&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435_\u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432_admx&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;776-1891&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;создание_объекта_политики_gpo_на_основе_шаблонов_admx&quot;&gt;Создание объекта политики GPO на основе шаблонов admx&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Шаблоны &lt;strong&gt;admx&lt;/strong&gt; из центрального хранилища подтянутся автоматически. 
Просто создаем объект GPO и связваем его с нужной OU.
&lt;/p&gt;

&lt;p&gt;
Теперь настраиваем сквозную аутентификацию.
Этот процесс описан тут: &lt;a href=&quot;http://support.citrix.com/article/CTX200157&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX200157&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX200157&lt;/a&gt;
Но некторыми шагами я пренебрегаю.
&lt;/p&gt;

&lt;p&gt;
Вообще моя цель настроить все так, чтобы авторизация проходила прозрачно и автоматически на рабочем столе создавались ярлыки, а режим &lt;strong&gt;SelfServiceUI&lt;/strong&gt; был отключен. То есть чтобы все работало как в &lt;strong&gt;CitrixOnlinePlugin 12.3&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
Итак настраиваем параметры:
&lt;/p&gt;

&lt;p&gt;
Включаем сквозную авторизацию. Редаектируем параметр: &lt;strong&gt;Local user name and password&lt;/strong&gt; в ветке &lt;strong&gt;Computer Configuration\Administrative Templates\Classic Administrative Templates\Citrix Components\Citrix Receiver\User authentication\&lt;/strong&gt;.&lt;br/&gt;

В ней ставим галочку &lt;strong&gt;Enable pass-through authentication and Allow pass-through authentication for all ICA connections&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
Включаем размещение ярлыков на рабочий стол.
В &lt;strong&gt;Computer Configuration\Administrative Templates\Classic Administrative Templates\Citrix Components\Citrix Receiver\SelfService&lt;/strong&gt; отключаем параметр &lt;strong&gt;Manage SelFService Mode&lt;/strong&gt;.&lt;br/&gt;

Настраиваем &lt;strong&gt;Manage App ShortCuts&lt;/strong&gt;. Включаем его и указываем в &lt;strong&gt;Desktop Directory&lt;/strong&gt; просто слеш: &lt;strong&gt;/&lt;/strong&gt;. В результате ярлыки будут попадать прямо на рабочий стол. Ставим также галку &lt;strong&gt;Enable Desktop Shortcut&lt;/strong&gt; . 
&lt;/p&gt;

&lt;p&gt;
Также надо указать адрес storefront или web-интерфейса фермы: &lt;strong&gt;Computer Configuration\Administrative Templates\Classic Administrative Templates\Citrix Components\Citrix Receiver\Storefront&lt;/strong&gt;. 
тут Storefront прописываем  в таком формате:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Имя_Storefront;https://_адрес_storefront;On_или_Off;Описание_Storefront&lt;/pre&gt;

&lt;p&gt;
Например: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;SalesStore;https://sales.example.com/Citrix/Store/discovery;On;Store for Sales staff&lt;/pre&gt;

&lt;p&gt;
Старый Web-интерфейс 5.4 прописывается так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;CitrixAppstore;https://appstore.domain.com/Citrix/PNAgent/Config.xml;On;Citrix Appstore&lt;/pre&gt;

&lt;p&gt;
То есть надо указать путь до файла &lt;strong&gt;PNAgent/Config.xml&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 GPO \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 admx&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043e\u0431\u044a\u0435\u043a\u0442\u0430_\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438_gpo_\u043d\u0430_\u043e\u0441\u043d\u043e\u0432\u0435_\u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432_admx&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1892-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>тормозит-курсор-мыши-в-autocad-опубликованном-на-сервер ...</title>
            <link>https://wiki.autosys.tk/citrix/%D1%82%D0%BE%D1%80%D0%BC%D0%BE%D0%B7%D0%B8%D1%82-%D0%BA%D1%83%D1%80%D1%81%D0%BE%D1%80-%D0%BC%D1%8B%D1%88%D0%B8-%D0%B2-autocad-%D0%BE%D0%BF%D1%83%D0%B1%D0%BB%D0%B8%D0%BA%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%BC-%D0%BD%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5-xenapp-6-5</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Тормозит курсор мыши в Autocad, опубликованном в XenApp 6.5.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-127&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Citrix рекомендует сделать несколько вещей.&lt;br/&gt;

Первое - отключить &lt;strong&gt;Desktop Viewer Toolbar Functionality&lt;/strong&gt; (&lt;a href=&quot;http://support.citrix.com/article/CTX119784&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX119784&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX119784&lt;/a&gt;).&lt;br/&gt;

Для этого:&lt;br/&gt;

1. В файле &lt;strong&gt;WebInterface.conf&lt;/strong&gt;, расположенном на сервере WebInterface тут &lt;strong&gt;C:\inetpub\wwwroot\Citrix\SiteName\conf\&lt;/strong&gt; нужно вставить строку 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;FarmsWithNoConnectionBar=Farm1, Farm2, Farm3, ...&lt;/pre&gt;

&lt;p&gt;
В этой строке перечислены имена ферм, для которых надо отключить &lt;strong&gt;Desktop Viewer Toolbar&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
2. Убедиться, что в файле &lt;strong&gt;c:\inetpub\wwwroot\citrix\SiteName\conf\webinterface.conf&lt;/strong&gt; присутсвует строка &lt;strong&gt;ShowDesktopViewer=On&lt;/strong&gt;. По-умолчанию она имеет вид: &lt;strong&gt;#ShowDesktopView=Off&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
3. Также надо убедиться, что в файле &lt;strong&gt;c:\inetpub\wwwroot\citrix\SiteName\conf\default.ica&lt;/strong&gt; отсутсвуют строки &lt;strong&gt;ConnectionBar=0&lt;/strong&gt; или &lt;strong&gt;ConnectionBar=1&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Еще можно на клиенте уменьшить задержку между движением мыши и пересылкой  информации о движении на сервер. &lt;a href=&quot;http://support.citrix.com/proddocs/topic/ica-settings/ica-settings-mousetimer.html&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/proddocs/topic/ica-settings/ica-settings-mousetimer.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/proddocs/topic/ica-settings/ica-settings-mousetimer.html&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для этого нужно изменить значение параметра &lt;strong&gt;MouseTimer&lt;/strong&gt; в реестре в ветках:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Mouse 	
HKEY_CURRENT_USER\Software\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Mouse&lt;/pre&gt;

&lt;p&gt;
Там лежит время задержки в милисекундах. По умолчанию - 100 мс. Актуально ставить 20. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вот тут еще немного шаманства:&lt;br/&gt;

&lt;a href=&quot;http://autocadtipoftheday.com/tips/how-to-fix-lagging-mouse-movement-in-autocad&quot; class=&quot;urlextern&quot; title=&quot;http://autocadtipoftheday.com/tips/how-to-fix-lagging-mouse-movement-in-autocad&quot; rel=&quot;ugc nofollow&quot;&gt;http://autocadtipoftheday.com/tips/how-to-fix-lagging-mouse-movement-in-autocad&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Оптимизация XenApp вцелом:&lt;br/&gt;

&lt;a href=&quot;http://www.norskale.com/articles/article/xendesktop-tuning-tips&quot; class=&quot;urlextern&quot; title=&quot;http://www.norskale.com/articles/article/xendesktop-tuning-tips&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.norskale.com/articles/article/xendesktop-tuning-tips&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Вот тут про оптимизацию схемы курсоров мыши:&lt;br/&gt;

&lt;a href=&quot;http://citrixblogger.org/2008/02/07/cursor-shadowing-turn-it-off/&quot; class=&quot;urlextern&quot; title=&quot;http://citrixblogger.org/2008/02/07/cursor-shadowing-turn-it-off/&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrixblogger.org/2008/02/07/cursor-shadowing-turn-it-off/&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;http://citrix-xendesktop.blogspot.ru/2012/06/appsense-mouse-lags-in-xenapp.html&quot; class=&quot;urlextern&quot; title=&quot;http://citrix-xendesktop.blogspot.ru/2012/06/appsense-mouse-lags-in-xenapp.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrix-xendesktop.blogspot.ru/2012/06/appsense-mouse-lags-in-xenapp.html&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;http://geekcubo.com/2014/04/group-policy/&quot; class=&quot;urlextern&quot; title=&quot;http://geekcubo.com/2014/04/group-policy/&quot; rel=&quot;ugc nofollow&quot;&gt;http://geekcubo.com/2014/04/group-policy/&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;http://citrixblogger.org/2008/02/07/cursor-shadowing-turn-it-off/&quot; class=&quot;urlextern&quot; title=&quot;http://citrixblogger.org/2008/02/07/cursor-shadowing-turn-it-off/&quot; rel=&quot;ugc nofollow&quot;&gt;http://citrixblogger.org/2008/02/07/cursor-shadowing-turn-it-off/&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;128-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>kde_autostart</title>
            <link>https://wiki.autosys.tk/linux_faq/kde_autostart</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;директории_с_ярлыками_autostart&quot;&gt;Директории с ярлыками autostart&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В документации по KDE 5 - &lt;a href=&quot;https://docs.kde.org/trunk5/en/kde-workspace/kcontrol/autostart/&quot; class=&quot;urlextern&quot; title=&quot;https://docs.kde.org/trunk5/en/kde-workspace/kcontrol/autostart/&quot; rel=&quot;ugc nofollow&quot;&gt;https://docs.kde.org/trunk5/en/kde-workspace/kcontrol/autostart/&lt;/a&gt; сказано, что для автостарта используются папки: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;$HOME/.config/autostart/
$HOME/.config/plasma-workspace/env
$HOME/.config/plasma-workspace/shutdown
$HOME/.config/autostart-scripts/&lt;/pre&gt;

&lt;p&gt;
При старте сессии &lt;strong&gt;KDE 4&lt;/strong&gt; просматривает содержимое следующих папок на наличие файлов &lt;strong&gt;.desktop&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;~/.kde/Autostart - Эту диреторию заполянет файликами пользователь. /etc/skel/ не работает.
~/.kde/share/autostart
~/.config/autostart
~/.local/share/autostart
/etc/xdg/autostart
/usr/share/autostart**&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \u0441 \u044f\u0440\u043b\u044b\u043a\u0430\u043c\u0438 autostart&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438_\u0441_\u044f\u0440\u043b\u044b\u043a\u0430\u043c\u0438_autostart&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-839&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;отключение_и_приоритеты&quot;&gt;Отключение и приоритеты&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Для того чтобы включить или отключить автозапуск приложения не нужно удалять файлики &lt;strong&gt;.desktop&lt;/strong&gt;.
Для отключения автозапуска достаточно просто добавить в файл строку:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Hidden=true&lt;/pre&gt;

&lt;p&gt;
Файлы, расположенные в домашней директории пользователя (&lt;strong&gt;~/.kde/share/autostart&lt;/strong&gt; и др.)имеют более высокий приоритет, по сравнению с файлами из директории &lt;strong&gt;/usr&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0438 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u0438_\u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;840-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>winerar_winrar_service_menu_in_kde5</title>
            <link>https://wiki.autosys.tk/linux_faq/winerar_winrar_service_menu_in_kde5</link>
            <description>
&lt;p&gt;
В KDE 5.5 мне не хватало WinRar с его возможностью одним кликом ивлекать файлы из виндовых .exe инсталляторов.&lt;br/&gt;

К счастью, нашелся &lt;strong&gt;winerar&lt;/strong&gt; - &lt;a href=&quot;https://dl.opendesktop.org/api/files/download/id/1460731697/67571-winerar.tar.gz&quot; class=&quot;urlextern&quot; title=&quot;https://dl.opendesktop.org/api/files/download/id/1460731697/67571-winerar.tar.gz&quot; rel=&quot;ugc nofollow&quot;&gt;https://dl.opendesktop.org/api/files/download/id/1460731697/67571-winerar.tar.gz&lt;/a&gt; или тут: &lt;a href=&quot;https://wiki.autosys.tk/_media/linux_faq/67571-winerar.tar.gz&quot; class=&quot;media mediafile mf_gz&quot; title=&quot;linux_faq:67571-winerar.tar.gz (1.3 KB)&quot;&gt;67571-winerar.tar.gz&lt;/a&gt; &lt;br/&gt;

Он создает привычное &lt;strong&gt;Winrar&lt;/strong&gt; меню в &lt;strong&gt;dolphin&lt;/strong&gt;, однако у меня оно не заработало. я копировал файлик куда нужно, однако результата не было. &lt;br/&gt;

Немного покопавшись в онторетах я нашел что нужно сделать.&lt;br/&gt;

В KDE5 изменились папки. в которых хранятся настройки &lt;strong&gt;ServiceMenus&lt;/strong&gt;.&lt;br/&gt;

Для того, чтобы все работало устанавливаем winrar (или копируем папку с виндовой машины в &lt;strong&gt;~/.wine/drive_c/Program/ Files/WinRAR/&lt;/strong&gt;), потом копируем файлик &lt;strong&gt;winerar_kde4.desktop&lt;/strong&gt; в &lt;strong&gt;/usr/share/kservices5/ServiceMenus/&lt;/strong&gt; и затем выполняем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kbuildsycoca5&lt;/pre&gt;

&lt;p&gt;
В результате в &lt;strong&gt;Dolphin&lt;/strong&gt; при правой кнопкой мыши появляется меню &lt;strong&gt;WineRar&lt;/strong&gt;. 
&lt;/p&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>настройка_xrdp_для_переподключения_сессии</title>
            <link>https://wiki.autosys.tk/linux_faq/%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_xrdp_%D0%B4%D0%BB%D1%8F_%D0%BF%D0%B5%D1%80%D0%B5%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D1%8F_%D1%81%D0%B5%D1%81%D1%81%D0%B8%D0%B8</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;настройка_xrdp_на_ubuntu_1804&quot;&gt;Настройка xrdp на Ubuntu 18.04&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Протестировано на &lt;strong&gt;Ubuntu Server 18.04&lt;/strong&gt; + &lt;strong&gt;KDE&lt;/strong&gt;. 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install -y xrdp 
sudo service xrdp restart&lt;/pre&gt;

&lt;p&gt;
В принципе всё - можно подключаться. &lt;br/&gt;

В первом пункте меню при подключении нужно выбрать &lt;strong&gt;Xorg&lt;/strong&gt; (выбран по дефолту). Переподключение к существующей сессии работает сразу. &lt;br/&gt;

Чтобы убрать из меню при входе лишние пункты нужно отредактировать &lt;strong&gt;/etc/xrdp/xrdp.ini&lt;/strong&gt;. Примерно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[Globals]
ini_version=1
fork=true
port=3389
use_vsock=false
tcp_nodelay=true
tcp_keepalive=true
#tcp_send_buffer_bytes=32768
#tcp_recv_buffer_bytes=32768
security_layer=negotiate
crypt_level=high
certificate=
key_file=
ssl_protocols=TLSv1, TLSv1.1, TLSv1.2
autorun=
allow_channels=true
allow_multimon=true
bitmap_cache=true
bitmap_compression=true
bulk_compression=true
hidelogwindow=true
max_bpp=32
new_cursors=true
use_fastpath=both
blue=009cb5
grey=dedede

; Login Screen Window Title
ls_title=RDLEAS

; top level window background color in RGB format
ls_top_window_bg_color=009cb5

; width and height of login screen
ls_width=350
ls_height=430

; login screen background color in RGB format
ls_bg_color=dedede

; optional background image filename (bmp format).
#ls_background_image=

; logo
; full path to bmp-file or file in shared folder
ls_logo_filename=
ls_logo_x_pos=55
ls_logo_y_pos=50

; for positioning labels such as username, password etc
ls_label_x_pos=30
ls_label_width=60

; for positioning text and combo boxes next to above labels
ls_input_x_pos=110
ls_input_width=210

; y pos for first label and combo box
ls_input_y_pos=220

; OK button
ls_btn_ok_x_pos=142
ls_btn_ok_y_pos=370
ls_btn_ok_width=85
ls_btn_ok_height=30

; Cancel button
ls_btn_cancel_x_pos=237
ls_btn_cancel_y_pos=370
ls_btn_cancel_width=85
ls_btn_cancel_height=30

[Logging]
LogFile=xrdp.log
LogLevel=INFO
EnableSyslog=true
SyslogLevel=INFO
; LogLevel and SysLogLevel could by any of: core, error, warning, info or debug

[Channels]
rdpdr=true
rdpsnd=true
drdynvc=true
cliprdr=true
rail=true
xrdpvr=true
tcutils=true

[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 xrdp \u043d\u0430 Ubuntu 18.04&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_xrdp_\u043d\u0430_ubuntu_1804&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-2377&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;если_не_переключается_раскладка_клавиатуры&quot;&gt;Если не переключается раскладка клавиатуры&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Также, чтобы нормально переключались раскладки клавиатуры после переподключения к уже запущенной сессии (&lt;a href=&quot;https://github.com/neutrinolabs/xrdp/issues/337&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/neutrinolabs/xrdp/issues/337&quot; rel=&quot;ugc nofollow&quot;&gt;проблема описана тут&lt;/a&gt;), нужно отредактировать файлик &lt;strong&gt;/etc/xrdp/xrdp_keyboard.ini&lt;/strong&gt;. &lt;br/&gt;

Нужно отредактировать секцию &lt;strong&gt;[default_layouts_map]&lt;/strong&gt; и пару строк привести к такому виду:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[default_layouts_map]
rdp_layout_us=us,ru
rdp_layout_ru=us,ru&lt;/pre&gt;

&lt;p&gt;
а в конец файла добавить:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[rdp_keyboard_ru]
keyboard_type=4
keyboard_subtype=1
model=pc104
options=grp:alt_shift_toggle
rdp_layouts=default_rdp_layouts
layouts_map=layouts_map_ru

[layouts_map_ru]
rdp_layout_us=us,ru
rdp_layout_ru=us,ru&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0415\u0441\u043b\u0438 \u043d\u0435 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0430 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0435\u0441\u043b\u0438_\u043d\u0435_\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f_\u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0430_\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;2378-3344&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;переподключение_к_сессии_после_рестарта_сервиса_xrdp&quot;&gt;Переподключение к сессии после рестарта сервиса xrdp&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
В версии xrdp, которая поставляется с Ubuntu 18.04, если во время рестарта сервиса были подключены сессии - переподключиться к ним не удается!&lt;br/&gt;

Проблема описана тут: &lt;a href=&quot;https://github.com/neutrinolabs/xrdp/issues/800&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/neutrinolabs/xrdp/issues/800&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/neutrinolabs/xrdp/issues/800&lt;/a&gt; &lt;br/&gt;

А тут предложено решение: &lt;a href=&quot;https://github.com/ben-cohen/xrdp/commit/5ff8fb8a959dce9d182007a2abf145df6559c87a&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/ben-cohen/xrdp/commit/5ff8fb8a959dce9d182007a2abf145df6559c87a&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/ben-cohen/xrdp/commit/5ff8fb8a959dce9d182007a2abf145df6559c87a&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u0441\u0435\u0441\u0441\u0438\u0438 \u043f\u043e\u0441\u043b\u0435 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0430 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 xrdp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043a_\u0441\u0435\u0441\u0441\u0438\u0438_\u043f\u043e\u0441\u043b\u0435_\u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0430_\u0441\u0435\u0440\u0432\u0438\u0441\u0430_xrdp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;3345-3919&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;то_что_написано_ниже_-_уже_не_актуально&quot;&gt;То что написано ниже - уже не актуально&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u043e \u0447\u0442\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0438\u0436\u0435 - \u0443\u0436\u0435 \u043d\u0435 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u043e_\u0447\u0442\u043e_\u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e_\u043d\u0438\u0436\u0435_-_\u0443\u0436\u0435_\u043d\u0435_\u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;3920-4005&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;настраиваем_xrdp_с_возможностью_переподключения_к_существующей_сессии&quot;&gt;Настраиваем xrdp с возможностью переподключения к существующей сессии&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Хорошая штука &lt;strong&gt;xrdp&lt;/strong&gt; - дает возможность подключаться c windows машин к linux машине по протоколу RDP. 
Однако, &lt;strong&gt;xrdp&lt;/strong&gt; версии &lt;strong&gt;0.6.0&lt;/strong&gt;, входящий в состав репозиторя &lt;strong&gt;Ubuntu 14.04&lt;/strong&gt; вский раз при подключении пользователя создает новую сессию. Такое происходит из-за входящего в состав &lt;strong&gt;xrdp&lt;/strong&gt; сервера vnc. Чтобы работало переподключение необходимо установить связку &lt;strong&gt;xrdp&lt;/strong&gt;+&lt;strong&gt;X11vnc&lt;/strong&gt;. Работающее решение нашлось тут: &lt;a href=&quot;http://c-nergy.be/blog/?p=3546&quot; class=&quot;urlextern&quot; title=&quot;http://c-nergy.be/blog/?p=3546&quot; rel=&quot;ugc nofollow&quot;&gt;http://c-nergy.be/blog/?p=3546&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Сначала ставим и удаляем штатный &lt;strong&gt;xrdp&lt;/strong&gt;, чтобы создались конфирурационные файлы:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install xrdp &amp;amp;&amp;amp; sudo apt-get remove xrdp&lt;/pre&gt;

&lt;p&gt;
Потом ставим зависимости для сборки последней версии:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install autoconf libtool libpam0g-dev libx11-dev libxfixes-dev libssl-dev &lt;/pre&gt;

&lt;p&gt;
И устанавливаем X11vnc:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install x11vnc&lt;/pre&gt;

&lt;p&gt;
Скачиваем и распаковываем последнюю версию &lt;strong&gt;xrdp&lt;/strong&gt; с &lt;strong&gt;sourceforge&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget http://netassist.dl.sourceforge.net/project/xrdp/xrdp/0.6.1/xrdp-v0.6.1.tar.gz
tar -xvf ./xrdp-v0.6.1.tar.gz 
cd xrdp-v0.6.1&lt;/pre&gt;

&lt;p&gt;
Собираем и устанавливаем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo ./bootstrap 
sudo ./configure
sudo make
sudo make install&lt;/pre&gt;

&lt;p&gt;
Настраиваем &lt;strong&gt;xrdp&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cd /etc/xrdp/
sudo mv startwm.sh startwm.sh.backup
sudo ln -s /etc/X11/Xsession /etc/xrdp/startwm.sh
sudo mkdir /usr/share/doc/xrdp
sudo cp /etc/xrdp/rsakeys.ini /usr/share/doc/xrdp/rsakeys.ini &lt;/pre&gt;

&lt;p&gt;
Также заменяем скрипт, запускающий &lt;strong&gt;xrdp&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo cp /etc/init.d/xrdp /etc/init.d/xrdp.orig
sudo chmod a-x /etc/init.d/xrdp.orig
sudo nano /etc/init.d/xrdp&lt;/pre&gt;

&lt;p&gt;
И вставляем туда вот что:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/sh -e
#
# start/stop xrdp and sesman daemons
#
### BEGIN INIT INFO
# Provides:          xrdp
# Required-Start:    $network $remote_fs
# Required-Stop:     $network $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start xrdp and sesman daemons
# Description:       XRDP uses the Remote Desktop Protocol to present a
#                    graphical login to a remote client allowing connection
#                    to a VNC server or another RDP server.
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/sbin/xrdp
PIDDIR=/var/run
SESMAN_START=yes
USERID=xrdp
RSAKEYS=/etc/xrdp/rsakeys.ini
NAME=xrdp
DESC=&amp;quot;Remote Desktop Protocol server&amp;quot;

test -x $DAEMON || exit 0

. /lib/lsb/init-functions

check_root()  {
    if [ &amp;quot;$(id -u)&amp;quot; != &amp;quot;0&amp;quot; ]; then
        log_failure_msg &amp;quot;You must be root to start, stop or restart $NAME.&amp;quot;
        exit 4
    fi
}

if [ -r /etc/default/$NAME ]; then
   . /etc/default/$NAME
fi

# Tasks that can only be run as root
if [ &amp;quot;$(id -u)&amp;quot; = &amp;quot;0&amp;quot; ]; then
    # Check for pid dir
    if [ ! -d $PIDDIR ] ; then
        mkdir $PIDDIR
    fi
    chown $USERID:$USERID $PIDDIR

    # Check for rsa key 
    if [ ! -f $RSAKEYS ] || cmp $RSAKEYS /usr/share/doc/xrdp/rsakeys.ini &amp;gt; /dev/null; then
        log_action_begin_msg &amp;quot;Generating xrdp RSA keys...&amp;quot;
        (umask 077 ; xrdp-keygen xrdp $RSAKEYS)
        chown $USERID:$USERID $RSAKEYS
        if [ ! -f $RSAKEYS ] ; then
            log_action_end_msg 1 &amp;quot;could not create $RSAKEYS&amp;quot;
            exit 1
        fi
        log_action_end_msg 0 &amp;quot;done&amp;quot;
    fi
fi

case &amp;quot;$1&amp;quot; in
  start)
        check_root
        exitval=0
        log_daemon_msg &amp;quot;Starting $DESC &amp;quot; 
        if pidofproc -p $PIDDIR/$NAME.pid $DAEMON &amp;gt; /dev/null; then
            log_progress_msg &amp;quot;$NAME apparently already running&amp;quot;
            log_end_msg 0
            exit 0
        fi
        log_progress_msg $NAME
        start-stop-daemon --start --quiet --oknodo  --pidfile $PIDDIR/$NAME.pid \
	    --chuid $USERID:$USERID --exec $DAEMON
        exitval=$?
	if [ &amp;quot;$SESMAN_START&amp;quot; = &amp;quot;yes&amp;quot; ] ; then
            log_progress_msg &amp;quot;sesman&amp;quot;
            start-stop-daemon --start --quiet --oknodo --pidfile $PIDDIR/xrdp-sesman.pid \
	       --exec /usr/local/sbin/xrdp-sesman
            value=$?
            [ $value -gt 0 ] &amp;amp;&amp;amp; exitval=$value
        fi
        # Make pidfile readables for all users (for status to work)
        [ -e $PIDDIR/xrdp-sesman.pid ] &amp;amp;&amp;amp; chmod 0644 $PIDDIR/xrdp-sesman.pid
        [ -e $PIDDIR/$NAME.pid ] &amp;amp;&amp;amp; chmod 0644 $PIDDIR/$NAME.pid
        # Note: Unfortunately, xrdp currently takes too long to create
        # the pidffile unless properly patched
        log_end_msg $exitval
	;;
  stop)
        check_root
	[ -n &amp;quot;$XRDP_UPGRADE&amp;quot; -a &amp;quot;$RESTART_ON_UPGRADE&amp;quot; = &amp;quot;no&amp;quot; ] &amp;amp;&amp;amp; {
	    echo &amp;quot;Upgrade in progress, no restart of xrdp.&amp;quot;
	    exit 0
	}
        exitval=0
        log_daemon_msg &amp;quot;Stopping RDP Session manager &amp;quot; 
        log_progress_msg &amp;quot;sesman&amp;quot;
        if pidofproc -p  $PIDDIR/xrdp-sesman.pid /usr/local/sbin/xrdp-sesman  &amp;gt; /dev/null; then
            start-stop-daemon --stop --quiet --oknodo --pidfile $PIDDIR/xrdp-sesman.pid \
                --chuid $USERID:$USERID --exec /usr/local/sbin/xrdp-sesman
            exitval=$?
        else
            log_progress_msg &amp;quot;apparently not running&amp;quot;
        fi
        log_progress_msg $NAME
        if pidofproc -p  $PIDDIR/$NAME.pid $DAEMON  &amp;gt; /dev/null; then
            start-stop-daemon --stop --quiet --oknodo --pidfile $PIDDIR/$NAME.pid \
	    --exec $DAEMON
            value=$?
            [ $value -gt 0 ] &amp;amp;&amp;amp; exitval=$value
        else
            log_progress_msg &amp;quot;apparently not running&amp;quot;
        fi
        log_end_msg $exitval
	;;
  restart|force-reload)
        check_root
	$0 stop
        # Wait for things to settle down
        sleep 1
	$0 start
	;;
  reload)
        log_warning_msg &amp;quot;Reloading $NAME daemon: not implemented, as the daemon&amp;quot;
        log_warning_msg &amp;quot;cannot re-read the config file (use restart).&amp;quot;
        ;;
  status)
        exitval=0
        log_daemon_msg &amp;quot;Checking status of $DESC&amp;quot; &amp;quot;$NAME&amp;quot;
        if pidofproc -p  $PIDDIR/$NAME.pid $DAEMON  &amp;gt; /dev/null; then
            log_progress_msg &amp;quot;running&amp;quot;
            log_end_msg 0
        else
            log_progress_msg &amp;quot;apparently not running&amp;quot;
            log_end_msg 1 || true
            exitval=1
        fi
	if [ &amp;quot;$SESMAN_START&amp;quot; = &amp;quot;yes&amp;quot; ] ; then
            log_daemon_msg &amp;quot;Checking status of RDP Session Manager&amp;quot; &amp;quot;sesman&amp;quot;
            if pidofproc -p  $PIDDIR/xrdp-sesman.pid /usr/local/sbin/xrdp-sesman  &amp;gt; /dev/null; then
                log_progress_msg &amp;quot;running&amp;quot;
                log_end_msg 0
            else
                log_progress_msg &amp;quot;apparently not running&amp;quot;
                log_end_msg 1 || true
                exitval=1
            fi
        fi
        exit $exitval
        ;;
  *)
	N=/etc/init.d/$NAME
	echo &amp;quot;Usage: $N {start|stop|restart|force-reload|status}&amp;quot; &amp;gt;&amp;amp;2
	exit 1
	;;
esac

exit 0  &lt;/pre&gt;

&lt;p&gt;
Редактируем &lt;strong&gt;/etc/xrdp/xrdp.ini&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo nano /etc/xrdp/xrdp.ini&lt;/pre&gt;

&lt;p&gt;
и приводим его к такому виду:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[globals]
bitmap_cache=yes
bitmap_compression=yes
port=3389
crypt_level=low
channel_code=1
max_bpp=24
#black=000000
#grey=d6d3ce
#dark_grey=808080
#blue=08246b
#dark_blue=08246b
#white=ffffff
#red=ff0000
#green=00ff00
#background=626c72

[xrdp1]
name=sesman-Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1&lt;/pre&gt;

&lt;p&gt;
Если на вашей &lt;strong&gt;Ubuntu&lt;/strong&gt; используется &lt;strong&gt;KDE&lt;/strong&gt;, то
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo  &amp;quot;startkde&amp;quot; &amp;gt; ~/.xsession&lt;/pre&gt;

&lt;p&gt;
Если на вашей &lt;strong&gt;Ubuntu&lt;/strong&gt; используется &lt;strong&gt;gnome&lt;/strong&gt;, то надо отключить богатую графику:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install gnome-session-fallback
echo  &amp;quot;gnome-session – -session=gnome-fallback&amp;quot; &amp;gt; ~/.xsession&lt;/pre&gt;

&lt;p&gt;
Теперь запускаем xrdp, подключаемся и радуемся
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /etc/init.d/xrdp start&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c xrdp \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0441\u0435\u0441\u0441\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c_xrdp_\u0441_\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e_\u043f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f_\u043a_\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439_\u0441\u0435\u0441\u0441\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;4006-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Thu, 02 Apr 2020 15:19:39 +0000</pubDate>
        </item>
        <item>
            <title>включаем-удаленныи-рабочии-стол-на-удаленном-сервере</title>
            <link>https://wiki.autosys.tk/ms_windows_ms_sql/%D0%B2%D0%BA%D0%BB%D1%8E%D1%87%D0%B0%D0%B5%D0%BC-%D1%83%D0%B4%D0%B0%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B8-%D1%80%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B8-%D1%81%D1%82%D0%BE%D0%BB-%D0%BD%D0%B0-%D1%83%D0%B4%D0%B0%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%BC-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;ситуация&quot;&gt;Ситуация&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
У нас есть в сети сервер (Windows 2003). На нем отключен удаленный доступ к рабочесму столу (RDP). У нас есть учетные данные администратора сервера (имя и пароль). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0438\u0442\u0443\u0430\u0446\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-311&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;задача&quot;&gt;Задача&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Включить удаленный доступ к рабочему столу (terminal services). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;312-442&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Скачиваем &lt;strong&gt;pstools&lt;/strong&gt; - &lt;a href=&quot;http://technet.microsoft.com/en-US/sysinternals/bb897553&quot; class=&quot;urlextern&quot; title=&quot;http://technet.microsoft.com/en-US/sysinternals/bb897553&quot; rel=&quot;ugc nofollow&quot;&gt;http://technet.microsoft.com/en-US/sysinternals/bb897553&lt;/a&gt; или тут - &lt;a href=&quot;https://wiki.autosys.tk/up/windows/pstools.zip&quot; class=&quot;wikilink2&quot; title=&quot;up:windows:pstools.zip&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;up:windows:pstools.zip&quot;&gt; PSTools.zip - 1.6Mb&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Применяем &lt;strong&gt;psexec&lt;/strong&gt;:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;PsExec.exe \\server -u Administrator -p password -h cmd&lt;/pre&gt;

&lt;p&gt;
В результате получаем командную строку сервера. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Включаем службу и редактируем правила файервола. Для этого в командной строке выполняем команды:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Включаем службу:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;REG ADD &amp;quot;HKLM\System\CurrentControlSet\Control\Terminal Server&amp;quot; /v fDenyTSConnections /t REG_DWORD /d 0 /f
REG ADD &amp;quot;HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services&amp;quot; /v fDenyTSConnections /t REG_DWORD /d 0 /f&lt;/pre&gt;

&lt;p&gt;
Разрешаем доступ конкретному пользователю:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;NET LOCALGROUP &amp;quot;Пользователи удаленного рабочего стола&amp;quot; Domain\User /ADD&lt;/pre&gt;

&lt;p&gt;
Добавляем разрешения в файервол:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;REG ADD HKLM\SOFTWARE\Policies\Microsoft\WindowsFirewall\DomainProfile\Services\RemoteDesktop /v Enabled /t REG_DWORD /d 1 /f
REG ADD HKLM\SOFTWARE\Policies\Microsoft\WindowsFirewall\DomainProfile\Services\RemoteDesktop /v Re&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;443-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>лицензирование-сервера-терминалов-windows-2008</title>
            <link>https://wiki.autosys.tk/ms_windows_ms_sql/%D0%BB%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0-%D1%82%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D0%B0%D0%BB%D0%BE%D0%B2-windows-2008</link>
            <description>
&lt;p&gt;
Все ниже написанное дается в ознакомительных целях. Нелегальное использование ПО неправомерно и может закончиться плачевно.&lt;br/&gt;

Статья актуальна до всех версий &lt;strong&gt;Windows Server&lt;/strong&gt;, в том числе и для &lt;strong&gt;Windows Server 2016&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
1.    Добавляем роль &lt;strong&gt;Службы удаленных рабочих столов&lt;/strong&gt; (&lt;strong&gt;RemoteDesktopServices&lt;/strong&gt;)&lt;br/&gt;

2.    Выбираем в диспетчере сервера роль &lt;strong&gt;Служба лицензирования удаленных рабочих столов&lt;/strong&gt; (&lt;strong&gt;Remote Desktop Licensing&lt;/strong&gt;)&lt;br/&gt;

3.    После установки роли запускаем оснастку управления лицензированием - кнопка &lt;strong&gt;“Пуск” → “Все программы” → “Администрирование” → “Службы удаленных рабочих столов” → “Диспетчер лицензирования служб терминалов”&lt;/strong&gt; или &lt;strong&gt;Windows Administrative Tools&lt;/strong&gt; → &lt;strong&gt;Remote Desktop Licensing Manager&lt;/strong&gt; &lt;br/&gt;

4.    Щелкаем правой кнопкой на нашем сервере, выбираем пункт “&lt;strong&gt;Активировать сервер&lt;/strong&gt;“&lt;br/&gt;

5.    Выбираем тип подключения Автоподключение (быстрее и проще) или Web ( в браузере). Не забываем открыть доступ к интернету.&lt;br/&gt;

6.    Вводим свои личные данные (имя, фамилию,организацию, страну). Следующую страничку (E-Mail, адрес) - оставляем пустой.&lt;br/&gt;

7.    Hажимаем «Далее», происходит активация. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После успешной активации вам будет предложено добавить лицензии.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Запустится &lt;strong&gt;Client Access License (CAL) Activation Wizard&lt;/strong&gt;, который первым делом снова полезет в Microsoft. После чего спросит тип лицензии, которую желаете установить. Выбираем &lt;strong&gt;Enterprise Agreement&lt;/strong&gt;, и следующим этапом вводим &lt;strong&gt;Enterprise Agreement Number&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Как оказалось, это число прекрасно ищется в любом поисковике по запросу &lt;strong&gt;Enrollment Number&lt;/strong&gt;. Варианты &lt;strong&gt;Enrollment Number&lt;/strong&gt;: 4965437 (3325596;6565792;4526017;5296992). &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Теперь нужно указать продукт - Windows Server 2008 (или R2). Тип лицензии - &lt;strong&gt;per Device&lt;/strong&gt; (&lt;strong&gt;на устройство&lt;/strong&gt;). Количество требуемых лицензий - n. На этом всё. Закрываем окно Terminal Server Licensing.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Область применения и количество можно менять и переустанавливать. &lt;br/&gt;

&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;лицензирование_vdi&quot;&gt;Лицензирование VDI&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Вышеприведенные номера &lt;strong&gt;Enterprise Agreement&lt;/strong&gt; подходят только для лицензий терминального сервера. Но как же быть с &lt;strong&gt;VDI&lt;/strong&gt;, который понадобится при работе с &lt;strong&gt;XenDesktop&lt;/strong&gt;. Тут нам на помощь приходит Google. В нем удалось найти &lt;strong&gt;Enterprise Agreement&lt;/strong&gt; университета штата Флориды, которому доступны &lt;strong&gt;VDI&lt;/strong&gt;: 7133077.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://www.purchasing.ufl.edu/contracts/microsoft.asp&quot; class=&quot;urlextern&quot; title=&quot;http://www.purchasing.ufl.edu/contracts/microsoft.asp&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.purchasing.ufl.edu/contracts/microsoft.asp&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 VDI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_vdi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;3025-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>vnc-в-контейнере-openvz</title>
            <link>https://wiki.autosys.tk/proxmox/vnc-%D0%B2-%D0%BA%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%B5-openvz</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проверено_на_debian_60_openvz_template&quot;&gt;Проверено на Debian 6.0 OpenVZ template&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Устанавливаем пакеты:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apt-get install xserver-xorg-core vnc4server kde icewm-experimental xdm&lt;/pre&gt;

&lt;p&gt;
Затем выполняем:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo &amp;#039;:0 /usr/bin/Xvnc /usr/bin/Xvnc -geometry 1024x768 -depth 24&amp;#039; /usr/X11R6/lib/X11/xdm/Xservers&lt;/pre&gt;

&lt;p&gt;
Перезапускаем xdm&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;/etc/init.d/xdm restart&lt;/pre&gt;

&lt;p&gt;
Запускаем vncserver&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;vncserver&lt;/pre&gt;

&lt;p&gt;
При первом запуске VNC попросит пароль. Его надо задать.&lt;br/&gt;

Теперь подключаемся с помощью VNC Viewer к vnc так: &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
192.168.1.69:1&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы vnc запускался автоматом в &lt;strong&gt;/etc/rc.local&lt;/strong&gt; добавляем:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;su -l $USER -c &amp;quot;vncserver :0&amp;quot;&lt;/pre&gt;

&lt;p&gt;
Вместо $USER надо написать имя пользователя, от имени которого будет запускаться VNC. &lt;br/&gt;

 &lt;br/&gt;

Соотвественно подключаться нужно так:&lt;br/&gt;

192.168.1.69:0&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Все.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0432\u0435\u0440\u0435\u043d\u043e \u043d\u0430 Debian 6.0 OpenVZ template&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0432\u0435\u0440\u0435\u043d\u043e_\u043d\u0430_debian_60_openvz_template&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1088&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;ubuntu_и_gnome&quot;&gt;Ubuntu и Gnome&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Обновляем списки пакетов и ставим ubuntu-desktop, gdm и vncserver:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apt-get update &amp;amp;&amp;amp; apt-get install ubuntu-desktop gdm vnc4server&lt;/pre&gt;

&lt;p&gt;
В процессе установки он спросит про клавиатурные раскладки и про менеджер окон - &lt;strong&gt;gdm&lt;/strong&gt; или &lt;strong&gt;lightdm&lt;/strong&gt;&lt;br/&gt;

В зависимости от того что выбрано запускаем &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;service gdm start&lt;/pre&gt;

&lt;p&gt;
или&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;service lightdm start&lt;/pre&gt;

&lt;p&gt;
Затем запускаем сам vncserver. При первом запуске он попросит задать пароль.&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;vncserver :1 -geometry 1024x768 -depth 16 -pixelformat rgb565&lt;/pre&gt;

&lt;p&gt;
Отредактируем файл&lt;strong&gt; ~/.vnc/xstartup&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;nano ~/.vnc/xstartup&lt;/pre&gt;

&lt;p&gt;
В самый конец допишем строку &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;gnome-session &amp;amp;&lt;/pre&gt;

&lt;p&gt;
Для автоматического старта vncserver после каждой перезагрузки добавим в &lt;strong&gt;/etc/rc.local&lt;/strong&gt; перед &lt;strong&gt;exit 0&lt;/strong&gt; строку:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;su -l $USER -c &amp;quot;vncserver :1 -geometry 1024x768 -depth 16 -pixelformat rgb565&amp;quot;&lt;/pre&gt;

&lt;p&gt;
Вместо &lt;strong&gt;$USER&lt;/strong&gt; надо написать имя пользователя, от имени которого будет запускаться &lt;strong&gt;VNC&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Все.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Ubuntu \u0438 Gnome&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;ubuntu_\u0438_gnome&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1089-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:28 +0000</pubDate>
        </item>
        <item>
            <title>armbian_k3s</title>
            <link>https://wiki.autosys.tk/android/armbian_k3s</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;задача&quot;&gt;Задача&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Хочу запустить на &lt;strong&gt;Android TV-Box HK1 (Amlogic S905X3, 4Gb Ram, 128 Gb MMC) ~ $50&lt;/strong&gt; какой-нибудь из &lt;strong&gt;kubernetes&lt;/strong&gt;. Например - легковесный k3s от Rancher.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-233&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;сборка_armbian&quot;&gt;Сборка Armbian&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Я люблю &lt;strong&gt;Ubuntu&lt;/strong&gt;, поэтому - собирать буду её. &lt;br/&gt;

При сборке &lt;strong&gt;Armbian&lt;/strong&gt; важно учесть следующее:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 дефолтная корневая файловая система &lt;strong&gt;ext4&lt;/strong&gt; - довольно небрежно относится к ресурсу накопителя &lt;strong&gt;eMMC&lt;/strong&gt;, а он отвечает ей тем же - часто случается переход системы в &lt;strong&gt;ReadOnly&lt;/strong&gt;, а в журнале можно обнаружить &lt;strong&gt;EXT4-fs error&lt;/strong&gt;. Поэтому - работать надо не на &lt;strong&gt;ext4&lt;/strong&gt;, а, например, на &lt;strong&gt;F2FS&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 В дефолтных конфигурациях ядер &lt;strong&gt;Armbian&lt;/strong&gt; выключен модель ядра &lt;strong&gt;br_netfilter&lt;/strong&gt;. То есть - перед сборкой следует его включить. Например, для моего железа, так: &lt;pre class=&quot;code&quot;&gt; sed -i &amp;#039;s/CONFIG_BRIDGE_NETFILTER=.*$/CONFIG_BRIDGE_NETFILTER=y/&amp;#039; config/kernel/linux-meson-current.config&lt;/pre&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Я собирал свой образ такой командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./compile.sh docker BOARD=odroidc4 BRANCH=current RELEASE=jammy BUILD_MINIMAL=yes BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no ROOTFS_TYPE=f2fs FIXED_IMAGE_SIZE=32000&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0431\u043e\u0440\u043a\u0430 Armbian&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0431\u043e\u0440\u043a\u0430_armbian&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;234-1535&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;установка_k3s&quot;&gt;Установка k3s&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Выполняю локально на самой коробке с Armbian, поэтому в качестве адреса master-хоста указываю &lt;strong&gt;0.0.0.0&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apt-get install ansible git sshpass
git clone https://github.com/k3s-io/k3s-ansible
cd k3s-ansible
cp -R inventory/sample inventory/armbian-box

cat &amp;lt;&amp;lt;EOF &amp;gt; inventory/armbian-box/hosts.ini
[master]
0.0.0.0
[k3s_cluster:children]
master
EOF

sed -i &amp;#039;s/ansible_user:.*/ansible_user: root/&amp;#039; inventory/armbian-box/group_vars/all.yml
ansible-playbook site.yml -i inventory/armbian-box/hosts.ini --ask-pass&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 k3s&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_k3s&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1536-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Sun, 17 Jul 2022 20:55:59 +0000</pubDate>
        </item>
        <item>
            <title>citrix-reciever-под-ubuntu-14-04-x64</title>
            <link>https://wiki.autosys.tk/citrix/citrix-reciever-%D0%BF%D0%BE%D0%B4-ubuntu-14-04-x64</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;этот_мануал_уже_не_актуален_citrix_reciever_131_устанавливается_нормально_хотя_и_небезглючен&quot;&gt;Этот мануал уже не актуален. Citrix Reciever 13.1 устанавливается нормально. Хотя и небезглючен&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042d\u0442\u043e\u0442 \u043c\u0430\u043d\u0443\u0430\u043b \u0443\u0436\u0435 \u043d\u0435 \u0430\u043a\u0442\u0443\u0430\u043b\u0435\u043d. Citrix Reciever 13.1 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e. \u0425\u043e\u0442\u044f \u0438 \u043d\u0435\u0431\u0435\u0437\u0433\u043b\u044e\u0447\u0435\u043d&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044d\u0442\u043e\u0442_\u043c\u0430\u043d\u0443\u0430\u043b_\u0443\u0436\u0435_\u043d\u0435_\u0430\u043a\u0442\u0443\u0430\u043b\u0435\u043d_citrix_reciever_131_\u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f_\u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e_\u0445\u043e\u0442\u044f_\u0438_\u043d\u0435\u0431\u0435\u0437\u0433\u043b\u044e\u0447\u0435\u043d&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-174&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;часть_первая_-_запуск_в_64-битной_среде&quot;&gt;Часть Первая - запуск в 64-битной среде&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Довольно странным оказался тот факт, что пакет &lt;strong&gt;Citrix Reciever&lt;/strong&gt;, скачиваемый с сайта &lt;strong&gt;citrix.com&lt;/strong&gt; просто так не ставится и нуждается в доработке напильником. Это происходит по двум причинам. Во-первых - сам пакет 32-битный, а во вторых - пакеты, от которых он зависит в новой &lt;strong&gt;Ubuntu&lt;/strong&gt; заменены другими. Это касается версий пакета &lt;strong&gt;12.x&lt;/strong&gt; и &lt;strong&gt;13&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Процедура описана тут: &lt;a href=&quot;https://help.ubuntu.com/community/CitrixICAClientHowTo&quot; class=&quot;urlextern&quot; title=&quot;https://help.ubuntu.com/community/CitrixICAClientHowTo&quot; rel=&quot;ugc nofollow&quot;&gt;https://help.ubuntu.com/community/CitrixICAClientHowTo&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В двух словах. Нужно скачать пакет, распаковать его и отредактировать зависимости.&lt;br/&gt;

Включаем поддержку 32-битных пакетов:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo dpkg --add-architecture i386 # only needed once
sudo apt-get update&lt;/pre&gt;

&lt;p&gt;
Ставим зависимости:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install libmotif4:i386 nspluginwrapper lib32z1 libc6-i386 libxp6:i386 libxpm4:i386 libasound2:i386&lt;/pre&gt;

&lt;p&gt;
Скачиваем пакет &lt;strong&gt;x64 Citrix Receiver 12.1&lt;/strong&gt; &lt;strong&gt;.deb&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.citrix.com/downloads/citrix-receiver/receivers-by-platform/&quot; class=&quot;urlextern&quot; title=&quot;https://www.citrix.com/downloads/citrix-receiver/receivers-by-platform/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.citrix.com/downloads/citrix-receiver/receivers-by-platform/&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Ремонтируем пакет. Распакуем его:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cd ~/Downloads
mkdir ica_temp
dpkg-deb -x icaclient_13.0.0.256735_amd64.deb ica_temp
dpkg-deb --control icaclient_13.0.0.256735_amd64.deb ica_temp/DEBIAN&lt;/pre&gt;

&lt;p&gt;
Корректирум список зависимостей:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;nano ./ica_temp/DEBIAN/control&lt;/pre&gt;

&lt;p&gt;
И меняем строку &lt;strong&gt;Depends: …&lt;/strong&gt; на:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Depends: libc6-i386 (&amp;gt;= 2.7-1), lib32z1, nspluginwrapper, libxp6:i386, libxpm4:i386&lt;/pre&gt;

&lt;p&gt;
Теперь отредактируем постинсталляционный скрипт:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;nano ./ica_temp/DEBIAN/postinst&lt;/pre&gt;

&lt;p&gt;
Ищем строку: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo $Arch|grep &amp;quot;i[0-9]86&amp;quot; &amp;gt;/dev/null&lt;/pre&gt;

&lt;p&gt;
и заменяем ее на :&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo $Arch|grep -E &amp;quot;i[0-9]86|x86_64&amp;quot; &amp;gt;/dev/null&lt;/pre&gt;

&lt;p&gt;
Пересобираем пакет:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dpkg -b ica_temp icaclient-modified.deb&lt;/pre&gt;

&lt;p&gt;
Ставим его:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo dpkg -i icaclient-modified.deb&lt;/pre&gt;

&lt;p&gt;
Теперь добавляем сертификаты. Я сначала брал сертификат центра сертификации с сервера WIndows в файле &lt;strong&gt;.cer&lt;/strong&gt;, потом импортировал его в Firefox &lt;strong&gt;(Edit → Prefrences → Advanced → Certificates → View Certs → Authorities → Import)&lt;/strong&gt;. &lt;br/&gt;

А потом делал ссылку на серты Firefox в папку с сертами  Citrix:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/&lt;/pre&gt;

&lt;p&gt;
Все. Теперь можно работать. Заходим на свой сайт &lt;strong&gt;Citrix Web Interface&lt;/strong&gt;, логинимся и тыкаем в ярлычок с приложением.  Firefox спросит что делать с файлом launch.ica. Нужно указать ему путь к исполняемом файлу клиента ICA - &lt;strong&gt;/opt/Citrix/ICAClient/wfica&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Всё. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0427\u0430\u0441\u0442\u044c \u041f\u0435\u0440\u0432\u0430\u044f - \u0437\u0430\u043f\u0443\u0441\u043a \u0432 64-\u0431\u0438\u0442\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0447\u0430\u0441\u0442\u044c_\u043f\u0435\u0440\u0432\u0430\u044f_-_\u0437\u0430\u043f\u0443\u0441\u043a_\u0432_64-\u0431\u0438\u0442\u043d\u043e\u0439_\u0441\u0440\u0435\u0434\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;175-3510&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;часть_вторая_-_нормальный_полноценный_запуск&quot;&gt;Часть Вторая - нормальный полноценный запуск&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Сначала я думал, что всё… Будет работать…Однако, это оказалось совсем не всё… К сожалению, .deb пакет &lt;strong&gt;Citrix Reciever&lt;/strong&gt; на данный момент (июль 2014 года) собран очень похабно. Фактически - в нем просто прописали что архитекртура теперь amd64.. И всё. Будучи установленным непосредственно в 64-bit систему он нуждается в некоторых 32-bit пакетах, которые невозможно установить рядом с 64-bit. То есть - работает запуск приложений из браузера, но вот получить окошко Reciever с приложенимя так просто не удается. Но выход есть! Это создание 32-х битного окружения chroot и запуск Reciever в нем. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Итак, поехали. &lt;br/&gt;

Делаем chroot.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Ставим то что нам понадобится:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install debootstrap schroot&lt;/pre&gt;

&lt;p&gt;
Создаем директорию и конфигурационный файл для нашего chroot:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo mkdir /trusty_i386
sudo nano /etc/schroot/chroot.d/trusty_i386.conf&lt;/pre&gt;

&lt;p&gt;
И записываем туда вот что:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[trusty_i386]
description=Ubuntu 14.04 Trusty for i386
directory=/trusty_i386
personality=linux32
root-users=mike
type=directory
users=alice,mike&lt;/pre&gt;

&lt;p&gt;
Тут:&lt;br/&gt;

&lt;strong&gt;directory&lt;/strong&gt; (раньше - location) - Директория где будут лежать файлы этого environment. Директория должна быть за пределами &lt;strong&gt;/home&lt;/strong&gt;. tree. &lt;br/&gt;

По-умолчанию - &lt;strong&gt;/srv/chroot&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;personality&lt;/strong&gt; - Эта строка нужна, если хост-система 64-bit, а chroot-система - 32-bit. В противном случае можно отключить или закомментировать “#”.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;root-users&lt;/strong&gt; - Пользователи хост-системы, которые имеют права запускать schroot и получат root-доступ к chroot-окружению. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;users&lt;/strong&gt; - Пользователи хост-системы, которые имеют права запускать schroot и получат пользовательский доступ к chroot-окружению. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Выполнем установку нашей Ubuntu 14.04 Trusty 32-bit системы в указанную папку:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo debootstrap --variant=buildd --arch=i386 trusty /trusty_i386 http://archive.ubuntu.com/ubuntu/&lt;/pre&gt;

&lt;p&gt;
Для других дистрибутивов просто меняем &lt;strong&gt;trusty&lt;/strong&gt; на название дистра (например для Ubuntu 13.04 - &lt;strong&gt;precise&lt;/strong&gt;)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Смотрим на список сконфигурированных chroot:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;schroot  -l&lt;/pre&gt;

&lt;p&gt;
Копируем туда пользователей и группы из хостовой системы:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo cp /etc/group /trusty_i386/etc/
sudo cp /etc/passwd /trusty_i386/etc/&lt;/pre&gt;

&lt;p&gt;
Теперь запустим наше chroot-окружение и убедимсо, что там внутри 32-bit:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;schroot -p -c trusty_i386 -u root
(trusty_i386)root@host-system:/home/mike# uname -a
Linux host-system 3.16.0-031600rc2-generic #201406220135 SMP Sun Jun 22 05:36:21 UTC 2014 i686 i686 i686 GNU/Linux&lt;/pre&gt;

&lt;p&gt;
В данном случае -p указывает на то, что мы хотим передать в chroot текущее окружение пользователя. Это необходимо для того, чтобы правильно передалась переменная DISPLAY, которая важна для запуска &lt;abbr title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/abbr&gt;-приложений.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Затем в окружении chroot ставим компоненты системы:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;(trusty_i386)root@host-system:/home/mike# apt-get install ubuntu-minimal&lt;/pre&gt;

&lt;p&gt;
Обязательно нужно реконфигурировать &lt;strong&gt;locales&lt;/strong&gt;. Признаком ошибок в конфигурации locales является появление  при запуске &lt;strong&gt;Citrix Reciever&lt;/strong&gt; сообщений типа: &lt;strong&gt;Gtk-WARNING **: Locale not supported by C library.&lt;/strong&gt;. Выполянем:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo locale-gen en_US en_US.UTF-8 ru_RU ru_RU.UTF-8
sudo dpkg-reconfigure locales&lt;/pre&gt;

&lt;p&gt;
Теперь ставим сам Citrix Reciever. &lt;br/&gt;

Скачиваем 32-битный пакет и кладем его куда-нить в папку /trusty_i386.&lt;br/&gt;

Дальше нужно удовлетворить зависимости. Для этого я просто попытался установить пакет в лоб, а затем доставил зависимости:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;(trusty_i386)root@host-system:/home/mike#  dpkg -i /opt/icaclient_13.0.0.256735_i386.deb
(trusty_i386)root@host-system:/home/mike#  apt-get -f install&lt;/pre&gt;

&lt;p&gt;
Однако этого оказалось маловато. Есть такой пакетик &lt;strong&gt;libxerces-c3.1&lt;/strong&gt;, который почему-то не входит в стандартный репозиторий Ubuntu.&lt;br/&gt;

Его ставим так:  &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo &amp;quot;deb http://cz.archive.ubuntu.com/ubuntu trusty main universe&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list
apt-get update
apt-get install libxerces-c3.1&lt;/pre&gt;

&lt;p&gt;
И уже потом делаем&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;(trusty_i386)root@host-system:/home/mike#  dpkg -i /opt/icaclient_13.0.0.256735_i386.deb&lt;/pre&gt;

&lt;p&gt;
У меня все поставилось.&lt;br/&gt;

Дальше надо положить сертификаты из хост-системы в chroot в папку &lt;strong&gt;/opt/Citrix/ICAClient/keystore/cacerts/&lt;/strong&gt;.&lt;br/&gt;

Их можно скопировать из папки с сертификатами mozilla. В хостовой системе выполняем:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cp /usr/share/ca-certificates/mozilla/* /trusty_i386/opt/Citrix/ICAClient/keystore/cacerts/&lt;/pre&gt;

&lt;p&gt;
И это еще не все. По непонятной причине из браузера приложения запускаются с сертификатом в виндовом формате .cer (x509 der), а вот Citrix Receiver в режиме kiosk-mode cс таким сертификатом запускаться отказывается с сообщением “Your account cannot be added using this server address. Make sure you entered it correctly”. И отладочных сообщений никаких. В лучших традициях Microsoft.&lt;br/&gt;

Для того чтобы все заработало нужно сконвертировать сертификат в форма .pem и выполнить rehash:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;openssl x509 -inform der -in /opt/Citrix/ICAClient/keystore/cacerts/your_CA_root_cert.cer  -out /opt/Citrix/ICAClient/keystore/cacerts/your_CA_root_cert.pem
c_rehash /opt/Citrix/ICAClient/keystore/cacerts/&lt;/pre&gt;

&lt;p&gt;
После этого можно смело запускать Citrix Reciever:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;(trusty_i386)root@host-system:/home/mike# /opt/Citrix/ICAClient/selfservice &amp;amp;&lt;/pre&gt;

&lt;p&gt;
Для того чтобы запускать Citrix Reciever скриптом я сделал так вот что.&lt;br/&gt;

В окружении trusty_i386 с сделал скрипт &lt;strong&gt;/opt/CitrixReciever.sh&lt;/strong&gt;:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#! /bin/sh
/opt/Citrix/ICAClient/selfservice&lt;/pre&gt;

&lt;p&gt;
Сделал его исполняемым:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;chmod a+x /opt/CitrixReciever.sh&lt;/pre&gt;

&lt;p&gt;
После этого в хост-системе я могу запускать &lt;strong&gt;Citrix Reciever&lt;/strong&gt; командой:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;SESSION=$(schroot --begin-session -p -c trusty_i386 --session-name CitrixReciever) &amp;amp;&amp;amp; schroot --run-session -p -c &amp;quot;$SESSION&amp;quot; -- /opt/CitrixReciever.sh &amp;amp;&amp;amp; schroot --end-session -c &amp;quot;$SESSION&amp;quot; &amp;amp;&lt;/pre&gt;

&lt;p&gt;
Эту же команду я засунул в &lt;strong&gt;Link to application&lt;/strong&gt;, а в файле .desktop потом прописал icon - &lt;strong&gt;/trusty_i386/opt/Citrix/ICAClient/icons/025_Receiver_h32bit_48.png&lt;/strong&gt; и получился ярлык как в Windows.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Настроить параметры Reciever можно с помощью утилиты configmgr, которая запускается так:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;/opt/Citrix/ICAClient/util/configmgr&lt;/pre&gt;

&lt;p&gt;
Там среди всего прочего можно настроить доступ к файловой системе. Но так как мы работаем из chroot, то понадобится пробросить папки из хостовой системы в chroot.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0427\u0430\u0441\u0442\u044c \u0412\u0442\u043e\u0440\u0430\u044f - \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0447\u0430\u0441\u0442\u044c_\u0432\u0442\u043e\u0440\u0430\u044f_-_\u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u044b\u0439_\u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439_\u0437\u0430\u043f\u0443\u0441\u043a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;3511-12345&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;установка_ctxusb&quot;&gt;Установка ctxusb&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
При установке &lt;strong&gt;ctxusb&lt;/strong&gt; возникают проблемы с запуском. &lt;br/&gt;

Система пишет:&lt;strong&gt;* Starting Citrix USB daemon [fail]&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
В логах следующее:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;libcap: 
# cat /var/log/syslog | grep ctxusbd
libcap.so.1: cannot open shared object file: No such file or directory&lt;/pre&gt;

&lt;p&gt;
Проблема в отсутствии &lt;strong&gt;libcap.so.1&lt;/strong&gt; в репозиториях Ubuntu. Но она есть в параллельной вселенной в &lt;strong&gt;.rpm&lt;/strong&gt;
Так поставим же ее:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install alien
wget ftp://rpmfind.net/linux/opensuse/distribution/13.2/repo/oss/suse/x86_64/libcap1-32bit-1.10-60.2.1.x86_64.rpm
sudo alien -i ./libcap1-32bit-1.10-60.2.1.x86_64.rpm &lt;/pre&gt;

&lt;p&gt;
После этих манипуляций &lt;strong&gt;ctxusb&lt;/strong&gt; ставится и запускается.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 ctxusb&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_ctxusb&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:30,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;12346-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Tue, 21 May 2019 09:50:55 +0000</pubDate>
        </item>
        <item>
            <title>citrix_course_cns-207-3i</title>
            <link>https://wiki.autosys.tk/citrix/citrix_course_cns-207-3i</link>
            <description>
&lt;p&gt;
Курс &lt;strong&gt;Citrix Course CNS-207-3I&lt;/strong&gt; &lt;br/&gt;

&lt;a href=&quot;http://training.citrix.com/mod/ctxcatalog/course.php?id=751&quot; class=&quot;urlextern&quot; title=&quot;http://training.citrix.com/mod/ctxcatalog/course.php?id=751&quot; rel=&quot;ugc nofollow&quot;&gt;Информация о курсе&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/cns-207-3i-en-studentmanual-v02.pdf&quot; class=&quot;media mediafile mf_pdf&quot; title=&quot;citrix:cns-207-3i-en-studentmanual-v02.pdf (8.4 MB)&quot;&gt;Сам курс&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/cns-207-3i-en-studentexercsieworkbook-softlayer-v02.pdf&quot; class=&quot;media mediafile mf_pdf&quot; title=&quot;citrix:cns-207-3i-en-studentexercsieworkbook-softlayer-v02.pdf (836.4 KB)&quot;&gt;Лабораторные работы&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/netscaler_vpx1_plt_citrix_education_expires_20180109.zip&quot; class=&quot;media mediafile mf_zip&quot; title=&quot;citrix:netscaler_vpx1_plt_citrix_education_expires_20180109.zip (919 B)&quot;&gt;Лицензия на Netscaler VPX версии Education&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/1y0-253_implementing_citrix_netscaler_10.5_for_app_and_desktop_solutions_v02.pdf&quot; class=&quot;media mediafile mf_pdf&quot; title=&quot;citrix:1y0-253_implementing_citrix_netscaler_10.5_for_app_and_desktop_solutions_v02.pdf (575.8 KB)&quot;&gt;Exam Prepereation Guide&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/_media/citrix/1y0-253_exam_dumps.zip&quot; class=&quot;media mediafile mf_zip&quot; title=&quot;citrix:1y0-253_exam_dumps.zip (4 MB)&quot;&gt;1y0-253_exam_dumps - Дампы экзамена 1y0-253&lt;/a&gt; &lt;br/&gt;

sergey _@_ bacherikov_ .com &lt;br/&gt;

&lt;/p&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>citrix_licensinsing_server_citrix.exe_high_cpu_load</title>
            <link>https://wiki.autosys.tk/citrix/citrix_licensinsing_server_citrix.exe_high_cpu_load</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
На &lt;strong&gt;Windows Server 2008 R2&lt;/strong&gt; установлен &lt;strong&gt;Citrix Licensing Server&lt;/strong&gt; версии &lt;strong&gt;15.5.0.25000&lt;/strong&gt;, который идет в комплекте с &lt;strong&gt;Citrix XenDesktop 7.15 LTSR CU3 (7.15.3000)&lt;/strong&gt;. &lt;br/&gt;

Процесс &lt;strong&gt;CITRIX.exe&lt;/strong&gt; на 100% занимает одно ядро CPU. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В логах ничего подозрительного нет, за исключением странных времен событий. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-470&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Причина оказалась в тайм-зоне, установленной на сервере. &lt;br/&gt;

Все остальные серверы окружения (контроллер домена &lt;strong&gt;ActiveDirectory&lt;/strong&gt;, &lt;strong&gt;Citrix Desktop Delivery Controller&lt;/strong&gt; и прочие) настроены на таймзону &lt;strong&gt;UTC+3:00 Moscow&lt;/strong&gt;, а &lt;strong&gt;Citrix Licensing Server&lt;/strong&gt; был настроен на &lt;strong&gt;UTC-8:00 Pacific Time&lt;/strong&gt;. В результате, в логах можно было встретить события, которые для данного сервера были бы в будущем. &lt;br/&gt;

После установки корректной таймзоны и перезагрузки сервера все пришло в норму. &lt;br/&gt;

Следите за таймзонами!  
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;471-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>citrix_storefront_our_logon_has_expired_please_log_on_again_to_continue</title>
            <link>https://wiki.autosys.tk/citrix/citrix_storefront_our_logon_has_expired_please_log_on_again_to_continue</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;конфигурация&quot;&gt;Конфигурация&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Ферма Citrix Xendesktop 7.13 &lt;br/&gt;

Storefront -  &lt;br/&gt;

Netscaler Gateway - 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-115&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В моей инсталляции мониторинг состояния фермы осуществляется с помощью скрипта, который периодически (раз в пол часа) логинится на Storefront и запускает все доступные тестовой учетке приложения. &lt;br/&gt;

Иногда (не всегда) пользователь нормально логинится на &lt;strong&gt;StoreFront&lt;/strong&gt; (через Netscaler Gateway), видит список ресурсов, но после клика по иконке ресурса видит сообщение:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Your logon has expired. Please log on again to continue.
The Server hosting &amp;quot;Desktop&amp;quot; is either not accepting Logons, is down, or there is a load issue. Check the Event Log, &amp;quot;Citrix Delivery Services&amp;quot;, on the Storefront server for more information.&lt;/pre&gt;

&lt;p&gt;
В логах на Storefront в момент возникновения такой ситуации ошибки с &lt;strong&gt;Event ID 5074&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;A worker process with process id of &amp;#039;2880&amp;#039; serving application pool &amp;#039;Citrix Configuration Api&amp;#039; has requested a recycle because the worker process reached its allowed processing time limit.
A worker process with process id of &amp;#039;1972&amp;#039; serving application pool &amp;#039;Citrix Delivery Services Resources&amp;#039; has requested a recycle because the worker process reached its allowed processing time limit.
A worker process with process id of &amp;#039;7536&amp;#039; serving application pool &amp;#039;Citrix Delivery Services Authentication&amp;#039; has requested a recycle because the worker process reached its allowed processing time limit.
A worker process with process id of &amp;#039;10112&amp;#039; serving application pool &amp;#039;Citrix Receiver for Web&amp;#039; has requested a recycle because the worker process reached its allowed processing time limit.&lt;/pre&gt;

&lt;p&gt;
В дальнейшем всё работает нормально. Пользователь нормально запускает опубликованные приложения.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;116-2143&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Очевидно, что нужно как-то изменить настройки &lt;strong&gt;Application Pool Recycling&lt;/strong&gt;. Внятного гайда от &lt;strong&gt;Citrix&lt;/strong&gt; на эту тему я не нашел. &lt;br/&gt;

Существуют рекомендации совсем отключить &lt;strong&gt;Application Pool Recycling&lt;/strong&gt;, однако это кажется немного опасным. &lt;br/&gt;

Я попробую четко указать время, когда следует перезапускать &lt;strong&gt;application pool&lt;/strong&gt;, в котором работают сервисы &lt;strong&gt;Citrix&lt;/strong&gt;. &lt;br/&gt;

В итоге - на серверах &lt;strong&gt;Storefront&lt;/strong&gt; для всех &lt;strong&gt;Application Pools&lt;/strong&gt;, названия которых начинаются с &lt;strong&gt;Citrix&lt;/strong&gt; и для &lt;strong&gt;DefaultAppPool&lt;/strong&gt;  в &lt;strong&gt;Advanced Settings&lt;/strong&gt; в разделе &lt;strong&gt;Recycling&lt;/strong&gt; я выставил
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Regular Time Interval (minutes) = 0&lt;/pre&gt;

&lt;p&gt;
вместо дефолтного 1740, а также добавил значение
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Specific Times = 00:55:00&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2144-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 13 May 2019 10:00:51 +0000</pubDate>
        </item>
        <item>
            <title>ddc_certs_renew</title>
            <link>https://wiki.autosys.tk/citrix/ddc_certs_renew</link>
            <description>
&lt;p&gt;
Обновление сертификатов на &lt;strong&gt;Desktop delivery controller (DDC) 7.x&lt;/strong&gt;. &lt;br/&gt;

&lt;a href=&quot;https://support.citrix.com/article/CTX227572&quot; class=&quot;urlextern&quot; title=&quot;https://support.citrix.com/article/CTX227572&quot; rel=&quot;ugc nofollow&quot;&gt;https://support.citrix.com/article/CTX227572&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://www.torivar.com/2016/03/16/replace-ssl-certificates-on-citrix-storefront-and-delivery-controller/&quot; class=&quot;urlextern&quot; title=&quot;https://www.torivar.com/2016/03/16/replace-ssl-certificates-on-citrix-storefront-and-delivery-controller/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.torivar.com/2016/03/16/replace-ssl-certificates-on-citrix-storefront-and-delivery-controller/&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;netsh http show ssl
netsh http delete sslcert ipport=0.0.0.0:443
netsh http add sslcert ipport=0.0.0.0:443 certhash=bc3f4796d6ef09608119a4e9323e2534f45ef555 appid={CE24291B-1344-DC94-DB16-51875A6501C3}&lt;/pre&gt;

&lt;p&gt;
Open the registry and navigate to HKEY_CLASSES_ROOT\Installer\Products\ &lt;br/&gt;

Then search for the next “Broker Service” entry.  The key GUID is the required “appid” value. &lt;br/&gt;

Note that you may have to add hyphens in the GUID. For instance, from this: &lt;br/&gt;

CE24291B1344DC94DB1651875A6501C3  to this: &lt;br/&gt;

CE24291B-1344-DC94-DB16-51875A6501C3 &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
certhash=bc3f4796d6ef09608119a4e9323e2534f45ef555 (just a sample shown here).&lt;br/&gt;

This is the thumbprint of the new certificate. &lt;br/&gt;

&lt;/p&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>get_latest_login_date</title>
            <link>https://wiki.autosys.tk/citrix/get_latest_login_date</link>
            <description>
&lt;p&gt;
Для того, чтобы получить список машин с именами пользователей и датой последнего логина с подключением к удаленному DDC:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;asnp citrix.*
Get-BrokerDesktop -adminaddress &amp;quot;ddc.domain.local&amp;quot; | Select-Object AssociatedUserNames,DNSName,LastConnectionTime&lt;/pre&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>linux_vda_errors</title>
            <link>https://wiki.autosys.tk/citrix/linux_vda_errors</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;the_citrix_desktop_service_detected_that_a_user_session_has_ended_session_has_endedreason_code_logoff&quot;&gt;The Citrix Desktop Service detected that a user session has ended. Session has ended; reason code &amp;#039;Logoff&amp;#039;.&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
ОС - &lt;strong&gt;OpenSuse Leap 42.1&lt;/strong&gt;. VDA - &lt;strong&gt;XenDesktopVDA-7.13.0.382-1.sle11_4.x86_64.rpm&lt;/strong&gt; &lt;br/&gt;

В журналах: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;journalctl -f&lt;/pre&gt;

&lt;p&gt;
При открытии сессии сообщение такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;citrix-ctxgfx[13256]: Exiting due to errors.&lt;/pre&gt;

&lt;p&gt;
Вот тут: &lt;a href=&quot;http://discussions.citrix.com/topic/368033-pclinuxos64-mate/&quot; class=&quot;urlextern&quot; title=&quot;http://discussions.citrix.com/topic/368033-pclinuxos64-mate/&quot; rel=&quot;ugc nofollow&quot;&gt;http://discussions.citrix.com/topic/368033-pclinuxos64-mate/&lt;/a&gt; Советуют попробывать вручную запустить:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;/opt/Citrix/VDA/bin/ctxvfb&lt;/pre&gt;

&lt;p&gt;
И посмотреть что будет. У меня начали вываливаться сообщения об отсутствии &lt;strong&gt;shared libraries&lt;/strong&gt;. &lt;br/&gt;

&lt;strong&gt;libhal&lt;/strong&gt; брал тут: &lt;a href=&quot;http://ftp.gwdg.de/pub/opensuse/repositories/home:/m407/openSUSE_42.1/x86_64/libhal1-0.3.1-4.1.x86_64.rpm&quot; class=&quot;urlextern&quot; title=&quot;http://ftp.gwdg.de/pub/opensuse/repositories/home:/m407/openSUSE_42.1/x86_64/libhal1-0.3.1-4.1.x86_64.rpm&quot; rel=&quot;ugc nofollow&quot;&gt;http://ftp.gwdg.de/pub/opensuse/repositories/home:/m407/openSUSE_42.1/x86_64/libhal1-0.3.1-4.1.x86_64.rpm&lt;/a&gt; &lt;br/&gt;

и еще устанавливал:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo zypper -n in libsmbios2 libssl37 &lt;/pre&gt;

&lt;p&gt;
&lt;strong&gt;libssl.so.0.9.8&lt;/strong&gt;  брал тут: &lt;a href=&quot;http://download.opensuse.org/update/11.3/rpm/x86_64/libopenssl0_9_8-0.9.8m-3.3.2.x86_64.rpm&quot; class=&quot;urlextern&quot; title=&quot;http://download.opensuse.org/update/11.3/rpm/x86_64/libopenssl0_9_8-0.9.8m-3.3.2.x86_64.rpm&quot; rel=&quot;ugc nofollow&quot;&gt;http://download.opensuse.org/update/11.3/rpm/x86_64/libopenssl0_9_8-0.9.8m-3.3.2.x86_64.rpm&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;The Citrix Desktop Service detected that a user session has ended. Session has ended; reason code &amp;#039;Logoff&amp;#039;.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;the_citrix_desktop_service_detected_that_a_user_session_has_ended_session_has_endedreason_code_logoff&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1052&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;failed_to_obtain_computer_sid_from_ldap&quot;&gt;Failed to obtain computer SID from LDAP&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Лог содержит такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[ERROR] Failed to query LDAP server &amp;#039;my_dc_name:389&amp;#039; for computer SID. Error: LDAP Search error: LDAPSearch.GetKerberosAgentClientSubject: Unable to obtain LDAP Login Context.
[ERROR] - LDAPSearch.GetKerberosAgentClientSubject: Unable to obtain LDAP Login Context for &amp;#039;agent.client&amp;#039;. Error: Unable to obtain password from user
[WARN ] - InformationManager.GetComputerSID: Failed to obtain computer SID from LDAP.
[ERROR] - InformationManager.GetComputerSID: Failed to determine Computer SID for FQDN: myhost.mydomain.ru.&lt;/pre&gt;

&lt;p&gt;
При этом:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;  sudo wbinfo --name-to-sid=$computerName
  S-1-5-21-2734858679-1761669737-1885829517 SID_DOMAIN (3)
 
  sudo wbinfo --name-to-sid=myhost.mydomain.ru\$
  failed to call wbcLookupName: WBC_ERR_DOMAIN_NOT_FOUND
  Could not lookup name myhost.mydomain.ru$

  sudo wbinfo --name-to-sid=myhost\$
  S-1-5-21-2734858679-1761669737-1885829517-374696 SID_USER (1)&lt;/pre&gt;

&lt;p&gt;
То есть судя по всему удается корректно получить SID по имени хоста, но не удается получить SID по FQDN.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Failed to obtain computer SID from LDAP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;failed_to_obtain_computer_sid_from_ldap&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1053-2248&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;решение_-_failed_to_obtain_computer_sid_from_ldap&quot;&gt;Решение - Failed to obtain computer SID from LDAP.&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
В моем случае VDA устанавливался скриптом, в котором параметр &lt;strong&gt;CTX_XDL_SEARCH_BASE&lt;/strong&gt; был задан так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;CTX_XDL_SEARCH_BASE=&amp;#039; &amp;#039;&lt;/pre&gt;

&lt;p&gt;
То есть был ненулевой и не &lt;strong&gt;&amp;lt;none&amp;gt;&lt;/strong&gt;, а был равен символу “пробел”. В результате &lt;strong&gt;VDA&lt;/strong&gt; пытался обнаружить учетку компа в &lt;strong&gt;OU&lt;/strong&gt; с именем “пробел” и обламывался. Чтобы все работало правильно в установочном скрипте параметры без значений нужно задавать так:  &lt;strong&gt;&amp;lt;none&amp;gt;&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435 - Failed to obtain computer SID from LDAP.&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435_-_failed_to_obtain_computer_sid_from_ldap&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2249-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>remote_desktop_services_is_currently_busy</title>
            <link>https://wiki.autosys.tk/citrix/remote_desktop_services_is_currently_busy</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
При попытке пользователя подключиться к уже существующей сессии появляется сообщение:
&lt;strong&gt;“The task you are trying to do can&amp;#039;t be completed because remote desktop services is currently busy. Please try again in a few minutes. Other users should still be able to log on.”&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Подключиться не удается никому больше. При этом, те сессии на сервере, которые активны продолжают работать.
Проблема актуальна для Windows Server 2008 R2 (SP1) и &lt;strong&gt;XenApp 6.0/6.5&lt;/strong&gt; - &lt;strong&gt;Xendesktop 7.x&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-692&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;причина&quot;&gt;Причина&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Причина скорее всего в каком-то &lt;strong&gt;deadlock&amp;#039;е&lt;/strong&gt;.
У Microsoft есть патч на этот случай: &lt;a href=&quot;https://support.microsoft.com/en-us/kb/2661332&quot; class=&quot;urlextern&quot; title=&quot;https://support.microsoft.com/en-us/kb/2661332&quot; rel=&quot;ugc nofollow&quot;&gt;https://support.microsoft.com/en-us/kb/2661332&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u0447\u0438\u043d\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u0447\u0438\u043d\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;693-903&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;как_оживить_сервер_без_перезагрузки&quot;&gt;Как оживить сервер без перезагрузки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Нужно подключиться в командную строку сервера и завершить сессию пользователя у которого произошел deadlock. Скорее всего это пользователь, который раньше всех заметил эту проблему.
Я пользуюсь &lt;strong&gt;Ubuntu&lt;/strong&gt; и в ней для подключения к Windows-машинам я использую &lt;strong&gt;winexe&lt;/strong&gt;: &lt;a href=&quot;http://sourceforge.net/projects/winexe/&quot; class=&quot;urlextern&quot; title=&quot;http://sourceforge.net/projects/winexe/&quot; rel=&quot;ugc nofollow&quot;&gt;http://sourceforge.net/projects/winexe/&lt;/a&gt;
В командной строке сервера нужно выполнить:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;query session&lt;/pre&gt;

&lt;p&gt;
Получить список сессий. Какая-то сессия будет в состоянии &lt;strong&gt;Conn&lt;/strong&gt;. Имя сессии будет типа &lt;strong&gt;ica-tcp#1&lt;/strong&gt;
Её надо завершить:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;reset session &amp;lt;session-name&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Если команды &lt;strong&gt;quser&lt;/strong&gt;, &lt;strong&gt;query session&lt;/strong&gt; не отрабатывают, то нужно завершить все процессы пользователя. 
Это можно сделать командой &lt;strong&gt;taskkill&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;taskkill /F /FI &amp;quot;USERNAME eq DOMAIN_NAME\User_Name&amp;quot; /IM *&lt;/pre&gt;

&lt;p&gt;
Обычно эту команду нужно выполнить дважды, чтобы не осталось никаких процессов данного пользователя.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u043e\u0436\u0438\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440 \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u043e\u0436\u0438\u0432\u0438\u0442\u044c_\u0441\u0435\u0440\u0432\u0435\u0440_\u0431\u0435\u0437_\u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;904-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>сессия_xenapp_сразу_закрывается_а_в_журнале_event_id_9009</title>
            <link>https://wiki.autosys.tk/citrix/%D1%81%D0%B5%D1%81%D1%81%D0%B8%D1%8F_xenapp_%D1%81%D1%80%D0%B0%D0%B7%D1%83_%D0%B7%D0%B0%D0%BA%D1%80%D1%8B%D0%B2%D0%B0%D0%B5%D1%82%D1%81%D1%8F_%D0%B0_%D0%B2_%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D0%B5_event_id_9009</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Сразу после подключения сессия Xenapp 6/6.5/7/7.6 отключается, а в журнале сервера фиксируется: &lt;strong&gt;Error 9009: The Desktop Window Manager has exited with code (0x40010004)&lt;/strong&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-272&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://support.citrix.com/article/CTX127883&quot; class=&quot;urlextern&quot; title=&quot;http://support.citrix.com/article/CTX127883&quot; rel=&quot;ugc nofollow&quot;&gt;http://support.citrix.com/article/CTX127883&lt;/a&gt;&lt;br/&gt;

Просто citrixreciever не успевает подключиться.&lt;br/&gt;

Для решения нужно добавить в реестре в ветку &lt;strong&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Wfshell\TWI&lt;/strong&gt; добавить параметр &lt;strong&gt;LogoffCheckerStartupDelayInSeconds&lt;/strong&gt; типа &lt;strong&gt;REG_DWORD&lt;/strong&gt; со значением &lt;strong&gt;10&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После добавления параметра перезагружать сервер не нужно. Настройки считываются при запуске каждой сессии.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;273-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>терминальный_сервер_100_cpu_и_не_зайти_по_rpd</title>
            <link>https://wiki.autosys.tk/citrix/%D1%82%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80_100_cpu_%D0%B8_%D0%BD%D0%B5_%D0%B7%D0%B0%D0%B9%D1%82%D0%B8_%D0%BF%D0%BE_rpd</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Терминальный сервер &lt;strong&gt;Windows 2008 R2&lt;/strong&gt; в ферме &lt;strong&gt;XenDesktop 7.6&lt;/strong&gt; перестал пускать пользователей.
В &lt;strong&gt;Desktop Director&lt;/strong&gt; видно загрузку 100% CPU. При том, что в сервере 32 физических ядра (два проца AMD Opteron™ 6376).
&lt;/p&gt;

&lt;p&gt;
При попытках зайти по RDP ничего не происходит. Сервер просто не отвечает.
При этом, удается подключиться к нему с помощью &lt;strong&gt;psexec&lt;/strong&gt;. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-593&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;citrix_insight_sevices&quot;&gt;Citrix Insight Sevices&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt; Citrix Insight Sevices&lt;/strong&gt; предлагает установить &lt;a href=&quot;https://support.citrix.com/article/CTX142640&quot; class=&quot;urlextern&quot; title=&quot;https://support.citrix.com/article/CTX142640&quot; rel=&quot;ugc nofollow&quot;&gt;ICATS760WX64032&lt;/a&gt;. Утверждает, что патч лечит проблему, когда вход замирает на &lt;strong&gt;Welcome Screen&lt;/strong&gt; и по &lt;strong&gt;RDP&lt;/strong&gt; также подключиться нельзя.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Citrix Insight Sevices&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;citrix_insight_sevices&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;594-961&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;диагностика&quot;&gt;Диагностика&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Удается получить список процессов. С помощью команды:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;tasklist /v /FI &amp;quot;CPUTIME gt 00:25:00&amp;quot;&lt;/pre&gt;

&lt;p&gt;
Удалось получить список особо прожорливых процессов.
Оказалось, что самые жрущие - &lt;strong&gt;WmiPrvSE.exe&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
Осталось только убить их. 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;taskkill /F /IM WmiPrvSE.exe /T&lt;/pre&gt;

&lt;p&gt;
Сервак тут же ожил.
Вот тут пример расследования причин такого поведенияЖ
&lt;a href=&quot;http://www.admblog.ru/wmiprvse-%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83/&quot; class=&quot;urlextern&quot; title=&quot;http://www.admblog.ru/wmiprvse-%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83/&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.admblog.ru/wmiprvse-%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83/&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;962-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>kubernetes</title>
            <link>https://wiki.autosys.tk/devops/kubernetes</link>
            <description>
&lt;p&gt;
&lt;a href=&quot;https://ansilh.com/01-introduction/&quot; class=&quot;urlextern&quot; title=&quot;https://ansilh.com/01-introduction/&quot; rel=&quot;ugc nofollow&quot;&gt;https://ansilh.com/01-introduction/&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://ansilh.com/15-k8s_from_sratch/&quot; class=&quot;urlextern&quot; title=&quot;https://ansilh.com/15-k8s_from_sratch/&quot; rel=&quot;ugc nofollow&quot;&gt;https://ansilh.com/15-k8s_from_sratch/&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Материалов про kubernetes очень много. В процессе обучения просто я фиксирую для себя то что считаю важным. Это не тутораил и не гайд. Это просто мои заметки.&lt;br/&gt;

&lt;a href=&quot;https://kubernetes.io/docs/reference/kubectl/cheatsheet/&quot; class=&quot;urlextern&quot; title=&quot;https://kubernetes.io/docs/reference/kubectl/cheatsheet/&quot; rel=&quot;ugc nofollow&quot;&gt;https://kubernetes.io/docs/reference/kubectl/cheatsheet/&lt;/a&gt;
&lt;/p&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;docker&quot;&gt;Docker&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;420-440&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;сборка_контейнера_docker&quot;&gt;Сборка контейнера docker&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Создаем файл &lt;strong&gt;Dockerfile&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;FROM node:7
ADD app.js /app.js
ENTRYPOINT [&amp;quot;node&amp;quot;, &amp;quot;app.js&amp;quot;]&lt;/pre&gt;

&lt;p&gt;
В одной директории с &lt;strong&gt;Dockerfile&lt;/strong&gt; размещаем файл приложения &lt;strong&gt;app.js&lt;/strong&gt; и собираем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;docker build -t kubia .&lt;/pre&gt;

&lt;p&gt;
Смотрим что контейнер собрался:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;docker images&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0431\u043e\u0440\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0431\u043e\u0440\u043a\u0430_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430_docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;441-843&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;запуск_контейнера_вручную_в_локальном_docker&quot;&gt;Запуск контейнера вручную в локальном Docker&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;docker run --name kubia-container -p 8080:8080 -d kubia&lt;/pre&gt;

&lt;p&gt;
В результате будет запущен новый контейнер с именем &lt;strong&gt;kubia-container&lt;/strong&gt; из образа &lt;strong&gt;kubia&lt;/strong&gt;. Контейнер будет отсоединен от консоли (флаг -d), а порт 8080 на локальной машине будет увязан с портом 8080 внутри контейнера. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043f\u0443\u0441\u043a \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c Docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043f\u0443\u0441\u043a_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430_\u0432\u0440\u0443\u0447\u043d\u0443\u044e_\u0432_\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c_docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;844-1358&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;список_всех_запущенных_контейнеров_docker&quot;&gt;Список всех запущенных контейнеров docker&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;docker ps&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_\u0432\u0441\u0435\u0445_\u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432_docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;1359-1455&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;получение_дополнительной_информации_о_контейнере_docker&quot;&gt;Получение дополнительной информации о контейнере docker&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;docker inspect kubia-container&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435 docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435_\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439_\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438_\u043e_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435_docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;1456-1600&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;запуск_bash_shell_внутри_существующего_контейнера_docker&quot;&gt;Запуск bash shell внутри существующего контейнера docker&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;docker exec -it kubia-container bash  
* **-i** убеждается, что STDIN держится открытым для ввода команд в оболочку;
* **-t** выделяет псевдотерминал (TTY).&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043f\u0443\u0441\u043a bash shell \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043f\u0443\u0441\u043a_bash_shell_\u0432\u043d\u0443\u0442\u0440\u0438_\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430_docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;1601-1941&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit7&quot; id=&quot;остановка_и_удаление_контейнера_docker&quot;&gt;Остановка и удаление контейнера docker&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;docker stop kubia-container
docker rm kubia-container&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u0438_\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430_docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;1942-2078&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;тегирование_образа_тегом_docker&quot;&gt;Тегирование образа тегом docker&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Образ контейнера может иметь несколько тегов:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;docker tag kubia luksa/kubia&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0437\u0430 \u0442\u0435\u0433\u043e\u043c docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u043e\u0431\u0440\u0430\u0437\u0430_\u0442\u0435\u0433\u043e\u043c_docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;2079-2260&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit9&quot; id=&quot;передача_образа_контейнера_docker_в_хранилище_docker_hub&quot;&gt;Передача образа контейнера docker в хранилище docker hub&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;docker push luksa/kubia&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043e\u0431\u0440\u0430\u0437\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 docker \u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 docker hub&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430_\u043e\u0431\u0440\u0430\u0437\u0430_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430_docker_\u0432_\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435_docker_hub&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;2261-2389&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit10&quot; id=&quot;запуск_образа_контейнера_docker_на_другой_машине&quot;&gt;Запуск образа контейнера docker на другой машине&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;docker run -p 8080:8080 -d luksa/kubia&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043f\u0443\u0441\u043a \u043e\u0431\u0440\u0430\u0437\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 docker \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043f\u0443\u0441\u043a_\u043e\u0431\u0440\u0430\u0437\u0430_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430_docker_\u043d\u0430_\u0434\u0440\u0443\u0433\u043e\u0439_\u043c\u0430\u0448\u0438\u043d\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;2390-2527&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit11&quot; id=&quot;просмотр_журналов_контейнера_docker&quot;&gt;Просмотр журналов контейнера docker&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;docker logs &amp;lt;container_ID&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 docker&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440_\u0436\u0443\u0440\u043d\u0430\u043b\u043e\u0432_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430_docker&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;2528-2631&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit12&quot; id=&quot;запуск_приложения_в_среде_kubernetes&quot;&gt;Запуск приложения в среде kubernetes&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl run kubia --image=luksa/kubia --port=8080 --generator=run/v1&lt;/pre&gt;

&lt;p&gt;
&lt;strong&gt;kubectl run&lt;/strong&gt; создаст все необходимые компоненты без необходимости декларировать компоненты с помощью JSON или YAML. &lt;br/&gt;

&lt;strong&gt;–generator=run/v1&lt;/strong&gt; - нужен для того, чтобы текущая версия kubernetes не создавала &lt;strong&gt;Deployment&lt;/strong&gt;, а создала &lt;strong&gt;ReplicationController&lt;/strong&gt;. 
В результате будет создан &lt;strong&gt;Pod&lt;/strong&gt; с одним контейнером &lt;strong&gt;kubia&lt;/strong&gt;. &lt;br/&gt;

При выполнении команды произошло следующее:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 команда &lt;strong&gt;kubectl&lt;/strong&gt; создала в кластере новый объект контроллера репликации (&lt;strong&gt;ReplicationController&lt;/strong&gt;)
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 контроллер репликации создал новый &lt;strong&gt;Pod&lt;/strong&gt;, который планировщик запланировал для одного из рабочих узлов. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Агент &lt;strong&gt;Kubelet&lt;/strong&gt; на этом узле увидел, что модуль был назначен рабочему узлу, и поручил платформе &lt;strong&gt;Docker&lt;/strong&gt; выгрузить указанный образ из хранилища, После скачивания образа платформа &lt;strong&gt;Docker&lt;/strong&gt; создала и запустила контейнер.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432 \u0441\u0440\u0435\u0434\u0435 kubernetes&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043f\u0443\u0441\u043a_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f_\u0432_\u0441\u0440\u0435\u0434\u0435_kubernetes&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;2632-4102&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit13&quot; id=&quot;получение_списка_pods&quot;&gt;Получение списка pods&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Список pods в дефолтном namespace:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get pods&lt;/pre&gt;

&lt;p&gt;
Список pods в заданном namespace:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl -n nsname get po&lt;/pre&gt;

&lt;p&gt;
Список pods во всех неймспейсах:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get po -A&lt;/pre&gt;

&lt;p&gt;
Вывод списка Pod&amp;#039;ов с дополнительной информацией:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get pods -o wide&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 pods&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435_\u0441\u043f\u0438\u0441\u043a\u0430_pods&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;4103-4489&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit14&quot; id=&quot;доступа_к_приложению_в_контейнере_kubernetes_по_сети&quot;&gt;Доступа к приложению в контейнере kubernetes по сети&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Для доступа к приложению используются объекты &lt;strong&gt;Service&lt;/strong&gt;. Они привязывают динамически разворачиваемые экземпляры приложения к статичным IP-адресам и портам:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl expose rc kubia --type=LoadBalancer --name kubia-http &lt;/pre&gt;

&lt;p&gt;
В данном случае - создается объект Service с именем &lt;strong&gt;kubia-http&lt;/strong&gt; типа &lt;strong&gt;LoadBalancer&lt;/strong&gt;, который указывает на экземпляры приложения, за которыми следит &lt;strong&gt;ReplicatioController&lt;/strong&gt; (rc)  с именем &lt;strong&gt;kubia&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435 kubernetes \u043f\u043e \u0441\u0435\u0442\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u043a_\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e_\u0432_\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435_kubernetes_\u043f\u043e_\u0441\u0435\u0442\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;4490-5240&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit15&quot; id=&quot;вывод_списка_kubernetes_services&quot;&gt;Вывод списка kubernetes Services&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get services &lt;/pre&gt;

&lt;p&gt;
или 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get svc&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0432\u043e\u0434 \u0441\u043f\u0438\u0441\u043a\u0430 kubernetes Services&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0432\u043e\u0434_\u0441\u043f\u0438\u0441\u043a\u0430_kubernetes_services&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:15,&amp;quot;range&amp;quot;:&amp;quot;5241-5346&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit16&quot; id=&quot;увеличение_количества_реплик_pod_a&quot;&gt;Увеличение количества реплик pod&amp;#039;a&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Увеличить количество запущенных реплик Pod&amp;#039;а на контроллере репликации:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl scale rc kubia --replicas=3&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0440\u0435\u043f\u043b\u0438\u043a pod&amp;#039;a&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435_\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430_\u0440\u0435\u043f\u043b\u0438\u043a_pod_a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:16,&amp;quot;range&amp;quot;:&amp;quot;5347-5588&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit17&quot; id=&quot;получение_полного_описания_объекта_kubernetes&quot;&gt;Получение полного описания объекта kubernetes&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl describe rc kubia&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u0430 kubernetes&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435_\u043f\u043e\u043b\u043d\u043e\u0433\u043e_\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f_\u043e\u0431\u044a\u0435\u043a\u0442\u0430_kubernetes&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:17,&amp;quot;range&amp;quot;:&amp;quot;5589-5705&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit18&quot; id=&quot;создание_объекта_kubernetes_с_помощью_файла_описания&quot;&gt;Создание объекта kubernetes с помощью файла описания&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl create -f filename.yml&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 kubernetes \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0430\u0439\u043b\u0430 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043e\u0431\u044a\u0435\u043a\u0442\u0430_kubernetes_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_\u0444\u0430\u0439\u043b\u0430_\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:18,&amp;quot;range&amp;quot;:&amp;quot;5706-5839&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit19&quot; id=&quot;сеть&quot;&gt;Сеть&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Внутри кластера &lt;strong&gt;kubernetes&lt;/strong&gt; между подами (Pods) сеть плоская. Без шлюзов и трансляциий (nat-snat). &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0435\u0442\u044c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0435\u0442\u044c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:19,&amp;quot;range&amp;quot;:&amp;quot;5840-6023&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit20&quot; id=&quot;под_-_pod&quot;&gt;Под - Pod&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434 - Pod&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434_-_pod&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:20,&amp;quot;range&amp;quot;:&amp;quot;6024-6050&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit21&quot; id=&quot;базовое_описание_pod_а&quot;&gt;Базовое описание pod&amp;#039;а&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: v1                     # Версия API
kind: Pod                          # Тип объекта - pod
metadata:                          # Начало секции метаданных
  name: kubia-manual               # имя Pod&amp;#039;a
spec:                              # начало секции спецификации
  containers:                      # начало секции, описывающей контейнеры pod&amp;#039;а
  – image: luksa/kubia             # начало описания первого контейнера. используется образ luksa/kubia 
    name: kubia                    # Имя контейнера в pod&amp;#039;е
    ports:                         # секция портов, используемых приложением в контейнере
    – containerPort: 8080          # номер порта
      protocol: TCP                # используемый протокол&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0411\u0430\u0437\u043e\u0432\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 pod&amp;#039;\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0431\u0430\u0437\u043e\u0432\u043e\u0435_\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435_pod_\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:21,&amp;quot;range&amp;quot;:&amp;quot;6051-7079&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit22&quot; id=&quot;создание_pod_а_с_помощью_файла_описания&quot;&gt;Создание pod&amp;#039;а с помощью файла описания&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl create -f kubia-manual.yaml&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 pod&amp;#039;\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0430\u0439\u043b\u0430 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_pod_\u0430_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_\u0444\u0430\u0439\u043b\u0430_\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:22,&amp;quot;range&amp;quot;:&amp;quot;7080-7199&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit23&quot; id=&quot;удаление_pod_ов&quot;&gt;Удаление pod&amp;#039;ов&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl delete po kubia-gpu&lt;/pre&gt;

&lt;p&gt;
Или с помощью селектора по метке:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl delete po -l creation_method=manual&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 pod&amp;#039;\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_pod_\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:23,&amp;quot;range&amp;quot;:&amp;quot;7200-7374&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit24&quot; id=&quot;просмотр_логов_pod_а&quot;&gt;Просмотр логов pod&amp;#039;а&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl logs kubia-manual&lt;/pre&gt;

&lt;p&gt;
Если в pod&amp;#039;е больше одного контейнера, то увидеть логи конкретного контейнера можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl logs kubia-manual -c kubia&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u043b\u043e\u0433\u043e\u0432 pod&amp;#039;\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440_\u043b\u043e\u0433\u043e\u0432_pod_\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:24,&amp;quot;range&amp;quot;:&amp;quot;7375-7646&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit25&quot; id=&quot;маппинг_локального_порта_на_порт_в_pod_е_без_использования_service&quot;&gt;Маппинг локального порта на порт в pod&amp;#039;е без использования service&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Иногда для отладки нужно просто сделать так, чтобы порт pod&amp;#039;а стал доступен на локальной машине. Без создания service. Это делается так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl port-forward kubia-manual 8888:8080&lt;/pre&gt;

&lt;p&gt;
В результате приложение pod&amp;#039;а (порт 8080) станет доступно на локальной машине на порте 8888.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041c\u0430\u043f\u043f\u0438\u043d\u0433 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430 \u043d\u0430 \u043f\u043e\u0440\u0442 \u0432 pod&amp;#039;\u0435 \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f service&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u0430\u043f\u043f\u0438\u043d\u0433_\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e_\u043f\u043e\u0440\u0442\u0430_\u043d\u0430_\u043f\u043e\u0440\u0442_\u0432_pod_\u0435_\u0431\u0435\u0437_\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f_service&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:25,&amp;quot;range&amp;quot;:&amp;quot;7647-8213&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit26&quot; id=&quot;метки&quot;&gt;Метки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Метки могут быть созданы для многих объектов. В примерах рассматриваются pod&amp;#039;ы.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041c\u0435\u0442\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043c\u0435\u0442\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:26,&amp;quot;range&amp;quot;:&amp;quot;8214-8381&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit27&quot; id=&quot;создание_и_изменение_меток_labels&quot;&gt;Создание и изменение меток (labels)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Метки позволяют разделять pod&amp;#039;ы по некоторому признаку и обращаться к ним. &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl label po kubia-manual creation_method=manual&lt;/pre&gt;

&lt;p&gt;
Метки могут быть прописаны в секции метаданных:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: v1
kind: Pod
metadata:
  name: kubia-manual-v2
  labels:
    creation_method: manual
    env: prod&lt;/pre&gt;

&lt;p&gt;
При изменении существующих меток нужно использовать параметр &lt;strong&gt;–overwrite&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl label po kubia-manual-v2 env=debug --overwrite&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u043e\u043a (labels)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0438_\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u043c\u0435\u0442\u043e\u043a_labels&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:27,&amp;quot;range&amp;quot;:&amp;quot;8382-9047&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit28&quot; id=&quot;список_всех_pod_ов_и_их_меток&quot;&gt;Список всех pod&amp;#039;ов и их меток&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get po --show-labels&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 pod&amp;#039;\u043e\u0432 \u0438 \u0438\u0445 \u043c\u0435\u0442\u043e\u043a&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_\u0432\u0441\u0435\u0445_pod_\u043e\u0432_\u0438_\u0438\u0445_\u043c\u0435\u0442\u043e\u043a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:28,&amp;quot;range&amp;quot;:&amp;quot;9048-9140&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit29&quot; id=&quot;список_pod_ов_у_которых_не_установлены_заданные_метки&quot;&gt;Список pod&amp;#039;ов у которых (не)установлены заданные метки&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get po -l creation_method,env
kubectl get po -l &amp;#039;!env&amp;#039;,creation_method&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a pod&amp;#039;\u043e\u0432 \u0443 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 (\u043d\u0435)\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u0435\u0442\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_pod_\u043e\u0432_\u0443_\u043a\u043e\u0442\u043e\u0440\u044b\u0445_\u043d\u0435_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b_\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0435_\u043c\u0435\u0442\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:29,&amp;quot;range&amp;quot;:&amp;quot;9141-9332&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit30&quot; id=&quot;список_pod_ов_с_заданными_значениями_меток&quot;&gt;Список pod&amp;#039;ов с заданными значениями меток&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get po -l creation_method=manual&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a pod&amp;#039;\u043e\u0432 \u0441 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043c\u0435\u0442\u043e\u043a&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_pod_\u043e\u0432_\u0441_\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u043c\u0438_\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438_\u043c\u0435\u0442\u043e\u043a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:30,&amp;quot;range&amp;quot;:&amp;quot;9333-9463&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit31&quot; id=&quot;список_pod_ов_со_значениями_меток_отличными_от_заданного&quot;&gt;Список pod&amp;#039;ов со значениями меток отличными от заданного&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get po -l creation_method!=manual&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a pod&amp;#039;\u043e\u0432 \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043c\u0435\u0442\u043e\u043a \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u043e\u0442 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0433\u043e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_pod_\u043e\u0432_\u0441\u043e_\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438_\u043c\u0435\u0442\u043e\u043a_\u043e\u0442\u043b\u0438\u0447\u043d\u044b\u043c\u0438_\u043e\u0442_\u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0433\u043e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:31,&amp;quot;range&amp;quot;:&amp;quot;9464-9623&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit32&quot; id=&quot;установка_метки_на_узел_node_и_привязка_pod_а_к_нему&quot;&gt;Установка метки на узел (node) и привязка pod&amp;#039;а к нему&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Устанавливаем метку на узел:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl label node gke-kubia-85f6-node-0rrx gpu=true&lt;/pre&gt;

&lt;p&gt;
Описываем привязку в декларации pod&amp;#039;а:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: v1
kind: Pod
metadata:
  name: kubia-gpu
spec:
  nodeSelector:
    gpu: &amp;quot;true&amp;quot;                #селектор узла с меткой gpu
  containers:
  – image: luksa/kubia
    name: kubia&lt;/pre&gt;

&lt;p&gt;
Или к узлу с заданным именем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: v1
kind: Pod
metadata:
  name: kubia-gpu
spec:
  nodeSelector:
    kubernetes.io/hostname: &amp;quot;desired.node.hostname&amp;quot;                #селектор узла по его hostname
  containers:
  – image: luksa/kubia
    name: kubia&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043c\u0435\u0442\u043a\u0438 \u043d\u0430 \u0443\u0437\u0435\u043b (node) \u0438 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 pod&amp;#039;\u0430 \u043a \u043d\u0435\u043c\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u043c\u0435\u0442\u043a\u0438_\u043d\u0430_\u0443\u0437\u0435\u043b_node_\u0438_\u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430_pod_\u0430_\u043a_\u043d\u0435\u043c\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:32,&amp;quot;range&amp;quot;:&amp;quot;9624-10441&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit33&quot; id=&quot;пространства_имен_namespaces&quot;&gt;Пространства имен (namespaces)&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0438\u043c\u0435\u043d (namespaces)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430_\u0438\u043c\u0435\u043d_namespaces&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:33,&amp;quot;range&amp;quot;:&amp;quot;10442-10502&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit34&quot; id=&quot;список_доступных_пространств_имен_неймспейсов&quot;&gt;Список доступных пространств имен (неймспейсов)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get ns&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432 \u0438\u043c\u0435\u043d (\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u043e\u0432)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445_\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432_\u0438\u043c\u0435\u043d_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:34,&amp;quot;range&amp;quot;:&amp;quot;10503-10620&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit35&quot; id=&quot;список_pod_ов_неймспейса&quot;&gt;Список pod&amp;#039;ов неймспейса&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get po --namespace kube-syste&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a pod&amp;#039;\u043e\u0432 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_pod_\u043e\u0432_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:35,&amp;quot;range&amp;quot;:&amp;quot;10621-10715&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit36&quot; id=&quot;создание_неймспейсов&quot;&gt;Создание неймспейсов&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl create namespace custom-namespace&lt;/pre&gt;

&lt;p&gt;
Или декларативно с помощью файла yaml:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: v1
kind: Namespace
metadata:
  name: custom-namespace&lt;/pre&gt;

&lt;p&gt;
и затем
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl create -f custom-namespace.yaml&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:36,&amp;quot;range&amp;quot;:&amp;quot;10716-11008&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit37&quot; id=&quot;создание_объектов_в_заданном_неймспейсе&quot;&gt;Создание объектов в заданном неймспейсе&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl create -f kubia-manual.yaml -n custom-namespace&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0432 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432_\u0432_\u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:37,&amp;quot;range&amp;quot;:&amp;quot;11009-11153&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit38&quot; id=&quot;переключение_между_неймспейсами&quot;&gt;Переключение между неймспейсами&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl  config  set-context $(kubectl config currentcontext) --namespace custom-namespace&lt;/pre&gt;

&lt;p&gt;
или для быстрого переключения на другое пространство имен можно создать алиас:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;alias  kcd=&amp;#039;kubectl  config  set-context $(kubectl config currentcontext) --namespace &amp;#039;&lt;/pre&gt;

&lt;p&gt;
прописать его в ~/.bash.rc
и затем переключаться между пространствами имен с помощью 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kcd some-namespace&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430\u043c\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043c\u0435\u0436\u0434\u0443_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430\u043c\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:38,&amp;quot;range&amp;quot;:&amp;quot;11154-11726&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit39&quot; id=&quot;удаление_неймспейса_со_всем_содержимым&quot;&gt;Удаление неймспейса со всем содержимым&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl delete ns custom-namespace&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430 \u0441\u043e \u0432\u0441\u0435\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430_\u0441\u043e_\u0432\u0441\u0435\u043c_\u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:39,&amp;quot;range&amp;quot;:&amp;quot;11727-11848&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit40&quot; id=&quot;удаление_содержимого_неймспейса_с_сохранением_неймспейса&quot;&gt;Удаление содержимого неймспейса с сохранением неймспейса&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Удаление pod&amp;#039;ов
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl delete po --all&lt;/pre&gt;

&lt;p&gt;
Удаление почти всех ресурсов из неймспейса:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl delete all --all&lt;/pre&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430_\u0441_\u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:40,&amp;quot;range&amp;quot;:&amp;quot;11849-12195&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit41&quot; id=&quot;глоссарий&quot;&gt;Глоссарий&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Kubernetes&lt;/strong&gt; - система оркестрации контейнеров docker.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Namespace &lt;/strong&gt; - это способ логического деления запускаемых в кластере сущностей. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Nodes&lt;/strong&gt; (node.md): &lt;strong&gt;Нода&lt;/strong&gt; это машина в кластере &lt;strong&gt;Kubernetes&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Pods&lt;/strong&gt; (pods.md): &lt;strong&gt;Pod&lt;/strong&gt; это группа контейнеров с общими разделами, запускаемых как единое целое. Обычно &lt;strong&gt;Pod&lt;/strong&gt; объединет контейнеры, которые всместе выполняют некоторую функцию и не имеют смысла друг без друга. Например, в рамках pod&amp;#039;а процессы разных контейнеров могут общаться друг с другом по сети, используя адреса 127.0.0.1:port. То есть процессы различных контейнеров работают в едином сетевом неймспейсе pod&amp;#039;а. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;ReplicaSet&lt;/strong&gt; - набор экземпляров (реплик) какого-то pod&amp;#039;а. &lt;strong&gt;ReplicaSet&lt;/strong&gt; - это более функциональные &lt;strong&gt;Replication Controllers&lt;/strong&gt;. Сейчас они сосуществуют, но в дальнейшем останутся только &lt;strong&gt;ReplicaSet&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Deployment&lt;/strong&gt; - набор экземпляров pod&amp;#039;а, для которого можно произвести обновление. При обновлении экземпляры будут по одному замещаться новыми версиями (rolling update). Таким образом реализуется &lt;strong&gt;zero downtime&lt;/strong&gt; при обновлениях. Описывается с помощью yml-файла, содержащего спецификации (&lt;abbr title=&quot;specification&quot;&gt;spec&lt;/abbr&gt;).  
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Services&lt;/strong&gt; (services.md): &lt;strong&gt;Сервис&lt;/strong&gt; в &lt;strong&gt;Kubernetes&lt;/strong&gt; это абстракция (описывается yml-файлом) которая определяет логический объединённый набор &lt;strong&gt;pod&lt;/strong&gt; и политику доступа к ним. Например - сервис типа &lt;strong&gt;LoadBalancer&lt;/strong&gt; балансирует нагрузку между подами деплоймента. В простейшем случае - сервис просто пробрасывает порт для доступа к приложению.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Volumes&lt;/strong&gt; (volumes.md): &lt;strong&gt;Volume&lt;/strong&gt;(раздел) это директория, возможно, с данными в ней, которая доступна в контейнере.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Labels&lt;/strong&gt; (labels.md): &lt;strong&gt;Label&lt;/strong&gt;&amp;#039;ы это пары ключ/значение которые прикрепляются к объектам, например &lt;strong&gt;pod&lt;/strong&gt;&amp;#039;ам. &lt;strong&gt;Label&lt;/strong&gt;&amp;#039;ы могут быть использованы для создания и выбора наборов объектов.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Kubectl Command Line Interface&lt;/strong&gt; (kubectl.md): &lt;strong&gt;kubectl&lt;/strong&gt; интерфейс командной строки для управления &lt;strong&gt;Kubernetes&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Config Map&lt;/strong&gt; - yml-файлик, содержащий некоторую конфигурационную информацию (например описание сервера nginx). В дальнейшем, в описании контейнера прописывается &lt;strong&gt;volumeMount&lt;/strong&gt;, с указанием куда смонтируется &lt;strong&gt;volume&lt;/strong&gt;, а также сам &lt;strong&gt;Volume&lt;/strong&gt;, который ссылается на &lt;strong&gt;configmap&lt;/strong&gt;. В результате - содержимое &lt;strong&gt;Config Map&lt;/strong&gt; монтируется в контейнер в файлик в заданную директорию. Инструкции для монтирования содержатся в описании deployment&amp;#039;а или pod&amp;#039;а.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0413\u043b\u043e\u0441\u0441\u0430\u0440\u0438\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0433\u043b\u043e\u0441\u0441\u0430\u0440\u0438\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:41,&amp;quot;range&amp;quot;:&amp;quot;12196-16077&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit42&quot; id=&quot;архитектура&quot;&gt;Архитектура&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Программыне компоненты Kubernetes можно разделить на две части:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;kubelet&lt;/strong&gt; - компоненты, которые работают на нодах кластера и обеспечивают запуск сервисов на них.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;master components&lt;/strong&gt; - компоненты, необходимые для управления кластером (APIs, scheduler, etc).
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:42,&amp;quot;range&amp;quot;:&amp;quot;16078-16546&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit43&quot; id=&quot;deployment_в_кластер_kubernetes&quot;&gt;Deployment в кластер kubernetes&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Для деплоймента в кластер &lt;strong&gt;kubernetes&lt;/strong&gt; нужно описать в docker-файлах сервисы Pod&amp;#039;а.
Порядок такой:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 создаем docker-файлик.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 собираем контейнер
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 помещаем (push) контейнер в репозиторий контейнеров docker (cloud.docker.com)
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
В кластере kubernetes создаем namespace (логичекий контейнер для pod&amp;#039;ов, деплойментов (deployments) и т.д.)
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl create namespace _name_&lt;/pre&gt;

&lt;p&gt;
Для деплоймента в kubernetes нужно описать три сущности:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Сам deployment,  в котором описано какие docker-контейнеры нужно загрузить в pod, сколько таких pod&amp;#039;ов создать, а также какую конфигурацию применить к контейнерам (с помощью ConfigMap&amp;#039;ов).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 ConfigMap&amp;#039;ы, которые содержат конфигурационные файлы, необходимые для работы приложений контейнерах. Например - конфигурация nginx для контейнера с nginx. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Service - способ доступа к приложениям в контейнерах (балансировка и проброс портов).
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Ход обновления:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 клонируем исходник из git.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 собираем его.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 собираем docker-контейнер с новым тегом версии, содержащий файлы приложения (docker build)
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 помещаем docker-контейнер в docker registry (docker push)
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 указываем в деплойменте тег новой версии контейнера. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 применяем deployment (kubectl apply) в результате чего обновятся pod&amp;#039;ы.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Для автоматизации с помощью GitLab:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 в свойствах проекта создаем &lt;strong&gt;Runner&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 по инструкци устанавливаем gitlab-runner и добавляем пользователя gitlab-runner в группу докера, для того, чтобы раннер мог запускать деплоймент.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 после установки gitlab-runner его нужно зарегистрировать (gitlab-runner register)
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 В конфиге раннера прописываются стадии: build и deploy. build включает в себя создание докерконтейнера, пригодного для деплоя.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Deployment \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 kubernetes&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;deployment_\u0432_\u043a\u043b\u0430\u0441\u0442\u0435\u0440_kubernetes&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:43,&amp;quot;range&amp;quot;:&amp;quot;16547-19273&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit44&quot; id=&quot;доступ_к_private_registry_с_паролем&quot;&gt;Доступ к private registry с паролем&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
У меня есть &lt;strong&gt;private registry&lt;/strong&gt; на базе &lt;strong&gt;Nexus 3&lt;/strong&gt;. Доступ туда осуществляется по логину-паролю (учетка из &lt;strong&gt;Active Directory&lt;/strong&gt;). &lt;br/&gt;

Для того чтобы образы можно было забирать из частного запароленного репозитория нужно:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 залогиниться в него:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;docker login -u _username_ -p _password_ registry.domain.com&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 в результате в файлике &lt;strong&gt;~/.docker/config.json&lt;/strong&gt; окажутся учетные данные, необходимые для работы.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 сделать из этого файлика секрет:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;kubectl create secret generic registry-credentials -n namespace-name --from-file=.dockerconfigjson=&amp;lt;path_to_home&amp;gt;/.docker/config.json --type=kubernetes.io/dockerconfigjson&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 и в дальнейшем использовать этот секрет:
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class=&quot;code&quot;&gt;apiVersion: v1
kind: Pod
metadata:
  name: private-reg
  namespace: namespace-name
spec:
  containers:
  - name: private-reg-container
    image: &amp;lt;your-private-image&amp;gt;
  imagePullSecrets:
  - name: registry-credentials&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Стоит обратить внимание на то, что секреты изолированы на уроне неймспейсов и в каджом неймспейсе должна быть копия секрета для доступа к &lt;strong&gt;registry&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0441\u0442\u0443\u043f \u043a private registry \u0441 \u043f\u0430\u0440\u043e\u043b\u0435\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0441\u0442\u0443\u043f_\u043a_private_registry_\u0441_\u043f\u0430\u0440\u043e\u043b\u0435\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:44,&amp;quot;range&amp;quot;:&amp;quot;19274-20805&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit45&quot; id=&quot;патчинг_конфигурации_из_командной_строки&quot;&gt;Патчинг конфигурации из командной строки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://stupefied-goodall-e282f7.netlify.com/contributors/devel/strategic-merge-patch/&quot; class=&quot;urlextern&quot; title=&quot;https://stupefied-goodall-e282f7.netlify.com/contributors/devel/strategic-merge-patch/&quot; rel=&quot;ugc nofollow&quot;&gt;https://stupefied-goodall-e282f7.netlify.com/contributors/devel/strategic-merge-patch/&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;http://jsonpatch.com/&quot; class=&quot;urlextern&quot; title=&quot;http://jsonpatch.com/&quot; rel=&quot;ugc nofollow&quot;&gt;http://jsonpatch.com/&lt;/a&gt; &lt;br/&gt;

Иногда нужно отредактировать объекты из скрипта, не запуская редактор. &lt;br/&gt;

Для этого у &lt;strong&gt;kubectl&lt;/strong&gt; есть команда &lt;strong&gt;patch&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0430\u0442\u0447\u0438\u043d\u0433 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0430\u0442\u0447\u0438\u043d\u0433_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438_\u0438\u0437_\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439_\u0441\u0442\u0440\u043e\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:45,&amp;quot;range&amp;quot;:&amp;quot;20806-21213&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit46&quot; id=&quot;удаление_раздела_из_конфигурации&quot;&gt;Удаление раздела из конфигурации&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl patch PersistentVolume elasticsearch-data --type=json -p=&amp;#039;[{&amp;quot;op&amp;quot;: &amp;quot;remove&amp;quot;, &amp;quot;path&amp;quot;: &amp;quot;/spec/claimRef&amp;quot;}]&amp;#039;
kubectl patch PersistentVolume my-pv-name-123465789 -p &amp;#039;{&amp;quot;spec&amp;quot;:{&amp;quot;claimRef&amp;quot;: null}}&amp;#039;
kubectl patch deployment es-master --type=json -p=&amp;#039;[{&amp;quot;op&amp;quot;: &amp;quot;remove&amp;quot;, &amp;quot;path&amp;quot;: &amp;quot;/spec/template/spec/containers/0/resources&amp;quot;}]&amp;#039;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 \u0438\u0437 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u0440\u0430\u0437\u0434\u0435\u043b\u0430_\u0438\u0437_\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:46,&amp;quot;range&amp;quot;:&amp;quot;21214-21615&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit47&quot; id=&quot;очистка_раздела_но_не_удаление_его&quot;&gt;Очистка раздела, но не удаление его&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl patch PersistentVolume elasticsearch-data  -p &amp;#039;{&amp;quot;spec&amp;quot;:{&amp;quot;claimRef&amp;quot;:{&amp;quot;$patch&amp;quot;: &amp;quot;delete&amp;quot;}}}&amp;#039;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0447\u0438\u0441\u0442\u043a\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u0430, \u043d\u043e \u043d\u0435 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0435\u0433\u043e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0447\u0438\u0441\u0442\u043a\u0430_\u0440\u0430\u0437\u0434\u0435\u043b\u0430_\u043d\u043e_\u043d\u0435_\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u0435\u0433\u043e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:47,&amp;quot;range&amp;quot;:&amp;quot;21616-21793&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit48&quot; id=&quot;изменение_значения_параметра&quot;&gt;Изменение значения параметра&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl -n kubernetes-dashboard patch service kubernetes-dashboard  -p &amp;#039;{&amp;quot;spec&amp;quot;:{&amp;quot;type&amp;quot;:&amp;quot;NodePort&amp;quot;}}&amp;#039;&lt;/pre&gt;

&lt;p&gt;
в данном случае - редактируем элемент номер &lt;strong&gt;0&lt;/strong&gt; списка &lt;strong&gt;containers&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl -n elasticsearch patch deployment es-master --type=json -p=&amp;#039;[{&amp;quot;op&amp;quot;: &amp;quot;replace&amp;quot;, &amp;quot;path&amp;quot;: &amp;quot;/spec/template/spec/containers/0/resources/requests/cpu&amp;quot;, &amp;quot;value&amp;quot;:1}]&amp;#039;
kubectl -n elasticsearch patch deployment es-master --type=json -p=&amp;#039;[{&amp;quot;op&amp;quot;: &amp;quot;replace&amp;quot;, &amp;quot;path&amp;quot;: &amp;quot;/spec/template/spec/containers/0/env/2&amp;quot;, &amp;quot;value&amp;quot;:{&amp;quot;name&amp;quot;: &amp;quot;NUMBER_OF_MASTERS&amp;quot;, &amp;quot;value&amp;quot;: &amp;quot;1&amp;quot;}}]&amp;#039;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435_\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f_\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:48,&amp;quot;range&amp;quot;:&amp;quot;21794-22442&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit49&quot; id=&quot;добавление_объекта&quot;&gt;Добавление объекта&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl patch pod alpine-correct --type=&amp;#039;json&amp;#039; -p=&amp;#039;[{&amp;quot;op&amp;quot;:&amp;quot;add&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;/metadata/annotations&amp;quot;, &amp;quot;value&amp;quot;:{&amp;quot;testone.annotation.io&amp;quot;:&amp;quot;test-one&amp;quot;,&amp;quot;testtwo.annotation.io&amp;quot;:&amp;quot;test-two&amp;quot;,&amp;quot;testthree.annotation.io&amp;quot;:&amp;quot;test-three&amp;quot;}}]&amp;#039;&lt;/pre&gt;

&lt;p&gt;
В список:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl -n elasticsearch patch sts es-data --type=json -p=&amp;#039;[{&amp;quot;op&amp;quot;: &amp;quot;add&amp;quot;, &amp;quot;path&amp;quot;: &amp;quot;/spec/template/spec/tolerations&amp;quot;, &amp;quot;value&amp;quot;:[{&amp;quot;effect&amp;quot;:&amp;quot;NoSchedule&amp;quot;,&amp;quot;key&amp;quot;:&amp;quot;node.kubernetes.io/rrr&amp;quot;,&amp;quot;operator&amp;quot;:&amp;quot;Exists&amp;quot;}]}]&amp;#039;&lt;/pre&gt;

&lt;p&gt;
Добавляем порт для контейнера в &lt;strong&gt;Deployment&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl patch deployment mcs-api --type=json -p=&amp;#039;[{&amp;quot;op&amp;quot;: &amp;quot;add&amp;quot;, &amp;quot;path&amp;quot;: &amp;quot;/spec/template/spec/containers/0/ports&amp;quot;, &amp;quot;value&amp;quot;:[{&amp;quot;containerPort&amp;quot;: 5000}]}]&amp;#039;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043e\u0431\u044a\u0435\u043a\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:49,&amp;quot;range&amp;quot;:&amp;quot;22443-23163&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit50&quot; id=&quot;патчинг_нескольких_значений_за_раз&quot;&gt;Патчинг нескольких значений за раз&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl patch ns default --type=json -p &amp;#039;[
{&amp;quot;op&amp;quot;:&amp;quot;add&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;/metadata/annotations&amp;quot;,&amp;quot;value&amp;quot;:{&amp;quot;a&amp;quot;:&amp;quot;1&amp;quot;,&amp;quot;b&amp;quot;:&amp;quot;2&amp;quot;}},
{&amp;quot;op&amp;quot;:&amp;quot;add&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;/metadata/labels&amp;quot;,&amp;quot;value&amp;quot;:{&amp;quot;c&amp;quot;:&amp;quot;3&amp;quot;}}
]&amp;#039;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0430\u0442\u0447\u0438\u043d\u0433 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0437\u0430 \u0440\u0430\u0437&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0430\u0442\u0447\u0438\u043d\u0433_\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445_\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439_\u0437\u0430_\u0440\u0430\u0437&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:50,&amp;quot;range&amp;quot;:&amp;quot;23164-23422&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit51&quot; id=&quot;отвязать_persistentvolume_от_заявки_persistentvolumeclaim&quot;&gt;Отвязать PersistentVolume от заявки PersistentVolumeClaim&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl patch PersistentVolume elasticsearch-data --type=json -p=&amp;#039;[{&amp;quot;op&amp;quot;: &amp;quot;remove&amp;quot;, &amp;quot;path&amp;quot;: &amp;quot;/spec/claimRef&amp;quot;}]&amp;#039;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u0432\u044f\u0437\u0430\u0442\u044c PersistentVolume \u043e\u0442 \u0437\u0430\u044f\u0432\u043a\u0438 PersistentVolumeClaim&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u0432\u044f\u0437\u0430\u0442\u044c_persistentvolume_\u043e\u0442_\u0437\u0430\u044f\u0432\u043a\u0438_persistentvolumeclaim&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:51,&amp;quot;range&amp;quot;:&amp;quot;23423-23622&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit52&quot; id=&quot;найти_все_объекты_kubernetes_во_всех_неймспейсах&quot;&gt;Найти все объекты kubernetes во всех неймспейсах&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;while read -r line; do echo &amp;quot;===============  $line  ==================&amp;quot;; kubectl get $line -A; done &amp;lt; &amp;lt;(kubectl api-resources | grep -v NAME | cut -d &amp;#039; &amp;#039; -f1)&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0439\u0442\u0438 \u0432\u0441\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u044b kubernetes \u0432\u043e \u0432\u0441\u0435\u0445 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430\u0445&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0439\u0442\u0438_\u0432\u0441\u0435_\u043e\u0431\u044a\u0435\u043a\u0442\u044b_kubernetes_\u0432\u043e_\u0432\u0441\u0435\u0445_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:52,&amp;quot;range&amp;quot;:&amp;quot;23623-23883&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit53&quot; id=&quot;удобное_редактирование_секретов_kubernetes&quot;&gt;Удобное редактирование секретов kubernetes&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://github.com/lbolla/kube-secret-editor&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/lbolla/kube-secret-editor&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/lbolla/kube-secret-editor&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get -y install python3-pip python-pip
sudo pip install PyYaml
sudo pip3 install PyYaml
sudo wget https://raw.githubusercontent.com/lbolla/kube-secret-editor/master/kube-secret-editor.py -O /usr/local/bin/kube-secret-editor.py
sudo chmod a+x /usr/local/bin/kube-secret-editor.py
alias kedit-secret=&amp;quot;EDITOR=nano KUBE_EDITOR=/usr/local/bin/kube-secret-editor.py kubectl edit secret&amp;quot;
sudo awk -v line=&amp;#039;alias kedit-secret=&amp;quot;EDITOR=nano KUBE_EDITOR=/usr/local/bin/kube-secret-editor.py kubectl edit secret&amp;quot;&amp;#039; &amp;#039;FNR==NR &amp;amp;&amp;amp; line==$0{f=1; exit} END{if (!f) print line &amp;gt;&amp;gt; FILENAME}&amp;#039; /etc/bash.bashrc&lt;/pre&gt;

&lt;p&gt;
После перелогина (или нового запуска/перезапуска) &lt;strong&gt;bash&lt;/strong&gt; станет доступен &lt;strong&gt;alias&lt;/strong&gt;  &lt;strong&gt;kedit-secret&lt;/strong&gt; и отредактировать секрет можно будет так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kedit-secret -n nsname secret-name&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u043e\u0431\u043d\u043e\u0435 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u043a\u0440\u0435\u0442\u043e\u0432 kubernetes&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u043e\u0431\u043d\u043e\u0435_\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0441\u0435\u043a\u0440\u0435\u0442\u043e\u0432_kubernetes&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:53,&amp;quot;range&amp;quot;:&amp;quot;23884-24901&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit54&quot; id=&quot;предоставление_ограниченного_доступа_в_кластер_с_помощью_rbac_и_сертификатов&quot;&gt;Предоставление ограниченного доступа в кластер с помощью RBAC и сертификатов&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://medium.com/better-programming/k8s-tips-give-access-to-your-clusterwith-a-client-certificate-dfb3b71a76fe&quot; class=&quot;urlextern&quot; title=&quot;https://medium.com/better-programming/k8s-tips-give-access-to-your-clusterwith-a-client-certificate-dfb3b71a76fe&quot; rel=&quot;ugc nofollow&quot;&gt;https://medium.com/better-programming/k8s-tips-give-access-to-your-clusterwith-a-client-certificate-dfb3b71a76fe&lt;/a&gt; &lt;br/&gt;

Что нужно понимать.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; В кубернетесе НЕ существует базы данных с &lt;strong&gt;Пользователями&lt;/strong&gt; и &lt;strong&gt;Группами&lt;/strong&gt;. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Аутентификация при доступе к кластеру осуществляется с помощью сертификатов. Фактически &lt;strong&gt;CN&lt;/strong&gt; в сертификате - это имя субъекта (пользователя), обращающегося к кластеру. &lt;strong&gt;O&lt;/strong&gt; в сертификате - это имя группы, в которую включе пользователь.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; При использовании аутентификации по сертификатам нужно сгенерировать запрос на сертификат, на основании которого кластер может выпустить клиентский сертификат, с некоторым значением полей &lt;strong&gt;CN&lt;/strong&gt; и &lt;strong&gt;O&lt;/strong&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Привилегии раздаются с помощью ролей. &lt;strong&gt;Role&lt;/strong&gt; - это набор привилегий для субъекта (пользователя или группы). &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Для того, чтобы дать права владельцу сертификата нужно создать &lt;strong&gt;RoleBinding&lt;/strong&gt;, которая свяжет роль с тем что написано в сертификате. Если даем права пользователю, то имя пользователя в &lt;strong&gt;RoleBinding&lt;/strong&gt; должно совпадать со значением поля &lt;strong&gt;CN&lt;/strong&gt; в сертификате. Если даем права группе, то имя группы в &lt;strong&gt;RoleBinding&lt;/strong&gt; должно совпадать со значение поля &lt;strong&gt;O&lt;/strong&gt; в сертификате.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;br/&gt;

Конкретная задача формулируется следующим образом:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Для обращений к api-серверу используется аутентификация по сертикатам.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Разработчику нужно предоставить доступ на просмотр объектов в заданном неймспейсе.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 В перспективе аналогичные права понадобятся другим разработчикам. То есть - права будем выдавать на группу.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e RBAC \u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0433\u043e_\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u0432_\u043a\u043b\u0430\u0441\u0442\u0435\u0440_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_rbac_\u0438_\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:54,&amp;quot;range&amp;quot;:&amp;quot;24902-27569&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit55&quot; id=&quot;скрипт&quot;&gt;Скрипт&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/bash
set -e

KUB_CONTEXT=&amp;#039;kubernetes-admin@kubernetes&amp;#039;
KUB_USERNAME=&amp;#039;developer-ro&amp;#039;
KUB_USERGROUP=&amp;#039;mcs-ro&amp;#039;
#cluster or ns (namespace)
#AUTH_SCOPE=&amp;#039;cluster&amp;#039;
AUTH_SCOPE=&amp;#039;ns&amp;#039;
# If AUTH_SCOPE = ns then we need namespace name
KUB_NAMESPACE=&amp;#039;default&amp;#039;
KUB_ROLE_NAME=&amp;quot;${KUB_USERGROUP}-role&amp;quot;
# Comma separated quoted - &amp;#039;&amp;quot;get&amp;quot;, &amp;quot;list&amp;quot;&amp;#039;. For all use &amp;quot;*&amp;quot;
KUB_ROLE_APIGROUPS=&amp;#039;&amp;quot;*&amp;quot;&amp;#039;
KUB_ROLE_RESOURCES=&amp;#039;&amp;quot;*&amp;quot;&amp;#039;
#KUB_ROLE_VERBS=&amp;#039;&amp;quot;get&amp;quot;, &amp;quot;list&amp;quot;&amp;#039;
KUB_ROLE_VERBS=&amp;#039;&amp;quot;*&amp;quot;&amp;#039;

echo &amp;quot;Switching to context &amp;#039;${KUB_CONTEXT}&amp;#039;...&amp;quot;
kubectl config use-context $KUB_CONTEXT

echo &amp;quot;Get Kubernetes Cluster Details...&amp;quot;
CLUSTER_NAME=${KUB_CONTEXT}-cluster
CLUSTER_ENDPOINT=`kubectl get po -n kube-system -o jsonpath=&amp;quot;{.items[?(@.metadata.labels.component==\&amp;quot;kube-apiserver\&amp;quot;)].metadata.annotations.kubeadm\.kubernetes\.io\/kube-apiserver\.advertise-address\.endpoint}&amp;quot; | cut -d&amp;#039; &amp;#039; -f 1`
[ -z &amp;quot;$CLUSTER_ENDPOINT&amp;quot; ] &amp;amp;&amp;amp; CLUSTER_ENDPOINT=`kubectl cluster-info | grep &amp;#039;control plane&amp;#039; | awk &amp;#039;{print $NF}&amp;#039; | sed &amp;#039;s/^.*\/\///&amp;#039; | sed -r &amp;quot;s/\x1B\[([0-9]{1,3}(;[0-9]{1,2})?)?[mGK]//g&amp;quot;`
KUB_SYSTEM_TOKEN_SECRET=`kubectl get secret -n kube-system -o name | grep default-token | cut -d&amp;#039;/&amp;#039; -f 2`
CLUSTER_CA=`kubectl get secret -n kube-system $KUB_SYSTEM_TOKEN_SECRET -o jsonpath={&amp;quot;.data.ca\.crt&amp;quot;}`

if [ ! -f ./${KUB_USERNAME}.key ]; then
    openssl genrsa -out ./${KUB_USERNAME}.key 4096
fi

echo &amp;quot;Create CSR config file ${KUB_USERNAME}.csr.cnf...&amp;quot;
cat &amp;lt;&amp;lt;EOF &amp;gt; ./${KUB_USERNAME}.csr.cnf
[ req ]
default_bits = 2048
prompt = no
default_md = sha256
distinguished_name = dn

[ dn ]
CN = ${KUB_USERNAME}
O = ${KUB_USERGROUP}

[ v3_ext ]
authorityKeyIdentifier=keyid,issuer:always
basicConstraints=CA:FALSE
keyUsage=keyEncipherment,dataEncipherment
extendedKeyUsage=serverAuth,clientAuth
EOF

echo &amp;quot;Create CSR file ${KUB_USERNAME}.csr...&amp;quot;
openssl req -config ./${KUB_USERNAME}.csr.cnf -new -key ${KUB_USERNAME}.key -nodes -out ${KUB_USERNAME}.csr

echo &amp;quot;Create CertificateSigningRequest in ${KUB_CONTEXT} cluster...&amp;quot;
export BASE64_CSR=$(cat ./${KUB_USERNAME}.csr | base64 | tr -d &amp;#039;\n&amp;#039;)
kubectl apply -f - &amp;lt;&amp;lt;EOF
apiVersion: certificates.k8s.io/v1beta1
kind: CertificateSigningRequest
metadata:
  name: ${KUB_USERNAME}_csr
spec:
  groups:
  - system:authenticated
  request: ${BASE64_CSR}
  #signerName: kubernetes.io/kube-apiserver-client
  usages:
  - client auth
EOF

echo &amp;quot;Check if CSR created successfully...&amp;quot;
kubectl get csr ${KUB_USERNAME}_csr

echo &amp;quot;Approving CSR created...&amp;quot;
kubectl certificate approve ${KUB_USERNAME}_csr

echo &amp;quot;Download certificate for user ${KUB_USERNAME} to ${KUB_USERNAME}.crt file...&amp;quot;
kubectl get csr ${KUB_USERNAME}_csr -o jsonpath=&amp;#039;{.status.certificate}&amp;#039; | base64 --decode &amp;gt; ${KUB_USERNAME}.crt

if [ &amp;quot;$AUTH_SCOPE&amp;quot; = &amp;quot;cluster&amp;quot; ]; then
echo &amp;quot;Create Cluster Role...&amp;quot;
kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 name: ${KUB_ROLE_NAME}
rules:
- apiGroups: [${KUB_ROLE_APIGROUPS}]
  resources: [${KUB_ROLE_RESOURCES}]
  verbs: [${KUB_ROLE_VERBS}]
EOF

echo &amp;quot;Create Cluster Role Binding for group ${KUB_USERGROUP}...&amp;quot;
kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 name: ${KUB_ROLE_NAME}-${KUB_USERGROUP}
subjects:
- kind: Group
  name: ${KUB_USERGROUP}
  apiGroup: rbac.authorization.k8s.io
roleRef:
 kind: ClusterRole
 name: ${KUB_ROLE_NAME}
 apiGroup: rbac.authorization.k8s.io
EOF
fi

if [ &amp;quot;$AUTH_SCOPE&amp;quot; = &amp;quot;ns&amp;quot; ]; then
kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 namespace: ${KUB_NAMESPACE}
 name: ${KUB_ROLE_NAME}
rules:
- apiGroups: [${KUB_ROLE_APIGROUPS}]
  resources: [${KUB_ROLE_RESOURCES}]
  verbs: [${KUB_ROLE_VERBS}]
EOF

kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 name: ${KUB_ROLE_NAME}-${KUB_USERGROUP}
 namespace: ${KUB_NAMESPACE}
subjects:
- kind: Group
  name: ${KUB_USERGROUP}
  apiGroup: rbac.authorization.k8s.io
roleRef:
 kind: Role
 name: ${KUB_ROLE_NAME}
 apiGroup: rbac.authorization.k8s.io
EOF
fi

CLIENT_CERTIFICATE_DATA=$(kubectl get csr ${KUB_USERNAME}_csr -o jsonpath=&amp;#039;{.status.certificate}&amp;#039;)
CLIENT_KEY_DATA=$(cat ./${KUB_USERNAME}.key | base64 |  tr -d &amp;#039;\n&amp;#039; )

cat &amp;lt;&amp;lt;EOF &amp;gt; ./kubeconfig_${KUB_USERNAME}_${CLUSTER_NAME}
apiVersion: v1
kind: Config
clusters:
- cluster:
    certificate-authority-data: ${CLUSTER_CA}
    server: https://${CLUSTER_ENDPOINT}
    #insecure-skip-tls-verify: true
  name: ${CLUSTER_NAME}
users:
- name: ${KUB_USERNAME}-${CLUSTER_NAME}
  user:
    client-certificate-data: ${CLIENT_CERTIFICATE_DATA}
    client-key-data: ${CLIENT_KEY_DATA}
contexts:
- context:
    cluster: ${CLUSTER_NAME}
    user: ${KUB_USERNAME}-${CLUSTER_NAME}
  name: ${KUB_USERNAME}-${CLUSTER_NAME}
current-context: ${KUB_USERNAME}-${CLUSTER_NAME}
EOF

kubectl delete certificatesigningrequests ${KUB_USERNAME}_csr&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043a\u0440\u0438\u043f\u0442&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043a\u0440\u0438\u043f\u0442&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:8,&amp;quot;secid&amp;quot;:55,&amp;quot;range&amp;quot;:&amp;quot;27570-32424&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit56&quot; id=&quot;создание_закрытого_ключа_пользователя_и_запроса_сертификата&quot;&gt;Создание закрытого ключа пользователя и запроса сертификата&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Генерируем закрытый ключ:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;openssl genrsa -out mike.key 4096&lt;/pre&gt;

&lt;p&gt;
Для генерации закрытого ключа пользователя нужно подготовить файлик &lt;strong&gt;mike.csr.cnf&lt;/strong&gt;, в котором указать имя пользователя и группу, которой мы дадим права:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[ req ]
default_bits = 2048
prompt = no
default_md = sha256
distinguished_name = dn

[ dn ]
CN = mike
O = development

[ v3_ext ]
authorityKeyIdentifier=keyid,issuer:always
basicConstraints=CA:FALSE
keyUsage=keyEncipherment,dataEncipherment
extendedKeyUsage=serverAuth,clientAuth&lt;/pre&gt;

&lt;p&gt;
Тут:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 CN - имя пользователя
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 O - имя группы
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
И дальше генерируем запрос сертификата:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;openssl req -config ./mike.csr.cnf -new -key mike.key -nodes -out mike.csr&lt;/pre&gt;

&lt;p&gt;
В итоге - получаем файл запроса сертификата - &lt;strong&gt;mike.csr&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0433\u043e_\u043a\u043b\u044e\u0447\u0430_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f_\u0438_\u0437\u0430\u043f\u0440\u043e\u0441\u0430_\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:56,&amp;quot;range&amp;quot;:&amp;quot;32425-33522&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit57&quot; id=&quot;создание_сертификата&quot;&gt;Создание сертификата&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Теперь нужно отправить запрос в кластер, чтобы на его основе был сгенерирован сертификат. &lt;br/&gt;

Создаем переменную окружения, в которую помещаем наш запрос сертификата в кодировке &lt;strong&gt;base64&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;export BASE64_CSR=$(cat ./mike.csr | base64 | tr -d &amp;#039;\n&amp;#039;)&lt;/pre&gt;

&lt;p&gt;
И загоняем манифест в кластер, попутно подставляя в него значение созданной переменной:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl apply -f - &amp;lt;&amp;lt;EOF
apiVersion: certificates.k8s.io/v1
kind: CertificateSigningRequest
metadata:
  name: csr
spec:
  groups:
  - system:authenticated
  request: ${BASE64_CSR}
  usages:
  - digital signature
  - key encipherment
  - server auth
  - client auth
EOF&lt;/pre&gt;

&lt;p&gt;
Убеждаемся, что запрос создан:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;$ kubectl get csr
NAME      AGE   REQUESTOR          CONDITION
csr       31s   kubernetes-admin   Pending&lt;/pre&gt;

&lt;p&gt;
И выпускаем сертификат:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl certificate approve csr&lt;/pre&gt;

&lt;p&gt;
Если при аппруве появляется ошибка типа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;error: no kind &amp;quot;CertificateSigningRequest&amp;quot; is registered for version &amp;quot;certificates.k8s.io/v1&amp;quot; in scheme &amp;quot;k8s.io/kubectl/pkg/scheme/scheme.go:28&amp;quot;&lt;/pre&gt;

&lt;p&gt;
то скорее всего делл в том, что в кластере несколько версий &lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt; для ресурса &lt;strong&gt;certifictes&lt;/strong&gt;, либо версия &lt;strong&gt;kubectl&lt;/strong&gt; отстает от версии кластера. Проверяем это:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get apiservice | grep certificates
kubectl version --short&lt;/pre&gt;

&lt;p&gt;
Если там две версии &lt;strong&gt;&lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt;&lt;/strong&gt; для ресурса &lt;strong&gt;certifictes&lt;/strong&gt;, то удаляем старую, а также обновляем &lt;strong&gt;kubectl&lt;/strong&gt; при необходимости:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl delete apiservice v1beta1.certificates.k8s.io&lt;/pre&gt;

&lt;p&gt;
А теперь - извлекаем его:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get csr csr -o jsonpath=&amp;#039;{.status.certificate}&amp;#039; | base64 --decode &amp;gt; mike.crt&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:10,&amp;quot;secid&amp;quot;:57,&amp;quot;range&amp;quot;:&amp;quot;33523-35611&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit58&quot; id=&quot;создаем_роль_для_ограничения_прав_в_неймспейсе&quot;&gt;Создаем роль для ограничения прав в неймспейсе&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 namespace: development
 name: dev
rules:
- apiGroups: [&amp;quot;&amp;quot;]
  resources: [&amp;quot;pods&amp;quot;, &amp;quot;services&amp;quot;]
  verbs: [&amp;quot;get&amp;quot;, &amp;quot;list&amp;quot;]
EOF&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0440\u043e\u043b\u044c \u0434\u043b\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u0430\u0432 \u0432 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u0435\u043c_\u0440\u043e\u043b\u044c_\u0434\u043b\u044f_\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f_\u043f\u0440\u0430\u0432_\u0432_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:12,&amp;quot;secid&amp;quot;:58,&amp;quot;range&amp;quot;:&amp;quot;35612-35934&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit59&quot; id=&quot;даем_права_пользователю_или_группе&quot;&gt;Даем права пользователю или группе&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Привязываем пользователя к роли (по имени):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 name: dev
 namespace: development
subjects:
- kind: User
  name: mike
  apiGroup: rbac.authorization.k8s.io
roleRef:
 kind: Role
 name: dev
 apiGroup: rbac.authorization.k8s.io
EOF&lt;/pre&gt;

&lt;p&gt;
Либо к группе:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 name: dev
 namespace: development
subjects:
- kind: Group
  name: development
  apiGroup: rbac.authorization.k8s.io
roleRef:                             
 kind: Role                          
 name: dev
 apiGroup: rbac.authorization.k8s.io 
EOF&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0438\u043b\u0438 \u0433\u0440\u0443\u043f\u043f\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0430\u0435\u043c_\u043f\u0440\u0430\u0432\u0430_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e_\u0438\u043b\u0438_\u0433\u0440\u0443\u043f\u043f\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:59,&amp;quot;range&amp;quot;:&amp;quot;35935-36760&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit60&quot; id=&quot;создание_файлика_kubeconfig&quot;&gt;Создание файлика kubeconfig&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Теперь для доступа к кластеру пользователю нужен файл, конфигурации, который будет содержать ссылку на api-сервер кластера, а также сертификаты. &lt;br/&gt;

Зададим значения переменных, которые будут подставлены в шаблон:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;export USER=&amp;quot;mike&amp;quot;
export CLUSTER_NAME=$(kubectl config view --minify -o jsonpath={.clusters[0].name})
export CLUSTER_ENDPOINT=$(kubectl config view --raw -o json | jq -r &amp;quot;.clusters[] | select(.name == \&amp;quot;$CLUSTER_NAME\&amp;quot;) | .cluster.server&amp;quot;)
export CLIENT_CERTIFICATE_DATA=$(kubectl get csr mycsr -o jsonpath=&amp;#039;{.status.certificate}&amp;#039;)
export CLIENT_KEY_DATA=$(cat ./mike.key | base64 | tr -d &amp;#039;\n&amp;#039;)
export CLUSTER_CA=$(kubectl get secret -o jsonpath=&amp;quot;{.items[?(@.type==\&amp;quot;kubernetes.io/service-account-token\&amp;quot;)].data[&amp;#039;ca\.crt&amp;#039;]}&amp;quot;)&lt;/pre&gt;

&lt;p&gt;
И создадим файлик, в который подставим эти значения параметров:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cat &amp;lt;&amp;lt;EOF &amp;gt; kubeconfig
apiVersion: v1
kind: Config
clusters:
- cluster:
    certificate-authority-data: ${CLUSTER_CA}
    server: ${CLUSTER_ENDPOINT}
    #insecure-skip-tls-verify: true
  name: ${CLUSTER_NAME}
users:
- name: ${USER}
  user:
    client-certificate-data: ${CLIENT_CERTIFICATE_DATA}
    client-key-data: ${CLIENT_KEY_DATA}
contexts:
- context:
    cluster: ${CLUSTER_NAME}
    user: ${USER}
  name: ${USER}-${CLUSTER_NAME}
current-context: ${USER}-${CLUSTER_NAME}
EOF&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0438\u043a\u0430 kubeconfig&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0444\u0430\u0439\u043b\u0438\u043a\u0430_kubeconfig&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:15,&amp;quot;secid&amp;quot;:60,&amp;quot;range&amp;quot;:&amp;quot;36761-38356&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit61&quot; id=&quot;предоставление_ограниченного_доступа_в_кластер_с_помощью_rbac_и_service_accounts&quot;&gt;Предоставление ограниченного доступа в кластер с помощью RBAC и Service Accounts&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
# &lt;a href=&quot;https://documentation.commvault.com/v11/essential/129223_creating_kubernetes_cluster_admin_service_account_for_commvault.html&quot; class=&quot;urlextern&quot; title=&quot;https://documentation.commvault.com/v11/essential/129223_creating_kubernetes_cluster_admin_service_account_for_commvault.html&quot; rel=&quot;ugc nofollow&quot;&gt;https://documentation.commvault.com/v11/essential/129223_creating_kubernetes_cluster_admin_service_account_for_commvault.html&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/bash
set -e

KUB_CONTEXT=&amp;#039;anima-lightning2-dev&amp;#039;
KUB_USERNAME=&amp;#039;dashboard-ro&amp;#039;
KUB_NAMESPACES=(&amp;#039;lightning-dev&amp;#039; &amp;#039;lightning-tst&amp;#039;)
######KUB_USERGROUP=&amp;#039;mcs-ro&amp;#039;
#cluster or ns (namespace)
#AUTH_SCOPE=&amp;#039;cluster&amp;#039;
AUTH_SCOPE=&amp;#039;ns&amp;#039;
# If AUTH_SCOPE = ns then we need namespace name
#KUB_NAMESPACES=(&amp;#039;default&amp;#039;)

# Comma separated quoted - &amp;#039;&amp;quot;get&amp;quot;, &amp;quot;list&amp;quot;&amp;#039;. For all use &amp;quot;*&amp;quot;
KUB_ROLE_APIGROUPS=&amp;#039;&amp;quot;*&amp;quot;&amp;#039;
KUB_ROLE_RESOURCES=&amp;#039;&amp;quot;*&amp;quot;&amp;#039;
#KUB_ROLE_VERBS=&amp;#039;&amp;quot;get&amp;quot;, &amp;quot;list&amp;quot;&amp;#039;
KUB_ROLE_VERBS=&amp;#039;&amp;quot;get&amp;quot;, &amp;quot;list&amp;quot;&amp;#039;

echo &amp;quot;Switching to context &amp;#039;${KUB_CONTEXT}&amp;#039;...&amp;quot;
kubectl config use-context $KUB_CONTEXT

echo &amp;quot;Get Kubernetes Cluster Details...&amp;quot;
CLUSTER_NAME=${KUB_CONTEXT}-cluster
CLUSTER_ENDPOINT=`kubectl get po -n kube-system -o jsonpath=&amp;quot;{.items[?(@.metadata.labels.component==\&amp;quot;kube-apiserver\&amp;quot;)].metadata.annotations.kubeadm\.kubernetes\.io\/kube-apiserver\.advertise-address\.endpoint}&amp;quot; | cut -d&amp;#039; &amp;#039; -f 1`
[ -z &amp;quot;$CLUSTER_ENDPOINT&amp;quot; ] &amp;amp;&amp;amp; CLUSTER_ENDPOINT=`kubectl cluster-info | grep &amp;#039;control plane&amp;#039; | awk &amp;#039;{print $NF}&amp;#039; | sed &amp;#039;s/^.*\/\///&amp;#039; | sed -r &amp;quot;s/\x1B\[([0-9]{1,3}(;[0-9]{1,2})?)?[mGK]//g&amp;quot;`
KUB_SYSTEM_TOKEN_SECRET=`kubectl get secret -n kube-system -o name | grep default-token | cut -d&amp;#039;/&amp;#039; -f 2`
CLUSTER_CA=`kubectl get secret -n kube-system $KUB_SYSTEM_TOKEN_SECRET -o jsonpath={&amp;quot;.data.ca\.crt&amp;quot;}`

kubectl create serviceaccount ${KUB_USERNAME}-sa -n kube-system || true

echo &amp;quot;Create ClusterRole &amp;#039;${KUB_USERNAME}-ns-cluster-role&amp;#039; to List Namespaces...&amp;quot;
kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: ${KUB_USERNAME}-ns-cluster-role
rules:
- apiGroups: [&amp;quot;&amp;quot;]
  resources: [&amp;quot;namespaces&amp;quot;]
  verbs: [&amp;quot;get&amp;quot;, &amp;quot;list&amp;quot;]

EOF

echo &amp;quot;Create Cluster Role Binding for group &amp;#039;${KUB_USERNAME}-ns-cluster-role&amp;#039; to List Namespaces...&amp;quot;
kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: ${KUB_USERNAME}-ns-cluster-rolebinding
subjects:
- kind: ServiceAccount
  name: ${KUB_USERNAME}-sa
  namespace: kube-system
roleRef:
  kind: ClusterRole
  name: ${KUB_USERNAME}-ns-cluster-role
  apiGroup: rbac.authorization.k8s.io
EOF

if [ &amp;quot;$AUTH_SCOPE&amp;quot; = &amp;quot;ns&amp;quot; ]; then
for KUB_NAMESPACE in ${KUB_NAMESPACES[@]}; do
kubectl create ns ${KUB_NAMESPACE} || true

echo &amp;quot;Creating Role - &amp;#039;${KUB_USERNAME}-role&amp;#039; in the namespace &amp;#039;${KUB_NAMESPACE}&amp;#039;...&amp;quot;
kubectl replace -f - &amp;lt;&amp;lt;EOF
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  namespace: ${KUB_NAMESPACE}
  name: ${KUB_USERNAME}-role
rules:
- apiGroups: [${KUB_ROLE_APIGROUPS}]
  resources: [${KUB_ROLE_RESOURCES}]
  verbs: [${KUB_ROLE_VERBS}]
EOF

echo &amp;quot;Creating RoleBinding for the &amp;#039;${KUB_USERNAME}-role&amp;#039; in the namespace &amp;#039;${KUB_NAMESPACE}&amp;#039;...&amp;quot;
kubectl replace -f - &amp;lt;&amp;lt;EOF
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: ${KUB_USERNAME}
  namespace: ${KUB_NAMESPACE}
subjects:
- kind: ServiceAccount
  name: ${KUB_USERNAME}-sa
  namespace: kube-system
roleRef:
  kind: Role
  name: ${KUB_USERNAME}-role
  apiGroup: rbac.authorization.k8s.io
EOF
done
fi

if [ &amp;quot;$AUTH_SCOPE&amp;quot; = &amp;quot;cluster&amp;quot; ]; then
echo &amp;quot;Creating ClusterRole &amp;#039;${KUB_USERNAME}-cluster-role&amp;#039; to access resources...&amp;quot;
kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: ${KUB_USERNAME}-cluster-role
rules:
- apiGroups: [${KUB_ROLE_APIGROUPS}]
  resources: [${KUB_ROLE_RESOURCES}]
  verbs: [${KUB_ROLE_VERBS}]
EOF

echo &amp;quot;Create Cluster Role Binding for group &amp;#039;${KUB_USERNAME}-cluster-role&amp;#039; to access resources...&amp;quot;
kubectl apply -f - &amp;lt;&amp;lt;EOF
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: ${KUB_USERNAME}-cluster-rolebinding
subjects:
- kind: ServiceAccount
  name: ${KUB_USERNAME}-sa
  namespace: kube-system
roleRef:
  kind: ClusterRole
  name: ${KUB_USERNAME}-cluster-role
  apiGroup: rbac.authorization.k8s.io
fi
EOF
fi

kubectl apply -f - &amp;lt;&amp;lt;EOF
apiVersion: v1
kind: Secret
metadata:
  name: ${KUB_USERNAME}-sa-token
  namespace: kube-system
  annotations:
    kubernetes.io/service-account.name: ${KUB_USERNAME}-sa
type: kubernetes.io/service-account-token
EOF

SA_TOKEN=`echo &amp;quot;kubectl get secrets -n kube-system -o jsonpath=\&amp;quot;{.items[?(@.metadata.annotations[&amp;#039;kubernetes\\.io/service-account\\.name&amp;#039;]==&amp;#039;${KUB_USERNAME}-sa&amp;#039;)].data.token}\&amp;quot; | base64 --decode&amp;quot; | /bin/bash`

cat &amp;lt;&amp;lt;EOF &amp;gt; ./kubeconfig_${KUB_USERNAME}_${CLUSTER_NAME}
apiVersion: v1
kind: Config
clusters:
- cluster:
    certificate-authority-data: ${CLUSTER_CA}
    server: https://${CLUSTER_ENDPOINT}
    #insecure-skip-tls-verify: true
  name: ${CLUSTER_NAME}
users:
- name: ${KUB_USERNAME}-${CLUSTER_NAME}
  user:
    token: ${SA_TOKEN}
contexts:
- context:
    cluster: ${CLUSTER_NAME}
    user: ${KUB_USERNAME}-${CLUSTER_NAME}
  name: ${KUB_USERNAME}-${CLUSTER_NAME}
current-context: ${KUB_USERNAME}-${CLUSTER_NAME}
EOF&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e RBAC \u0438 Service Accounts&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0433\u043e_\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u0432_\u043a\u043b\u0430\u0441\u0442\u0435\u0440_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_rbac_\u0438_service_accounts&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:17,&amp;quot;secid&amp;quot;:61,&amp;quot;range&amp;quot;:&amp;quot;38357-43427&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit62&quot; id=&quot;bash-скрипты_в_init-контейнерах_при_деплойменте_с_помощью_helm&quot;&gt;Bash-скрипты в init-контейнерах при деплойменте с помощью helm&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В чарте в директории files я имею просто скрипт, который должне запуститься в init-контейнере. &lt;br/&gt;

Я поменщаю этот скрипт в секрет с помощью такого манифеста:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: v1
kind: Secret
metadata:
  name: files
type: Opaque
data: 
{{ (.Files.Glob &amp;quot;files/*&amp;quot;).AsSecrets | indent 2 }}&lt;/pre&gt;

&lt;p&gt;
В деплойменте я запускаю init-контейнер, в котором монтируется секрет с этим скриптом и выполняется этот скрипт:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;...
      initContainers:
      - name: copy-files
        image: docker.rdleas.ru/busybox
        command:
        - &amp;quot;sh&amp;quot;
        - &amp;quot;-c&amp;quot;
        - &amp;quot;cp /tmp/files/init-script.sh /tmp/ &amp;amp;&amp;amp; chmod u+x /tmp/init-script.sh &amp;amp;&amp;amp; /tmp/init-script.sh&amp;quot;
        volumeMounts:
        - name: files
          mountPath: /tmp/files/
...
      volumes:
      - name: files
        secret:
          secretName: files&lt;/pre&gt;

&lt;p&gt;
то есть мне надо сделать скрипт исполняемым (дать соотвествующие разрешения), но смонтирован он как read-only, поэтому я предварительно копирую его. А после того, как разрешено его исполнение - запускаю скрипт.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Bash-\u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0432 init-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u0445 \u043f\u0440\u0438 \u0434\u0435\u043f\u043b\u043e\u0439\u043c\u0435\u043d\u0442\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e helm&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;bash-\u0441\u043a\u0440\u0438\u043f\u0442\u044b_\u0432_init-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u0445_\u043f\u0440\u0438_\u0434\u0435\u043f\u043b\u043e\u0439\u043c\u0435\u043d\u0442\u0435_\u0441_\u043f\u043e\u043c\u043e\u0449\u044c\u044e_helm&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:18,&amp;quot;secid&amp;quot;:62,&amp;quot;range&amp;quot;:&amp;quot;43428-44955&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit63&quot; id=&quot;обновление_сертификатов&quot;&gt;Обновление сертификатов&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://github.com/kubernetes/kubeadm/issues/581#issuecomment-471575078&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/kubernetes/kubeadm/issues/581#issuecomment-471575078&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/kubernetes/kubeadm/issues/581#issuecomment-471575078&lt;/a&gt; &lt;br/&gt;

Обновление сертификатов (даже просроченных) на мастерах. &lt;br/&gt;

Проверить валидность:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubeadm certs check-expiration&lt;/pre&gt;

&lt;p&gt;
Обновить все сразу:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubeadm certs renew all&lt;/pre&gt;

&lt;p&gt;
Обновить по одному:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubeadm certs renew apiserver
kubeadm certs renew apiserver-kubelet-client
kubeadm certs renew front-proxy-client
kubeadm certs renew admin.conf&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:20,&amp;quot;secid&amp;quot;:63,&amp;quot;range&amp;quot;:&amp;quot;44956-45524&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit64&quot; id=&quot;просроченный_сертификат_ноды_в_kubeletconf&quot;&gt;Просроченный сертификат ноды в kubelet.conf&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043d\u043e\u0434\u044b \u0432 kubelet.conf&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043d\u044b\u0439_\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442_\u043d\u043e\u0434\u044b_\u0432_kubeletconf&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:20,&amp;quot;secid&amp;quot;:64,&amp;quot;range&amp;quot;:&amp;quot;45525-45607&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit65&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
На ноде не стартует &lt;strong&gt;kubelet&lt;/strong&gt;, при старте в &lt;strong&gt;/var/log/syslog&lt;/strong&gt; такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Nov 22 15:10:08 kub-master01 systemd[1]: Started Kubernetes systemd probe.
Nov 22 15:10:08 kub-master01 kubelet[6927]: I1122 15:10:08.032987    6927 server.go:411] Version: v1.19.3
Nov 22 15:10:08 kub-master01 kubelet[6927]: I1122 15:10:08.033277    6927 server.go:831] Client rotation is on, will bootstrap in background
Nov 22 15:10:08 kub-master01 kubelet[6927]: E1122 15:10:08.035302    6927 bootstrap.go:265] part of the existing bootstrap client certificate is expired: 2020-11-20 08:19:12 +0000 UTC
Nov 22 15:10:08 kub-master01 kubelet[6927]: F1122 15:10:08.035329    6927 server.go:265] failed to run Kubelet: unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory&lt;/pre&gt;

&lt;p&gt;
Проблема усугубляется тем, что это однонодовый кластер и просто сделать &lt;strong&gt;kubeadm join&lt;/strong&gt; не выйдет.  &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:20,&amp;quot;secid&amp;quot;:65,&amp;quot;range&amp;quot;:&amp;quot;45608-46652&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit66&quot; id=&quot;диагностика&quot;&gt;Диагностика&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Вот такой конвейер позвоялет увидеть дату окончания сертификата ноды, который хранится в &lt;strong&gt;kubelet.conf&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cat /etc/kubernetes/kubelet.conf  | grep &amp;#039;client-certificate-data:&amp;#039; | cut -d&amp;#039;:&amp;#039; -f2 | sed &amp;#039;s/\s*//g&amp;#039; | base64 -d | openssl x509 -noout -enddate
notAfter=Nov 20 08:19:12 2020 GMT&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:21,&amp;quot;secid&amp;quot;:66,&amp;quot;range&amp;quot;:&amp;quot;46653-47053&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit67&quot; id=&quot;обновляем_сертификат&quot;&gt;Обновляем сертификат&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Извлекаем сертификат:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cat /etc/kubernetes/kubelet.conf  | grep &amp;#039;client-certificate-data:&amp;#039; | cut -d&amp;#039;:&amp;#039; -f2 | sed &amp;#039;s/\s*//g&amp;#039; | base64 -d &amp;gt; ./node.crt.pem&lt;/pre&gt;

&lt;p&gt;
Извлекаем ключ:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cat /etc/kubernetes/kubelet.conf  | grep &amp;#039;client-key-data:&amp;#039; | cut -d&amp;#039;:&amp;#039; -f2 | sed &amp;#039;s/\s*//g&amp;#039; | base64 -d &amp;gt; ./node.key.pem&lt;/pre&gt;

&lt;p&gt;
Генерируем запрос:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;openssl x509 -x509toreq -signkey ./node.key.pem -in ./node.crt.pem -out ./node.csr &lt;/pre&gt;

&lt;p&gt;
Проверяем запрос:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;openssl req -text -noout -verify -in ./node.csr&lt;/pre&gt;

&lt;p&gt;
Создаем новый сертификат
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;openssl x509 -req -in node.csr -CA /etc/kubernetes/pki/ca.crt -CAkey /etc/kubernetes/pki/ca.key -set_serial 10 -out ./new_node.crt.pem&lt;/pre&gt;

&lt;p&gt;
Кодируем новый сертификат в &lt;strong&gt;base64&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;base64 -w 0 ./new_node.crt.pem&lt;/pre&gt;

&lt;p&gt;
И затем подставляем в поле &lt;strong&gt;client-certificate-data:&lt;/strong&gt; в файлике &lt;strong&gt;/etc/kubernetes/kubelet.conf&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c_\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:21,&amp;quot;secid&amp;quot;:67,&amp;quot;range&amp;quot;:&amp;quot;47054-48044&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit68&quot; id=&quot;kubernetes_ldap_auth&quot;&gt;Kubernetes LDAP Auth&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt;LDAP&lt;/strong&gt;-аутентификацию к кластеру &lt;strong&gt;kubernetes&lt;/strong&gt; можно прикрутить с помощью различных средств, но все они используют один подход и схожие по назначению компоненты:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Служба каталога с поддрежкой протокола LDAP. Например - Active Directory
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Провайдер &lt;strong&gt;OpenID Connect&lt;/strong&gt;, с которым взаимодействует кластер &lt;strong&gt;kubernetes&lt;/strong&gt;. &lt;strong&gt;OIDC&lt;/strong&gt; - это приложение, которое аутентифицирует пользователей в &lt;strong&gt;LDAP&lt;/strong&gt; и сообщает кластеру &lt;strong&gt;Kubernetes&lt;/strong&gt; сведения о нем, чтобы &lt;strong&gt;kubernetes&lt;/strong&gt; мог сгенерировать сертификат.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Некое web-приложение, с которым взаимодействует пользователи. Оно перенапрявляет пользователя на &lt;strong&gt;OpenID Connector&lt;/strong&gt;, получает от кластера &lt;strong&gt;kubernetes&lt;/strong&gt; сертификат и генерирует конфиг для &lt;strong&gt;kubectl&lt;/strong&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Kubernetes LDAP Auth&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;kubernetes_ldap_auth&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:21,&amp;quot;secid&amp;quot;:68,&amp;quot;range&amp;quot;:&amp;quot;48045-49229&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit69&quot; id=&quot;oidc_providers&quot;&gt;OIDC Providers&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Dex
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Keycloak
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;OIDC Providers&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;oidc_providers&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:21,&amp;quot;secid&amp;quot;:69,&amp;quot;range&amp;quot;:&amp;quot;49230-49278&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit70&quot; id=&quot;webapps&quot;&gt;WebApps&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Kuberos - &lt;a href=&quot;https://github.com/negz/kuberos&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/negz/kuberos&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/negz/kuberos&lt;/a&gt; (не поддерживается с 2019 года)
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 GangWay
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Dex K8s Authenticator
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;WebApps&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;webapps&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:21,&amp;quot;secid&amp;quot;:70,&amp;quot;range&amp;quot;:&amp;quot;49279-49436&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit71&quot; id=&quot;keycloak_kubelogin&quot;&gt;Keycloak + kubelogin&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Мне понравился такой вариант - &lt;strong&gt;Keycloak&lt;/strong&gt; в качестве OIDC-провайдера и &lt;strong&gt;kubelogin&lt;/strong&gt; в качестве способа получения токена. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Keycloak + kubelogin&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;keycloak_kubelogin&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:21,&amp;quot;secid&amp;quot;:71,&amp;quot;range&amp;quot;:&amp;quot;49437-49673&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit72&quot; id=&quot;настройка_client_в_keycloak&quot;&gt;Настройка client в keycloak&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В параметры клиента в &lt;strong&gt;keycloak&lt;/strong&gt; в &lt;strong&gt;valid redirect uris&lt;/strong&gt; нужно прописать &lt;strong&gt;&lt;a href=&quot;http://localhost:8000&quot; class=&quot;urlextern&quot; title=&quot;http://localhost:8000&quot; rel=&quot;ugc nofollow&quot;&gt;http://localhost:8000&lt;/a&gt;&lt;/strong&gt; (или *)
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 client \u0432 keycloak&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_client_\u0432_keycloak&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:21,&amp;quot;secid&amp;quot;:72,&amp;quot;range&amp;quot;:&amp;quot;49674-49877&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit73&quot; id=&quot;настройка_кластера_kubernetes&quot;&gt;Настройка кластера kubernetes&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
На каждой мастер-ноде редактируем файл &lt;strong&gt;/etc/kubernetes/manifests/kube-apiserver.yaml&lt;/strong&gt; и добавляем туда такие параметры:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;    - --oidc-ca-file=/etc/ssl/certs/RDLeas_Root_CARDleas-SRV-DC02-CA.pem
    - --oidc-client-id=kubernetes
    - --oidc-groups-claim=groups
    - --oidc-issuer-url=https://sso.rdleas.ru/auth/realms/rdleas
    - --oidc-username-claim=email&lt;/pre&gt;

&lt;p&gt;
Редактируем &lt;strong&gt;Configmap&lt;/strong&gt; и также добавляем туда эти параметры:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl edit cm -n kube-system kubeadm-config&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt;data:
  ClusterConfiguration: |
    apiServer:
      ...
      extraArgs:
        authorization-mode: Node,RBAC
        oidc-ca-file: /etc/ssl/certs/RDLeas_Root_CARDleas-SRV-DC02-CA.pem
        oidc-client-id: kubernetes          
        oidc-groups-claim: groups
        oidc-issuer-url: https://sso.rdleas.ru/auth/realms/rdleas
        oidc-username-claim: email&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 kubernetes&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430_kubernetes&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:21,&amp;quot;secid&amp;quot;:73,&amp;quot;range&amp;quot;:&amp;quot;49878-50904&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit74&quot; id=&quot;настройка_клиентской_машины&quot;&gt;Настройка клиентской машины&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Устанавливаем плагин kubelogin. &lt;br/&gt;

Скачиваем бинарник &lt;a href=&quot;https://github.com/int128/kubelogin/releases&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/int128/kubelogin/releases&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/int128/kubelogin/releases&lt;/a&gt; &lt;br/&gt;

Извлекаем его куда-то в $PATH, например - /usr/local/bin/kubelogin &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
В &lt;strong&gt;~/.kube/config&lt;/strong&gt; прописываем пользователя:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;- name: oidc
  user:
    exec:
      apiVersion: client.authentication.k8s.io/v1beta1
      args:
      - get-token
      - --oidc-issuer-url=https://sso.rdleas.ru/auth/realms/rdleas
      - --oidc-client-id=kubernetes
      command: kubelogin
      env: null
      provideClusterInfo: false&lt;/pre&gt;

&lt;p&gt;
И контекст с его участием:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;- context:
    cluster: sbl-apps-dev
    user: oidc
  name: sbl-apps-dev-oidc&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0439_\u043c\u0430\u0448\u0438\u043d\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:23,&amp;quot;secid&amp;quot;:74,&amp;quot;range&amp;quot;:&amp;quot;50905-51721&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit75&quot; id=&quot;назначение_привилегий_в_кластере&quot;&gt;Назначение привилегий в кластере&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Название групп в манифестах должно быть точно таким же как и в токене. В моей инсталляции в начале названия группы есть слеш. &lt;br/&gt;

Права на неймспейс (в даннос лучае - default) выдаем так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;NAMESPACE=default
GROUP=&amp;#039;/Kubernetes_Default_Ns_Admins&amp;#039;
kubectl apply -f - &amp;lt;&amp;lt;EOF
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: ${NAMESPACE}-admins
  namespace: ${NAMESPACE}
rules:
- apiGroups:
  - &amp;#039;*&amp;#039;
  resources:
  - &amp;#039;*&amp;#039;
  verbs:
  - &amp;#039;*&amp;#039;
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: kubernetes-${NAMESPACE}-namespace-admins
  namespace: ${NAMESPACE}
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: ${NAMESPACE}-admins
subjects:
- apiGroup: rbac.authorization.k8s.io
  kind: Group
  name: ${GROUP}
EOF&lt;/pre&gt;

&lt;p&gt;
Права на весь кластер выдаем так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;GROUP=&amp;#039;/Kubernetes_Cluster_Admins&amp;#039;
kubectl apply -f - &amp;lt;&amp;lt;EOF
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: cluster-admins-oidc
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- apiGroup: rbac.authorization.k8s.io
  kind: Group
  name: ${GROUP}
EOF&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0439 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435_\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0439_\u0432_\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:25,&amp;quot;secid&amp;quot;:75,&amp;quot;range&amp;quot;:&amp;quot;51722-53127&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit76&quot; id=&quot;разрешение_проблем&quot;&gt;Разрешение проблем&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Поглядеть текущий токен можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubelogin get-token --oidc-issuer-url=https://sso.rdleas.ru/auth/realms/rdleas --oidc-client-id=kubernetes&lt;/pre&gt;

&lt;p&gt;
Расшифровать его (и увидеть список групп в нем) можно тут: &lt;a href=&quot;https://jwt.io/&quot; class=&quot;urlextern&quot; title=&quot;https://jwt.io/&quot; rel=&quot;ugc nofollow&quot;&gt;https://jwt.io/&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435_\u043f\u0440\u043e\u0431\u043b\u0435\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:76,&amp;quot;range&amp;quot;:&amp;quot;53128-53471&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit77&quot; id=&quot;invalid_bearer_token_oidcemail_not_verified&quot;&gt;invalid bearer token, oidc: email not verified&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
В логе &lt;strong&gt;kube-apiserver&lt;/strong&gt; ошибка
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Unable to authenticate the request due to an error: [invalid bearer token, oidc: email not verified]&lt;/pre&gt;

&lt;p&gt;
В токене такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;quot;email_verified&amp;quot;: false&lt;/pre&gt;

&lt;p&gt;
Нужно выключить верификацию email на keycloak (поле email_verified не будет появляться в токене). &lt;br/&gt;

В &lt;strong&gt;Keycloak&lt;/strong&gt; идем: &lt;strong&gt;Client Scopes&lt;/strong&gt; → &lt;strong&gt;Email&lt;/strong&gt; → &lt;strong&gt;Mappers&lt;/strong&gt; и удаляем &lt;strong&gt;Email verified&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
Поглядеть подробный лог можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl --token=$token --server=https://192.168.1.2:6443 --insecure-skip-tls-verify get po --v=10&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;invalid bearer token, oidc: email not verified&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;invalid_bearer_token_oidcemail_not_verified&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:77,&amp;quot;range&amp;quot;:&amp;quot;53472-54161&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit78&quot; id=&quot;dex_dex_k8s_authenticator&quot;&gt;Dex + Dex K8s authenticator&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://uni.dtln.ru/digest/autentifikaciya-v-kubernetes-s-pomoshchyu-dex-prikruchivaem-ldap&quot; class=&quot;urlextern&quot; title=&quot;https://uni.dtln.ru/digest/autentifikaciya-v-kubernetes-s-pomoshchyu-dex-prikruchivaem-ldap&quot; rel=&quot;ugc nofollow&quot;&gt;https://uni.dtln.ru/digest/autentifikaciya-v-kubernetes-s-pomoshchyu-dex-prikruchivaem-ldap&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://habr.com/ru/post/436238/&quot; class=&quot;urlextern&quot; title=&quot;https://habr.com/ru/post/436238/&quot; rel=&quot;ugc nofollow&quot;&gt;https://habr.com/ru/post/436238/&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://habr.com/ru/company/dataline/blog/497482/&quot; class=&quot;urlextern&quot; title=&quot;https://habr.com/ru/company/dataline/blog/497482/&quot; rel=&quot;ugc nofollow&quot;&gt;https://habr.com/ru/company/dataline/blog/497482/&lt;/a&gt; &lt;br/&gt;

&lt;a href=&quot;https://github.com/mintel/dex-k8s-authenticator&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/mintel/dex-k8s-authenticator&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/mintel/dex-k8s-authenticator&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Dex + Dex K8s authenticator&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;dex_dex_k8s_authenticator&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:78,&amp;quot;range&amp;quot;:&amp;quot;54162-54437&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit79&quot; id=&quot;keycloak_gangway&quot;&gt;Keycloak + Gangway&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://github.com/heptiolabs/gangway&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/heptiolabs/gangway&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/heptiolabs/gangway&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Keycloak + Gangway&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;keycloak_gangway&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:79,&amp;quot;range&amp;quot;:&amp;quot;54438-54510&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit80&quot; id=&quot;dex_gangway&quot;&gt;Dex + GangWay&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://github.com/alexbrand/gangway-dex-tutorial&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/alexbrand/gangway-dex-tutorial&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/alexbrand/gangway-dex-tutorial&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Dex + GangWay&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;dex_gangway&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:80,&amp;quot;range&amp;quot;:&amp;quot;54511-54587&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit81&quot; id=&quot;jwt-токены_для_аутентификации&quot;&gt;JWT-Токены для аутентификации&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://github.com/negz/kubehook&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/negz/kubehook&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/negz/kubehook&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;JWT-\u0422\u043e\u043a\u0435\u043d\u044b \u0434\u043b\u044f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;jwt-\u0442\u043e\u043a\u0435\u043d\u044b_\u0434\u043b\u044f_\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:81,&amp;quot;range&amp;quot;:&amp;quot;54588-54685&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit82&quot; id=&quot;ссылки&quot;&gt;Ссылки&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.digitalocean.com/community/tutorials/how-to-create-a-kubernetes-cluster-using-kubeadm-on-ubuntu-18-04&quot; class=&quot;urlextern&quot; title=&quot;https://www.digitalocean.com/community/tutorials/how-to-create-a-kubernetes-cluster-using-kubeadm-on-ubuntu-18-04&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.digitalocean.com/community/tutorials/how-to-create-a-kubernetes-cluster-using-kubeadm-on-ubuntu-18-04&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0441\u044b\u043b\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0441\u044b\u043b\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:82,&amp;quot;range&amp;quot;:&amp;quot;54686-54827&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit83&quot; id=&quot;отмена_удаления_persistentvolume&quot;&gt;Отмена удаления PersistentVolume&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Если так случайно вышло, что вы удалили &lt;strong&gt;PersistentVolume&lt;/strong&gt;, то не отчаивайтесь! Он будет находитьтся в состоянии &lt;strong&gt;Terminating&lt;/strong&gt; до тех пор, пока существуют &lt;strong&gt;pod&lt;/strong&gt;, куда он смонтирован и &lt;strong&gt;PersistentVolumeClaim&lt;/strong&gt;, которая породила этот PV и удаление можно отменить. &lt;br/&gt;

На помощь приходит специальная утилитка: &lt;a href=&quot;https://github.com/jianz/k8s-reset-terminating-pv&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/jianz/k8s-reset-terminating-pv&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/jianz/k8s-reset-terminating-pv&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;git clone https://github.com/jianz/k8s-reset-terminating-pv.git
cd k8s-reset-terminating-pv
go build -o resetpv&lt;/pre&gt;

&lt;p&gt;
Собранный бинарник: &lt;a href=&quot;https://wiki.autosys.tk/_media/devops/resetpv.tar.gz&quot; class=&quot;media mediafile mf_gz&quot; title=&quot;devops:resetpv.tar.gz (10.6 MB)&quot;&gt;resetpv.tar.gz&lt;/a&gt; &lt;br/&gt;

Заходим на мастер-ноду, архивируем сертификаты и смотрим какой сертификат за что отвечает:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;ssh user@master-node
sudo -H tar -cvzf ~/etcd-pki.tar.gz /etc/kubernetes/pki/etcd
sudo docker  ps --no-trunc | grep etcd
exit&lt;/pre&gt;

&lt;p&gt;
В выводе среди всего прочего будет такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;--advertise-client-urls=https://10.77.68.1:2379
--cert-file=/etc/kubernetes/pki/etcd/server.crt
--key-file=/etc/kubernetes/pki/etcd/server.key
--trusted-ca-file=/etc/kubernetes/pki/etcd/ca.crt&lt;/pre&gt;

&lt;p&gt;
В вашей инсталляции имена, пути и порты могут быть иными. &lt;br/&gt;

И забираем с мастер-ноды кластера архив с сертификатами, которые необходимы для подключения к &lt;strong&gt;etcd&lt;/strong&gt; кластера:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scp user@master-node:/home/user/etcd-pki.tar.gz ./
tar -xvf ./etcd-pki.tar.gя
mv ./etc/kubernetes/pki/etcd/* ./&lt;/pre&gt;

&lt;p&gt;
И дальше применяем утилиту:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./resetpv --etcd-ca ./ca.crt --etcd-cert ./server.crt --etcd-key ./server.key --etcd-host 10.77.68.1 --etcd-port 2379 pv-name&lt;/pre&gt;

&lt;p&gt;
Если вдруг так вышло, что вы удалили все PV в кластере (как я - хотел удалить &lt;strong&gt;pvc&lt;/strong&gt; в неймспейсе но просто опечатался и вместо &lt;strong&gt;pvc&lt;/strong&gt; ввел &lt;strong&gt;pv&lt;/strong&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl delete -n namespace pv --all&lt;/pre&gt;

&lt;p&gt;
то чтобы отменить удаление всех PV делаем так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;PVs=`kubectl get pv | grep Terminating | awk &amp;#039;{print $1}&amp;#039; | grep -v NAME`
for pv in $PVs; do ./resetpv --etcd-ca ./ca.crt --etcd-cert ./server.crt --etcd-key ./server.key --etcd-host 10.77.68.1 --etcd-port 2379 $pv; done&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0442\u043c\u0435\u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f PersistentVolume&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0442\u043c\u0435\u043d\u0430_\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f_persistentvolume&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:27,&amp;quot;secid&amp;quot;:83,&amp;quot;range&amp;quot;:&amp;quot;54828-57415&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit84&quot; id=&quot;распределить_поды_деплоймента_по_разным_нодам_кластера&quot;&gt;Распределить поды деплоймента по разным нодам кластера&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-service
  labels:
    app: my-service
spec:
  replicas: 2
  selector:
    matchLabels:
      app: my-service
  template:
    metadata:
      labels:
        app: my-service
    spec:
      topologySpreadConstraints:
      - maxSkew: 1
        topologyKey: kubernetes.io/hostname
        whenUnsatisfiable: DoNotSchedule
        labelSelector:
          matchLabels:
            app: my-service&lt;/pre&gt;

&lt;p&gt;
Либо:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpressions:
              - key: app
                operator: In
                values:
                - {{ .Release.Name }}-logstash
            topologyKey: kubernetes.io/hostname&lt;/pre&gt;

&lt;p&gt;
Разница между этими подходами описана тут: &lt;a href=&quot;https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/#comparison-with-podaffinity-podantiaffinity&quot; class=&quot;urlextern&quot; title=&quot;https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/#comparison-with-podaffinity-podantiaffinity&quot; rel=&quot;ugc nofollow&quot;&gt;https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/#comparison-with-podaffinity-podantiaffinity&lt;/a&gt; &lt;br/&gt;

В двух словах - &lt;strong&gt;podAntiAffinity&lt;/strong&gt; более старый и простой способ и в будущем - предпочтительно пользоваться &lt;strong&gt;topologySpreadConstraints&lt;/strong&gt;, который поддерживает не только распределение по нодам, но и по зонам доступности в облаках.  
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u043e\u0434\u044b \u0434\u0435\u043f\u043b\u043e\u0439\u043c\u0435\u043d\u0442\u0430 \u043f\u043e \u0440\u0430\u0437\u043d\u044b\u043c \u043d\u043e\u0434\u0430\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c_\u043f\u043e\u0434\u044b_\u0434\u0435\u043f\u043b\u043e\u0439\u043c\u0435\u043d\u0442\u0430_\u043f\u043e_\u0440\u0430\u0437\u043d\u044b\u043c_\u043d\u043e\u0434\u0430\u043c_\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:28,&amp;quot;secid&amp;quot;:84,&amp;quot;range&amp;quot;:&amp;quot;57416-58948&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit85&quot; id=&quot;headless_services_для_stafullset&quot;&gt;Headless Services для Stafullset&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
И другие вопросы про то как давать доступ к индивидуальным подам реплик стейтфуллсетов. &lt;br/&gt;

&lt;a href=&quot;https://www.tigera.io/blog/exposing-statefulsets-in-kubernetes/&quot; class=&quot;urlextern&quot; title=&quot;https://www.tigera.io/blog/exposing-statefulsets-in-kubernetes/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.tigera.io/blog/exposing-statefulsets-in-kubernetes/&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Обычно сервисы используются в k8s для балансировки запросов на все реплики микросервиса, однако, в слуаче со statefull-приложениями может понадобиться доступ к конкретной реплике. Для этого в k8s существуют Statefullset&amp;#039;ы и связанные с ними Headless-сервисы. &lt;br/&gt;

Что такое &lt;strong&gt;Statefullset&lt;/strong&gt; - это способ создать набор именованных реплик сервиса, каждая из которых будет сохранять свое имя и после перезапуска. &lt;br/&gt;

Что такое &lt;strong&gt;Headless Service&lt;/strong&gt; - это сервис, который НЕ имеет адреса в кластере (&lt;strong&gt;ClusterIP: None&lt;/strong&gt;) и НЕ выполняет балансировку подключний по эндпоинтам, а просто является списком эндпоинтов для именованных реплик, управляемых Statefullset&amp;#039;ом. А для доступа к именованным репликам в &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt; кластера генерируются имена:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;StatefulSet&amp;gt;-&amp;lt;Ordinal&amp;gt;.&amp;lt;Service&amp;gt;.&amp;lt;Namespace&amp;gt;.svc.cluster.local&lt;/pre&gt;

&lt;p&gt;
например:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;app-0.myapp.default.svc.cluster.local.&lt;/pre&gt;

&lt;p&gt;
Вопрос - а как же можно опубликовать именованную реплику в составе Statefullset&amp;#039;а, например через Ingress?? Ведь для этого надо как-то сослаться на сервис, который будет связан с портом на конкретной реплике! &lt;br/&gt;

Все просто - каждый под, управляеый Statefullset&amp;#039;ом имеет уникальну метку (примерно такую - &lt;strong&gt;statefulset.kubernetes.io/pod-name: app-0&lt;/strong&gt; ), которую можно использовать в качестве селектора в сервисе:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: v1
kind: Service
metadata:
  name: app-0
spec:
  type: LoadBalancer
  selector:
    statefulset.kubernetes.io/pod-name: app-0
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Headless Services \u0434\u043b\u044f Stafullset&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;headless_services_\u0434\u043b\u044f_stafullset&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:30,&amp;quot;secid&amp;quot;:85,&amp;quot;range&amp;quot;:&amp;quot;58949-61475&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit86&quot; id=&quot;как_скопировать_секрет_из_одного_неймспейса_в_другой&quot;&gt;Как скопировать секрет из одного неймспейса в другой&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get secret my-tlssecret --namespace=nginx-ns -o yaml | sed &amp;#039;s/namespace: .*/namespace: default/&amp;#039; | kubectl apply -f -&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u043a\u0440\u0435\u0442 \u0438\u0437 \u043e\u0434\u043d\u043e\u0433\u043e \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c_\u0441\u0435\u043a\u0440\u0435\u0442_\u0438\u0437_\u043e\u0434\u043d\u043e\u0433\u043e_\u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430_\u0432_\u0434\u0440\u0443\u0433\u043e\u0439&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:31,&amp;quot;secid&amp;quot;:86,&amp;quot;range&amp;quot;:&amp;quot;61476-61716&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit87&quot; id=&quot;список_и_спецификации_сustomresourcedefinitions&quot;&gt;Список и спецификации СustomResourceDefinitions&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Список существующих в кластере &lt;strong&gt;Сustom Resource Definitions&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get customresourcedefinitions&lt;/pre&gt;

&lt;p&gt;
или
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl get crd&lt;/pre&gt;

&lt;p&gt;
ну и посмотреть спецификацию:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl describe crd &amp;lt;crd_name&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u0438\u0441\u043e\u043a \u0438 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0421ustomResourceDefinitions&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u0438\u0441\u043e\u043a_\u0438_\u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438_\u0441ustomresourcedefinitions&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:31,&amp;quot;secid&amp;quot;:87,&amp;quot;range&amp;quot;:&amp;quot;61717-62046&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit88&quot; id=&quot;плавный_рестарт_подиков_в_деплойментах&quot;&gt;Плавный рестарт подиков в деплойментах&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В общем случае плавно рестартить можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kubectl rollout restart deployment my-app&lt;/pre&gt;

&lt;p&gt;
А для всех деплойментов в неймспейсе:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;ns=namespacename; for deployment in `kubectl get deployment -n ${ns} | grep -v NAME | awk &amp;#039;{print $1}&amp;#039;`; do kubectl -n ${ns} rollout restart deployment ${deployment}; done&lt;/pre&gt;

&lt;p&gt;
Плавный рестарт всех подиков во всех деплойментах во всех неймспейсах:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;for ns in `kubectl get ns | grep -v NAME | awk &amp;#039;{print $1}&amp;#039;`; do for deployment in `kubectl get deployment -n ${ns} | grep -v NAME | awk &amp;#039;{print $1}&amp;#039;`; do kubectl -n ${ns} rollout restart deployment ${deployment}; done; done &lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043b\u0430\u0432\u043d\u044b\u0439 \u0440\u0435\u0441\u0442\u0430\u0440\u0442 \u043f\u043e\u0434\u0438\u043a\u043e\u0432 \u0432 \u0434\u0435\u043f\u043b\u043e\u0439\u043c\u0435\u043d\u0442\u0430\u0445&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043b\u0430\u0432\u043d\u044b\u0439_\u0440\u0435\u0441\u0442\u0430\u0440\u0442_\u043f\u043e\u0434\u0438\u043a\u043e\u0432_\u0432_\u0434\u0435\u043f\u043b\u043e\u0439\u043c\u0435\u043d\u0442\u0430\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:31,&amp;quot;secid&amp;quot;:88,&amp;quot;range&amp;quot;:&amp;quot;62047-62865&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit89&quot; id=&quot;etcresolveconf_в_подиках&quot;&gt;/etc/resolve.conf в подиках&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
При старте подика формируется файл &lt;strong&gt;/etc/resolve.conf&lt;/strong&gt; в котором прописано как будут резолвиться имена. &lt;br/&gt;

Важным параметром является &lt;strong&gt;options ndots:5&lt;/strong&gt; &lt;br/&gt;

Этот параметр задает то, сколько МИНИМУМ точек должно быть точек в имени, чтобы рассмастривать его как FQDN и не пытаться искать это имя с суффиксами из &lt;strong&gt;search&lt;/strong&gt;. &lt;br/&gt;

Изменить его значение можно с помощью специального раздела конфигурации подика:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;apiVersion: v1
kind: Pod
metadata:
  namespace: default
  name: dns-example
spec:
  containers:
    - name: test
      image: nginx
  dnsConfig:
    options:
      - name: ndots
        value: &amp;quot;1&amp;quot;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\/etc\/resolve.conf \u0432 \u043f\u043e\u0434\u0438\u043a\u0430\u0445&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;etcresolveconf_\u0432_\u043f\u043e\u0434\u0438\u043a\u0430\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:31,&amp;quot;secid&amp;quot;:89,&amp;quot;range&amp;quot;:&amp;quot;62866-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Thu, 30 Nov 2023 08:03:34 +0000</pubDate>
        </item>
        <item>
            <title>ноут</title>
            <link>https://wiki.autosys.tk/home/%D0%BD%D0%BE%D1%83%D1%82</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;нужно_бы_обновить_ноут&quot;&gt;Нужно бы обновить ноут&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Требования:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Матрица - 15-16, не хуже FullHD.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Металлический корпус
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Подсветка клавы
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Проц - до 20 ватт.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Цена - ~$1000 
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0443\u0436\u043d\u043e \u0431\u044b \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u043e\u0443\u0442&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0443\u0436\u043d\u043e_\u0431\u044b_\u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c_\u043d\u043e\u0443\u0442&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-264&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;интересные_модели&quot;&gt;Интересные модели&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 ASUS ProArt P16 OLED AI Laptop H7606WI-ME123W, AMD Ryzen AI R9-HX370/64GB RAM/2TB SSD/NVIDIA GeForce RTX 4070 8GB/16 Inch 4K OLED Touch Screen/Win11 with Copilot Key - Nano Black - Backpack Inlcuded 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 ASUS ROG Zephyrus G16
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 ASUS Zenbook S 16 (UM5606W) &lt;a href=&quot;https://3dnews.ru/1114373/obzor-asus-zenbook-s-16-um5606w&quot; class=&quot;urlextern&quot; title=&quot;https://3dnews.ru/1114373/obzor-asus-zenbook-s-16-um5606w&quot; rel=&quot;ugc nofollow&quot;&gt;https://3dnews.ru/1114373/obzor-asus-zenbook-s-16-um5606w&lt;/a&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://forum.ixbt.com/topic.cgi?id=17:56326&quot; class=&quot;urlextern&quot; title=&quot;https://forum.ixbt.com/topic.cgi?id=17:56326&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.ixbt.com/topic.cgi?id=17:56326&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;a href=&quot;https://www.asus.com/ru/Laptops/ASUS-VivoBook-S15-M533IA/Tech-Specs/&quot; class=&quot;urlextern&quot; title=&quot;https://www.asus.com/ru/Laptops/ASUS-VivoBook-S15-M533IA/Tech-Specs/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.asus.com/ru/Laptops/ASUS-VivoBook-S15-M533IA/Tech-Specs/&lt;/a&gt; - Ryzen 4000. Пока нет в продаже, но скоро будет!! Экран 15,6, батарея - 3 ячейки, металлический корпус, подсветка клавы, клава без цифрового блока!!! Судя по всему без цифрового блока иде модификация &lt;strong&gt;BQ159T&lt;/strong&gt;. Например - &lt;a href=&quot;https://www.notik.ru/goods/notebooks-asus-vivobook-s15-m533ia-bq159t-green-74836.htm&quot; class=&quot;urlextern&quot; title=&quot;https://www.notik.ru/goods/notebooks-asus-vivobook-s15-m533ia-bq159t-green-74836.htm&quot; rel=&quot;ugc nofollow&quot;&gt;M533IA-BQ159T 90NB0RF1-M02920&lt;/a&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;a href=&quot;https://www.lenovo.com/us/en/laptops/ideapad/ideapad-500-series/IdeaPad-5-14ARE05/p/81YM0000US&quot; class=&quot;urlextern&quot; title=&quot;https://www.lenovo.com/us/en/laptops/ideapad/ideapad-500-series/IdeaPad-5-14ARE05/p/81YM0000US&quot; rel=&quot;ugc nofollow&quot;&gt;IdeaPad 5 (14”, AMD) Laptop&lt;/a&gt; - AMD® Ryzen™ 5 4500U Processor, 14.0“ FHD (1920 x 1080) IPS, anti-glare, 300 nits, Keyboard - Backlit. На презентациях &lt;a href=&quot;https://www.lenovo.com/us/en/laptops/ideapad/ideapad-500-series/IdeaPad-5-15ARE05/p/88IPS501393&quot; class=&quot;urlextern&quot; title=&quot;https://www.lenovo.com/us/en/laptops/ideapad/ideapad-500-series/IdeaPad-5-15ARE05/p/88IPS501393&quot; rel=&quot;ugc nofollow&quot;&gt; была видна IdeaPad 5 (15”, AMD) Laptop модель на райзене&lt;/a&gt; - батарея - 3 ячейки, корпус - пластик. Она появилась в прайсах - &lt;a href=&quot;https://www.novo-market.ru/products/noutbuki-i-ultrabuki/notebook-ideapad/series-ideapad-5/ideapad-5-15-amd/81yq0017ru.html&quot; class=&quot;urlextern&quot; title=&quot;https://www.novo-market.ru/products/noutbuki-i-ultrabuki/notebook-ideapad/series-ideapad-5/ideapad-5-15-amd/81yq0017ru.html&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.novo-market.ru/products/noutbuki-i-ultrabuki/notebook-ideapad/series-ideapad-5/ideapad-5-15-amd/81yq0017ru.html&lt;/a&gt;.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Xiaomi RedmiBook 16&lt;/strong&gt; - должен быть презентован 26 мая. Экран - 16,1 и Ryzen 4500U или 4700U - очень неплохо. Правда, цена скорее всего будет больше штуки баксов. Память распаяна, диск M.2 можно заменить. Подсветки клавы и вебкамеры НЕТ. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;MSI Bravo 15&lt;/strong&gt; - проц серии H. Подсветка есть, нумпада - нет. Экран - 15.6. Два слота M2! Два слота памяти (до 64Gb)! Фактически - игровой.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Huawei MateBook D 2020 Ryzen Edition&lt;/strong&gt; - Оба размера без цифрового блока!!! D15 - 15 дюймов. &lt;a href=&quot;https://www.ixbt.com/news/2020/07/30/huawei-matebook-d-2020-ryzen-edition-7-amd-ryzen-4000.html&quot; class=&quot;urlextern&quot; title=&quot;https://www.ixbt.com/news/2020/07/30/huawei-matebook-d-2020-ryzen-edition-7-amd-ryzen-4000.html&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.ixbt.com/news/2020/07/30/huawei-matebook-d-2020-ryzen-edition-7-amd-ryzen-4000.html&lt;/a&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;HP ProBook 455 G7&lt;/strong&gt; - (&lt;a href=&quot;https://www.nix.ru/autocatalog/hp/hp_compaq_notebook/HP-Probook-455-G7-2D235EA-ACB-Ryzen-5-4500U-8-256SSD-WiFi-BT-Win10Pro-156-185-kg_469086.html&quot; class=&quot;urlextern&quot; title=&quot;https://www.nix.ru/autocatalog/hp/hp_compaq_notebook/HP-Probook-455-G7-2D235EA-ACB-Ryzen-5-4500U-8-256SSD-WiFi-BT-Win10Pro-156-185-kg_469086.html&quot; rel=&quot;ugc nofollow&quot;&gt;описание&lt;/a&gt;, &lt;a href=&quot;https://www.notebookcheck.net/HP-ProBook-455-G7-Laptop-in-Review-Faster-Performance-Thanks-to-Zen2.480566.0.html&quot; class=&quot;urlextern&quot; title=&quot;https://www.notebookcheck.net/HP-ProBook-455-G7-Laptop-in-Review-Faster-Performance-Thanks-to-Zen2.480566.0.html&quot; rel=&quot;ugc nofollow&quot;&gt;обзор&lt;/a&gt;)Экран 15, есть цифровой блок. Два слота RAM, есть СЕТЬ, можно поставить 2,5`` HDD, подсветка клавы - есть (опционально), заявлена влагозащита для клавы, матовый экран! Максимальная из продающихся у нас конфигов - 175W8EA, Вот не очень навороченная: Ноутбук HP ProBook 455 G7 15.6” FHD/ Ryzen 5 4500U/ 8GB/ 256GB SSD/ noODD/ WiFi/ BT/ Win10Pro/ Silver (2D235EA#ACB). Магаз на Люсиновской: &lt;a href=&quot;https://www.tfk.ru&quot; class=&quot;urlextern&quot; title=&quot;https://www.tfk.ru&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.tfk.ru&lt;/a&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Honor MagicBook 14 и MagicBook 15 2020 Ryzen Editon&lt;/strong&gt; - &lt;a href=&quot;https://3dnews.ru/1015875?from=related-grid&amp;amp;from-source=1017043&quot; class=&quot;urlextern&quot; title=&quot;https://3dnews.ru/1015875?from=related-grid&amp;amp;from-source=1017043&quot; rel=&quot;ugc nofollow&quot;&gt;новость&lt;/a&gt;. Экран 15.6, без цифрового блока, хороший экран.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Honor MagicBook Pro 2020 Ryzen Edition&lt;/strong&gt; &lt;a href=&quot;https://3dnews.ru/1015860&quot; class=&quot;urlextern&quot; title=&quot;https://3dnews.ru/1015860&quot; rel=&quot;ugc nofollow&quot;&gt;новость&lt;/a&gt; Экран 16.1, без цифрового блока, процы - 4000H, выдвижная веб-камера, хороший экран.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
&lt;a href=&quot;https://m.pleer.ru/product_742568_MSI_Bravo_15_A4DDR_029RU_9S7_16WK12_029_AMD_Ryzen_7_4800H_29GHz16384Mb512Gb_SSDAMD_Radeon_RX_5500M_4096MbWi_FiBluetooth1561920x1080Windows_10_64_bit.html&quot; class=&quot;urlextern&quot; title=&quot;https://m.pleer.ru/product_742568_MSI_Bravo_15_A4DDR_029RU_9S7_16WK12_029_AMD_Ryzen_7_4800H_29GHz16384Mb512Gb_SSDAMD_Radeon_RX_5500M_4096MbWi_FiBluetooth1561920x1080Windows_10_64_bit.html&quot; rel=&quot;ugc nofollow&quot;&gt;https://m.pleer.ru/product_742568_MSI_Bravo_15_A4DDR_029RU_9S7_16WK12_029_AMD_Ryzen_7_4800H_29GHz16384Mb512Gb_SSDAMD_Radeon_RX_5500M_4096MbWi_FiBluetooth1561920x1080Windows_10_64_bit.html&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Поиск по обзорам: &lt;a href=&quot;https://www.notebookcheck.net/Laptop_Search.8223.0.html#results&quot; class=&quot;urlextern&quot; title=&quot;https://www.notebookcheck.net/Laptop_Search.8223.0.html#results&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.notebookcheck.net/Laptop_Search.8223.0.html#results&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435_\u043c\u043e\u0434\u0435\u043b\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;265-4466&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;лидеры_рейтинга&quot;&gt;Лидеры рейтинга&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Honor MagicBook Pro 2020 Ryzen Edition&lt;/strong&gt; - Плюсы - хороший экран 16.1, отличная клава (без цифрового блока и с подсветкой), хорошая батарея - 56Вт/ч. Минусы - НЕ апгрейдабелен (память не добавить), горячие процы H(лечится программно), нет SD-ридера и нет сети (лечится внешним USB-адаптером), кнопки со стрелками маленькие (но больше, чем у HP).
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;HP ProBook 455 G7&lt;/strong&gt; - Плюсы - апгрейдабелен (два слота RAM, отсек 2,5 HDD), на борту есть сеть RJ-45, есть SD-ридер, уже есть в продаже в России. Минусы - клавиатура (маленькие кнопки со стрелками, есть цифровой блок), не очень качественный экран, батарея - 45Вт/ч.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Honor MagicBook 14 и MagicBook 15 2020 Ryzen Editon&lt;/strong&gt; - Плюсы - клава без цифрового блока, цена. Минусы - экран хуче, чем у &lt;strong&gt;MagicBook Pro&lt;/strong&gt;, НЕ апгрейдабелен (в предыдущей версии память распаяна, M.2 SSD можно заменить, а также есть??? место для 2,5HDD, но нет SATA-разъема для него). Нужно уточнить - вебкамера и подсветка клавы (у предыдущей версии не было подсветки клавы - &lt;a href=&quot;https://www.notebookcheck.net/Honor-MagicBook-15-in-review-Ryzen-5-in-a-stylish-suit.481543.0.html&quot; class=&quot;urlextern&quot; title=&quot;https://www.notebookcheck.net/Honor-MagicBook-15-in-review-Ryzen-5-in-a-stylish-suit.481543.0.html&quot; rel=&quot;ugc nofollow&quot;&gt;вот обзор предыдущей версии на ryzen 3000&lt;/a&gt;).
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041b\u0438\u0434\u0435\u0440\u044b \u0440\u0435\u0439\u0442\u0438\u043d\u0433\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043b\u0438\u0434\u0435\u0440\u044b_\u0440\u0435\u0439\u0442\u0438\u043d\u0433\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;4467-6303&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;honor_magicbook_pro_2020&quot;&gt;Honor Magicbook Pro 2020&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В итоге мне приехал этот ноут. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Honor Magicbook Pro 2020&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;honor_magicbook_pro_2020&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;6304-6401&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;что_заработало_и_не_заработало_в_ubuntu_linux_2020&quot;&gt;Что заработало и не заработало в Ubuntu Linux 2020&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Я пользуюсь Ubuntu Linux 2020 (server + KDE). &lt;br/&gt;

Я переносил систему со старого ноута, который загружался с BIOS. Выполнить перенос по &lt;a href=&quot;https://blog.getreu.net/projects/legacy-to-uefi-boot/&quot; class=&quot;urlextern&quot; title=&quot;https://blog.getreu.net/projects/legacy-to-uefi-boot/&quot; rel=&quot;ugc nofollow&quot;&gt;https://blog.getreu.net/projects/legacy-to-uefi-boot/&lt;/a&gt; стандартным мануалам не удалось. В конце-концов я просто установил Ubuntu 18.04, перенес &lt;strong&gt;root&lt;/strong&gt;, и затем починил настроил загрузку (GRUB и initramfs). Это оказалось проще. &lt;br/&gt;

Сходу не заработал &lt;strong&gt;sddm&lt;/strong&gt; - он просто не показывал экран входа, хотя сервис работал и вручную (startx) иксы запускались, но почему-то только от &lt;strong&gt;root&lt;/strong&gt;. Дело оказалось в старом ядре (5.4.0.49), хотя, возможно дело было в параметрах запуска ядра. Обновив ядро до &lt;strong&gt;5.8.11&lt;/strong&gt; - я сразу всё починил! &lt;br/&gt;

Но! Даже после обновления ядра не заработал тачпад (&lt;strong&gt;ELAN2204:00 04F3:30F5 Touchpad&lt;/strong&gt;), хотя при загрузке с &lt;strong&gt;LiveCD Ubuntu 18.04.1&lt;/strong&gt; тачпад работал! &lt;br/&gt;

Причиной оказались параметры в строке запуска ядра:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;quot;acpi_osi=! \&amp;quot;acpi_osi=Windows 2009\&amp;quot;&amp;quot;&lt;/pre&gt;

&lt;p&gt;
как только я удалил их - тачпад заработал! &lt;br/&gt;

Также показалось, что не работают функциональные кнопки (которые с Fn), но оказалось, что Fn просто переключает и удерживать ее как раньше не надо. &lt;br/&gt;

По оборудованию много информации тут: &lt;a href=&quot;https://github.com/nekr0z/linux-on-huawei-matebook-13-2019&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/nekr0z/linux-on-huawei-matebook-13-2019&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/nekr0z/linux-on-huawei-matebook-13-2019&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0427\u0442\u043e \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0438 \u043d\u0435 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0432 Ubuntu Linux 2020&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0447\u0442\u043e_\u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e_\u0438_\u043d\u0435_\u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e_\u0432_ubuntu_linux_2020&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;6402-8401&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;pc_manager_под_linux&quot;&gt;PC Manager под Linux&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://4pda.ru/forum/index.php?showtopic=998908&amp;amp;view=findpost&amp;amp;p=101195158&quot; class=&quot;urlextern&quot; title=&quot;https://4pda.ru/forum/index.php?showtopic=998908&amp;amp;view=findpost&amp;amp;p=101195158&quot; rel=&quot;ugc nofollow&quot;&gt;https://4pda.ru/forum/index.php?showtopic=998908&amp;amp;view=findpost&amp;amp;p=101195158&lt;/a&gt; &lt;br/&gt;

Во-первых - ядро должно быть не старее 5.5 (у меня 5.8). &lt;br/&gt;

Проверить что соответствующий модуль есть можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;lsmod | grep huawei_wmi&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;PC Manager \u043f\u043e\u0434 Linux&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;pc_manager_\u043f\u043e\u0434_linux&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;8402-8732&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit7&quot; id=&quot;battery_protection&quot;&gt;Battery protection&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Для Настройки параметров &lt;strong&gt;Battery protection&lt;/strong&gt; (ограничивает максимальный уровень заряда батареи) нужно установить &lt;a href=&quot;https://github.com/nekr0z/matebook-applet&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/nekr0z/matebook-applet&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/nekr0z/matebook-applet&lt;/a&gt; или командами:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo sh -c &amp;quot;echo &amp;#039;70 90&amp;#039; &amp;gt; /sys/bus/platform/devices/huawei-wmi/charge_control_thresholds&amp;quot;&lt;/pre&gt;

&lt;p&gt;
Файл лежит по пути &lt;strong&gt;/sys/bus/platform/devices/huawei-wmi/charge_control_thresholds&lt;/strong&gt; &lt;br/&gt;

Режим задаётся двумя числами от 0 до 100 через пробел. &lt;br/&gt;

Второе отвечает за максимальный уровень заряда. За что отвечает первое пока не разобрался, либо какой-то минимальный порог, либо порог отключения быстрой зарядки. &lt;br/&gt;

Значения в соответствии с профилями PC Manager:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Дом&lt;/strong&gt; до 70% - “40 70”
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Работа&lt;/strong&gt; до 90% - “70 90”
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Путешествие&lt;/strong&gt; до 100% - “95 100”
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;Защита выключена&lt;/strong&gt; - “0 100” (судя по исходникам ещё “0 0”)
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;
Значения сохраняются в энергонезависимую память и не теряются при перезагрузке. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Battery protection&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;battery_protection&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;8733-10080&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit8&quot; id=&quot;fn_lock_state&quot;&gt;Fn Lock State&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Файл лежит по пути /sys/bus/platform/devices/huawei-wmi/fn_lock_state &lt;br/&gt;

Значения:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Горячий ключ приоритет&lt;/strong&gt; (по умолчанию яркость, звук и тд) - 0&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Функция &lt;strong&gt;KeyFirst&lt;/strong&gt; (по умолчанию &lt;strong&gt;F1&lt;/strong&gt;, &lt;strong&gt;F2&lt;/strong&gt; …) - 1&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
команда изменения режима клавиши &lt;strong&gt;Fn&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo sh -c &amp;quot;echo 1 &amp;gt; /sys/bus/platform/devices/huawei-wmi/fn_lock_state&amp;quot;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Fn Lock State&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;fn_lock_state&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;10081-10550&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit9&quot; id=&quot;светодиоды&quot;&gt;Светодиоды&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Управление светодиодами:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;strong&gt;CapsLock&lt;/strong&gt; &lt;pre class=&quot;code&quot;&gt;echo 1 &amp;gt; /sys/class/leds/input3::capslock/brightness
echo 0 &amp;gt; /sys/class/leds/input3::capslock/brightness&lt;/pre&gt;

&lt;p&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Включение/Выключение микрофона 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo 1 &amp;gt; /sys/devices/platform/huawei-wmi/leds/platform::micmute/brightness
echo 0 &amp;gt; /sys/devices/platform/huawei-wmi/leds/platform::micmute/brightness&lt;/pre&gt;

&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;10551-10991&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit10&quot; id=&quot;управление_подсветкой_клавиатуры&quot;&gt;Управление подсветкой клавиатуры&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Отключение таймаута подсветки клавиатуры в Линукс
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo 0x00001106 | sudo tee /sys/kernel/debug/huawei-wmi/arg&lt;/pre&gt;

&lt;p&gt;
Установить таймаут в 10 секунд
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo 0x000A1106 | sudo tee /sys/kernel/debug/huawei-wmi/arg&lt;/pre&gt;

&lt;p&gt;
Для записи значений при загрузке удобно использовать systemd-tmpfiles. Например.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;/etc/tmpfiles.d/keyboard-backlight-timeout.conf:
#    Path                                Mode UID  GID  Age Argument
w   /sys/kernel/debug/huawei-wmi/arg     -    -    -    -   0x00001106&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt;/etc/tmpfiles.d/battery-protection.conf:
#    Path                                                              Mode UID  GID  Age Argument
w   /sys/bus/platform/devices/huawei-wmi/charge_control_thresholds     -    -    -    -   70 90&lt;/pre&gt;

&lt;p&gt;
&lt;a href=&quot;https://jlk.fjfi.cvut.cz/arch/manpages/man/tmpfiles.d.5&quot; class=&quot;urlextern&quot; title=&quot;https://jlk.fjfi.cvut.cz/arch/manpages/man/tmpfiles.d.5&quot; rel=&quot;ugc nofollow&quot;&gt;https://jlk.fjfi.cvut.cz/arch/manpages/man/tmpfiles.d.5&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u043e\u0439_\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;10992-11967&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit11&quot; id=&quot;управление_подсветкой_экрана&quot;&gt;Управление подсветкой экрана&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://askubuntu.com/questions/149054/how-to-change-lcd-brightness-from-command-line-or-via-script&quot; class=&quot;urlextern&quot; title=&quot;https://askubuntu.com/questions/149054/how-to-change-lcd-brightness-from-command-line-or-via-script&quot; rel=&quot;ugc nofollow&quot;&gt;https://askubuntu.com/questions/149054/how-to-change-lcd-brightness-from-command-line-or-via-script&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo 20 | sudo tee /sys/class/backlight/amdgpu_bl0/brightness&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u043e\u0439 \u044d\u043a\u0440\u0430\u043d\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u043e\u0439_\u044d\u043a\u0440\u0430\u043d\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;11968-12197&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit12&quot; id=&quot;обновление_bios_из-под_linux&quot;&gt;Обновление BIOS из-под Linux&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://github.com/nekr0z/linux-on-huawei-matebook-13-2019#bios-updates&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/nekr0z/linux-on-huawei-matebook-13-2019#bios-updates&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/nekr0z/linux-on-huawei-matebook-13-2019#bios-updates&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 BIOS \u0438\u0437-\u043f\u043e\u0434 Linux&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435_bios_\u0438\u0437-\u043f\u043e\u0434_linux&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;12198-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Thu, 08 May 2025 17:16:55 +0000</pubDate>
        </item>
        <item>
            <title>bamt-маиним-bitcoin-с-картами-amd-7900</title>
            <link>https://wiki.autosys.tk/linux_faq/bamt-%D0%BC%D0%B0%D0%B8%D0%BD%D0%B8%D0%BC-bitcoin-%D1%81-%D0%BA%D0%B0%D1%80%D1%82%D0%B0%D0%BC%D0%B8-amd-7900</link>
            <description>
&lt;p&gt;
BAMT версии 0.5 (на начало октября 2012) не поддерживает карты AMD 7900.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Для того чтобы максимально быстро и удобно интегрировать новые драйвера в BAMT нам понадобятся:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
1. Образ BAMT&lt;br/&gt;

2. VMWare Player или Workstation&lt;br/&gt;

3. StarWind Converter &lt;a href=&quot;http://www.starwindsoftware.com/f3z99a6/StarWindConverter.exe&quot; class=&quot;urlextern&quot; title=&quot;http://www.starwindsoftware.com/f3z99a6/StarWindConverter.exe&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.starwindsoftware.com/f3z99a6/StarWindConverter.exe&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Начинаем.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Скачиваем и устанавливаем StarWind Converter &lt;a href=&quot;http://www.starwindsoftware.com/f3z99a6/StarWindConverter.exe&quot; class=&quot;urlextern&quot; title=&quot;http://www.starwindsoftware.com/f3z99a6/StarWindConverter.exe&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.starwindsoftware.com/f3z99a6/StarWindConverter.exe&lt;/a&gt;&lt;br/&gt;

Запускаем StarWind Converter и конвертируем образ BAMT в формат VMDK&lt;br/&gt;

В VMWare создаем виртуальную машину с операционкой “Ubuntu” и указываем в качестве HDD - файл сконвертированный из BAMT.&lt;br/&gt;

Загружаем машину, запускаем Accessories → Root Terminal. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Меняем пароль рута, чтобы зайти по SSH&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;passwd root&lt;/pre&gt;

&lt;p&gt;
и подключаемся по SSH. &lt;br/&gt;

Затем обновляем AMD SDK, cgminer и драйвер ATI.&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cd /usr/share
git clone https://github.com/ckolivas/cgminer.git
cd cgminer/ADL_SDK
wget http://download2-developer.amd.com/amd/GPU/zip/ADL_SDK_4.0.zip
unzip ADL_SDK_4.0.zip
cd include
mv adl* ..
cd /opt
tar xf /opt/AMD-APP-SDK-v2.4-lnx32/icd-registration.tgz
ln -s /opt/AMD-APP-SDK-v2.4-lnx32/include/CL /usr/include
ln -s /opt/AMD-APP-SDK-v2.4-lnx32/lib/x86/* /usr/lib/
ldconfig
cd /usr/share/cgminer
./autogen.sh
CFLAGS=&amp;quot;-O2 -Wall -march=native -I/opt/AMDAPP/include&amp;quot; LDFLAGS=&amp;quot;-L/usr/lib&amp;quot; ./configure --enable-scrypt
make
cp ./* /opt/miners/cgminer/ -Rf

/usr/share/ati/fglrx-uninstall.sh --force
sync
coldreboot

cd /home/user/Desktop/
wget http://www2.ati.com/drivers/linux/amd-driver-installer-12-8-x86.x86_64.zip
unzip amd-driver-installer-12-8-x86.x86_64.zip
chmod 755 amd-driver-installer-8.982-x86.x86_64.run
./amd-driver-installer-8.982-x86.x86_64.run
sync
coldreboot
&lt;/pre&gt;

&lt;p&gt;
Затем поправим файл /etc/init.d/mine&lt;br/&gt;

Мы пропишем туда разгон видеокарт и запуск cgminer&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/sh
logger &amp;quot;Start mining&amp;quot;
#atitweak --adapter=0 --set-engine-clock=990 --set-memory-clock=300  --set-core-voltage=1.165 --set-fan-speed=100
/usr/local/bin/atitweak --adapter=0 --set-engine-clock=1000  --set-fan-speed=100
/usr/local/bin/atitweak --adapter=1 --set-engine-clock=910 --set-fan-speed=100
/usr/local/bin/atitweak --adapter=2 --set-engine-clock=910   --set-fan-speed=100
/opt/miners/cgminer/cgminer --api-listen -c /etc/bamt/cgminer.conf

exit 0&lt;/pre&gt;

&lt;p&gt;
Сформировать файл настроек cgminer можно либо из сомого cgminer, запустив его&lt;br/&gt;

 &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;/opt/miners/cgminer/cgminer --api-listen -c /etc/bamt/cgminer.conf&lt;/pre&gt;

&lt;p&gt;
и нажав S и потом W&lt;br/&gt;

 либо прописав в &lt;strong&gt;/etc/bamt/cgminer.conf&lt;/strong&gt;  вон чиво:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
{&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;quot;pools&amp;quot; : [
        {
                &amp;quot;url&amp;quot; : &amp;quot;http://pit.deepbit.net:8332&amp;quot;,
                &amp;quot;user&amp;quot; : &amp;quot;mike@autosys.tk_homev&amp;quot;,
                &amp;quot;pass&amp;quot; : &amp;quot;xxx&amp;quot;
        }
]
,
&amp;quot;intensity&amp;quot; : &amp;quot;11,11,11&amp;quot;,
&amp;quot;vectors&amp;quot; : &amp;quot;1,2,2&amp;quot;,
&amp;quot;worksize&amp;quot; : &amp;quot;128,128,128&amp;quot;,
&amp;quot;kernel&amp;quot; : &amp;quot;diablo,diablo,diablo&amp;quot;,
&amp;quot;api-listen&amp;quot; : true,
&amp;quot;api-port&amp;quot; : &amp;quot;4028&amp;quot;,
&amp;quot;expiry&amp;quot; : &amp;quot;120&amp;quot;,
&amp;quot;gpu-dyninterval&amp;quot; : &amp;quot;7&amp;quot;,
&amp;quot;gpu-platform&amp;quot; : &amp;quot;0&amp;quot;,
&amp;quot;gpu-threads&amp;quot; : &amp;quot;2&amp;quot;,
&amp;quot;log&amp;quot; : &amp;quot;5&amp;quot;,
&amp;quot;queue&amp;quot; : &amp;quot;1&amp;quot;,
&amp;quot;scan-time&amp;quot; : &amp;quot;60&amp;quot;,
&amp;quot;shares&amp;quot; : &amp;quot;0&amp;quot;,
&amp;quot;kernel-path&amp;quot; : &amp;quot;/usr/local/bin&amp;quot;
}&lt;/pre&gt;

&lt;p&gt;
После этого надо сконвертировать VMDK обратно в формат Raw и залить на флешку&lt;br/&gt;

&lt;/p&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>connect_to_remote_xorg_using_xephyr</title>
            <link>https://wiki.autosys.tk/linux_faq/connect_to_remote_xorg_using_xephyr</link>
            <description>
&lt;p&gt;
&lt;a href=&quot;https://nek0.eu/posts/2014-10-25-Desktop-forwarding-via-X-using-Xephyr.html&quot; class=&quot;urlextern&quot; title=&quot;https://nek0.eu/posts/2014-10-25-Desktop-forwarding-via-X-using-Xephyr.html&quot; rel=&quot;ugc nofollow&quot;&gt;https://nek0.eu/posts/2014-10-25-Desktop-forwarding-via-X-using-Xephyr.html&lt;/a&gt;
на клиентской машине (той с которой подключаемся) разрешаем биндить порты непривилегированным пользователям (необязательно):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo &amp;#039;net.ipv4.ip_unprivileged_port_start=0&amp;#039; | sudo tee -a /etc/sysctl.d/50-unprivileged-ports.conf
sysctl --system&lt;/pre&gt;

&lt;p&gt;
на клиентской машине (той с которой подключаемся) ставим &lt;strong&gt;xephyr&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install xserver-xephyr&lt;/pre&gt;

&lt;p&gt;
На клиентской машине файлике &lt;strong&gt;~/.ssh/config&lt;/strong&gt; или &lt;strong&gt;/etc/ssh/ssh_config&lt;/strong&gt; прописываем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Host *
    ForwardAgent yes
    ForwardX11 yes
    ForwardX11Trusted yes&lt;/pre&gt;

&lt;p&gt;
На серверной машине (к которой подключаемся) в файлике &lt;strong&gt;/etc/ssh/sshd_config&lt;/strong&gt; должно быть:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;X11Forwarding yes&lt;/pre&gt;

&lt;p&gt;
Строим туннель до системы в удаленной локалке (если серверная машина к которой подключаемся находится за другой):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;ssh -f -N -L 2233:xubuntu:22 remote-server -l user&lt;/pre&gt;

&lt;p&gt;
На клиентской машине запускаем &lt;strong&gt;Xephyr&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Xephyr :1 -screen 800x600 -resizeable &amp;amp;&lt;/pre&gt;

&lt;p&gt;
И подключаем сессию:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;DISPLAY=:1 ssh -Y &amp;lt;user&amp;gt;@&amp;lt;host&amp;gt;&lt;/pre&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 14 Oct 2019 12:48:15 +0000</pubDate>
        </item>
        <item>
            <title>drm_intel_pipe_update_end_i915_error_atomic_update_failure_on_pipe_a</title>
            <link>https://wiki.autosys.tk/linux_faq/drm_intel_pipe_update_end_i915_error_atomic_update_failure_on_pipe_a</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;ошибки_-_drmintel_pipe_update_end_i915&quot;&gt;Ошибки - [drm:intel_pipe_update_end [i915]]&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
На ноутбуке с интергированной графикой Intel (процессор Intel Core i5-2410M ) в логая ядра постоянно появляются ошибки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=115495 end=115496) time 210 us, min 763, max 767, scanline start 760, end 770&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0448\u0438\u0431\u043a\u0438 - [drm:intel_pipe_update_end [i915]]&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0448\u0438\u0431\u043a\u0438_-_drmintel_pipe_update_end_i915&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-425&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;что_не_помогло&quot;&gt;Что НЕ помогло&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
На Ubuntu 19.04 с ядром &lt;strong&gt;5.5.11-050511-lowlatency&lt;/strong&gt; помогло добавление к параметрам ядра таких:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;i915.enable_guc_loading=1 i915.enable_guc_submission=1 intel_pstate=skylake_hwp i915.enable_psr=1 i915.disable_power_well=0 nouveau.modeset=0&lt;/pre&gt;

&lt;p&gt;
То есть я отредактировал файлик &lt;strong&gt;/etc/default/grub&lt;/strong&gt;, в котором строчку &lt;strong&gt;GRUB_CMDLINE_LINUX_DEFAULT&lt;/strong&gt; привел к такому виду:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;GRUB_CMDLINE_LINUX_DEFAULT=&amp;quot; i915.enable_guc_loading=1 i915.enable_guc_submission=1 intel_pstate=skylake_hwp i915.enable_psr=1 i915.disable_power_well=0 nouveau.modeset=0 quiet &amp;quot;&lt;/pre&gt;

&lt;p&gt;
а затем обновил конфигурацию grub:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo update-grub&lt;/pre&gt;

&lt;p&gt;
и перезагрузился.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0427\u0442\u043e \u041d\u0415 \u043f\u043e\u043c\u043e\u0433\u043b\u043e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0447\u0442\u043e_\u043d\u0435_\u043f\u043e\u043c\u043e\u0433\u043b\u043e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;426-1230&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;drm-tip_kernel&quot;&gt;drm-tip kernel&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Вот тут люди советуют пересобрать &lt;strong&gt;drm-tip kernel&lt;/strong&gt; и установить и вроде все становится ОК :
&lt;a href=&quot;https://bugs.freedesktop.org/show_bug.cgi?id=105870#c16&quot; class=&quot;urlextern&quot; title=&quot;https://bugs.freedesktop.org/show_bug.cgi?id=105870#c16&quot; rel=&quot;ugc nofollow&quot;&gt;https://bugs.freedesktop.org/show_bug.cgi?id=105870#c16&lt;/a&gt; &lt;br/&gt;

Собирать вот так: &lt;a href=&quot;https://01.org/linuxgraphics/documentation/build-guide-0&quot; class=&quot;urlextern&quot; title=&quot;https://01.org/linuxgraphics/documentation/build-guide-0&quot; rel=&quot;ugc nofollow&quot;&gt;https://01.org/linuxgraphics/documentation/build-guide-0&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install build-essential flex bison libssl-dev libelf-dev libncurses5 libncurses5-dev libdw-dev binutils-dev libc6-dev&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;drm-tip kernel&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;drm-tip_kernel&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1231-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Tue, 07 Apr 2020 11:39:31 +0000</pubDate>
        </item>
        <item>
            <title>freebsd_11.0_radeon_8000_can_not_load_module</title>
            <link>https://wiki.autosys.tk/linux_faq/freebsd_11.0_radeon_8000_can_not_load_module</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Xorg&lt;/strong&gt; не запускается, а в логах ошибка:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[drm] failed to load kernel module &amp;quot;radeon&amp;quot;&lt;/pre&gt;

&lt;p&gt;
Если попытатьзя загрузить модуль &lt;strong&gt;radeon_drv.so&lt;/strong&gt; вручную:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;kldload /usr/local/lib/xorg/modules/drivers/radeon_drv.so &lt;/pre&gt;

&lt;p&gt;
то в &lt;strong&gt;dmesg&lt;/strong&gt; будет ошибка:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;link elf: symbol xf86CrtcConfigPrivateIndex undefined&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-402&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;что_же_делать&quot;&gt;Что же делать&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;http://www.bsddesktop.com/images/110amd64-ports-graphics-xserver-mesa-next/&quot; class=&quot;urlextern&quot; title=&quot;http://www.bsddesktop.com/images/110amd64-ports-graphics-xserver-mesa-next/&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.bsddesktop.com/images/110amd64-ports-graphics-xserver-mesa-next/&lt;/a&gt;
&lt;a href=&quot;https://github.com/FreeBSDDesktop/freebsd-base-graphics/wiki&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/FreeBSDDesktop/freebsd-base-graphics/wiki&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/FreeBSDDesktop/freebsd-base-graphics/wiki&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0427\u0442\u043e \u0436\u0435 \u0434\u0435\u043b\u0430\u0442\u044c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0447\u0442\u043e_\u0436\u0435_\u0434\u0435\u043b\u0430\u0442\u044c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;403-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>freebsd_to_trueos</title>
            <link>https://wiki.autosys.tk/linux_faq/freebsd_to_trueos</link>
            <description>&lt;pre class=&quot;code&quot;&gt;pkg&lt;/pre&gt;

&lt;p&gt;
Нажимаем y чтобы установить &lt;strong&gt;pkg&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;pkg upgrade
pkg install nano wget&lt;/pre&gt;

&lt;p&gt;
Отключаем репозитории FreeBSD:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mv /etc/pkg/FreeBSD.conf /root/FreeBSD.conf-old&lt;/pre&gt;

&lt;p&gt;
Создаем файлик репозитория &lt;strong&gt;TrueOS&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mkdir -p /usr/local/etc/pkg/repos
nano /usr/local/etc/pkg/repos/pcbsd.conf&lt;/pre&gt;

&lt;p&gt;
Пишем туда такое:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;pcbsd: {
       url: &amp;quot;http://pkg.cdn.pcbsd.org/11.0-CURRENTJULY2016/amd64/&amp;quot;,
       signature_type: &amp;quot;fingerprints&amp;quot;,
       fingerprints: &amp;quot;/usr/local/etc/pkg/fingerprints/pcbsd&amp;quot;,
       enabled: true
      }&lt;/pre&gt;

&lt;p&gt;
Затем создаем директории:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mkdir -p /usr/local/etc/pkg/fingerprints/pcbsd/revoked
mkdir -p /usr/local/etc/pkg/fingerprints/pcbsd/trusted&lt;/pre&gt;

&lt;p&gt;
И скачиваем файл &lt;strong&gt;fingerprint&lt;/strong&gt; и кладем его куда надо:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget --no-check-certificate https://github.com/pcbsd/pcbsd-build/raw/master/pcbsd/pkg-dist/fingerprints/pcbsd/trusted/pkg.cdn.pcbsd.org.20131209
mv pkg.cdn.pcbsd.org.20131209 /usr/local/etc/pkg/fingerprints/pcbsd/trusted/

pkg upgrade -fy
fetch --no-verify-peer -o /etc/freebsd-update.conf &amp;#039;https://github.com/pcbsd/freebsd/raw/master/etc/freebsd-update.conf&amp;#039;



freebsd-update fetch
freebsd-update install
pkg install -fy pcbsd-base
rehash
pbreg set /PC-BSD/SysType PCBSD
pc-extractoverlay ports
pc-extractoverlay desktop

дальше перезагружаемся. Если нужно при первой загрузке настроить парметры, то перед перезагрузкой выполняем:
touch /var/.runxsetup
touch /var/.pcbsd-firstboot
touch /var/.pcbsd-firstgui&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt;reboot&lt;/pre&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>kde_not_copying_etc_skel_on_user_first_login</title>
            <link>https://wiki.autosys.tk/linux_faq/kde_not_copying_etc_skel_on_user_first_login</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Система - &lt;strong&gt;Ubuntu Server 16.04&lt;/strong&gt; + &lt;strong&gt;KDE-desktop&lt;/strong&gt; установленный из &lt;strong&gt;backports&lt;/strong&gt;. &lt;br/&gt;

При входе пользователя не копируется шаблон профиля из &lt;strong&gt;/etc/skel&lt;/strong&gt;, хотя директория в &lt;strong&gt;/home&lt;/strong&gt; создается и директории, которые описаны в &lt;strong&gt;/etc/xdg/user-dirs.defaults&lt;/strong&gt; создаются. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-433&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Вот тут немецкие друзья предлагают решение: &lt;a href=&quot;https://forum.ubuntuusers.de/topic/sssd-nutzer-erhalten-keine-dateien-aus-etc-ske/&quot; class=&quot;urlextern&quot; title=&quot;https://forum.ubuntuusers.de/topic/sssd-nutzer-erhalten-keine-dateien-aus-etc-ske/&quot; rel=&quot;ugc nofollow&quot;&gt;https://forum.ubuntuusers.de/topic/sssd-nutzer-erhalten-keine-dateien-aus-etc-ske/&lt;/a&gt; &lt;br/&gt;

В двух словах - модули &lt;strong&gt;pam_kwallet&lt;/strong&gt; и &lt;strong&gt;pam_mkhomedir&lt;/strong&gt; не работают нормально вместе. Поэтому в файлике &lt;strong&gt;/etc/pam.d/sddm&lt;/strong&gt; закомментировать строки с &lt;strong&gt;pam_kwallet&lt;/strong&gt;. &lt;br/&gt;

В результате, при первом логине пользователя в KDE с помощью SDDM, в его профиль нормально копируются файлики из &lt;strong&gt;/etc/skel&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;434-1098&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;аналогичная_проблема_-_ubuntu_1804_gnome&quot;&gt;Аналогичная проблема - Ubuntu 18.04 + Gnome&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
При логине профиль создается, но файлы из директории &lt;strong&gt;/etc/skel&lt;/strong&gt; не копируются, хотя директории, которые описаны в &lt;strong&gt;/etc/xdg/user-dirs.defaults&lt;/strong&gt; создаются. &lt;br/&gt;

Оказалось - проблема в порядке следования &lt;strong&gt;pam&lt;/strong&gt;-модулей. &lt;br/&gt;

Из директории &lt;strong&gt;/etc/skel&lt;/strong&gt; файлы копирует модуль &lt;strong&gt;pam_mkhomedir&lt;/strong&gt;.
Для начала - найдем в каком файлике он вызывается.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;grep pam_mkhomedir /etc/pam.d/ -irl&lt;/pre&gt;

&lt;p&gt;
У меня это файл &lt;strong&gt;/etc/pam.d/common-session&lt;/strong&gt;. В нем строка:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;session optional pam_mkhomedir.so&lt;/pre&gt;

&lt;p&gt;
идет ПОСЛЕ строки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;session optional pam_mount.so&lt;/pre&gt;

&lt;p&gt;
Я предположил, что модуль &lt;strong&gt;pam_mkhomedir&lt;/strong&gt; не отрабатывает корректно, поскольку на момент его запуска директория пользователя уже должна существовать (чтобы отработал модуль &lt;strong&gt;pam_mount.so&lt;/strong&gt;). &lt;br/&gt;

То есть - чтобы исправить ситуацию нужно переставить строки, чтобы &lt;strong&gt;pam_mkhomedir.so&lt;/strong&gt; запускался ПЕРЕД &lt;strong&gt;pam_mount.so&lt;/strong&gt;. &lt;br/&gt;

В итоге - строки я переставил и всё заработало.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0430\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 - Ubuntu 18.04 + Gnome&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0430\u044f_\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430_-_ubuntu_1804_gnome&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1099-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Tue, 01 Sep 2020 14:15:04 +0000</pubDate>
        </item>
        <item>
            <title>notebook_hints</title>
            <link>https://wiki.autosys.tk/linux_faq/notebook_hints</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;состояние_батареи&quot;&gt;Состояние батареи&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Посмотреть текущее состояние батареи в ноутбуке под управлением Linux можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;upower -i /org/freedesktop/UPower/devices/battery_BAT1&lt;/pre&gt;

&lt;p&gt;
Последняя цифра в пути может быть другой (например - 0)
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0431\u0430\u0442\u0430\u0440\u0435\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435_\u0431\u0430\u0442\u0430\u0440\u0435\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-349&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;текущее_потребление&quot;&gt;Текущее потребление&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;upower -d | grep energy-rate&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0435\u043a\u0443\u0449\u0435\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0435\u043a\u0443\u0449\u0435\u0435_\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;350-433&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;энергопотребление_процессора&quot;&gt;Энергопотребление процессора&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Увидеть текущее энергопотребление процессора (и только процессора) позволит утилита &lt;strong&gt;powerstat&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install powerstat
sudo powerstat -R -c -z&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435_\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;434-735&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;энергопотребление_amd_gpu&quot;&gt;Энергопотребление AMD GPU&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Посмотреть текущее энергопотребление AMD GPU можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo watch -n 0.5  cat /sys/kernel/debug/dri/0/amdgpu_pm_info &lt;/pre&gt;

&lt;p&gt;
Посмотреть существующие профили энергопотребления:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cat /sys/class/drm/card0/device/pp_power_profile_mode&lt;/pre&gt;

&lt;p&gt;
Включить какой-то профиль так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;echo &amp;quot;5&amp;quot; &amp;gt; /sys/class/drm/card0/device/pp_power_profile_mode&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 AMD GPU&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435_amd_gpu&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;736-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Thu, 17 Jun 2021 09:15:55 +0000</pubDate>
        </item>
        <item>
            <title>opensuse_setup_script_yast</title>
            <link>https://wiki.autosys.tk/linux_faq/opensuse_setup_script_yast</link>
            <description>
&lt;p&gt;
Запускать так: &lt;strong&gt;sudo -E ./script.sh&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#! /bin/bash

####################################
#### Variables
####################################
NEW_HOSTNAME=&amp;quot;szud-opensuse&amp;quot;
NEW_DOMAINNAME=&amp;quot;sigma.sbrf.ru&amp;quot;
DNS_SERVERS=&amp;quot;10.21.7.212 10.21.7.214&amp;quot;
DNS_STATIC_SEARCHLIST=&amp;quot;$NEW_DOMAINNAME sberbank.ru&amp;quot;
AD_USER=&amp;quot;usik-ma&amp;quot;
DOMAIN_CONTROLLERS=$(cat &amp;lt;&amp;lt;EOF
cab-vsp-dc00001.sigma.sbrf.ru
cab-vsp-dc00002.sigma.sbrf.ru
cab-vsp-dc00003.sigma.sbrf.ru
cab-vsp-dc00004.sigma.sbrf.ru
cab-vsp-dc00005.sigma.sbrf.ru
cab-vsp-dc00006.sigma.sbrf.ru
cab-vsp-dc00007.sigma.sbrf.ru
cab-vsp-dc00008.sigma.sbrf.ru
EOF
)
DEFAULT_REALM=&amp;quot;${NEW_DOMAINNAME^^}&amp;quot;
NETBIOS_DOMAIN_NAME=$(echo $DEFAULT_REALM | sed  &amp;#039;1,$ s/\..*//g&amp;#039;)
SDDM_THEME=&amp;quot;elarun&amp;quot;
CA_CERT_PREFIX=&amp;quot;SberBank_Root_CA&amp;quot;

########################################################
### SettingUp Network
########################################################
systemctl disable NetworkManager
systemctl stop NetworkManager
systemctl enable wicked
systemctl start wicked
echo &amp;#039;Waiting for network...&amp;#039;
sleep 10

##############################################
### Setting up NameServers
##############################################
sed -i &amp;quot;/^NETCONFIG_DNS_STATIC_SEARCHLIST=.*\$/ s/=.*$/=\&amp;quot;$DNS_STATIC_SEARCHLIST\&amp;quot;/&amp;quot; /etc/sysconfig/network/config
sed -i &amp;quot;/^NETCONFIG_DNS_STATIC_SERVERS=.*\$/ s/=.*$/=\&amp;quot;$DNS_SERVERS\&amp;quot;/&amp;quot; /etc/sysconfig/network/config
sed -i &amp;quot;/^NETCONFIG_DNS_POLICY=.*\$/ s/=.*$/=\&amp;quot;auto\&amp;quot;/&amp;quot; /etc/sysconfig/network/config

###############################################
### Setting HOSTNAME, DOMAINNAME
###############################################
hostname $NEW_HOSTNAME
domainname $NEW_DOMAINNAME
echo $NEW_HOSTNAME.$NEW_DOMAINNAME | sudo tee /etc/HOSTNAME
echo $NEW_HOSTNAME.$NEW_DOMAINNAME | sudo tee /etc/hostname
sed -i &amp;#039;/^127./D&amp;#039; /etc/hosts
echo &amp;quot;127.0.0.1 `hostname`.`domainname` `hostname` localhost&amp;quot; | sudo tee -a /etc/hosts
echo &amp;quot;127.0.0.2 `hostname`.`domainname` `hostname`&amp;quot; | sudo tee -a /etc/hosts

########################################
### Reload network settings
########################################
netconfig update -f

####################################
#### Setting Software Repos
####################################
zypper repos | grep Yes | cut -f3 -d &amp;#039;|&amp;#039; | sed -e &amp;quot;s/ //&amp;quot; | awk &amp;#039;{print &amp;quot;zypper mr -dRK &amp;quot; $1}&amp;#039; | sudo bash
zypper ar -G -c -n &amp;quot;SB-OpenSUSE-oss&amp;quot; -f http://10.23.48.12/opensuse/distribution/leap/42.1/oss/suse sb-opensuse-oss
zypper mr -erk -p 5 SB-OpenSUSE-oss
zypper ar -G -c -n &amp;quot;SB-OpenSUSE-update-oss&amp;quot; -f http://10.23.48.12/opensuse/update/leap/42.1/oss sb-opensuse-update-oss
zypper mr -erk -p 5 SB-OpenSUSE-update-oss
zypper ar -G -c -n &amp;quot;SB-OpenSUSE-packman&amp;quot; -f http://10.23.48.12/opensuse/packman/openSUSE_Leap_42.1 sb-opensuse-packman
zypper mr -erk -p 5 SB-OpenSUSE-packman
zypper ar -G -c -n &amp;quot;SB-OpenSUSE-Sky&amp;quot; http://10.23.48.12/opensuse/tel.red/repos/opensuse/42.1/ sb-opensuse-sky
zypper mr -erk -p 5 SB-OpenSUSE-Sky
zypper ar -G -c -n &amp;quot;SB-OpenSUSE-YandexBrowser-beta&amp;quot; -f http://10.23.48.12/opensuse/repo.yandex.ru/yandex-browser/rpm/beta/x86_64 sb-opensuse-yandexbrowser-beta
zypper mr -erk -p 5  SB-OpenSUSE-YandexBrowser-beta
#zypper ar -G -c -n &amp;quot;nVidia Graphics Drivers&amp;quot; http://download.nvidia.com/opensuse/leap/42.1 nVidia-Graphics-Drivers
#zypper mr -erk -p 5 nVidia-Graphics-Drivers
#zypper ar -G -c -n &amp;quot;AMD/ATI Graphics Drivers&amp;quot; -f http://geeko.ioda.net/mirror/amd-fglrx/openSUSE_Leap_42.1/  AMD-Graphics-Drivers
#zypper mr -erk -p 5 AMD-Graphics-Drivers

zypper clean
zypper -n up
zypper -n dup
zypper -n in nano yast2-online-update krb5-client yandex-browser-beta mozilla-nss-tools sky kernel-devel pam_krb5 openssl
zypper -n in --type pattern devel_basis

#sudo zypper -n in xrdp mono-complete

###############################################
### Setup Services
###############################################
systemctl enable xrdp 
systemctl enable xrdp-sesman 
systemctl enable sshd 
systemctl enable ntpd 

#systemctl enable SuSEfirewall2 
#SuSEfirewall2 start  
systemctl disable SuSEfirewall2
systemctl stop SuSEfirewall2

systemctl start sshd
systemctl start xrdp 
systemctl start xrdp-sesman
systemctl start ntpd 

#############################################
#### Setting sudo
#############################################
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/sudoers.d/domain_users
localuser       ALL=(ALL) ALL
%$NETBIOS_DOMAIN_NAME\\\\domain\ users          ALL=(ALL) ALL 
%domain\ users          ALL=(ALL) ALL
%$NETBIOS_DOMAIN_NAME\\\\domain\ admins      ALL=(ALL) NOPASSWD: ALL 
%domain\ admins      ALL=(ALL) NOPASSWD: ALL
EOF

sed -i &amp;quot;/^Defaults\ targetpw.*\$/ s/^/#/&amp;quot; /etc/sudoers
sed -i &amp;quot;/^Defaults\ env_reset.*\$/ s/\ env_reset/\ \!env_reset/&amp;quot; /etc/sudoers
sed -i &amp;quot;/^ALL.*ALL=(ALL).*\$/ s/^/#/&amp;quot; /etc/sudoers

#########################################
### Setup NTP servers
#########################################
echo &amp;quot;Setting ntp client settings...&amp;quot;
yast2 ntp-client delete server=&amp;quot;0.opensuse.pool.ntp.org&amp;quot;
yast2 ntp-client delete server=&amp;quot;1.opensuse.pool.ntp.org&amp;quot;
yast2 ntp-client delete server=&amp;quot;2.opensuse.pool.ntp.org&amp;quot;
yast2 ntp-client delete server=&amp;quot;3.opensuse.pool.ntp.org&amp;quot;

for i in $DOMAIN_CONTROLLERS;
do 
yast2 ntp-client add server=&amp;quot;$i iburst&amp;quot;
done

########################################
#### Install Citrix VDA
########################################
#sudo zypper -n in ./XenDesktopVDA-7.12.0.375-1.sle12_1.x86_64.rpm
#/opt/Citrix/VDA/sbin/ctxsetup.sh

#########################################
### Setup Kerberos /etc/krb5.conf
#########################################
LIBDEFAULTS=$(cat &amp;lt;&amp;lt;EOF
[libdefaults]
dns_lookup_kdc = true
dns_lookup_realm = false
default_realm = $DEFAULT_REALM
clockskew = 300
default_ccache_name = FILE:/tmp/krb5cc_%{uid}
EOF
)

REALMS_KDC=$(for i in $DOMAIN_CONTROLLERS; do echo &amp;quot;kdc = $i&amp;quot;;done)

REALMS=$(cat &amp;lt;&amp;lt;EOF

[realms]
$DEFAULT_REALM = {
$REALMS_KDC
default_domain = $DEFAULT_REALM
}
EOF
)

DOMAIN_REALM=$(cat &amp;lt;&amp;lt;EOF

[domain_realm]
.$NEW_DOMAINNAME = $DEFAULT_REALM 
$NEW_DOMAINNAME = $DEFAULT_REALM

[appdefaults]                                                         
pam = {                                                               
        ticket_lifetime = 1d
        renew_lifetime = 1d
        forwardable = true
        proxiable = false
        minimum_uid = 1
}
        
EOF
)

echo &amp;quot;$LIBDEFAULTS&amp;quot; &amp;gt; /etc/krb5.conf
echo &amp;quot;$REALMS&amp;quot; &amp;gt;&amp;gt; /etc/krb5.conf
echo &amp;quot;$DOMAIN_REALM&amp;quot; &amp;gt;&amp;gt; /etc/krb5.conf

########################################
#### Configure /etc/samba/smb.conf
########################################
SMB_CONF=$(cat &amp;lt;&amp;lt;EOF
# smb.conf is the main Samba configuration file. You find a full commented
# version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the
# samba-doc package is installed.
[global]
        workgroup = $NETBIOS_DOMAIN_NAME
        passdb backend = tdbsam
        printing = cups
        printcap name = cups
        printcap cache time = 750
        cups options = raw
        map to guest = Bad User
        include = /etc/samba/dhcp.conf
        logon path = \\%L\profiles\.msprofile
        logon home = \\%L\%U\.9xprofile
        logon drive = P:
        usershare allow guests = No
        idmap gid = 10000-20000
        idmap uid = 10000-20000
        realm = $DEFAULT_REALM
        security = ADS
        template homedir = /home/%D/%U
        template shell = /bin/bash
        usershare max shares = 100
        winbind offline logon = true
        winbind refresh tickets = true
        kerberos method = secrets and keytab
        winbind use default domain = yes
[homes]
        comment = Home Directories
        valid users = %S, %D%w%S
        browseable = No
        read only = No
        inherit acls = Yes
[profiles]
        comment = Network Profiles Service
        path = %H
        read only = No
        store dos attributes = Yes
        create mask = 0600
        directory mask = 0700
[users]
        comment = All users
        path = /home
        read only = No
        inherit acls = Yes
        veto files = /aquota.user/groups/shares/
[groups]
        comment = All groups
        path = /home/groups
        read only = No
        inherit acls = Yes
[printers]
        comment = All Printers
        path = /var/tmp
        printable = Yes
        create mask = 0600
        browseable = No
[print$]
        comment = Printer Drivers
        path = /var/lib/samba/drivers
        write list = @ntadmin root
        force group = ntadmin
        create mask = 0664
        directory mask = 0775
EOF
)

mv /etc/samba/smb.conf.bak /etc/samba/smb.conf
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
echo &amp;quot;$SMB_CONF&amp;quot; &amp;gt; /etc/samba/smb.conf

###############################################
#### Configure /etc/security/pam_winbind.conf
###############################################
PAM_WINBIND=$(cat &amp;lt;&amp;lt;EOF
        cached_login = yes
        krb5_auth = yes
        krb5_ccache_type = FILE
EOF
)

mv /etc/security/pam_winbind.conf.bak /etc/security/pam_winbind.conf
cp /etc/security/pam_winbind.conf /etc/security/pam_winbind.conf.bak
while read line
do
        echo $line &amp;gt;&amp;gt; /etc/security/pam_winbind.conf_new
        echo $line | grep -q &amp;quot;\[global\]&amp;quot; 
        [ $? -eq 0 ] &amp;amp;&amp;amp; echo &amp;quot;$PAM_WINBIND&amp;quot; &amp;gt;&amp;gt; /etc/security/pam_winbind.conf_new
done &amp;lt; /etc/security/pam_winbind.conf
mv /etc/security/pam_winbind.conf_new /etc/security/pam_winbind.conf

########################################
#### Configure /etc/nsswitch.conf
########################################
sed -i &amp;#039;/^passwd:.*compat$/ s/$/ winbind/&amp;#039; /etc/nsswitch.conf
sed -i &amp;#039;/^group:.*compat$/ s/$/ winbind/&amp;#039; /etc/nsswitch.conf
sed -i &amp;#039;/^hosts:/ s/:.*$/: files dns/&amp;#039; /etc/nsswitch.conf

##########################################
#### Configure PAM
##########################################
pam-config --add --winbind --mkhomedir 
#--krb5

#################################################
### Disable autologin
#################################################
sed -i &amp;quot;/^DISPLAYMANAGER_AUTOLOGIN=.*\$/ s/=.*$/=\&amp;quot;\&amp;quot;/&amp;quot; /etc/sysconfig/displaymanager

#################################################
#### Set SDDM Theme to allow input Username
#################################################
sed -i &amp;quot;/^Current=.*\$/ s/=.*$/=$SDDM_THEME/&amp;quot; /etc/sddm.conf

########################################
### Add Certificates
###########################################
openssl s_client -showcerts -connect ya.ru:443 &amp;lt;/dev/null &amp;gt; chain.pem
csplit -k -f $CA_CERT_PREFIX ./chain.pem &amp;#039;/END CERTIFICATE/+1&amp;#039; {10}
find ./ -iname $CA_CERT_PREFIX\* -type f -exec grep -F -L &amp;#039;END CERTIFICATE&amp;#039; &amp;#039;{}&amp;#039; + | xargs -d &amp;#039;\n&amp;#039; rm
for file in &amp;quot;$CA_CERT_PREFIX&amp;quot;* ; do sudo mv &amp;quot;$file&amp;quot; /etc/pki/trust/anchors/&amp;quot;$file&amp;quot;.pem ; done
for file in /etc/pki/trust/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ; do sudo cp &amp;quot;$file&amp;quot; /etc/ssl/certs/ ; done                                                                                              
c_rehash /etc/ssl/certs/                                                                                                                                                                  
c_rehash /etc/pki/trust/anchors/                                                                                                                                                          
update-ca-certificates                                                                                                                                                                    
rm -f ./chain.pem                                                                                                                                                                              
                                                                                                                                                                                               
#######################################################                                                                                                                                        
#### Import CA Certificates into Browsers                                                                                                                                                      
#   http://blog.xelnor.net/firefox-systemcerts/                                                                                                                                                
#######################################################                                                                                                                                        
HOMEDIR=$(getent passwd $SUDO_USER | cut -d: -f6)                                                                                                                                              
zypper -n install mozilla-nss-tools                                                                                                                                                       
rm -Rf $HOMEDIR/.mozilla                                                                                                                                                                  
rm -Rf $HOMEDIR/.pki                                                                                                                                                                      
                                                                                                                                                                                               
########################################################                                                                                                                                       
#### Create and fill cert8.db in Firefox Profile                                                                                                                                               
########################################################                                                                                                                                       
killall firefox                                                                                                                                                                           
sudo -u  $SUDO_USER firefox -CreateProfile default
FirefoxProfileDir=$(find $HOMEDIR&amp;#039;/.mozilla/firefox/&amp;#039; -iname &amp;#039;*.default&amp;#039;);
for certificateFile in /etc/pki/trust/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ;
do
 certutil -A -n &amp;quot;${certificateFile}&amp;quot; -t &amp;quot;TCu,Cuw,Tuw&amp;quot; -i ${certificateFile} -d ${FirefoxProfileDir}
done
chmod -R a+rw $HOMEDIR/.mozilla/firefox/*

################################################################################
#### Import certificates into nssdb for Chromium engine
################################################################################
mkdir --parents $HOMEDIR/.pki/nssdb
echo 1q2w3e4r | sudo tee $HOMEDIR/.pki/nssdb/password-file
certutil -N -f $HOMEDIR/.pki/nssdb/password-file -d $HOMEDIR/.pki/nssdb
for certificateFile in /etc/pki/trust/anchors/&amp;quot;$CA_CERT_PREFIX&amp;quot;* ;
do
 certutil -f $HOMEDIR/.pki/nssdb/password-file -A -n &amp;quot;${certificateFile}&amp;quot; -t &amp;quot;TCu,Cuw,Tuw&amp;quot; -i ${certificateFile} -d sql:$HOMEDIR/.pki/nssdb
done
chmod -R a+rw $HOMEDIR/.pki/nssdb/*

#########################################################
### Copy databases with imported certs to default profile
#########################################################
rm -Rf /etc/skel/.pki/nssdb/*
rm -Rf /etc/skel/.mozilla/firefox/*
mkdir --parents /etc/skel/.pki/nssdb/
cp -Rf $HOMEDIR/.pki/nssdb/* /etc/skel/.pki/nssdb/
mkdir --parents /etc/skel/.mozilla/firefox/
cp -Rf $HOMEDIR/.mozilla/firefox/* /etc/skel/.mozilla/firefox/

#########################################################
### Disable KDEWallet By Default
#########################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/skel/.config/kwalletrc
[Wallet]
Enabled=false
EOF

mkdir --parents /etc/skel/.kde/share/config/
cp /etc/skel/.config/kwalletrc /etc/skel/.kde/share/config/kwalletrc

############################################################
#### Install Adobe Flash
############################################################
zypper ar -G -c -n &amp;quot;Adobe Software Repository&amp;quot; -f http://linuxdownload.adobe.com/linux/x86_64/ Adobe
zypper -n rm  flash-player-24.0.0.221-1.1.x86_64
zypper mr -dRK sb-opensuse-packman
zypper -n in  adobe-release-x86_64 flash-pl*
zypper mr -eRK sb-opensuse-packman

############################################################
### Enable Autostart apps
############################################################
mkdir --parents /etc/skel/.config/autostart/
cp /usr/share/applications/sky.desktop /etc/skel/.config/autostart/

########################################
### Join AD Domain
########################################
systemctl enable nmb.service
systemctl enable smb.service
systemctl enable winbind.service

service nmb restart
service smb restart
service winbind restart

ping -c 5 $DOMAIN_CONTROLLERS &amp;amp;&amp;gt; /dev/null &amp;amp;&amp;amp; net ads join -U $AD_USER || echo &amp;quot;Join AD failed. Ping Domain Controller failed&amp;quot;
service winbind restart &amp;amp;&amp;amp; service nmb restart &amp;amp;&amp;amp; service smb restart
wbinfo -P
wbinfo -t
wbinfo -n=$computername
&lt;/pre&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;setup_vda&quot;&gt;Setup VDA&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/bash
CTX_XDL_SUPPORT_DDC_AS_CNAME=N \
CTX_XDL_DDC_LIST=&amp;quot;v-szud-ctxdc-01.sigma.sbrf.ru v-szud-ctxdc-02.sigma.sbrf.ru&amp;quot; \
CTX_XDL_VDA_PORT=80 \
CTX_XDL_REGISTER_SERVICE=Y \
CTX_XDL_ADD_FIREWALL_RULES=Y \
CTX_XDL_AD_INTEGRATION=1 \
CTX_XDL_HDX_3D_PRO=N \
CTX_XDL_VDI_MODE=Y \
CTX_XDL_SITE_NAME=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_LDAP_LIST=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_SEARCH_BASE=&amp;#039;&amp;lt;none&amp;gt;&amp;#039; \
CTX_XDL_START_SERVICE=Y \
/opt/Citrix/VDA/sbin/ctxsetup.sh&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Setup VDA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;setup_vda&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;17152-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>sddm_to_lightdm_change_in_ubuntu</title>
            <link>https://wiki.autosys.tk/linux_faq/sddm_to_lightdm_change_in_ubuntu</link>
            <description>
&lt;p&gt;
Если на системе установлен &lt;strong&gt;KDE&lt;/strong&gt; + &lt;strong&gt;SDDM&lt;/strong&gt;, но нужно перейти на &lt;strong&gt;Lightdm&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install lightdm &lt;/pre&gt;

&lt;p&gt;
В процессе установки скрипт предложить выбрать новый дефолтный &lt;strong&gt;Display Manager&lt;/strong&gt;. Выбираем &lt;strong&gt;Lightdm&lt;/strong&gt; &lt;br/&gt;

Затем перезагружаемся и пробуем зайти. Если &lt;strong&gt;Lightdm&lt;/strong&gt; при старте сессии говорит, что
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Failed to start session&lt;/pre&gt;

&lt;p&gt;
значит отсутствует файлик с описанием запускаемой сессии. &lt;br/&gt;

Делаем так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#########################################################
### Set lightdm for kde-plasma-kf5 session
### user-session - /usr/share/xsessions/plasma.desktop
#########################################################
cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/lightdm/lightdm.conf
[SeatDefaults]
user-session=plasma
EOF&lt;/pre&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:26 +0000</pubDate>
        </item>
        <item>
            <title>ubuntu-14-04-в-домене-active-directory-windows</title>
            <link>https://wiki.autosys.tk/linux_faq/ubuntu-14-04-%D0%B2-%D0%B4%D0%BE%D0%BC%D0%B5%D0%BD%D0%B5-active-directory-windows</link>
            <description>
&lt;p&gt;
Итак на моем рабочем компе навернулась Windows 7 и я решил заменить ее на Ubuntu 14.04.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Установил Ubuntu 14.04 Server x64, затем установил KDE desktop:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get update &amp;amp;&amp;amp; sudo apt-get install kubuntu-dekstop&lt;/pre&gt;

&lt;h1 class=&quot;sectionedit1&quot; id=&quot;введение_в_домен_ad&quot;&gt;Введение в домен AD&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Сначала нужно сделать несколько подготовительных вещей.&lt;br/&gt;

1. Убедиться что имя локального пользователя Ubuntu не совпадает с именем доменного админа.&lt;br/&gt;

2. Прописать &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt; и &lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;-суффикс в настройках сетевого соединения. В новых версиях Ubuntu эти параметры задаются для сетевых интерфейсов и прописываются в &lt;strong&gt;/etc/network/interfaces&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# The primary network interface
auto eth0
iface eth0 inet static
address _IP_ADDRESS_
netmask _NETMASK_
gateway _GW_IP_ADDRESS_
dns-nameservers IP_DNS1_ _IP_DNS2_
dns-domain domain.name
dns-search domain.name&lt;/pre&gt;

&lt;p&gt;
Теперь можно установить необходимое ПО и ввести Ubuntu в домен.&lt;br/&gt;

Я использовал &lt;strong&gt;Power Broker Open Edition&lt;/strong&gt; - &lt;a href=&quot;http://download1.beyondtrust.com/Technical-Support/Downloads/PowerBroker-Identity-Services-Open-Edition/?Pass=True&quot; class=&quot;urlextern&quot; title=&quot;http://download1.beyondtrust.com/Technical-Support/Downloads/PowerBroker-Identity-Services-Open-Edition/?Pass=True&quot; rel=&quot;ugc nofollow&quot;&gt;http://download1.beyondtrust.com/Technical-Support/Downloads/PowerBroker-Identity-Services-Open-Edition/?Pass=True&lt;/a&gt;.&lt;br/&gt;

Этот пакет - коммерческий аналог &lt;strong&gt;likewise-open&lt;/strong&gt;. Я ставлю бесплатную версию, которая несколько менее функциональна, чем платная - частности она не поддерживает GPO.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Скачал и установил:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget http://download1.beyondtrust.com/Technical-Support/Downloads/PowerBroker-Identity-Services-Open-Edition/pbiso/850/pbis-open-8.5.0.153.linux.x86_64.deb.sh
chmod a+x pbis-open-8.5.0.153.linux.x86_64.deb.sh
sudo ./pbis-open-8.5.0.153.linux.x86_64.deb.sh&lt;/pre&gt;

&lt;p&gt;
При установке на вопрос о “legacy links” я ответил &lt;strong&gt;No&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После установки сразу можно вводить машину в домен AD:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /opt/pbis/bin/domainjoin-cli join --disable ssh domainName ADjoinAccount&lt;/pre&gt;

&lt;p&gt;
Тут &lt;strong&gt;domainName&lt;/strong&gt; - имя домена (должно нормально резолвиться), а &lt;strong&gt;ADjoinAccount&lt;/strong&gt; - имя доменной учетной записи, имеющей права на ввод машины в домен.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Теперь нужно немного отредактировать файлик &lt;strong&gt;/etc/pam.d/common-session&lt;/strong&gt;. Там находим строчку &lt;strong&gt;session sufficient pam_lsass.so&lt;/strong&gt;, комментируем ее и в самый конец файла дописываем:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;session [success=ok default=ignore] pam_lsass.so&lt;/pre&gt;

&lt;p&gt;
В конец файла эту строку нужно помещать для того, чтобы нормально отрабатывали опциональные модули, а  без &lt;strong&gt;success=ok default=ignore&lt;/strong&gt; пользователя будет пускать в систему, но KDE можно будет запустить только после логина вручную.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
После этого можно входить в систему с учетной записью, но по умолчанию KDE не предлагает вводить имя пользователя, а предлагает выбрать пользователя машкой и вводить пароль.&lt;br/&gt;

Отключить такое безобразие можно:&lt;br/&gt;

“Пуск” → Computer → System Settings → Login Screen (Light GDM). &lt;br/&gt;

Там выбираем тему &lt;strong&gt;Classic&lt;/strong&gt;.&lt;br/&gt;

Все. &lt;br/&gt;

Теперь можно перезагрузиться и логиниться с доменной учетной записью.&lt;br/&gt;

ВВодить имя можно как в виде &lt;strong&gt;DOMAIN\username&lt;/strong&gt;, так и в виде &lt;strong&gt;Username@domain.local&lt;/strong&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Все. Дальше можно работать в домене. :) Логиниться с учетной записью вида: &lt;strong&gt;DOMAIN\user&lt;/strong&gt; как локально, так и по SSH.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u0434\u043e\u043c\u0435\u043d AD&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435_\u0432_\u0434\u043e\u043c\u0435\u043d_ad&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;307-4278&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;некоторые_дополнительные_настройки&quot;&gt;Некоторые дополнительные настройки&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Список настраиваемых параметров PBIS можно получить командой:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;/opt/pbis/bin/config --list
[Eventlog]
        AllowDeleteTo
        AllowReadTo
        AllowWriteTo
        MaxDiskUsage
        MaxEventLifespan
        MaxNumEvents
[Lsass]
        DomainSeparator
        SpaceReplacement
        EnableEventlog
        LogInvalidPasswords
        Providers
[Lsass - PAM]
        DisplayMotd
        PAMLogLevel
        UserNotAllowedError
[Lsass - Active Directory provider]
        AssumeDefaultDomain
        CreateHomeDir
        CreateK5Login
        SyncSystemTime
        TrimUserMembership
        LdapSignAndSeal
        LogADNetworkConnectionEvents
        NssEnumerationEnabled
        NssGroupMembersQueryCacheOnly
        NssUserMembershipQueryCacheOnly
        RefreshUserCredentials
        CacheEntryExpiry
        DomainManagerCheckDomainOnlineInterval
        DomainManagerUnknownDomainCacheTimeout
        MachinePasswordLifespan
        MemoryCacheSizeCap
        HomeDirPrefix
        HomeDirTemplate
        RemoteHomeDirTemplate
        HomeDirUmask
        LoginShellTemplate
        SkeletonDirs
        UserDomainPrefix
        DomainManagerIgnoreAllTrusts
        DomainManagerIncludeTrustsList
        DomainManagerExcludeTrustsList
        RequireMembershipOf
        SmartcardEnabled
        SmartcardRequiredForLogin
[Lsass - Local provider]
        Local_AcceptNTLMv1
        Local_HomeDirTemplate
        Local_HomeDirUmask
        Local_LoginShellTemplate
        Local_SkeletonDirs
[User Monitor]
        UserMonitorCheckInterval
[System Initialization]
        LsassAutostart
        EventlogAutostart
        GpagentAutostart&lt;/pre&gt;

&lt;p&gt;
 &lt;br/&gt;

Чтобы не добавлять название домена к имени учетной записи при регистрации достаточно активировать “AssumeDefaultDomain”.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /opt/pbis/bin/config AssumeDefaultDomain true&lt;/pre&gt;

&lt;p&gt;
Проверить текущую установку можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;$ sudo /opt/pbis/bin/config --detail AssumeDefaultDomain
$ sudo /opt/pbis/bin/config --show AssumeDefaultDomain&lt;/pre&gt;
&lt;div class=&quot;table sectionedit3&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;6558-6584&amp;quot;} --&gt;
&lt;p&gt;
При использовании этой опции в &lt;strong&gt;/etc/sudoers&lt;/strong&gt; и в &lt;strong&gt;/etc/passwd&lt;/strong&gt; - с именем домена (pre-Windows200) в формате &lt;strong&gt;DOMAIN_NAME\username&lt;/strong&gt; с одним слешем. В обоих файлах должно быть одинаково. Если добавлять только в &lt;strong&gt;sudoers&lt;/strong&gt;, то надо добавлять без имени домена.^&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Также можно добавить доменного пользователя в файлик &lt;strong&gt;/etc/sudoers&lt;/strong&gt;, для того, чтобы работал &lt;strong&gt;sudo&lt;/strong&gt;.&lt;br/&gt;

Открываем &lt;strong&gt;/etc/sudoers&lt;/strong&gt; и добавляем туда:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;DOMAIN\\username     ALL=(ALL:ALL) ALL&lt;/pre&gt;

&lt;p&gt;
Тут нужно обратить внимание на двойной слеш в качестве разделителя &lt;strong&gt;\\&lt;/strong&gt;. Без него не работает.&lt;br/&gt;

Например, для добавления доменных админов нужно добавить строку:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;%DOMAIN\\domain^admins     ALL=(ALL:ALL) ALL&lt;/pre&gt;

&lt;p&gt;
Обращаем внимание на двойной слеш &lt;strong&gt;\\&lt;/strong&gt; и на &lt;strong&gt;^&lt;/strong&gt; вместо пробела.
&lt;/p&gt;

&lt;p&gt;
Еще может понадобиться заменить &lt;strong&gt;shell&lt;/strong&gt; (/bin/sh), устанавливаемый по-умолчанию на &lt;strong&gt;/bin/bash&lt;/strong&gt;.&lt;br/&gt;

Чтобы это сделать выполняем:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /opt/pbis/bin/config LoginShellTemplate /bin/bash&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435_\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435_\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;4279-8015&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;автоматическое_монтирование_ресурсов_-_pammount&quot;&gt;Автоматическое монтирование ресурсов - pam.mount&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Теперь можно настроить автоматическое монтирование сетевых ресурсов, например папки с профилем пользователя.&lt;br/&gt;

Тут возникает небольшое затруднение. Монтировать ресурсы можно только от имени суперпользователя. Поэтому нельзя просто положить в rc.local строку вида &lt;strong&gt;mount -t cifs //server /mountpoint&lt;/strong&gt;. &lt;br/&gt;

К счастью есть PAM-модуль &lt;strong&gt;pam_mount&lt;/strong&gt;, который позволяет монтировать ресурсы с повышенными привилегиями на этапе входа пользователя в систему. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Устанавливаем модуль:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install libpam-mount&lt;/pre&gt;

&lt;p&gt;
Оказалось, что с установками по-умолчанию модуль &lt;strong&gt;pam_mount.so&lt;/strong&gt; не монтирует ресурсы. Для того, чтобы модуль работал корректно, нужно отредактировать файл &lt;strong&gt;/etc/pam.d/common-session&lt;/strong&gt;. &lt;br/&gt;

По-умолчанию, модуль &lt;strong&gt;pam_mount.so&lt;/strong&gt; имеет флаг &lt;strong&gt;optional&lt;/strong&gt; и располагается в файле &lt;strong&gt;/etc/pam.d/common-session&lt;/strong&gt; после модуля &lt;strong&gt;pam_lsass.so&lt;/strong&gt;, который имеет флаг &lt;strong&gt;sufficient&lt;/strong&gt;. Таким образом модуль опциональный модуль &lt;strong&gt;pam_mount.so&lt;/strong&gt;  игнорируется, при корректном прохождении  достаточного для аутентификации модуля &lt;strong&gt;pam_lsass.so&lt;/strong&gt;. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Дальше конфигурируем  &lt;strong&gt;pam_mount&lt;/strong&gt;. При входе пользователя обрабатываются два файла - глобальный &lt;strong&gt;/etc/security/pam_mount.conf.xml&lt;/strong&gt; и файл &lt;strong&gt;~/.pam_mount.conf.xml&lt;/strong&gt; с ресурсами, монтируемыми индивидуально каждому пользователю.&lt;br/&gt;

Этот файл довольно неплохо откомментирован, поэтому подробно описывать не имеет смысла и реально нужно редактировать единственную строку:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;volume fstype=&amp;quot;cifs&amp;quot; server=&amp;quot;servername&amp;quot; path=&amp;quot;shared&amp;quot; mountpoint=&amp;quot;~/shared&amp;quot; options=&amp;quot;nodev,nosuid&amp;quot;/&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Соотвественно отредактировать параметры &lt;strong&gt;server&lt;/strong&gt;, &lt;strong&gt;path&lt;/strong&gt; и &lt;strong&gt;mountpoint&lt;/strong&gt;.&lt;br/&gt;

При этом, &lt;strong&gt;path&lt;/strong&gt; не должне начинаться с “/”, а сразу указывать на папку, но при этом может указывать на вложенную папку. То есть если в Windows адрес файла: &lt;strong&gt;&lt;a href=&quot;file://///server/shared/directory1/file&quot; class=&quot;windows&quot; title=&quot;\\server\shared\directory1\file&quot;&gt;\\server\shared\directory1\file&lt;/a&gt;.txt&lt;/strong&gt;, то для того чтобы он был виден в смонтированной папке - &lt;strong&gt;path&lt;/strong&gt; должен быть &lt;strong&gt;path=“shared\directory1”&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 - pam.mount&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435_\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432_-_pammount&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:9,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;8016-11157&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;pam_mount_и_сессия_ssh&quot;&gt;Pam_mount и сессия SSH&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Для того, чтобы &lt;strong&gt;pam_mount&lt;/strong&gt; корректно работал в сессии SSH  нужно отредактировать конфигурацию сервера SSH - файл &lt;strong&gt;/etc/ssh/sshd_config&lt;/strong&gt;.&lt;br/&gt;

Параметру &lt;strong&gt;ChallengeResponseAuthentication&lt;/strong&gt; дать значение &lt;strong&gt;no&lt;/strong&gt;.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Без этой правки, из-за особенностей работы OpenSSH при подключении по SSH ресурсы не монтируются с помощью &lt;strong&gt;pam_mount&lt;/strong&gt; с ошибкой:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;conv-&amp;gt;conv(...): Conversation error&lt;/pre&gt;

&lt;p&gt;
Некоторые подробности тут:&lt;br/&gt;

&lt;a href=&quot;http://community.centrify.com/t5/DirectControl-Express-for-UNIX/Try-to-auto-mount-cifs-home-dir-on-Ubuntu-using-Centrify-AD-Pam/td-p/8640&quot; class=&quot;urlextern&quot; title=&quot;http://community.centrify.com/t5/DirectControl-Express-for-UNIX/Try-to-auto-mount-cifs-home-dir-on-Ubuntu-using-Centrify-AD-Pam/td-p/8640&quot; rel=&quot;ugc nofollow&quot;&gt;http://community.centrify.com/t5/DirectControl-Express-for-UNIX/Try-to-auto-mount-cifs-home-dir-on-Ubuntu-using-Centrify-AD-Pam/td-p/8640&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://bugzilla.mindrot.org/show_bug.cgi?id=926#c35&quot; class=&quot;urlextern&quot; title=&quot;https://bugzilla.mindrot.org/show_bug.cgi?id=926#c35&quot; rel=&quot;ugc nofollow&quot;&gt;https://bugzilla.mindrot.org/show_bug.cgi?id=926#c35&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://bugzilla.mindrot.org/show_bug.cgi?id=688&quot; class=&quot;urlextern&quot; title=&quot;https://bugzilla.mindrot.org/show_bug.cgi?id=688&quot; rel=&quot;ugc nofollow&quot;&gt;https://bugzilla.mindrot.org/show_bug.cgi?id=688&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Также, это неприятное обстоятельство можно обойти выполнив в сессии SSH команду:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;su -l $USER&lt;/pre&gt;

&lt;p&gt;
То есть фактически залогинившись в сессии SSH еще раз с именем текущего пользователя. &lt;br/&gt;

В этому случае OpenSSH не принимает участия создании сессии и ресурсы монтируются. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Pam_mount \u0438 \u0441\u0435\u0441\u0441\u0438\u044f SSH&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;pam_mount_\u0438_\u0441\u0435\u0441\u0441\u0438\u044f_ssh&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:11,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;11158-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 22 Jul 2019 10:16:56 +0000</pubDate>
        </item>
        <item>
            <title>udev_network_adapters_names</title>
            <link>https://wiki.autosys.tk/linux_faq/udev_network_adapters_names</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
После смены ноутбука слетели все пароли Wi-Fi на Ubuntu 24.04. &lt;br/&gt;

Оказалось, в конфигах подключений Network Manager хранит имя девайса, а при смене адаптера оно изменилось, но это не глюк - это фича! &lt;br/&gt;

systemd/udev predictable device names - &lt;a href=&quot;https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/&quot; class=&quot;urlextern&quot; title=&quot;https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/&quot; rel=&quot;ugc nofollow&quot;&gt;https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/&lt;/a&gt; &lt;br/&gt;

У меня было имя адаптера &lt;strong&gt;wlp2s0&lt;/strong&gt;, а стало - &lt;strong&gt;wlp195s0&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-578&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;как_задать_сетевому_адаптеру_нужное_прежнее_имя&quot;&gt;Как задать сетевому адаптеру нужное (прежнее) имя&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Смотрим какие есть свойства у адаптера:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; udevadm info /sys/class/net/wlp195s0 

P: /devices/pci0000:00/0000:00:02.3/0000:c3:00.0/net/wlp195s0
M: wlp195s0
R: 0
U: net
T: wlan
I: 2
E: DEVPATH=/devices/pci0000:00/0000:00:02.3/0000:c3:00.0/net/wlp195s0
E: SUBSYSTEM=net
E: DEVTYPE=wlan
E: INTERFACE=wlp195s0
E: IFINDEX=2
E: USEC_INITIALIZED=12481317
E: ID_NET_DRIVER=mt7925e
E: ID_MM_CANDIDATE=1
E: ID_NET_NAMING_SCHEME=v255
E: ID_NET_NAME_MAC=wlxa8e291162c6a
E: ID_NET_NAME_PATH=wlp195s0
E: ID_BUS=pci
E: ID_VENDOR_ID=0x14c3
E: ID_MODEL_ID=0x7925
E: ID_PCI_CLASS_FROM_DATABASE=Network controller
E: ID_PCI_SUBCLASS_FROM_DATABASE=Network controller
E: ID_VENDOR_FROM_DATABASE=MEDIATEK Corp.
E: ID_PATH=pci-0000:c3:00.0
E: ID_PATH_TAG=pci-0000_c3_00_0
E: ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link
E: ID_NET_NAME=wlp195s0
E: NM_UNMANAGED=0
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/wlp195s0
E: TAGS=:systemd:
E: CURRENT_TAGS=:systemd:&lt;/pre&gt;

&lt;p&gt;
И формулируем какое-нибудь правило:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo nano /etc/udev/rules.d/70-persistent-net.rules&lt;/pre&gt;

&lt;p&gt;
по mac-адресу
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;SUBSYSTEM==&amp;quot;net&amp;quot;, ACTION==&amp;quot;add&amp;quot;, ATTR{address}==&amp;quot;00:11:22:33:44:55&amp;quot;, NAME=&amp;quot;net0&amp;quot;&lt;/pre&gt;

&lt;p&gt;
по vendor/device
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;SUBSYSTEM==&amp;quot;net&amp;quot;, ACTION==&amp;quot;add&amp;quot;, ATTRS{vendor}==&amp;quot;0x14c3&amp;quot;, ATTRS{device}==&amp;quot;0x7925&amp;quot;, NAME=&amp;quot;wlp2s0&amp;quot;&lt;/pre&gt;

&lt;p&gt;
И применим
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo udevadm control --reload
sudo udevadm trigger&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u0437\u0430\u0434\u0430\u0442\u044c \u0441\u0435\u0442\u0435\u0432\u043e\u043c\u0443 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0443 \u043d\u0443\u0436\u043d\u043e\u0435 (\u043f\u0440\u0435\u0436\u043d\u0435\u0435) \u0438\u043c\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0437\u0430\u0434\u0430\u0442\u044c_\u0441\u0435\u0442\u0435\u0432\u043e\u043c\u0443_\u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0443_\u043d\u0443\u0436\u043d\u043e\u0435_\u043f\u0440\u0435\u0436\u043d\u0435\u0435_\u0438\u043c\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;579-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Wed, 04 Jun 2025 08:23:19 +0000</pubDate>
        </item>
        <item>
            <title>whatsapp_extension</title>
            <link>https://wiki.autosys.tk/linux_faq/whatsapp_extension</link>
            <description>
&lt;p&gt;
Вот расширение для &lt;strong&gt;Firefox&lt;/strong&gt;, которое предоставляет доступ к web-интерфейсу &lt;strong&gt;WhatsApp&lt;/strong&gt;. &lt;br/&gt;

Мне оно нравится больше всех, однако оно пропало из коллекции расширений: &lt;a href=&quot;https://wiki.autosys.tk/_media/linux_faq/jid1-uqweawsca3fxuo_jetpack.zip&quot; class=&quot;media mediafile mf_zip&quot; title=&quot;linux_faq:jid1-uqweawsca3fxuo_jetpack.zip (53.5 KB)&quot;&gt; Desktop messenger for WhatsApp™ 0.2.7&lt;/a&gt;
&lt;/p&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>xenserver-6-2-в-виртуальнои-машине-kvm-на-базе-ubuntu-14-04-nested-guest ...</title>
            <link>https://wiki.autosys.tk/linux_faq/xenserver-6-2-%D0%B2-%D0%B2%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B8-%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D0%B5-kvm-%D0%BD%D0%B0-%D0%B1%D0%B0%D0%B7%D0%B5-ubuntu-14-04-nested-guest-vm-in-kvm</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;преамбула&quot;&gt;Преамбула&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Для тестирования разнообразных виртуальных конфигураций обычно требуется несколько физических хостов. Это далеко не всегда удобно, а иногда и невозможно. &lt;br/&gt;

Выход есть - это “вложенные” (nested) виртуальные машины, когда есть гипервизор установленный непосредственно на железо(уровень L0), в нем запускается виртуальная машина с другим гипервизором (уровень L1), а затем в гипервизоре уровня L1 запускаются еще виртуальные машины. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0435\u0430\u043c\u0431\u0443\u043b\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0435\u0430\u043c\u0431\u0443\u043b\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-811&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;возможные_пути_решения&quot;&gt;Возможные пути решения&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Nested виртуализация поддерживается VMWare ESXi 5.x. Об этом есть статьи в интернете. И у меня немного тоже есть - &lt;a href=&quot;https://wiki.autosys.tk/linux_faq/vmware.%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA-%D0%B4%D1%80%D1%83%D0%B3%D0%B8%D1%85-%D0%B3%D0%B8%D0%BF%D0%B5%D1%80%D0%B2%D0%B8%D0%B7%D0%BE%D1%80%D0%BE%D0%B2-%D0%B2-esxi-5&quot; class=&quot;wikilink2&quot; title=&quot;linux_faq:vmware.запуск-других-гипервизоров-в-esxi-5&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;linux_faq:vmware.запуск-других-гипервизоров-в-esxi-5&quot;&gt;Запуск других гипервизоров в ESXi 5&lt;/a&gt;.&lt;br/&gt;

Также “вложенные” гипервизоры можно запускать в KVM. Я попытался сделать это в Ubuntu 14.04. &lt;br/&gt;

Обязательное условие - поддержка процессором технологий Intel VT-x или AMD-V, то есть наличие флага &lt;strong&gt;vmx&lt;/strong&gt; для процессоров Intel или &lt;strong&gt;svm&lt;/strong&gt; для процессоров AMD. &lt;br/&gt;

Посмотреть наличие этих флагов можно в выводе команды:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cat /proc/cpuinfo&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043f\u0443\u0442\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435_\u043f\u0443\u0442\u0438_\u0440\u0435\u0448\u0435\u043d\u0438\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;812-1752&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;что_получилось_у_меня&quot;&gt;Что получилось у меня&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Я попробывал запустить XenServer 6.2 под ESXi 5.5 и он запустился. Но с ESXi невозможно работать на ноутбуке. &lt;br/&gt;

Решение пришло в виде Ubuntu 14.04 Server + KVM.&lt;br/&gt;

Я поставил Ubuntu 14.04 Server, при установке я указал что хочу KVM host, а затем поставил desktop от KDE. Для управления виртуальными машинами установил virt-manager:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install virt-manager&lt;/pre&gt;

&lt;p&gt;
Дальше оказалось нужно проверить возможность запуска вложенных гипервизоров в KVM. Для этого выполняем:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;$ cat /sys/module/kvm_intel/parameters/nested
Y&lt;/pre&gt;

&lt;p&gt;
Если в вывод &lt;strong&gt;Y&lt;/strong&gt;, значит поддержка вложенных VM уже включена.&lt;br/&gt;

Если нет - делаем как написано тут: &lt;a href=&quot;http://www.rdoxenham.com/?p=275&quot; class=&quot;urlextern&quot; title=&quot;http://www.rdoxenham.com/?p=275&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.rdoxenham.com/?p=275&lt;/a&gt;.&lt;br/&gt;

У меня на свежеустановленной Ubuntu 14.04 все уже было включено.&lt;br/&gt;

Как написано во многих мануалах - в виртуальной машине с гипервизором нужен процессор с поддержкой &lt;strong&gt;vmx&lt;/strong&gt;. Ее можно специально включить либо в &lt;strong&gt;virt-manager&lt;/strong&gt;, указав в конфигурации процессора в &lt;strong&gt;Processor&lt;/strong&gt; → &lt;strong&gt;Configuration&lt;/strong&gt; → &lt;strong&gt;CPU Features&lt;/strong&gt; → &lt;strong&gt;vmx - require&lt;/strong&gt;, либо в конфигурационном xml-файле вирутальной машины в папке &lt;strong&gt;/etc/libvirt/qemu/&lt;/strong&gt; строкой:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;feature policy=&amp;#039;require&amp;#039; name=&amp;#039;vmx&amp;#039;/&amp;gt;&lt;/pre&gt;

&lt;p&gt;
 в секции &lt;strong&gt;cpu&lt;/strong&gt;. &lt;br/&gt;

Итак - я создал виртуальную машину типа Generic, дал ей 4 Gb памяти, включил &lt;strong&gt;vmx&lt;/strong&gt;, в дополнительных свойствах указал &lt;strong&gt;Virt-type: kvm&lt;/strong&gt; и &lt;strong&gt;Architecure: x86_64&lt;/strong&gt; и запустил инсталлятор XenServer 6.2. &lt;br/&gt;

Инсталлятор запустился, я обрадовался, но быстро обломался. При установке XenServer 6.2 инсталлятор бодро сообщал мне что &lt;strong&gt;Hardware virtualization assist support is not available on this system. &lt;/strong&gt;. Это было обидно. Это означало однозначную невозможность запустить в этом гипервизоре Windows. Несколько часов гугления не давали результата. Перебор различных вариантов параметров виртуальной машины под XenServer тоже. &lt;br/&gt;

И вот я обнаружил таких же страдальцев на багтрекере ядра Linux - &lt;a href=&quot;https://bugzilla.kernel.org/show_bug.cgi?id=45931&quot; class=&quot;urlextern&quot; title=&quot;https://bugzilla.kernel.org/show_bug.cgi?id=45931&quot; rel=&quot;ugc nofollow&quot;&gt;https://bugzilla.kernel.org/show_bug.cgi?id=45931&lt;/a&gt;. Они сообщали, что проблема в единственной строке кода и патч будет включен в версию ядра 3.16, а состав Ubuntu 14.04 входит ядро 3.13. К моему счастью я обнаружил, что для Ubuntu вышел релиз-кандидат ядра версии 3.16RC2. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Обновление ядра вышло предельно простым:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-rc2-utopic/linux-headers-3.16.0-031600rc2_3.16.0-031600rc2.201406220135_all.deb
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-rc2-utopic/linux-headers-3.16.0-031600rc2-generic_3.16.0-031600rc2.201406220135_amd64.deb
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-rc2-utopic/linux-image-3.16.0-031600rc2-generic_3.16.0-031600rc2.201406220135_amd64.deb
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-rc2-utopic/linux-image-3.16.0-031600rc2-generic_3.16.0-031600rc2.201406220135_amd64.deb
sudo dpkg -i linux-headers-3.16*.deb linux-image-3.16*.deb&lt;/pre&gt;

&lt;p&gt;
В результате я смог установить XenServer 6.2 и запустить в нем виртуальную машину в режиме HVM и в ней установку Windows 7 x64, однако установка зависает в разных местах. Самое большее что пока удалось сделать - дойти до копирования файлов. Хотя, есть подозрение, что XenServer останавливается сам, независимо от того, работают на нем виртуальные машины или нет. Кстати - аналогичное зависание XenServer 6.2 наблюдается и под VirtualBox в среде Windows. Там удается установить какой-нибудь Linux в режиме PV, но потом XenServer виснет в произвольном месте.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Продолжение следует.  
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0427\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0443 \u043c\u0435\u043d\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0447\u0442\u043e_\u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c_\u0443_\u043c\u0435\u043d\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1753-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>автоматическое_подключение_к_серверам_при_запуске_re ...</title>
            <link>https://wiki.autosys.tk/linux_faq/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BA_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0%D0%BC_%D0%BF%D1%80%D0%B8_%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%B5_remmina</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;автоматическое_подключение_к_серверам_при_запуске_remmina&quot;&gt;Автоматическое подключение к серверам при запуске remmina&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Для работы с Windows серверами я пользуюсь &lt;strong&gt;Remmina&lt;/strong&gt; - отличный &lt;strong&gt;&lt;abbr title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/abbr&gt;&lt;/strong&gt; для &lt;strong&gt;freerdp&lt;/strong&gt;. &lt;br/&gt;

И единственное что мне не очень нравилось - это то что он не умеет автоматически запускать подключения к выбранным серверам при запуске. &lt;br/&gt;

К счастью, при запуске remmina из командной строки можно указать какой файл с конфигурацией подключения использовать. Файлы подключений хранятся в папке &lt;strong&gt;~/.remmina/&lt;/strong&gt; &lt;br/&gt;

Для автоматического подключения при запуске нужно отредактировать файл ярлыка - &lt;strong&gt;/usr/share/applications/remmina.desktop&lt;/strong&gt; &lt;br/&gt;

В нем ищем строку:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Exec=/usr/bin/remmina&lt;/pre&gt;

&lt;p&gt;
И исправляем ее на &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Exec=/usr/bin/remmina.sh&lt;/pre&gt;

&lt;p&gt;
После этого создаем файл &lt;strong&gt;/usr/bin/remmina.sh&lt;/strong&gt; такого содержания:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;#!/bin/sh
/usr/bin/remmina -c ~/.remmina/1429802343570.remmina &amp;amp; 
/usr/bin/remmina -c ~/.remmina/1432220959159.remmina &amp;amp; 
/usr/bin/remmina -c ~/.remmina/1421141033575.remmina &amp;amp; 
/usr/bin/remmina -c ~/.remmina/1421140742617.remmina &amp;amp; 
/usr/bin/remmina -c ~/.remmina/1421141884953.remmina &amp;amp; 
/usr/bin/remmina -c ~/.remmina/1421141945745.remmina &amp;amp; &lt;/pre&gt;

&lt;p&gt;
Обнаружить какой файл подключения какому серверу соответсвует можно командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;grep -rl servername ~/.remmina &lt;/pre&gt;

&lt;p&gt;
Все. Дальше остается только сделать 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo chmod a+x /usr/bin/remmina.sh&lt;/pre&gt;

&lt;/div&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>настройка_wiasane_sane</title>
            <link>https://wiki.autosys.tk/linux_faq/%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_wiasane_sane</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;задача&quot;&gt;Задача&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
У меня была задача - сделать &lt;strong&gt;скан-сервер&lt;/strong&gt; (по аналогии с принт-сервером) для &lt;strong&gt;Windows&lt;/strong&gt;-клиентов. То есть сервер, который бы предоставлял пользователям доступ к сканерам по сети. В результате должен получиться единый унифицированный интерфейс доступа к сканерам. &lt;br/&gt;

На клиентских машинах прописывается подключение к сканеру на скан-сервере с помощью унифицированного драйвера. А на скан-сервере уже подключение к физическому устройству с использованием драйвера, специфичного для данного устройства. Таким образом, даже физическая замена сканера на другое устройство будет приводить только к необходимости переконфигурирования устройства на скан-сервере, но не на клиентах.&lt;br/&gt;

В частности - было необходимо, чтобы пользователи фермы &lt;strong&gt;Citrix XenApp&lt;/strong&gt; могли сканировать с сетевых (Ethernet) сканеров (МФУ HP). То есть на каждом терминальном сервере должны быть установлены все сканеры, а пользователь получал бы доступ к одному из них (или нескольким) в зависимости от того, включен он в группу, соответствующую этому сканеру. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u0434\u0430\u0447\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1875&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;архитектура_и_компоненты&quot;&gt;Архитектура и компоненты&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
В качестве программной части скан-сервера выступает &lt;a href=&quot;http://www.sane-project.org/&quot; class=&quot;urlextern&quot; title=&quot;http://www.sane-project.org/&quot; rel=&quot;ugc nofollow&quot;&gt;SANE&lt;/a&gt;, который предоставляет унифицированный интерфейс для доступа к разнообразным сканирующим устройствам. &lt;br/&gt;

В качестве унифицированного драйвера для Windows выступил &lt;a href=&quot;https://github.com/mback2k/wiasane&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/mback2k/wiasane&quot; rel=&quot;ugc nofollow&quot;&gt;WIASANE&lt;/a&gt;. Это драйвер для Windows, позволяющий сканировать по протоколу &lt;strong&gt;SANE&lt;/strong&gt;. В системе устанавливается &lt;strong&gt;WIA (Windows Image Acquisition)&lt;/strong&gt; устройство, обращения к которому перенаправляются к устройству по протоколу &lt;strong&gt;SANE&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430_\u0438_\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1876-2772&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;настройка_скан-сервере_sane&quot;&gt;Настройка скан-сервере SANE&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0441\u043a\u0430\u043d-\u0441\u0435\u0440\u0432\u0435\u0440\u0435 SANE&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0441\u043a\u0430\u043d-\u0441\u0435\u0440\u0432\u0435\u0440\u0435_sane&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2773-2835&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;установка_sane_на_ubuntu_1404&quot;&gt;Установка SANE на Ubuntu 14.04&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install sane sane-utils libsane-extras&lt;/pre&gt;

&lt;p&gt;
 Затем как предписывает документация нужно проверить тут &lt;a href=&quot;http://www.sane-project.org/sane-mfgs.html&quot; class=&quot;urlextern&quot; title=&quot;http://www.sane-project.org/sane-mfgs.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.sane-project.org/sane-mfgs.html&lt;/a&gt;, что сканнер поддерживается и включить в файле &lt;strong&gt;/etc/sane.d/dll.conf&lt;/strong&gt; соответствующий &lt;strong&gt;backend&lt;/strong&gt; (раскомментировав нужную строку).
После этого включаем sane в режим сервера. В файлике &lt;strong&gt;/etc/default/saned&lt;/strong&gt; прописываем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;# Set to yes to start saned                                                     
RUN=yes  &lt;/pre&gt;

&lt;p&gt;
И прописываем сеть из которой будет доступен демон &lt;strong&gt;saned&lt;/strong&gt; в файлике: &lt;strong&gt;/etc/sane.d/saned.conf&lt;/strong&gt;.
Там можно указать как отдельный хост, так и целую сеть. Для того, чтобы дать доступ к saned с любого IP-адреса нужно добавить строку с одним символом &lt;strong&gt;+&lt;/strong&gt; (плюсик).
&lt;/p&gt;

&lt;p&gt;
Мне нужно настроить работу SANE с МФУ HP M521 и 1536.
Поэтому - ставим модуль &lt;strong&gt;libsane-hpaio&lt;/strong&gt;, который будет работать с сетевым интерфейсом &lt;strong&gt;hpaio&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install libsane-hpaio&lt;/pre&gt;

&lt;p&gt;
Если нужного модуля нет, то в дальнейшем команда &lt;strong&gt;scanimage -L&lt;/strong&gt; будет вываливаться с ошибкой &lt;strong&gt;Segmentation fault (core dumped)&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
На всякий случай проверяем наличие в файлике &lt;strong&gt;/etc/services&lt;/strong&gt; строки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sane-port 6566/tcp sane saned # SANE&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 SANE \u043d\u0430 Ubuntu 14.04&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_sane_\u043d\u0430_ubuntu_1404&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;2836-4617&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;тестирование_saned&quot;&gt;Тестирование SANEd&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Во первых - можно включить тестовый бекенд &lt;strong&gt;test&lt;/strong&gt;. Для этого в файлике &lt;strong&gt;/etc/sane.d/dll.conf&lt;/strong&gt; нужно раскомментировать/добавить строку &lt;strong&gt;test&lt;/strong&gt;. В результате сервер начнет отдавать пару сканеров:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;device `net:localhost:test:0&amp;#039; is a Noname frontend-tester virtual device
device `net:localhost:test:1&amp;#039; is a Noname frontend-tester virtual device&lt;/pre&gt;

&lt;p&gt;
Если сервер sane работает как-то не так, то можно запустить его в режиме дебага, в котором он будет выдавать много полезной информации. Для начала нужно остановить его командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /etc/init.d/saned stop&lt;/pre&gt;

&lt;p&gt;
И запустить в debug-режиме:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /usr/sbin/saned -d&lt;/pre&gt;

&lt;p&gt;
Или в более подробном варианте:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /usr/sbin/saned -d128&lt;/pre&gt;

&lt;p&gt;
C какой-либо рабочей станции с Linux (на которой установлены &lt;strong&gt;sane sane-utils libsane-extras&lt;/strong&gt;) можно попробывать подключиться к saned:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scanimage -d net:&amp;lt;ip adderss of saned&amp;gt;:test -T&lt;/pre&gt;

&lt;p&gt;
Если все хорошо, то вывод будет примерно такой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scanimage: scanning image of size 157x196 pixels at 8 bits/pixel
scanimage: acquiring gray frame, 8 bits/sample
scanimage: reading one scanline, 157 bytes...   PASS
scanimage: reading one byte...          PASS
scanimage: stepped read, 2 bytes...     PASS
scanimage: stepped read, 4 bytes...     PASS
scanimage: stepped read, 8 bytes...     PASS
scanimage: stepped read, 16 bytes...    PASS
scanimage: stepped read, 32 bytes...    PASS
scanimage: stepped read, 64 bytes...    PASS
scanimage: stepped read, 128 bytes...   PASS
scanimage: stepped read, 256 bytes...   PASS
scanimage: stepped read, 255 bytes...   PASS
scanimage: stepped read, 127 bytes...   PASS
scanimage: stepped read, 63 bytes...    PASS
scanimage: stepped read, 31 bytes...    PASS
scanimage: stepped read, 15 bytes...    PASS
scanimage: stepped read, 7 bytes...     PASS
scanimage: stepped read, 3 bytes...     PASS&lt;/pre&gt;

&lt;p&gt;
На рабочей станции с Linux можно прописать адрес сервера &lt;strong&gt;saned&lt;/strong&gt;, чтобы команда &lt;strong&gt;scanimage&lt;/strong&gt; знала откуда брать сканеры. Для этого редактируем файлик &lt;strong&gt;/etc/sane.d/net.conf&lt;/strong&gt; и в конец дописываем IP-адрес сервера &lt;strong&gt;saned&lt;/strong&gt;. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 SANEd&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_saned&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;4618-7282&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;установка_устройств_hp&quot;&gt;Установка устройств HP&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Для работы с устройствами HP нужен пакет &lt;strong&gt;HPLIP&lt;/strong&gt; (HP Linux Imaging and Printing System). Его можно либо скачать с сайта HP, либо из репозиториев Ubuntu. На Ubuntu 14.04.02 я устанавливал из репозиториев. 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install hplip&lt;/pre&gt;

&lt;p&gt;
Поставилась версия 3.14.3 и с ней удалось сканировать по сети через &lt;strong&gt;saned&lt;/strong&gt; с клиента Ubuntu.
&lt;/p&gt;

&lt;p&gt;
С сайта HP можно скачать гораздо более новую версию, но с ней у меня так и не получилось сканировать  по сети через &lt;strong&gt;saned&lt;/strong&gt;. Но на всякий случай:
Скачиваем HPLIP - &lt;a href=&quot;http://hplipopensource.com/hplip-web/gethplip.html&quot; class=&quot;urlextern&quot; title=&quot;http://hplipopensource.com/hplip-web/gethplip.html&quot; rel=&quot;ugc nofollow&quot;&gt;http://hplipopensource.com/hplip-web/gethplip.html&lt;/a&gt;
Скачиваем и ставим. Ставить рекомендуют под обычным пользюком (не под root):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget http://vorboss.dl.sourceforge.net/project/hplip/hplip/3.15.7/hplip-3.15.7.run
chmod a+x hplip-3.15.7.run 
./hplip-3.15.7.run&lt;/pre&gt;

&lt;p&gt;
Запускать инсталлер можно под обычным юзером. В процессе установки он попросит пароль чтобы выполнить установку от имени root.
&lt;/p&gt;

&lt;p&gt;
Если в интернет система выходит через proxy, то нужно объявить об этом до установки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;export http_proxy=http://host.com:port/
export ftp_proxy=http://host.com:port/
export no_proxy=.domain.com
export HTTP_PROXY=http://host.com:port/
export FTP_PROXY=http://host.com:port/&lt;/pre&gt;

&lt;p&gt;
А также прописать &lt;strong&gt;http_proxy&lt;/strong&gt;, &lt;strong&gt;https_proxy&lt;/strong&gt; и &lt;strong&gt;ftp_proxy&lt;/strong&gt; в файлике &lt;strong&gt;/etc/wgetrc&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
А после установки нужно установить плагины:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;hp-plugin -i&lt;/pre&gt;

&lt;p&gt;
А затем установить принтер/сканер:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo hp-setup -i -a &amp;lt;ip address of printer&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Теперь сканер должен появляться при выполнении команды:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scanimage -L&lt;/pre&gt;

&lt;p&gt;
Если там его нет, то генерируем &lt;abbr title=&quot;Uniform Resource Identifier&quot;&gt;URI&lt;/abbr&gt; для этого сканера. Делать это необязательно, но во многих мануалах это действие присутствует:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;hp-makeuri &amp;lt;ip address of printer&amp;gt;&lt;/pre&gt;

&lt;p&gt;
В выдаче будет строка типа: &lt;strong&gt;hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.203.1&lt;/strong&gt;
Для поверки состояния сканера берем строку с &lt;abbr title=&quot;Uniform Resource Identifier&quot;&gt;URI&lt;/abbr&gt; сканера и подставляем в команду:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scanimage --device=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.203.1 -T&lt;/pre&gt;

&lt;p&gt;
В результате должны вывалиться результаты тестов: PASSED.
&lt;/p&gt;

&lt;p&gt;
Команда
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scanimage -L&lt;/pre&gt;

&lt;p&gt;
Должна выдавать список сканеров. Если она этого не делает, возможно, дело в файлике &lt;strong&gt;/etc/cups/printers.conf&lt;/strong&gt;. В нем нужно заменить значение параметра  &lt;strong&gt;DeviceURI&lt;/strong&gt;. Там может быть либо что-то про &lt;strong&gt;socket&lt;/strong&gt;, а должно быть то что возвращает команда  &lt;strong&gt;hp-makeuri&lt;/strong&gt; в строчке CUPS &lt;abbr title=&quot;Uniform Resource Identifier&quot;&gt;URI&lt;/abbr&gt;. Что-то типа &lt;strong&gt;hp:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.203.1&lt;/strong&gt;. После правки этого файла нужно перезапустить &lt;strong&gt;cups&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /etc/init.d/cups restart&lt;/pre&gt;

&lt;p&gt;
Теперь сканировать на сервере saned из командной строки можно так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scanimage --device &amp;quot;hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.203.1&amp;quot; --mode Color --resolution 300 &amp;gt; ~/scan.jpg&lt;/pre&gt;

&lt;p&gt;
Если списка сканеров нет совсем или там нет нужного. то можно включить дебаг:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;SANE_DEBUG_NET=128 SANE_DEBUG_DLL=128 scanimage -L&lt;/pre&gt;

&lt;p&gt;
Сканировать с клиента Linux можно командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scanimage --device &amp;quot;net:10.50.6.218:hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.203.1&amp;quot; --mode Color --resolution 300 &amp;gt; ~/scan.jpg&lt;/pre&gt;

&lt;p&gt;
Тут укаываем, что используем бекэнд &lt;strong&gt;net&lt;/strong&gt;, затем через двоеточие адрес сервера &lt;strong&gt;saned&lt;/strong&gt; и затем &lt;strong&gt;&lt;abbr title=&quot;Uniform Resource Identifier&quot;&gt;URI&lt;/abbr&gt;&lt;/strong&gt; сканера.&lt;br/&gt;

&lt;br/&gt;

Иногда бывает, что сканер поставился, но при попытках сканировать сообщает: &lt;strong&gt;Error during device I/O&lt;/strong&gt;. Вероятно нужно удалить его и поставить снова.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 HP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432_hp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;7283-11947&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit7&quot; id=&quot;удаление_принтера-сканера&quot;&gt;Удаление принтера-сканера&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Обычно на сервере сканирования устанавливается несколько принтеров одинаковой модели. Для того, чтобы узнакть какой именно принтер надо удалить - открываем файлик &lt;strong&gt;/etc/cups/printers.conf&lt;/strong&gt; и ищем по IP-адресу как именно называется устройство.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo cat /etc/cups/printers.conf
sudo hp-setup -i -r&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u0430-\u0441\u043a\u0430\u043d\u0435\u0440\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435_\u043f\u0440\u0438\u043d\u0442\u0435\u0440\u0430-\u0441\u043a\u0430\u043d\u0435\u0440\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;11948-12494&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit8&quot; id=&quot;настройка_фронтэндов_под_windows&quot;&gt;Настройка фронтэндов под Windows&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0444\u0440\u043e\u043d\u0442\u044d\u043d\u0434\u043e\u0432 \u043f\u043e\u0434 Windows&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0444\u0440\u043e\u043d\u0442\u044d\u043d\u0434\u043e\u0432_\u043f\u043e\u0434_windows&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;12495-12563&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit9&quot; id=&quot;wiasane&quot;&gt;WiaSane&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;wiasane&lt;/strong&gt; - это обертка для &lt;strong&gt;sane&lt;/strong&gt;, которая предоставляет WIA интерфейс к сканерам &lt;strong&gt;saned&lt;/strong&gt;. &lt;br/&gt;

Настроить wiasane (0.1.1.9) с устройствами &lt;strong&gt;hpaio:/net/…&lt;/strong&gt; удалось только после патчинга драйверов &lt;strong&gt;HPLIP&lt;/strong&gt;. Со стандартным драйвером программа пытается получать список сканеров с сервера &lt;strong&gt;sane&lt;/strong&gt;, но сервер не отдает эти устройства. Помогает патчинг драйвера. Смотри ниже. &lt;br/&gt;

Рабочая сборка - &lt;a href=&quot;https://wiki.autosys.tk/_media/linux_faq/sane_wia_driver.zip&quot; class=&quot;media mediafile mf_zip&quot; title=&quot;linux_faq:sane_wia_driver.zip (629.3 KB)&quot;&gt;sane_wia_driver.zip&lt;/a&gt;. Она доработана для того, чтобы прописывать сканеры скриптом.
Если возникают проблемы с установкой драйвера (он просто не ставится), то скорее всего не установлен &lt;a href=&quot;https://www.microsoft.com/en-us/download/confirmation.aspx?id=30679&quot; class=&quot;urlextern&quot; title=&quot;https://www.microsoft.com/en-us/download/confirmation.aspx?id=30679&quot; rel=&quot;ugc nofollow&quot;&gt;Visual C++ Redistributable for Visual Studio&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Скрипт для пакетного прописывания сканеров такой: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;devsane.exe device uninstall wiasane.inf
devsane.exe driver uninstall wiasane.inf
devsane.exe driver install wiasane.inf
del /f /q &amp;quot;c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;

devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M1530 Gilyar 6&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_M1536dnf_MFP?ip=10.90.32.74 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M1530 Gilyar 7&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_M1536dnf_MFP?ip=10.90.32.6 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Volokolamsk&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_M1536dnf_MFP?ip=10.166.243.200 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 PavlPosad&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.203.1 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 ul.Dm.Ulyanova&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.204.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Schelkovo&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.234.3 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Orehovo-Zuevo&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.207.1 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Kolomna&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.225.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Kozhuhovo&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.226.1 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Chehov&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.211.1 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Kashira&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.237.10 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Lobnya&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.223.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Podolsk&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.214.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Shatura&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.244.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Klin&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.209.3 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Noginsk&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.215.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Egor&amp;#039;evsk&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.229.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Zheleznodorozhnyj&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.239.1 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 B.Tishinskiy&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.206.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Balashiha&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.233.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Mytishi&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.217.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Lubertsy&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.221.2 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;
devsane.exe device install wiasane.inf -x=1 &amp;quot;-f=M521 Zvenigorod&amp;quot; -h=10.50.6.218 -p=6566 -r=hpaio:/net/HP_LaserJet_Pro_MFP_M521dn?ip=10.166.218.1 -u= -s= &amp;quot;-l=c:\Program Files\SANE WIA Driver\_device install.log&amp;quot;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;WiaSane&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;wiasane&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;12564-18806&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit10&quot; id=&quot;sanewinds&quot;&gt;SaneWinDS&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Может сканировать. Удается вставить &lt;abbr title=&quot;Uniform Resource Identifier&quot;&gt;URI&lt;/abbr&gt; сканера в соотвествующее поле и сканировать. Но сам фронтенд (версия 0.9.5589) пока что очень убогий и годится только для тестов.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;SaneWinDS&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;sanewinds&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;18807-19128&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit11&quot; id=&quot;swingsane&quot;&gt;SwingSane&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Не удалось.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;SwingSane&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;swingsane&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;19129-19172&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit12&quot; id=&quot;патчим_драйвер_hplip_чтобы_работали_сканеры_netsaned_iphpaionethp&quot;&gt;Патчим драйвер hplip чтобы работали сканеры net:_saned_IP_:hpaio:/net/HP_&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Если при попытке прописать сканер &lt;strong&gt;wiasane&lt;/strong&gt; не обнаружвает сканер, то, скорее это связано с багом в библиотеках &lt;strong&gt;hplip&lt;/strong&gt; на сервере saned. Исправить ситуацию можно собрав &lt;strong&gt;hplip&lt;/strong&gt; из исходников и применив патч, описанный тут: &lt;a href=&quot;https://sourceforge.net/p/hplip/mailman/message/2564768/&quot; class=&quot;urlextern&quot; title=&quot;https://sourceforge.net/p/hplip/mailman/message/2564768/&quot; rel=&quot;ugc nofollow&quot;&gt;https://sourceforge.net/p/hplip/mailman/message/2564768/&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Останавливаем &lt;strong&gt;saned&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /etc/init.d/saned stop&lt;/pre&gt;

&lt;p&gt;
Удаляем старый &lt;strong&gt;hplip&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get remove hplip&lt;/pre&gt;

&lt;p&gt;
Cкачиваем исходники драйвера: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget http://downloads.sourceforge.net/project/hplip/hplip/3.15.7/hplip-3.15.7_py2.5.tar&lt;/pre&gt;

&lt;p&gt;
Рядом с распакованным архивом кладем патч &lt;a href=&quot;https://wiki.autosys.tk/_media/linux_faq/hplip_sane_patch_and_make.rar&quot; class=&quot;media mediafile mf_rar&quot; title=&quot;linux_faq:hplip_sane_patch_and_make.rar (1.1 KB)&quot;&gt;hplip_sane_patch_and_make.rar&lt;/a&gt; (&lt;strong&gt;hplip-sane-patch.sh&lt;/strong&gt; и &lt;strong&gt;hplip-sane-patch.diff&lt;/strong&gt;) распаковываем и применяем его:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;chmod a+x ./hplip-sane-patch.sh &amp;amp;&amp;amp; ./hplip-sane-patch.sh&lt;/pre&gt;

&lt;p&gt;
Дальше собираем по инструкции:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;http://hplipopensource.com/hplip-web/install/manual/distros/ubuntu.html&lt;/pre&gt;

&lt;p&gt;
Для &lt;strong&gt;Ubuntu 14.04&lt;/strong&gt; будет так:   
Ставим зависимости:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo apt-get install --assume-yes build-essential avahi-utils libcups2 cups libcups2-dev cups-bsd cups-client libcupsimage2-dev libdbus-1-dev build-essential ghostscript openssl libjpeg-dev libsnmp-dev snmp-mibs-downloader libtool libusb-1.0.0-dev wget policykit-1 policykit-1-gnome python3-dbus python3-gi python3-dev python3-notify2 python3-pil python3-pyqt4 gtk2-engines-pixbuf python3-dbus.mainloop.qt python3-reportlab python3-lxml libsane libsane-dev sane-utils xsane&lt;/pre&gt;

&lt;p&gt;
Конфигурим:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;./configure --with-hpppddir=/usr/share/ppd/HP --libdir=/usr/lib --prefix=/usr --enable-qt4 --disable-libusb01_build --enable-doc-build --disable-cups-ppd-install --disable-foomatic-drv-install --disable-foomatic-ppd-install --disable-hpijs-install --disable-udev_sysfs_rules --disable-policykit --enable-cups-drv-install --enable-hpcups-install --enable-network-build --enable-dbus-build --enable-scan-build --enable-fax-build&lt;/pre&gt;

&lt;p&gt;
Компилим:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;make&lt;/pre&gt;

&lt;p&gt;
Ставим:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;make install&lt;/pre&gt;

&lt;p&gt;
Затем ставим плагин:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;hp-plugin -i&lt;/pre&gt;

&lt;p&gt;
И собственно принтер/сканер:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo hp-setup -i -a &amp;lt;ip address of printer&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Теперь можно запустить &lt;strong&gt;saned&lt;/strong&gt;, настроить на клиенте backend net и проверяем с удаленного клиента:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo /etc/init.d/saned start&lt;/pre&gt;

&lt;p&gt;
И на клиенте проверяем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;scanimage -L&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0430\u0442\u0447\u0438\u043c \u0434\u0440\u0430\u0439\u0432\u0435\u0440 hplip \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0441\u043a\u0430\u043d\u0435\u0440\u044b net:_saned_IP_:hpaio:\/net\/HP_&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0430\u0442\u0447\u0438\u043c_\u0434\u0440\u0430\u0439\u0432\u0435\u0440_hplip_\u0447\u0442\u043e\u0431\u044b_\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438_\u0441\u043a\u0430\u043d\u0435\u0440\u044b_netsaned_iphpaionethp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;19173-22039&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit13&quot; id=&quot;прописываем_пользователям_сканеры_в_naps2_в_соответствии_с_группами_ad&quot;&gt;Прописываем пользователям сканеры в NAPS2 в соответствии с группами AD&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Для сканирования я применяю бесплатную опенсорсную утилитку &lt;strong&gt;NAPS2&lt;/strong&gt; - &lt;a href=&quot;http://sourceforge.net/projects/naps2/&quot; class=&quot;urlextern&quot; title=&quot;http://sourceforge.net/projects/naps2/&quot; rel=&quot;ugc nofollow&quot;&gt;http://sourceforge.net/projects/naps2/&lt;/a&gt; &lt;br/&gt;

Если на терминальном сервере много сканеров, то пользователю неудобно выбирать каждый раз нужный.
Можно создавать профили &lt;strong&gt;NAPS2&lt;/strong&gt; в зависимости от того, в какие группы входит пользователь.&lt;br/&gt;

Каждому сканеру сопоставлена групппа. Если пользовтаель входит в группу - ему пропишется нужный сканер. Названия групп и сканеров разные, потому что группы изначально использовались для прописывания принтеров. Но можно сделать их одинаковыми и тогда скриптец немного упростится. &lt;br/&gt;

Вот этот скриптец VBS для прописывания сканеров в &lt;strong&gt;NAPS2&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Dim dicScanGroups, arrGroups
Set dicScanGroups = CreateObject(&amp;quot;Scripting.Dictionary&amp;quot;)
&amp;#039;Заполняем словарь групп-сканеров. 
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;Key - имя группы, Value - имя сканера
dicScanGroups.Add &amp;quot;Prn_1536_Gilyar6&amp;quot;,&amp;quot;M1530 Gilyar 6&amp;quot;
dicScanGroups.Add &amp;quot;Prn_1536_Gilyar7&amp;quot;,&amp;quot;M1530 Gilyar 7&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Chehov_M521&amp;quot;,&amp;quot;M521 Chehov&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Egorevsk_M521&amp;quot;,&amp;quot;M521 Egor&amp;#039;evsk&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Kolomna_M521&amp;quot;,&amp;quot;M521 Kolomna&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Podolsk_M521&amp;quot;,&amp;quot;M521 Podolsk&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Scholkovo_HP_MFP&amp;quot;,&amp;quot;M521 Schelkovo&amp;quot;
dicScanGroups.Add &amp;quot;Printer_B_Tishinskiy_M521&amp;quot;,&amp;quot;M521 B.Tishinskiy&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Balashiha_M521&amp;quot;,&amp;quot;M521 Balashiha&amp;quot;
dicScanGroups.Add &amp;quot;Printer_ul.Dm.Ulyanova_HP521&amp;quot;,&amp;quot;M521 ul.Dm.Ulyanova&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Lobnya_M521&amp;quot;,&amp;quot;M521 Lobnya&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Lubertsy_M521&amp;quot;,&amp;quot;M521 Lubertsy&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Mytishi_M521&amp;quot;,&amp;quot;M521 Mytishi&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Pavlovskiy_Posad_M521&amp;quot;,&amp;quot;M521 PavlPosad&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Volokolamsk_M521&amp;quot;,&amp;quot;M521 Volokolamsk&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Zvenigorod_M521&amp;quot;,&amp;quot;M521 Zvenigorod&amp;quot;
dicScanGroups.Add &amp;quot;Prn_HP521_Zheleznodorozhnyj&amp;quot;,&amp;quot;M521 Zheleznodorozhnyj&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Kashira_M521&amp;quot;,&amp;quot;M521 Kashira&amp;quot;
dicScanGroups.Add &amp;quot;Prn_Klin_M521&amp;quot;,&amp;quot;M521 Klin&amp;quot;
dicScanGroups.Add &amp;quot;Prn_M521_Noginsk_def&amp;quot;,&amp;quot;M521 Noginsk&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Orehovo-Zuevo_M521&amp;quot;,&amp;quot;M521 Orehovo-Zuevo&amp;quot;
dicScanGroups.Add &amp;quot;Printer_Shatura_M521&amp;quot;,&amp;quot;M521 Shatura&amp;quot;

arrGroups = dicScanGroups.Keys

Dim intCount, strGroup, ScannerName, ScanerDevName, ScannerID
Dim objDeviceManager, i, objFSO, ProfileFile, DesktopPath

Set objUser = CreateObject(&amp;quot;ADSystemInfo&amp;quot;)
Set CurrentUser = GetObject(&amp;quot;LDAP://&amp;quot; &amp;amp; objUser.UserName)
strGroup = LCase(Join(CurrentUser.MemberOf))

Set objFSO = CreateObject(&amp;quot;Scripting.FileSystemObject&amp;quot;)

Set Shell = CreateObject(&amp;quot;WScript.Shell&amp;quot;)
Set DeviceManager = Wscript.createObject(&amp;quot;WIA.DeviceManager&amp;quot;)

&amp;#039;создаем папку и файл %APPDATA%\NAPS2\profiles.xml
Call Shell.Run(&amp;quot;%COMSPEC% /c mkdir &amp;quot;&amp;quot;%APPDATA%\NAPS2&amp;quot;&amp;quot;&amp;quot;,0,true)
&amp;#039;&amp;#039;objFSO.CreateFolder(Shell.expandEnvironmentStrings(&amp;quot;%APPDATA%&amp;quot;) &amp;amp; &amp;quot;\NAPS2&amp;quot;)
Set ProfileFile = objFSO.CreateTextFile(Shell.expandEnvironmentStrings(&amp;quot;%APPDATA%&amp;quot;) &amp;amp; &amp;quot;\NAPS2\profiles.xml&amp;quot;, True)
ProfileFile.WriteLine &amp;quot;&amp;lt;?xml version=&amp;quot; &amp;amp; &amp;quot;&amp;quot;&amp;quot;&amp;quot; &amp;amp; &amp;quot;1.0&amp;quot; &amp;amp; &amp;quot;&amp;quot;&amp;quot;&amp;quot; &amp;amp; &amp;quot;?&amp;gt;&amp;quot;
ProfileFile.WriteLine &amp;quot;&amp;lt;ArrayOfExtendedScanSettings xmlns:xsi=&amp;quot;&amp;amp;&amp;quot;&amp;quot;&amp;quot;&amp;quot;&amp;amp;&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;amp;&amp;quot;&amp;quot;&amp;quot;&amp;quot; &amp;amp; &amp;quot; xmlns:xsd=&amp;quot;&amp;amp;&amp;quot;&amp;quot;&amp;quot;&amp;quot;&amp;amp;&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;amp;&amp;quot;&amp;quot;&amp;quot;&amp;quot;&amp;amp;&amp;quot;&amp;gt;&amp;quot;

&amp;#039;Перебираем группы из словарика и и если группа есть у пользюка то
For intCount = 0 to dicSCanGroups.count - 1
ScannerName = dicScanGroups.Item(arrGroups(intCOunt))
If InStr(strGroup, lcase(arrGroups(intCount))) Then
&amp;#039;Создаем ярлык на утилитку сканирования
DesktopPath = Shell.SpecialFolders(&amp;quot;Desktop&amp;quot;)
Set oShortCut = Shell.CreateShortcut(DesktopPath &amp;amp; &amp;quot;\ScanTool.lnk&amp;quot;)
oShortCut.TargetPath = &amp;quot;C:\ScanTool\NAPS2.exe&amp;quot;
oShortCut.Save
&amp;#039;перебираем сканеры чтобы найти DevID
	For i = 1 to DeviceManager.DeviceInfos.Count
	ScanerDevName = DeviceManager.DeviceInfos(i).Properties(&amp;quot;Name&amp;quot;).Value
	ScannerID = DeviceManager.DeviceInfos(i).DeviceID
	If StrComp(ScanerDevName, ScannerName, vbTextCompare) = 0 Then
			&amp;#039;прописываем сканер в файлик
			ProfileFile.WriteLine &amp;quot;  &amp;lt;ExtendedScanSettings&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;Device&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;      &amp;lt;ID&amp;gt;&amp;quot; &amp;amp; ScannerID &amp;amp; &amp;quot;&amp;lt;/ID&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;      &amp;lt;Name&amp;gt;&amp;quot; &amp;amp; ScanerDevName &amp;amp; &amp;quot;&amp;lt;/Name&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;/Device&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;DriverName&amp;gt;wia&amp;lt;/DriverName&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;DisplayName&amp;gt;&amp;quot; &amp;amp; ScanerDevName &amp;amp; &amp;quot;&amp;lt;/DisplayName&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;IconID&amp;gt;0&amp;lt;/IconID&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;MaxQuality&amp;gt;false&amp;lt;/MaxQuality&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;IsDefault&amp;gt;true&amp;lt;/IsDefault&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;Version&amp;gt;1&amp;lt;/Version&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;UseNativeUI&amp;gt;false&amp;lt;/UseNativeUI&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;AfterScanScale&amp;gt;OneToOne&amp;lt;/AfterScanScale&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;Brightness&amp;gt;0&amp;lt;/Brightness&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;Contrast&amp;gt;0&amp;lt;/Contrast&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;BitDepth&amp;gt;C24Bit&amp;lt;/BitDepth&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;PageAlign&amp;gt;Left&amp;lt;/PageAlign&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;PageSize&amp;gt;Letter&amp;lt;/PageSize&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;Resolution&amp;gt;Dpi200&amp;lt;/Resolution&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;    &amp;lt;PaperSource&amp;gt;Glass&amp;lt;/PaperSource&amp;gt;&amp;quot;
			ProfileFile.WriteLine &amp;quot;  &amp;lt;/ExtendedScanSettings&amp;gt;&amp;quot;
		End If
	Next
End If
Next
ProfileFile.WriteLine &amp;quot;&amp;lt;/ArrayOfExtendedScanSettings&amp;gt;&amp;quot;
ProfileFile.Close&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c \u0441\u043a\u0430\u043d\u0435\u0440\u044b \u0432 NAPS2 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438 AD&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c_\u0441\u043a\u0430\u043d\u0435\u0440\u044b_\u0432_naps2_\u0432_\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438_\u0441_\u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438_ad&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:12,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;22040-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Tue, 14 May 2019 07:52:07 +0000</pubDate>
        </item>
        <item>
            <title>настройка_звука_в_ubuntu_14_04_kde</title>
            <link>https://wiki.autosys.tk/linux_faq/%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%B7%D0%B2%D1%83%D0%BA%D0%B0_%D0%B2_ubuntu_14_04_kde</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;alsa&quot;&gt;ALSA&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
ALSA включена в стандартную сборку ядра &lt;br/&gt;

Конфигурационные файлы &lt;strong&gt;alsa&lt;/strong&gt; находятся в папке &lt;strong&gt;/usr/share/alsa/&lt;/strong&gt;
Они входят в пакет &lt;strong&gt;libasound2-data&lt;/strong&gt;. Поэтому если вдруг в результает настоек что-то повредится и будут ошибки типа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;ALSA lib conf.c:3707:(snd_config_update_r) Cannot access file /usr/share/alsa/alsa.conf
ALSA lib control.c:953:(snd_ctl_open_noupdate) Invalid CTL hw:0
aplay: device_list:277: control open (0): No such file or directory&lt;/pre&gt;

&lt;p&gt;
То нужно просто переустановить подсистему ALSA:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;rm -r ~/.pulse ~/.asound* 
sudo rm /etc/asound.conf
sudo apt-get update
sudo apt-get upgrade
sudo apt-get purge linux-sound-base alsa-base alsa-utils
sudo apt-get install linux-sound-base alsa-base alsa-utils gdm ubuntu-desktop
sudo apt-get install --reinstall libasound2-data&lt;/pre&gt;

&lt;p&gt;
Устройства для вывода звука могут быть заданы для пользователя
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;nano ~/.asoundrc&lt;/pre&gt;

&lt;p&gt;
или для системы вцелом
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo nano /etc/asound.conf&lt;/pre&gt;

&lt;p&gt;
В самом простом случае, если в системе одна звуковая карта, то &lt;strong&gt;/etc/asound.conf&lt;/strong&gt; будет выглядеть так:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;pcm.!default {
    type hw
    card 0
}

ctl.!default {
    type hw           
    card 0
}&lt;/pre&gt;

&lt;p&gt;
Получить список звуковых карт можно командой: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;aplay -l&lt;/pre&gt;

&lt;p&gt;
Если не удается получить список звуковых карт и выводится только строка &lt;strong&gt;&lt;/strong&gt;&lt;strong&gt; List of PLAYBACK Hardware Devices &lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;, возможно, у пользователя просто нет прав на это.Для того, чтобы права были нужно включить пользователя в группу &lt;strong&gt;audio&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;sudo gpasswd -a $USER audio&lt;/pre&gt;

&lt;/div&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>intel_hd_audio_1c20_error_code_10</title>
            <link>https://wiki.autosys.tk/ms_windows_ms_sql/intel_hd_audio_1c20_error_code_10</link>
            <description>
&lt;p&gt;
&lt;a href=&quot;https://answers.microsoft.com/en-us/windows/forum/all/high-definition-audio-device-device-cannot-start/f6bb86ad-8097-41ec-acb4-c0da0cd217c0&quot; class=&quot;urlextern&quot; title=&quot;https://answers.microsoft.com/en-us/windows/forum/all/high-definition-audio-device-device-cannot-start/f6bb86ad-8097-41ec-acb4-c0da0cd217c0&quot; rel=&quot;ugc nofollow&quot;&gt;https://answers.microsoft.com/en-us/windows/forum/all/high-definition-audio-device-device-cannot-start/f6bb86ad-8097-41ec-acb4-c0da0cd217c0&lt;/a&gt; &lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; Fixed.

Found out that it&amp;#039;s all about the Intel DisplayAudio driver, which is not installed unless the device is active. So here is what I did:

- I downloaded once more the latest Intel HD graphics driver from the Intel site, but this time the zip file, not the executable: https://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&amp;amp;DwnldID=23323&amp;amp;lang=eng.

- Extracted the file to some location.

- I changed the display config from single output to my pc monitor to &amp;#039;extended desktop&amp;#039;, so the HDMI output to my receiver became active.

- In Device Manager I right clicked the device with the yellow exclamation mark and updated the driver manually by pointing to the DisplayAudio subfolder in the folder into which I extracted the driver files.

- Done, the exclamation mark was gone. To be sure I rebooted the pc and was able to play audio over HDMI.

See, I had the driver package installed for the most part, just the DisplayAudio bit was missing, because the HDMI output was not active during the first install.

Hope you all get it fixed too!&lt;/pre&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Tue, 29 Sep 2020 07:34:04 +0000</pubDate>
        </item>
        <item>
            <title>remote_desktop_services_home_folder_not_mapping</title>
            <link>https://wiki.autosys.tk/ms_windows_ms_sql/remote_desktop_services_home_folder_not_mapping</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;проблема&quot;&gt;Проблема&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
При входе пользователя на терминальный сервер &lt;strong&gt;Windows Server 2016&lt;/strong&gt; не мапится пользовательский диск, прописанный в свойствах учетки на вкладке &lt;strong&gt;Remote Desktop Services Profile&lt;/strong&gt;. В логах ошибок нет.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-355&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;решение&quot;&gt;Решение&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Оказывается по дефолту не включен соответствующий параметр в реестре, который позовляет брать параметры из свойств учетки в AD. &lt;br/&gt;

На терминальном сервере в ветку реестра &lt;strong&gt;HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\&lt;/strong&gt; нужно добавить параметр &lt;strong&gt;fQueryUserConfigFromDC&lt;/strong&gt; типа &lt;strong&gt;REG_DWORD&lt;/strong&gt; со значением &lt;strong&gt;1&lt;/strong&gt;.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services]
&amp;quot;fQueryUserConfigFromDC&amp;quot;=dword:00000001&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0448\u0435\u043d\u0438\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;356-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:27 +0000</pubDate>
        </item>
        <item>
            <title>windows_server_core_winrm_negotiate_authentication_error</title>
            <link>https://wiki.autosys.tk/ms_windows_ms_sql/windows_server_core_winrm_negotiate_authentication_error</link>
            <description>
&lt;p&gt;
При попытке проадминить работающий вне домена &lt;strong&gt;Windows Server Core 20H2&lt;/strong&gt; в &lt;strong&gt;Server Manager&lt;/strong&gt; вылезла ошибка:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Winrm negotiate authentication error&lt;/pre&gt;

&lt;p&gt;
Это означает, что клиентский сервер (с которого выполняем управление) не смог согласовать параметры сессии &lt;strong&gt;WinRM&lt;/strong&gt; с управляемым сервером. Причин может быть несколько:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 На управляемом сервере отключена аутентификация &lt;strong&gt;Negotiate&lt;/strong&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Клиент (сервер с которого админим) не доверяет администрируемому серверу.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Учетные данные, с которыми осуществляется подключение, не валидны.
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h1 class=&quot;sectionedit1&quot; id=&quot;диагностика_управляемого_сервера&quot;&gt;Диагностика управляемого сервера&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Посмотрим параметры WinRM. По дефолту всё должно быть корректно и сервер не включенный в домен должен дать себя проадминить с учеткой локального админа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;winrm get winrm/config/service
winrm enumerate winrm/config/listener&lt;/pre&gt;

&lt;p&gt;
В выводе этих двух команд должно быть:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Service
  ...
  Auth
    ...
    Negotiate = true
 ...
 AllowRemoteAccess = true&lt;/pre&gt;

&lt;p&gt;
ну и &lt;strong&gt;Listener&lt;/strong&gt; должен слушать на адресе, котоый доступен клиенту.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430_\u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0433\u043e_\u0441\u0435\u0440\u0432\u0435\u0440\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;886-1590&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit2&quot; id=&quot;диагностика_управляющего_сервера&quot;&gt;Диагностика управляющего сервера&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
На управляющем сервере важно убедиться, что не введенный в домен сервер прописан в &lt;strong&gt;Trusted Hosts&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Get-Item WSMan:\localhost\Client\TrustedHosts | select name,value | format-list&lt;/pre&gt;

&lt;p&gt;
Очень важно, что в списке &lt;strong&gt;Trusted Hosts&lt;/strong&gt; сервер должен быть прописан с &lt;strong&gt;&lt;abbr title=&quot;Domain Name System&quot;&gt;DNS&lt;/abbr&gt;-суффиксом&lt;/strong&gt;. В моем случае &lt;strong&gt;DHCP&lt;/strong&gt; сервер выдавал управляемому серверу суффикс &lt;strong&gt;.lan&lt;/strong&gt; и до тех пор, пока я не прописал сервер в &lt;strong&gt;Trusted Hosts&lt;/strong&gt; с этим суффиксом подключиться не удавалось. &lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430_\u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0433\u043e_\u0441\u0435\u0440\u0432\u0435\u0440\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1591-2369&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit3&quot; id=&quot;добавление_управляемомго_сервера_в_trusted_hosts&quot;&gt;Добавление управляемомго сервера в Trusted Hosts&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Это актуально, если серверы не входят в один домен. В пределах домена, как правило, серверы доверяют друг другу. &lt;br/&gt;

На управляющем сервере запускаем &lt;strong&gt;powershell&lt;/strong&gt; с правами администратора и добавляем хост в доверенные:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Set-Item wsman:\localhost\Client\TrustedHosts &amp;quot;computer_name&amp;quot; -Concatenate -Force&lt;/pre&gt;

&lt;p&gt;
И теперь прописываем учетные данные для доступа к этому хосту:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cmdkey /add:computer_name /user:Administrator /pass:SUPERPASSWORD&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u043c\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432 Trusted Hosts&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u043c\u0433\u043e_\u0441\u0435\u0440\u0432\u0435\u0440\u0430_\u0432_trusted_hosts&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2370-3122&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit4&quot; id=&quot;не_работает_computer_management&quot;&gt;не работает Computer Management&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Если в консоли &lt;strong&gt;Server Manager&lt;/strong&gt; хост Online, но &lt;strong&gt;Computer Management&lt;/strong&gt;  не работает, то скорее всего виноват &lt;strong&gt;Firewall&lt;/strong&gt;. &lt;br/&gt;

Из консоли &lt;strong&gt;Server Manager&lt;/strong&gt; запускаем на удаленном хосте сессию &lt;strong&gt;powershell&lt;/strong&gt; и отключаем &lt;strong&gt;Firewall&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 Computer Management&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0435_\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442_computer_management&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;3123-3584&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit5&quot; id=&quot;удаленный_доступ&quot;&gt;Удаленный доступ&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Разрешим подключение по RDP (хотя там будет доступен только cmd и powershell):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Set-ItemProperty -Path &amp;#039;HKLM:System\CurrentControlSet\Control\Terminal Server&amp;#039; -name &amp;quot;fDenyTSConnections&amp;quot; -value 0&lt;/pre&gt;

&lt;p&gt;
Ну и дадим разрешение на firewall (если он еще не отклбчен):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Enable-NetFirewallRule -DisplayGroup &amp;quot;Remote Desktop&amp;quot;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439_\u0434\u043e\u0441\u0442\u0443\u043f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;3585-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Tue, 18 May 2021 10:41:02 +0000</pubDate>
        </item>
        <item>
            <title>small_home_proxmox_box</title>
            <link>https://wiki.autosys.tk/proxmox/small_home_proxmox_box</link>
            <description>
&lt;p&gt;
Вот конфигурация моего маленького домашнего &lt;strong&gt;ProxMox&lt;/strong&gt; хостика:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Asrock J5005-ITX MotherBoard
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 &lt;del&gt;8Gb DDR4 SODIMM Transcend JM2666HSB-8G RAM, 1Gx8, CL19, 1.2V&lt;/del&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 16Gb DDR4 SODIMM HyperX HX426S15IB2/16, 2666Mhz, CL15, 16 Chips
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 16Gb DDR4 SODIMM Patriot PSD416G21332s, PC4-17000, CL15, 1.2V, Double-sided, 16 chips.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Seagate ST32000641AS 2Tb, SATA. mdadm RAID1. 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 OCZ Vertex2 EX, SATA, 100 Gb SLC SSD.
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Silicon Power Slim S70 - SATA 120Gb SSD 
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 Cooler Master Elite 110A ITX Case
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 OImaster MR - 9100 PCI 2.5 inch SATA HDD / SSD Mobile Rack
&lt;/div&gt;&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;
 DeepCool Explorer DE530, 530W Power Supply
&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;
Работает под управлением &lt;strong&gt;ProxMox 6.x&lt;/strong&gt;. &lt;br/&gt;

Система хранения - &lt;strong&gt;ZFS&lt;/strong&gt; (&lt;strong&gt;L2ARC&lt;/strong&gt; + &lt;strong&gt;ZIL&lt;/strong&gt; на SSD). VM images format - &lt;strong&gt;qcow2&lt;/strong&gt;. &lt;br/&gt;

Вот тут: &lt;a href=&quot;http://asrock.com/mb/Intel/J5005-ITX/index.asp#Memory&quot; class=&quot;urlextern&quot; title=&quot;http://asrock.com/mb/Intel/J5005-ITX/index.asp#Memory&quot; rel=&quot;ugc nofollow&quot;&gt;http://asrock.com/mb/Intel/J5005-ITX/index.asp#Memory&lt;/a&gt; есть сведения о совместимых модулях. Судя по всему, работают и 16-чиповые модули(&lt;strong&gt;Crucial MTA16ATF2G64HZ – 16GB&lt;/strong&gt;) и 8-чиповые (&lt;strong&gt;Crucial 16GB DDR4-2400 SODIMM CT16G4SFD824A&lt;/strong&gt;).
&lt;/p&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 29 Jun 2020 07:32:43 +0000</pubDate>
        </item>
        <item>
            <title>переещд-виртуальнои-машины-с-физического-хоста-или- ...</title>
            <link>https://wiki.autosys.tk/proxmox/%D0%BF%D0%B5%D1%80%D0%B5%D0%B5%D1%89%D0%B4-%D0%B2%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B8-%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D1%8B-%D1%81-%D1%84%D0%B8%D0%B7%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B3%D0%BE-%D1%85%D0%BE%D1%81%D1%82%D0%B0-%D0%B8%D0%BB%D0%B8-%D0%B8%D0%B7-%D0%B4%D1%80%D1%83%D0%B3%D0%BE%D0%B3%D0%BE-%D0%B3%D0%B8%D0%BF%D0%B5%D1%80%D0%B2%D0%B8%D0%B7%D0%BE%D1%80%D0%B0</link>
            <description>
&lt;p&gt;
Важно!&lt;br/&gt;

При загрузке русской версии винды, невозможно переключить язык ввода в окне входа в консоли web-интерфейса proxmox, поэтому нужно перед переездом в русской версии вин заводить админа с русским именем и паролем из пробелов и цифр или русских букв&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Переключение работает, при подключени с помощью tigerVNC&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
ЧТо нужно сделать для переезда:&lt;br/&gt;

1. Загрузить переезжающую виртуальную машину с Linux Rescue CD&lt;br/&gt;

2. Оживить сеть в загруженном Linux Rescue CD&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up &lt;/pre&gt;

&lt;p&gt;
или DHCP&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dhcpcd eth0&lt;/pre&gt;

&lt;p&gt;
3. Теперь можно копировать данные с диска переносимой машины непосредственно на хост proxmox:&lt;br/&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;dd if=/dev/sda | ssh root@proxmox dd of=/var/lib/vz/images/vmid/diskname.raw&lt;/pre&gt;

&lt;p&gt;
4. Файл /var/lib/vz/images/vmid/diskname.raw - это файл диска виртуалки в формате raw. Теперь создаем виртуалку с диском минимального размера (1гб) и заменем её диск только что скопированным файлом. &lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Ниже приведен англоязычный оригинал и некоторые дополнения. Приведенный метод подходит и для WIndows и для Linux. Я так переносил, например, Kerio Control 7.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
How to migrate directly from a Windows physical machine to a VM raw file using SSH&lt;br/&gt;

assumptions:&lt;br/&gt;

 * you have a physical machine in which you imported the mergeide.reg, as shown on top of this page&lt;br/&gt;

 * the physical machine has disk device /dev/sda (read this with “fdisk -l”, and look for “hda” or “sda” or similar, NOT dm- or other…)&lt;br/&gt;

 * you have already created a virtual machine with a raw type, file-based disk and not running.&lt;br/&gt;

 * the VM has VMid 101 (read this from the VM list in the web interface)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
download SystemRescueCD ( &lt;a href=&quot;http://www.sysresccd.org&quot; class=&quot;urlextern&quot; title=&quot;http://www.sysresccd.org&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.sysresccd.org&lt;/a&gt; ), burn it and reboot the physical machine with it in the cd tray.&lt;br/&gt;

At its bash prompt, give eth0 an ip, or use dhcp:&lt;br/&gt;

To assign ip:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up  (use ip on same subnet as proxmox server)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To use DHCP:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
dhcpcd eth0&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
To start the image process on the physical machine:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
dd if=/dev/sda | ssh root@proxmox dd of=/var/lib/vz/images/vmid/diskname.raw&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
Change the root@proxmox to root@yourproxmoxip and change the vmid/diskname to the VMid number and the name you want to call the disk. I.E. VMid 101 and disk called vm-101-disk-1.raw would be:&lt;br/&gt;

dd if=/dev/sda | ssh root@proxmox dd of=/var/lib/vz/images/101/vm-101-disk-1.raw&lt;br/&gt;

Once this completes you can assign this disk file to your VM on the Proxmox interface.&lt;br/&gt;

Tested a 8GB physical server over gigabit network and was running in about 10 minutes.&lt;br/&gt;

How to migrate directly from a Windows physical machine to a VM logical volume using NETCAT&lt;br/&gt;

assumptions:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 you have a physical machine in which you imported the mergeide.reg, as shown on top of this page&lt;br/&gt;

 the physical machine has disk device /dev/sda (read this with “fdisk -l”, and look for “hda” or “sda” or similar, NOT dm- or other…)&lt;br/&gt;

 you have already created a virtual machine with a disk on LVM, larger in size than the physical machine one (at least 1Gb more), STOPPED, do NOT start it during this procedure!&lt;br/&gt;

 the VM has VMid 103 (read this from the VM list in the web interface)&lt;br/&gt;

 the LVM VG is named SHARED-VG (read this with: “vgdisplay -s”)&lt;br/&gt;

 so the LV partition is /dev/SHARED-VG/vm-103-disk-1 (read this with: “lvdisplay |grep LV|grep 103”)&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
download SystemRescueCD ( &lt;a href=&quot;http://www.sysresccd.org&quot; class=&quot;urlextern&quot; title=&quot;http://www.sysresccd.org&quot; rel=&quot;ugc nofollow&quot;&gt;http://www.sysresccd.org&lt;/a&gt; ), burn it and reboot the physical machine with it in the cd tray.&lt;br/&gt;

At its bash prompt, give eth0 an ip, coherent with the network of one proxmox server (in the following example: 10.0.0.27):&lt;br/&gt;

ifconfig eth0 10.0.0.17 netmask 255.255.255.0 up&lt;br/&gt;

then assign root user a password, so you can log in via ssh:&lt;br/&gt;

passwd&lt;br/&gt;

log in via ssh on both the physical machine and the proxmox server, then on the proxmox server, give the command:&lt;br/&gt;

date; netcat -w30 -vvnlp 3333 | gzip -dc &amp;gt; /dev/SHARED-VG/vm-103-disk-1; date&lt;br/&gt;

and on the physical machine give the command:&lt;br/&gt;

dd if=/dev/sda | gzip -c | nc -w30 -vvn 10.0.0.27 3333&lt;br/&gt;

You have to start the second command WITHIN 30 seconds from the first one (the -w30…)!&lt;br/&gt;

This way, the proxmox machine is waiting for a stream of bytes on tcp port 3333, then gunzip it and redirects on the vm virtual disk.&lt;br/&gt;

The physical machine outputs its ENTIRE hd as a stream of bytes, gzip it and pass it via netcat to the proxmox server.&lt;br/&gt;

The 2 date commands are useful to have a trace of when this process starts and ends.&lt;br/&gt;

Tested migrating a 75gb hd in about 90 minutes on a 100mbit lan. VM started and worked as expected, after recognizing at first boot the new ide controllers.&lt;br/&gt;

How to migrate from a physical machine to a VM, on a smaller partition&lt;br/&gt;

While it&amp;#039;s quite easy to “clone” a partition to another (real or virtual) of the same or bigger size, it&amp;#039;s not so simple to do the same if the destination partition is smaller than the original one. This is possible, fortunately, and at least a proved method follows, but you have to take care of some preconditions:&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 since you want to clone to a smaller partition, we will operate at the filesystem level, copying all the files from the source filesystem to the destination one.&lt;br/&gt;

 so, we have to make sure that the destination partition has enough room to get all the files, at least, with better some free space left there.&lt;br/&gt;

 the cloning is not possible directly, i.e disk-to-disk, but we have to “save” the source partition, and then “restore” it on the destination one.&lt;br/&gt;

 we have to be sure that the tools used know very well how to copy files on the filesystems involved, including symlinks, hardlinks, filesystem specific attributes, and so on.&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
main tool: fsarchiver&lt;br/&gt;

One free tool you can use for this is &lt;a href=&quot;https://wiki.autosys.tk/proxmox/fsarchiver&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:fsarchiver&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:fsarchiver&quot;&gt;fsarchiver&lt;/a&gt;, which «is a system tool that allows you to save the contents of a file-system to a compressed archive file. The file-system can be restored on a partition which has a different size and it can be restored on a different file-system. Unlike tar/dar, FSArchiver also creates the file-system when it extracts the data to partitions. Everything is checksummed in the archive in order to protect the data. If the archive is corrupt, you just loose the current file, not the whole archive. Fsarchiver is released under the &lt;abbr title=&quot;GNU General Public License&quot;&gt;GPL&lt;/abbr&gt;-v2 license. It&amp;#039;s still under heavy development so it must not be used on critical data.», So, you&amp;#039;ve been warned. Latest fsarchiver should be in the latest &lt;a href=&quot;https://wiki.autosys.tk/proxmox/systemrescuecd&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:systemrescuecd&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:systemrescuecd&quot;&gt;SystemRescueCD&lt;/a&gt;, although you can obtain it on your favourite recent distribution.&lt;br/&gt;

Cloning NTFS, be sure to use either version 0.6.10 or a patched previous version, because there was a bug that caused errors with NTFS junctions (something like linux symlinks).&lt;br/&gt;

mergeide&lt;br/&gt;

As other said, install mergeide.reg on the physical Windows machine (see Microsoft KB article for details) to provide support for the natively supported IDE controllers in Windows. Without this, cloned XP booting failed for me.&lt;br/&gt;

running fsarchiver from ubuntu livecd&lt;br/&gt;

I used a Ubuntu 10.04 LiveCD, where I installed the package 0.6.8-1ubuntu0.1 from the universe repository: this repository is disabled by default, you have to enable it before, doing:&lt;br/&gt;

#sudo nano /etc/apt/sources.lst&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
then, after uncommenting universe lines, installing it:&lt;br/&gt;

#sudo apt-get update&lt;br/&gt;

#sudo apt-get install fsarchiver&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
once installed, confirm the version is right typing&lt;br/&gt;

# sudo aptitude show fsarchiver&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
it shoud be at least “0.6.10”, or “0.6.8-1ubuntu0.1” (pathced from 0.6.9 and 0.6.10), particularly if you are cloning NTFS filesystems.&lt;br/&gt;

then run&lt;br/&gt;

#sudo fsarchiver probe simple&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
that will report your disks/partitions current layout in a simple, understandable way, like:&lt;br/&gt;

ubuntu@ubuntu:~$ sudo fsarchiver probe simple&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/proxmox/disk&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:disk&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:disk&quot;&gt;======DISK======&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/name&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:name&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:name&quot;&gt;=============NAME==============&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/size&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:size&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:size&quot;&gt;====SIZE====&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/maj&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:maj&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:maj&quot;&gt;MAJ&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/min&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:min&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:min&quot;&gt;MIN&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/proxmox/vda&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:vda&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:vda&quot;&gt;vda&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/red_hat_virtio_scsi_device&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:red_hat_virtio_scsi_device&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:red_hat_virtio_scsi_device&quot;&gt;RED HAT VIRTIO SCSI DEVICE&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/15.00_gb&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:15.00_gb&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:15.00_gb&quot;&gt;15.00 GB&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/8&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:8&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:8&quot;&gt;8&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/0&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:0&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:0&quot;&gt;0&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.autosys.tk/proxmox/device&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:device&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:device&quot;&gt;=====DEVICE=====&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/filesys&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:filesys&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:filesys&quot;&gt;==FILESYS==&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/label&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:label&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:label&quot;&gt;======LABEL======&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/size&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:size&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:size&quot;&gt;====SIZE====&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/maj&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:maj&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:maj&quot;&gt;MAJ&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/min&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:min&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:min&quot;&gt;MIN&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/proxmox/loop0&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:loop0&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:loop0&quot;&gt;loop0&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/squashfs&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:squashfs&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:squashfs&quot;&gt;squashfs&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/unknown&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:unknown&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:unknown&quot;&gt;&amp;lt;unknown&amp;gt;&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/671.85_mb&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:671.85_mb&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:671.85_mb&quot;&gt;671.85 MB&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/7&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:7&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:7&quot;&gt;7&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/0&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:0&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:0&quot;&gt;0&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/proxmox/vda1&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:vda1&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:vda1&quot;&gt;vda1&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/ntfs&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:ntfs&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:ntfs&quot;&gt;ntfs&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/system&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:system&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:system&quot;&gt;System&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/15.00_gb&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:15.00_gb&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:15.00_gb&quot;&gt;15.00 GB&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/8&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:8&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:8&quot;&gt;8&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/1&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:1&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:1&quot;&gt;1&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://wiki.autosys.tk/proxmox/ramzswap0&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:ramzswap0&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:ramzswap0&quot;&gt;ramzswap0&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/swap&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:swap&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:swap&quot;&gt;swap&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/unknown&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:unknown&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:unknown&quot;&gt;&amp;lt;unknown&amp;gt;&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/248.47_mb&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:248.47_mb&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:248.47_mb&quot;&gt;248.47 MB&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/251&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:251&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:251&quot;&gt;251&lt;/a&gt; &lt;a href=&quot;https://wiki.autosys.tk/proxmox/0&quot; class=&quot;wikilink2&quot; title=&quot;proxmox:0&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;proxmox:0&quot;&gt;0&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
then, you have to provide a folder to save the partition “backup”, which will be quite large (fsarchiver has several compression level, but just to be sure have enough free space there to accomodate all the uncompressed file…) if you need to reach a “tmpfolder” windows share, you have to install the smbfs package before (standard repositories), so that then you can&lt;br/&gt;

#sudo mkdir /mnt/tmpfolder&lt;br/&gt;

#sudo mount -t smbfs //windows/tmpfolder /mnt/tmpfolder -o user=username&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
giving a suitable password when asked.&lt;br/&gt;

backup the partition&lt;br/&gt;

then,you have to perform the “backup”, BE CAREFUL the first path is the backup file to save, the second the source partition, do not invert&lt;br/&gt;

I used:&lt;br/&gt;

#sudo fsarchiver savefs -v -o /mnt/tmpfolder/physical.fsa /dev/sda1&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
then (if no errors reported) mounted the same LiveCD in a kvm vm with a 15GB virtual empty disk (virtio), so /dev/vda. After installing smbfs and fsarchiver in the same way, i&amp;#039;ve run Gparted (installed on the LiveCD) and created a empty ntfs partition there, /dev/vda1.&lt;br/&gt;

restore the partition&lt;br/&gt;

Then, I run&lt;br/&gt;

Note: i use here /dev/vda1 while the original was /dev/sda1, and id=0 because i restore the first partition in the physical.fsa (yes, it may store more than one) as /dev/vda1&lt;br/&gt;

#sudo fsarchiver restfs -v /mnt/tmpfolder/physical.fsa id=0,dest=/dev/vda1&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
check if there are no restore errors. It was quite quick and just worked. Well, no, the first times i tried a few and in the end it worked :-^&lt;br/&gt;

successful cases&lt;br/&gt;

&lt;/p&gt;

&lt;p&gt;
 I successfully cloned an Windows XP professional machine from a physical 40GB (used 12GB) partition to a virtual (kvm) 15GB one, stored on pve LVM. The archive file was around 7GB. (i had just 2 hardlink restore errors, but in the log were reported on non critical files, although i would prefer 0 errors…)&lt;br/&gt;

 I successfully cloned an Windows 2003 AD controller machine from a physical 250GB (used 5GB) partition to a virtual (kvm) 15GB one, stored on pve LVM. The archive file was around 3,4GB. (i had just 0 restore errors of any kind)&lt;br/&gt;

 Cloned a physical ubuntu 9.04 desktop from a 32 raid5 disk to a virtual kvm 12 disk. Just had to reinstall grub to make it boot inside kvm. No errors.&lt;br/&gt;

&lt;/p&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 11 Feb 2019 09:13:28 +0000</pubDate>
        </item>
    </channel>
</rss>
