рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ 5 рдЙрдкрдпреЛрдЧреА рддрд░рд┐рдХрд╛рд╣рд░реВ

рдирдорд╕реНрддреЗ Habrред

рд▓рдЧрднрдЧ рд╕рдмреИрдЬрдирд╛рдХреЛ рдШрд░рдорд╛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рд╣реБрдиреНрдЫ, рд░ рдо рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдЙрдиреЗ рд╕рд╛рд╣рд╕ рдЧрд░реНрдЫреБ рдХрд┐ рдзреЗрд░реИрд▓реЗ рдпрд╕рд▓рд╛рдИ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдЕрд╡рд╕реНрдерд╛рдорд╛ рд░рд╛рдЦреЗрдХрд╛ рдЫрдиреНред рддрд░ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдПрдХ рдореВрд▓реНрдпрд╡рд╛рди рдлрд░ рдорд╛рддреНрд░ рд╣реЛрдЗрди, рддрд░ рд▓рд┐рдирдХреНрд╕рдХреЛ рд╕рд╛рде рдПрдХ рдзреЗрд░реИ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдлреНрдпрд╛рдирд▓реЗрд╕ рдХрдореНрдкреНрдпреБрдЯрд░ рдкрдирд┐ рд╣реЛред рдЖрдЬ рд╣рд╛рдореА Raspberry Pi рдХреЛ рдЙрдкрдпреЛрдЧреА рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд╣реЗрд░реНрдиреЗрдЫреМрдВ, рдЬрд╕рдХреЛ рд▓рд╛рдЧрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдХреЛрдб рд▓реЗрдЦреНрдиреБ рдкрд░реНрджреИрдиред
рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ 5 рдЙрдкрдпреЛрдЧреА рддрд░рд┐рдХрд╛рд╣рд░реВ
рд░реБрдЪрд┐ рд░рд╛рдЦреНрдиреЗрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐, рд╡рд┐рд╡рд░рдгрд╣рд░реВ рдХрдЯ рдЕрдиреНрддрд░реНрдЧрдд рдЫрдиреНред рд▓реЗрдЦ рд╢реБрд░реБрдЖрддреАрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╣реЛред

рднрдиреНрдиреБ: рдпреЛ рд▓реЗрдЦ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛ рдХреЗ рд╣реЛ, рдкреБрдЯреНрдЯреА рд╡рд╛ рдЕрдиреНрдп рдХреБрдиреИ рдЯрд░реНрдорд┐рдирд▓ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИрдорд╛ SSH рдХрд╕рд░реА рдЧрд░реНрдиреЗ, рд░ рдиреНрдпрд╛рдиреЛ рд╕рдореНрдкрд╛рджрдХрд╕рдБрдЧ рдлрд╛рдЗрд▓рд╣рд░реВ рдХрд╕рд░реА рд╕рдореНрдкрд╛рджрди рдЧрд░реНрдиреЗ рднрдиреНрдиреЗ рдмрд╛рд░реЗрдорд╛ рдХрдореНрддрд┐рдорд╛ рдкрдирд┐ рдЖрдзрд╛рд░рднреВрдд рдЬреНрдЮрд╛рди рднрдПрдХрд╛рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдпреЛ рд▓реЗрдЦ рд╣реЛред рдПрдХ рдкреНрд░рдпреЛрдЧрдХреЛ рд░реВрдкрдорд╛, рдпрд╕ рдкрдЯрдХ рдо рдкрд╛рдЗрдерди рдХреЛрдбрдХреЛ рд╕рд╛рде рдкрд╛рдардХрд╣рд░реВрд▓рд╛рдИ "рд▓реЛрдб" рдЧрд░реНрджрд┐рди, рддреНрдпрд╣рд╛рдБ рдХреБрдиреИ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩ рд╣реБрдиреЗрдЫреИрдиред рдирд┐рдореНрди рд╕рдмреИрдХреЛ рд▓рд╛рдЧрд┐, рдХреЗрд╡рд▓ рдЖрджреЗрд╢ рд░реЗрдЦрд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реБрдиреЗрдЫред рдпрд╕реНрддреЛ рдврд╛рдБрдЪрд╛ рдХрддрд┐ рдорд╛рдЧрдорд╛ рдЫ, рдо рдкрд╛рдардХреЛ рдЕрдиреБрдорд╛рди рд╣реЗрд░реНрдиреЗрдЫреБред

рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдо FTP рд╕рд░реНрднрд░ рд╡рд╛ рдиреЗрдЯрд╡рд░реНрдХ рдмрд▓рд╣рд░реВ рдЬрд╕реНрддреИ рдзреЗрд░реИ рд╕реНрдкрд╖реНрдЯ рдЪреАрдЬрд╣рд░реВ рд╡рд┐рдЪрд╛рд░ рдЧрд░реНрджрд┐рдиред рддрд▓ рдореИрд▓реЗ рдХреЗрд╣рд┐ рдЕрдзрд┐рдХ рд╡рд╛ рдХрдо рдЙрдкрдпреЛрдЧреА рд░ рдореМрд▓рд┐рдХ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реЗред

рд╣рд╛рдореАрд▓реЗ рдХреЗрд╣рд┐ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБ рдЕрдШрд┐, рдПрдХ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд╕рд▓реНрд▓рд╛рд╣: рд╕рд╣реА рдмрд┐рдЬреБрд▓реА рдЖрдкреВрд░реНрддрд┐ (рдиреЛрдирд╛рдо рдлреЛрди рдЪрд╛рд░реНрдЬрд░рдХреЛ рд╕рдЯреНрдЯрд╛ рдмреНрд░рд╛рдиреНрдбреЗрдб 2.5A рдПрдХ) рд░ рдкреНрд░реЛрд╕реЗрд╕рд░рдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рд╣реАрдЯрд╕рд┐рдВрдХ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИрдХреЛ рд╕реНрдерд┐рд░ рд╕рдЮреНрдЪрд╛рд▓рдирдХреЛ рд▓рд╛рдЧрд┐ рдЕрддреНрдпрдиреНрдд рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫред рдпреЛ рдмрд┐рдирд╛, рд░рд╛рд╕реНрдкрдмреЗрд░реА рдлреНрд░рд┐рдЬ рд╣реБрди рд╕рдХреНрдЫ, рдлрд╛рдЗрд▓ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рддреНрд░реБрдЯрд┐рд╣рд░реВ рджреЗрдЦрд╛ рдкрд░реНрди рд╕рдХреНрдЫ, рдЖрджрд┐ред рддреНрдпрд╕реНрддрд╛ рддреНрд░реБрдЯрд┐рд╣рд░реВрдХреЛ рдХрдкрдЯреА рдпреЛ рд╣реЛ рдХрд┐ рддрд┐рдиреАрд╣рд░реВ рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдВ рдорд╛рддреНрд░ рджреЗрдЦрд╛ рдкрд░реНрдЫрдиреН, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдкреАрдХ CPU рд▓реЛрдбрдХреЛ рд╕рдордпрдорд╛ рд╡рд╛ SD рдХрд╛рд░реНрдбрдорд╛ рдареВрд▓рд╛ рдлрд╛рдЗрд▓рд╣рд░реВ рд▓реЗрдЦрд┐рдПрдХреЛ рдмреЗрд▓рд╛ред

рдХреБрдиреИ рдкрдирд┐ рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБ рдЕрдШрд┐, рдпреЛ рдкреНрд░рдгрд╛рд▓реА рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрди рд╕рд▓реНрд▓рд╛рд╣ рджрд┐рдЗрдиреНрдЫ, рдЕрдиреНрдпрдерд╛ apt рдЖрджреЗрд╢рдХрд╛ рд▓рд╛рдЧрд┐ рдкреБрд░рд╛рдиреЛ рдареЗрдЧрд╛рдирд╛рд╣рд░реВрд▓реЗ рдХрд╛рдо рдирдЧрд░реНрди рд╕рдХреНрдЫ:

sudo apt-get update

рдЕрдм рддрдкрд╛рдЗрдБ рд╕реНрдерд╛рдкрдирд╛ рд░ рдХрдиреНрдлрд┐рдЧрд░ рд╕реБрд░реБ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

1. WiFi рд╣рдЯрд╕реНрдкрдЯ

Raspberry Pi рд▓рд╛рдИ рд╡рд╛рдпрд░рд▓реЗрд╕ рдкрд╣реБрдБрдЪ рдмрд┐рдиреНрджреБрдорд╛ рдкрд░рд┐рдгрдд рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдЫ, рд░ рддрдкрд╛рдИрдВрд▓реЗ рдХреЗрд╣рд┐ рдкрдирд┐ рдХрд┐рдиреНрдиреБ рдкрд░реНрджреИрди, WiFi рдкрд╣рд┐рд▓реЗ рдиреИ рдмреЛрд░реНрдбрдорд╛ рдЫред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ 2 рдШрдЯрдХрд╣рд░реВ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ: hostapd (рд╣реЛрд╕реНрдЯ рдкрд╣реБрдБрдЪ рдкреЛрдЗрдиреНрдЯ рдбреЗрдорди, рдкрд╣реБрдБрдЪ рдмрд┐рдиреНрджреБ рд╕реЗрд╡рд╛) рд░ dnsmasq (DNS / DHCP рд╕рд░реНрднрд░)ред

dnsmasq рд░ hostapd рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

sudo apt-get install dnsmasq hostapd

рд╕реНрдерд┐рд░ IP рдареЗрдЧрд╛рдирд╛ рд╕реЗрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдЬреБрди Raspberry Pi WiFi рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рд╣реБрдиреЗрдЫред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рдЖрджреЗрд╢ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реЗрд░ dhcpcd.conf рдлрд╛рдЗрд▓ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрдиреБрд╣реЛрд╕реН sudo nano /etc/dhcpcd.confред рддрдкрд╛рдИрдВрд▓реЗ рдлрд╛рдЗрд▓рдорд╛ рдирд┐рдореНрди рд▓рд╛рдЗрдирд╣рд░реВ рдердкреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ:

interface wlan0
  static ip_address=198.51.100.100/24
  nohook wpa_supplicant

рддрдкрд╛рдИрд▓реЗ рджреЗрдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд╡рд╛рдЗрдлрд╛рдЗ рдиреЗрдЯрд╡рд░реНрдХрдорд╛, рд╣рд╛рдореНрд░реЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИрдХреЛ рдареЗрдЧрд╛рдирд╛ 198.51.100.100 рд╣реБрдиреЗрдЫ (рдпреЛ рдпрд╛рдж рдЧрд░реНрди рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫ рдпрджрд┐ рдХреЗрд╣рд┐ рд╕рд░реНрднрд░ рдпрд╕рдорд╛ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЫ, рдЬрд╕рдХреЛ рдареЗрдЧрд╛рдирд╛ рдмреНрд░рд╛рдЙрдЬрд░рдорд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ)ред

рдЕрд░реНрдХреЛ, рд╣рд╛рдореАрд▓реЗ IP рдлрд░реНрд╡рд╛рд░реНрдбрд┐рдЩ рд╕рдХреНрд░рд┐рдп рдЧрд░реНрдиреБрдкрд░реНрдЫ, рдЬрд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореАрд▓реЗ рдЖрджреЗрд╢ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрдЫреМрдВ sudo Nano /etc/sysctl.conf рд░ рд▓рд╛рдЗрди рдЕрдирдХрдореЗрдиреНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН net.ipv4.ip_forward = рез.

рдЕрдм рддрдкрд╛рдИрдВрд▓реЗ DHCP рд╕рд░реНрднрд░ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ - рдпрд╕рд▓реЗ рдЬрдбрд╛рди рдЧрд░рд┐рдПрдХрд╛ рдпрдиреНрддреНрд░рд╣рд░реВрдорд╛ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рд╡рд┐рддрд░рдг рдЧрд░реНрдиреЗрдЫред рд╣рд╛рдореА рдЖрджреЗрд╢ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН sudo nano /etc/dnsmasq.conf рд░ рдирд┐рдореНрди рд▓рд╛рдЗрдирд╣рд░реВ рдердкреНрдиреБрд╣реЛрд╕реН:

interface=wlan0
dhcp-range=198.51.100.1,198.51.100.99,255.255.255.0,24h

рддрдкрд╛рдИрд▓реЗ рджреЗрдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреЗ рд░реВрдкрдорд╛, рдЬрдбрд╛рди рдЧрд░рд┐рдПрдХрд╛ рдпрдиреНрддреНрд░рд╣рд░реВрдорд╛ 198.51.100.1тАж 198.51.100.99 рджрд╛рдпрд░рд╛рдорд╛ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рд╣реБрдиреЗрдЫрдиреНред

рдЕрдиреНрддрдорд╛, рдпреЛ Wi-Fi рд╕реЗрдЯрдЕрдк рдЧрд░реНрдиреЗ рд╕рдордп рд╣реЛред рдлрд╛рдЗрд▓ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрджреИ /etc/default/hostapd рд░ рддреНрдпрд╣рд╛рдБ рд▓рд╛рдЗрди рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН DAEMON_CONF="/etc/hostapd/hostapd.conf"ред рдЕрдм рдЖрджреЗрд╢ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реЗрд░ hostapd.conf рдлрд╛рдЗрд▓ рд╕рдореНрдкрд╛рджрди рдЧрд░реМрдВ sudo nano /etc/hostapd/hostapd.conf.
рдкрд╣реБрдБрдЪ рдмрд┐рдиреНрджреБ рд╕реЗрдЯрд┐рдЩрд╣рд░реВ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

interface=wlan0
driver=nl80211
ssid=Raspberry Pi
hw_mode=g
channel=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

рдпрд╣рд╛рдБ рдорд╛рдкрджрдгреНрдбрд╣рд░реВ "ssid" (рдкрд╣реБрдБрдЪ рдмрд┐рдиреНрджреБ рдирд╛рдо), "wpa_passphrase" (рдкрд╛рд╕рд╡рд░реНрдб), "рдЪреНрдпрд╛рдирд▓" (рдЪреНрдпрд╛рдирд▓ рдирдореНрдмрд░) рд░ "hw_mode" (рдЕрдкрд░реЗрд╢рди рдореЛрдб, a = IEEE 802.11a, 5 GHz, рдорд╛ рдзреНрдпрд╛рди рджрд┐рди рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫред b = IEEE 802.11 b, 2.4 GHz, g = IEEE 802.11g, 2.4 GHz)ред рджреБрд░реНрднрд╛рдЧреНрдпрд╡рд╢, рддреНрдпрд╣рд╛рдБ рдХреБрдиреИ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЪреНрдпрд╛рдирд▓ рдЪрдпрди рдЫреИрди, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдХрдо рд╕реЗ рдХрдо рд╡реНрдпрд╕реНрдд рд╡рд╛рдЗрдлрд╛рдЗ рдЪреНрдпрд╛рдирд▓ рдЖрдлреИрдВ рд░реЛрдЬреНрдиреБрдкрд░реНрдЫред

рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг: рдпрд╕ рдкрд░реАрдХреНрд╖рдг рдЕрд╡рд╕реНрдерд╛рдорд╛, рдкрд╛рд╕рд╡рд░реНрдб 12345678 рд╣реЛ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд╣реБрдБрдЪ рдмрд┐рдиреНрджреБрдорд╛, рддрдкрд╛рдЗрдБрд▓реЗ рдХреЗрд╣рд┐ рдердк рдЬрдЯрд┐рд▓ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рддреНрдпрд╣рд╛рдБ рдкреНрд░реЛрдЧреНрд░рд╛рдорд╣рд░реВ рдЫрдиреН рдЬреБрди рдмреНрд░реВрдЯ-рдлреЛрд░реНрд╕ рдкрд╛рд╕рд╡рд░реНрдбрд╣рд░реВ рд╢рдмреНрджрдХреЛрд╢ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░, рд░ рд╕рд╛рдзрд╛рд░рдг рдкрд╛рд╕рд╡рд░реНрдбрдХреЛ рд╕рд╛рде рдкрд╣реБрдБрдЪ рдмрд┐рдиреНрджреБ рд╣реНрдпрд╛рдХ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдард┐рдХ рдЫ, рдЖрдзреБрдирд┐рдХ рдХрд╛рдиреВрди рдЕрдиреНрддрд░реНрдЧрдд рдмрд╛рд╣рд┐рд░реАрд╣рд░реВрд╕рдБрдЧ рдЗрдиреНрдЯрд░рдиреЗрдЯ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрди рдЧрд╛рд╣реНрд░реЛ рд╣реБрди рд╕рдХреНрдЫред

рд╕рдмреИ рддрдпрд╛рд░ рдЫ, рддрдкрд╛рдИрдВ рд╕рдмреИ рд╕реЗрд╡рд╛рд╣рд░реВ рд╕рдХреНрд░рд┐рдп рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd
sudo systemctl reload dnsmasq

рд╣рд╛рдореАрд▓реЗ рдЕрдм рдиреЗрдЯрд╡рд░реНрдХрд╣рд░реВрдХреЛ рд╕реВрдЪреАрдорд╛ рдирдпрд╛рдБ WiFi рд╣рдЯрд╕реНрдкрдЯ рджреЗрдЦреНрдиреБрдкрд░реНрдЫред рддрд░ рдпрд╕рдорд╛ рдЗрдиреНрдЯрд░рдиреЗрдЯ рджреЗрдЦрд╛ рдкрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рдЗрдерд░рдиреЗрдЯрдмрд╛рдЯ WLAN рдорд╛ рдкреНрдпрд╛рдХреЗрдЯ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рд╕рдХреНрд░рд┐рдп рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдЬрд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореА рдЖрджреЗрд╢ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдЫреМрдВред sudo Nano /etc/rc.local рд░ iptables рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рд▓рд╛рдЗрди рдердкреНрдиреБрд╣реЛрд╕реН:

sudo iptables -t nat -A  POSTROUTING -o eth0 -j MASQUERADE

рддреНрдпрд╣реА рднрдпреЛред рд╣рд╛рдореА рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рд░рд┐рдмреБрдЯ рдЧрд░реНрдЫреМрдВ, рд░ рдпрджрд┐ рд╕рдмреИ рдХреБрд░рд╛ рд╕рд╣реА рддрд░рд┐рдХрд╛рд▓реЗ рдЧрд░рд┐рдпреЛ рднрдиреЗ, рд╣рд╛рдореА рдкрд╣реБрдБрдЪ рдмрд┐рдиреНрджреБ рджреЗрдЦреНрди рд╕рдХреНрдЫреМрдВ рд░ рдпрд╕рд▓рд╛рдИ рдЬрдбрд╛рди рдЧрд░реНрди рд╕рдХреНрдЫреМрдВред

рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ 5 рдЙрдкрдпреЛрдЧреА рддрд░рд┐рдХрд╛рд╣рд░реВ

рддрдкрд╛рдИрдВ рджреЗрдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдЧрддрд┐ рдзреЗрд░реИ рдЦрд░рд╛рдм рдЫреИрди, рд░ рдпреЛ рдпрд╕реНрддреЛ рд╡рд╛рдЗрдлрд╛рдЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдзреЗрд░реИ рд╕рдореНрднрд╡ рдЫред

рд╡реИрд╕реЗ, рд╕рд╛рдиреЛ рд╕рд▓реНрд▓рд╛рд╣: рддрдкрд╛рдИрдВ рдЖрджреЗрд╢ рдЪрд▓рд╛рдПрд░ рд░рд╛рд╕реНрдкрдмреЗрд░реА Pi рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдо рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ sudo raspi- рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдиред рдпреЛ (рдЖрд╢реНрдЪрд░реНрдп:) raspberrypi рдорд╛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЫред рдпреЛ рд╕рд╛рдпрдж рд╕рд╛рдорд╛рдиреНрдп рдЬреНрдЮрд╛рди рд╣реЛред рдпрджреНрдпрдкрд┐, рд╕рдмреИрд▓рд╛рдИ рдерд╛рд╣рд╛ рдЫреИрди рдХрд┐ рдпреЛ рдирд╛рдо рд╕реНрдерд╛рдиреАрдп рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрдирд┐ рдЙрдкрд▓рдмреНрдз рдЫ, рддрд░ рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕рдорд╛ ".local" рдердкреНрдиреБ рдЖрд╡рд╢реНрдпрдХ рдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдЗрдБ рдЖрджреЗрд╢ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реЗрд░ SSH рдорд╛рд░реНрдлрдд рддрдкрд╛рдЗрдБрдХреЛ Raspberry Pi рдорд╛ рд▓рдЧ рдЗрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдкрдЯреАрдЯреА [рдИрдореЗрд▓ рд╕реБрд░рдХреНрд╖рд┐рдд]ред рд╕рд╛рдБрдЪреЛ, рддреНрдпрд╣рд╛рдБ рдПрдЙрдЯрд╛ рдЪреЗрддрд╛рд╡рдиреА рдЫ: рдпрд╕рд▓реЗ рд╡рд┐рдиреНрдбреЛрдЬ рд░ рд▓рд┐рдирдХреНрд╕рдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ, рддрд░ рдПрдиреНрдбреНрд░реЛрдЗрдбрдорд╛ рдХрд╛рдо рдЧрд░реНрджреИрди - рддрдкрд╛рдИрдВрд▓реЗ рдЕрдЭреИ рдкрдирд┐ рддреНрдпрд╣рд╛рдБ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдиреБрдкрд░реНрдиреЗрдЫред

2. рдорд┐рдбрд┐рдпрд╛ рд╕рд░реНрднрд░

Raspberry Pi рдорд╛ рдорд┐рдбрд┐рдпрд╛ рд╕рд░реНрднрд░ рдмрдирд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ 1001 рддрд░рд┐рдХрд╛рд╣рд░реВ рдЫрдиреН, рдо рдХреЗрд╡рд▓ рд╕рдмреИрднрдиреНрджрд╛ рд╕рдЬрд┐рд▓реЛ рдХрднрд░ рдЧрд░реНрдиреЗрдЫреБред рдорд╛рдиреМрдВ рд╣рд╛рдореАрд╕рдБрдЧ MP3 рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдордирдкрд░реНрдиреЗ рд╕рдВрдЧреНрд░рд╣ рдЫ рд░ рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ рд╕рдмреИ рдорд┐рдбрд┐рдпрд╛ рдЙрдкрдХрд░рдгрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕реНрдерд╛рдиреАрдп рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдЙрдкрд▓рдмреНрдз рдЧрд░рд╛рдЙрди рдЪрд╛рд╣рдиреНрдЫреМрдВред рд╣рд╛рдореА Raspberry Pi рдорд╛ MiniDLNA рд╕рд░реНрднрд░ рд░рд╛рдЦреНрдиреЗрдЫреМрдВ рдЬрд╕рд▓реЗ рд╣рд╛рдореНрд░реЛ рд▓рд╛рдЧрд┐ рдпреЛ рдЧрд░реНрди рд╕рдХреНрдЫред

рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди, рдЖрджреЗрд╢ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН sudo apt-get install minidlnaред рддреНрдпрд╕рдкрдЫрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдЖрджреЗрд╢ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реЗрд░ рдХрдиреНрдлрд┐рдЧрд░ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ sudo nano /etc/minidlna.confред рддреНрдпрд╣рд╛рдБ рддрдкрд╛рдИрдВрд▓реЗ рд╣рд╛рдореНрд░реЛ рдлрд╛рдЗрд▓рд╣рд░реВрдорд╛ рдорд╛рд░реНрдЧ рд╕рдВрдХреЗрдд рдЧрд░реНрдиреЗ рдПрдЙрдЯрд╛ рдорд╛рддреНрд░ рд░реЗрдЦрд╛ рдердкреНрдиреБ рдЖрд╡рд╢реНрдпрдХ рдЫ: media_dir=/home/pi/MP3 (рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдмрд╛рдЯреЛ рдлрд░рдХ рд╣реБрди рд╕рдХреНрдЫ)ред рдлрд╛рдЗрд▓ рдмрдиреНрдж рдЧрд░реЗрдкрдЫрд┐, рд╕реЗрд╡рд╛ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

sudo systemctl minidlna рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреБрд╣реЛрд╕реН

рдпрджрд┐ рд╣рд╛рдореАрд▓реЗ рд╕рдмреИ рдХреБрд░рд╛ рд╕рд╣реА рдЧрд░реНрдпреМрдВ рднрдиреЗ, рд╣рд╛рдореАрд╕рдБрдЧ рд╕реНрдерд╛рдиреАрдп рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рд░реЗрдбрд┐рдореЗрдб рдорд┐рдбрд┐рдпрд╛ рд╕рд░реНрднрд░ рд╣реБрдиреЗрдЫ рдЬрд╕рдмрд╛рдЯ рддрдкрд╛рдИрдВ рдбреЗрд╕реНрдХрдЯрдк рд╡рд╛рдЗрдлрд╛рдЗ рд░реЗрдбрд┐рдпреЛ рд╡рд╛ рдПрдиреНрдбреНрд░реЛрдЗрдбрдорд╛ VLC-рдкреНрд▓реЗрдпрд░ рдорд╛рд░реНрдлрдд рд╕рдВрдЧреАрдд рдмрдЬрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ:

рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ 5 рдЙрдкрдпреЛрдЧреА рддрд░рд┐рдХрд╛рд╣рд░реВ

рд╕реБрдЭрд╛рд╡: Raspberry Pi рдорд╛ рдлрд╛рдЗрд▓рд╣рд░реВ рдЕрдкрд▓реЛрдб рдЧрд░реНрди WinSCP рдХреЛ рд╕рд╛рде рдзреЗрд░реИ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЫ - рдпреЛ рдХрд╛рд░реНрдпрдХреНрд░рдорд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕реНрдерд╛рдиреАрдп рдлреЛрд▓реНрдбрд░рд╣рд░реВ рдЬрд╕реНрддреИ рд╕рдЬрд┐рд▓реИ рд╕рдВрдЧ RPi рдлреЛрд▓реНрдбрд░рд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ 5 рдЙрдкрдпреЛрдЧреА рддрд░рд┐рдХрд╛рд╣рд░реВ

3. SDR рд░рд┐рд╕реАрднрд░

рдпрджрд┐ рд╣рд╛рдореАрд╕рдБрдЧ RTL-SDR рд╡рд╛ SDRPlay рд░рд┐рд╕реАрднрд░ рдЫ рднрдиреЗ, рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ GQRX рд╡рд╛ CubicSDR рдХрд╛рд░реНрдпрдХреНрд░рдо рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ Raspberry Pi рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдЫреМрдВред рдпрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдПрдХ рд╕реНрд╡рд╛рдпрддреНрдд рд░ рдореМрди SDR рд░рд┐рд╕реАрднрд░рдХреЛ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рдЬреБрди рдШрдбреА рд╡рд░рд┐рдкрд░рд┐ рдкрдирд┐ рдХрд╛рдо рдЧрд░реНрди рд╕рдХреНрдЫред

рдЯрд┐рднреА рд╕реНрдХреНрд░рд┐рдирдмрд╛рдЯ рд╕реНрдХреНрд░рд┐рдирд╕рдЯрдХреЛ рдЧреБрдгрд╕реНрддрд░рдХреЛ рд▓рд╛рдЧрд┐ рдо рдорд╛рдлреА рдЪрд╛рд╣рдиреНрдЫреБ:

рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ 5 рдЙрдкрдпреЛрдЧреА рддрд░рд┐рдХрд╛рд╣рд░реВ

RTL-SDR рд╡рд╛ SDRPlay рдХреЛ рдорджреНрджрддрд▓реЗ, 1 GHz рд╕рдореНрдордХреЛ рдлреНрд░рд┐рдХреНрд╡реЗрдиреНрд╕реАрдХрд╛ рд╕рд╛рде рд╡рд┐рднрд┐рдиреНрди рд░реЗрдбрд┐рдпреЛ рд╕рдВрдХреЗрддрд╣рд░реВ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдореНрднрд╡ рдЫ (рдЕрд▓рд┐ рдмрдвреА рдкрдирд┐)ред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВ рд╕рд╛рдорд╛рдиреНрдп рдПрдлрдПрдо рд░реЗрдбрд┐рдпреЛ рдорд╛рддреНрд░ рд╕реБрдиреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд░ рдкрд╛рдЗрд▓рдЯ рд╡рд╛ рдЕрдиреНрдп рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рдХреБрд░рд╛рдХрд╛рдиреА рдкрдирд┐ред рдЦреИрд░, Raspberry Pi рдХреЛ рд╕рд╣рдпреЛрдЧрдорд╛ рд░реЗрдбрд┐рдпреЛ рдПрдореЗрдЪреНрдпреЛрд░рд╣рд░реВрд▓реЗ рд╕рд░реНрднрд░рдорд╛ рд╕рдВрдХреЗрддрд╣рд░реВ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди, рдбрд┐рдХреЛрдб рдЧрд░реНрди рд░ рдкрдард╛рдЙрди рд╕рдХреНрдЫрдиреНред WSPR рд░ рдЕрдиреНрдп рдбрд┐рдЬрд┐рдЯрд▓ рдореЛрдбрд╣рд░реВ.

SDR рд░реЗрдбрд┐рдпреЛрдХреЛ рд╡рд┐рд╕реНрддреГрдд рдЫрд▓рдлрд▓ рдпрд╕ рд▓реЗрдЦрдХреЛ рджрд╛рдпрд░рд╛рднрдиреНрджрд╛ рдмрд╛рд╣рд┐рд░ рдЫ, рддрдкрд╛рдИрдВ рдердк рдкрдвреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдпрд╣рд╛рдБ.

4. "рд╕реНрдорд╛рд░реНрдЯ рдШрд░" рдХреЛ рд▓рд╛рдЧрд┐ рд╕рд░реНрднрд░

рдЖрдлреНрдиреЛ рдШрд░рд▓рд╛рдИ рд╕реНрдорд╛рд░реНрдЯ рдмрдирд╛рдЙрди рдЪрд╛рд╣рдиреЗрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдирд┐рдГрд╢реБрд▓реНрдХ OpenHAB рдХрд╛рд░реНрдпрдХреНрд░рдо рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ 5 рдЙрдкрдпреЛрдЧреА рддрд░рд┐рдХрд╛рд╣рд░реВ

рдпреЛ рдХреЗрд╡рд▓ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдорд╛рддреНрд░ рд╣реЛрдЗрди, рддрд░ рд╕рдореНрдкреВрд░реНрдг рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реЛ рдЬрд╕рдорд╛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд▓рдЧрдЗрдирд╣рд░реВ, рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВ рдЫрдиреН рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдХрд░рдгрд╣рд░реВ (Z-Wave, Philips Hue, рдЖрджрд┐) рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЪрд╛рд╣рдиреЗрд╣рд░реВрд▓реЗ off.site рдорд╛ рд╡рд┐рд╕реНрддреГрдд рд░реВрдкрдорд╛ рдЕрдзреНрдпрдпрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ https://www.openhab.org.

рд╡реИрд╕реЗ, рд╣рд╛рдореА "рд╕реНрдорд╛рд░реНрдЯ рдШрд░" рдХреЛ рдмрд╛рд░реЗрдорд╛ рдХреБрд░рд╛ рдЧрд░реНрджреИрдЫреМрдВ, рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИрд▓реЗ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ MQTT рд╕рд░реНрднрд░ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдЫ рдЬреБрди рд╡рд┐рднрд┐рдиреНрди рд╕реНрдерд╛рдиреАрдп рдЙрдкрдХрд░рдгрд╣рд░реВрджреНрд╡рд╛рд░рд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред

5. FlightRadar24 рдХреЛ рд▓рд╛рдЧрд┐ рдЧреНрд░рд╛рд╣рдХ

рдпрджрд┐ рддрдкрд╛рдИрдВ рдЙрдбреНрдбрдпрди рдЙрддреНрд╕рд╛рд╣реА рд╣реБрдиреБрд╣реБрдиреНрдЫ рд░ FlightRadar рдХрднрд░реЗрдЬ рдХрдо рднрдПрдХреЛ рдХреНрд╖реЗрддреНрд░рдорд╛ рдмрд╕реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдИрдВрд▓реЗ рд░рд┐рд╕реАрднрд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реЗрд░ рд╕рдореБрджрд╛рдп рд░ рд╕рдмреИ рдпрд╛рддреНрд░реБрд╣рд░реВрд▓рд╛рдИ рдорджреНрджрдд рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рддрдкрд╛рдИрд▓рд╛рдИ RTL-SDR рд░рд┐рд╕реАрднрд░ рд░ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдЪрд╛рд╣рд┐рдиреНрдЫред рдмреЛрдирд╕рдХреЛ рд░реВрдкрдорд╛, рддрдкрд╛рдИрдВрд▓реЗ FlightRadar24 Pro рдЦрд╛рддрд╛рдорд╛ рдирд┐:рд╢реБрд▓реНрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реБрдиреЗрдЫред

рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ 5 рдЙрдкрдпреЛрдЧреА рддрд░рд┐рдХрд╛рд╣рд░реВ

рд╡рд┐рд╕реНрддреГрдд рдирд┐рд░реНрджреЗрд╢рди рдкрд╣рд┐рд▓реЗ рдиреИ рдкреНрд░рдХрд╛рд╢рд┐рдд Habr рдорд╛ред

рдирд┐рд╖реНрдХрд░реНрд╖рдорд╛

рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рд╕рдмреИ рдХреБрд░рд╛ рдпрд╣рд╛рдБ рд╕реВрдЪреАрдмрджреНрдз рдЫреИрдиред Raspberry Pi рдорд╛ рдзреЗрд░реИ рдкреНрд░рд╢реЛрдзрди рд╢рдХреНрддрд┐ рдЫ рд░ рд░реЗрдЯреНрд░реЛ рдЧреЗрдо рдХрдиреНрд╕реЛрд▓ рд╡рд╛ рднрд┐рдбрд┐рдпреЛ рдирд┐рдЧрд░рд╛рдиреА рджреЗрдЦрд┐ рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдкреНрд▓реЗрдЯ рдкрд╣рд┐рдЪрд╛рди рд╕рдореНрдо, рд╡рд╛ рдЦрдЧреЛрд▓ рд╡рд┐рдЬреНрдЮрд╛рди рдХреЛ рд▓рд╛рдЧреА рдПрдХ рд╕реЗрд╡рд╛ рдХреЛ рд░реВрдк рдорд╛ рд╡рд┐рднрд┐рдиреНрди рдХрд╛рд░реНрдпрд╣рд░реБрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рд╕рдмреИ рдЖрдХрд╛рд╢ рдХреНрдпрд╛рдореЗрд░рд╛рд╣рд░реВ рдЙрд▓реНрдХрд╛рд╣рд░реВ рд╣реЗрд░реНрдиред

рд╡реИрд╕реЗ, рдХреЗ рд▓реЗрдЦрд┐рдПрдХреЛ рдерд┐рдпреЛ рддреНрдпреЛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИрдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рддреНрд░ рд╣реЛрдЗрди, рддрд░ рд╡рд┐рднрд┐рдиреНрди "рдХреНрд▓реЛрдирд╣рд░реВ" (Asus Tinkerboard, Nano Pi, рдЖрджрд┐) рдХреЛ рд▓рд╛рдЧрд┐ рдкрдирд┐ рд╕рд╛рдиреНрджрд░реНрднрд┐рдХ рдЫ, рд╕рдмреИ рдХрд╛рд░реНрдпрдХреНрд░рдорд╣рд░реВ рддреНрдпрд╣рд╛рдБ рдкрдирд┐ рдХрд╛рдо рдЧрд░реНрдиреЗрдЫрдиреНред

рдпрджрд┐ рджрд░реНрд╢рдХрд╣рд░реВ рд░реБрдЪрд┐ рд░рд╛рдЦреНрдЫрдиреН (рдЬреБрди рд▓реЗрдЦрдХреЛ рдореВрд▓реНрдпрд╛рдЩреНрдХрдирджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░рд┐рдиреЗрдЫ), рд╡рд┐рд╖рдп рдЬрд╛рд░реА рд░рд╛рдЦреНрди рд╕рдХрд┐рдиреНрдЫред

рд░ рд╕рдзреИрдВ рдЬрд╕реНрддреИ, рд╕рдмреИрд▓рд╛рдИ рд╢реБрднрдХрд╛рдордирд╛ред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди