Narzędzia użytkownika

Narzędzia witryny


sk2:zajecia_zdalne

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
sk2:zajecia_zdalne [2020/11/03 14:07]
jkonczak [Krok 2: uruchomienie VNC]
sk2:zajecia_zdalne [2021/12/18 13:38] (aktualna)
jkonczak [Oprogramowanie do zdalnych zajęć]
Linia 1: Linia 1:
-====== ​Instrukcje ​do zdalnych zajęć ======+====== ​Oprogramowanie ​do zdalnych zajęć ======
  
-===== Narzędzia =====+++++ Programowanie niskopoziomowe |
  
 Do zajęć zdalnych koniecznie musicie mieć do dyspozycji: Do zajęć zdalnych koniecznie musicie mieć do dyspozycji:
Linia 7: Linia 7:
   * dowolny współczesny kompilator C/​C+''''​+:​   * dowolny współczesny kompilator C/​C+''''​+:​
     * polecane: [[https://​gcc.gnu.org/​|GCC]] w wersji ≥9 lub [[https://​clang.llvm.org/​|Clang]] w wersji ≥ 9     * polecane: [[https://​gcc.gnu.org/​|GCC]] w wersji ≥9 lub [[https://​clang.llvm.org/​|Clang]] w wersji ≥ 9
-    * uwaga: proszę sprawdzić działanie kompilatora na [[https://​gitlab.cs.put.poznan.pl/​jkonczak/​sk2_examples/​raw/​master/​l4/​l4_z1_lambda.cpp|przykładowym pliku]] - plik powinien się kompilować komendą ''​c++ -pthread --std=c++2a l4_z1_lambda.cpp''​((jeśli kompilator narzeka na ''​--std=c++2a'',​ to znaczy że jest dość stary; sugeruję zaktualizować,​ ale jeśli działa z ''​--std=c++1z'',​ to na potrzeby zajęć wystarczy))+    * uwaga: proszę sprawdzić działanie kompilatora na [[https://​gitlab.cs.put.poznan.pl/​jkonczak/​sk2_examples/​raw/​master/​l4/​l4_z1_lambda.cpp|przykładowym pliku]] - plik powinien się kompilować komendą ''​c+''''​+ -pthread --std=c+''''​+2a l4_z1_lambda.cpp''​((jeśli kompilator narzeka na ''​--std=c+''''​+2a'',​ to znaczy że jest dość stary; sugeruję zaktualizować,​ ale jeśli działa z ''​--std=c+''''​+1z'',​ to na potrzeby zajęć wystarczy))
   * IDE lub edytor tekstowy do pisania kodu:   * IDE lub edytor tekstowy do pisania kodu:
     * przykładowe IDE: [[https://​www.kdevelop.org/​|kdevelop]],​ [[https://​www.qt.io/​product/​development-tools|QtCreator]],​ [[https://​www.jetbrains.com/​clion/​|CLion]] (wersja dla edukacji jest bezpłatna)     * przykładowe IDE: [[https://​www.kdevelop.org/​|kdevelop]],​ [[https://​www.qt.io/​product/​development-tools|QtCreator]],​ [[https://​www.jetbrains.com/​clion/​|CLion]] (wersja dla edukacji jest bezpłatna)
Linia 23: Linia 23:
     * ''​wireshark''​     * ''​wireshark''​
   * wygodny emulator terminala   * wygodny emulator terminala
 +++++
  
 +**Qt**\\
 +Proszę zainstalować program qtcreator oraz podstawowe biblioteki deweloperskie,​ dokumentację i narzędzia frameworku Qt (w wersji 5.15.X lub 6.X). \\
 +W zdecydowanej większości dystrybucji Linuksa pakiety są dostępne w domyślnych repozytoriach (np. dla Ubuntu: ''​qtbase5-dev qt5-doc qtcreator''​). \\
 +Proszę przetestować czy środowisko działa poprawnie kompilując przykładowy kod: {{:​sk2:​l6_z2_template.tar.xz|}}. \\
 +<​html><​small></​html>​Uwaga:​ dla Qt6 trzeba w CMakeLists.txt zmienić wszystkie wystąpienia ''​Qt5''​ na ''​Qt6''<​html></​small></​html>​
  
-===== Metoda #1: Udostępnienie VNC prowadzącemu =====+**Java**\\ 
 +Proszę zainstalować JDK i swoje ulubione IDE do Javy (np. IntelliJ / Eclipse / NetBeans). ​
  
-  # tl;dr (czyli dla osób które chcą gotowe polecenia i nie chce im się czytać dalej) +++++ DNS | 
-  wget http://​www.cs.put.poznan.pl/​jkonczak/​pub/​sk2/​sk2-vpn-ca.crt +Proszę zainstalować programy ''​dig'',​ ''​host''​ i ''​bind''​. \\ 
-  ​sudo openvpn ​--dev tap --client --ca sk2-vpn-ca.crt --auth-user-pass --daemon --remote ipv4.jprofesorek.mooo.com +W zależności od dystrybucji,​ programy mogą być w paczkach o nazwach: 
-  ​x11vnc -quiet ​-nopw -forever -display :0 & + 
-  ​sleep 5 +  bind 
-  ​ip -4 addr show dev tap0+  bind9 
 +  bind-tools 
 +  bind9-tools 
 +  ​bind-dnsutils 
 +  bind9-dnsutils 
 +  bind-utils 
 +  bind9-utils 
 + 
 +Do sprawdzenia czy programy są dostępne, proszę użyć poleceń: 
 + 
 +  named -v 
 +  ​named-checkconf ​-v 
 +  ​dig -v 
 +  ​host -
 + 
 +//Uwaga:// named i named-checkconf mogą być dostępne tylko z roota (tzn. są w 
 +katalogu ''/​usr/​sbin'',​ który normalnie nie jest w ''​$PATH''​ zwykłego użytkownika)
   ​   ​
 +Proszę sprawdzić czy bind nie jest uruchamiany automatycznie. \\
 +Jeśli polecenie:
  
-==== Krok 1: dołączenie do VPNa ====+  ps -FA | egrep '​(named|bind)'​ 
 + 
 +znajdzie działający program ''​bind''​ lub ''​named'',​ proszę go wyłączyć,​ właściwą 
 +dla swojego systemu operacyjnego komendą, ​ zapewne przez jedną z poniższych:​ 
 + 
 +  systemctl stop bind && systemctl disable bind  
 +  systemctl stop bind9 && systemctl disable bind9 
 +  systemctl stop named && systemctl disable named 
 +  /​etc/​init.d/​bind stop && rc-update delete bind 
 +  /​etc/​init.d/​bind9 stop && rc-update delete bind9 
 +  /​etc/​init.d/​named stop && rc-update delete named 
 + 
 +++++ 
 + 
 +++++ Kształtowanie ruchu | 
 +Na zajęciach będziecie pracować na komputerach w laboratorium na Politechnice. 
 +Przed zajęciami proszę: 
 +  * zalogować się na ''​polluks''​a (tzn. sprawdzić, czy pamiętacie hasło) 
 +  * zalogować się z polluksa na wybrany z komputerów laboratoryjnych (lab-net-[1-16] lub lab-sec-[1-16]):​ 
 +    * swoim kontem ''​inf…'',​ a jeśli się nie da, to 
 +    * na konto ''​root''​ ze standardowym hasłem 
 +  * jeśli zalogowaliście się swoim kontem do VLABa, proszę wybrać ''​Start local Linux''​ i zalogować się po ok. 2 minutach ponownie (na konto root) \\ __Uwaga:__ jeśli na komputerze jest uruchomiona jakaś maszyna wirtualna, może to oznaczać że ktoś pracuje (np. w ramach innych zdalnych zajęć) na tym komputerach,​ więc proszę wtedy nie wybierać lokalnego linuksa i spróbować później / na innej maszynie. 
 +  * uruchomić ponownie (''​reboot''​) maszynę po sprawdzeniu że udało Wam się zalogować na konto roota. 
 +Zachęcam do przypomnienia sobie jak korzysta się z SSH i narzędzi takich jak screen i tmux ([[https://​github.com/​zolrath/​wemux|wemux]]),​ korzystając np. [[sk1:​ssh_screen_tmux|z tych materiałów]] (materiały były przedstawione ​  ​[[https://​emeeting.put.poznan.pl/​playback/​presentation/​2.0/​playback.html?​meetingId=74d51a8d51ffe7dd7d66f8eaa6ffeffc725c5060-1585652713066|na początku jednych z zajęć ​ z SK1]]).\\ 
 +Na tych zajęciach będę sprawdzać stan Waszej pracy logując się na maszyny w laboratorium,​ więc nie musicie udostępniać mi ekranu. Zachęcam do używania screen/tmux żebym np. mógł wskazać Wam gdzie jest błąd w komendach które wpisujecie a są traktowane jako niepoprawne. 
 + 
 +++++ 
 + 
 + 
 +++++ IPv6  | 
 +Podobnie jak na zajęciach z kształtowania ruchu (powyżej) w trakcie zajęć będą wykorzystywane komputery w laboratoriach. 
 + 
 +W trakcie tych zajęć będzie konieczność uruchomienia programu Wireshark na komputerach w laboratorium. \\ 
 +Dlatego proszę o przygotowanie się do używania programu wireshark, np: 
 +  * wykorzystując X11 forwarding w SSH (opisane [[sk1:​ssh_screen_tmux|tutaj]]);​ \\ jeśli korzystacie z Windowsa, X11 forwardig wymaga uruchomionego serwera [[https://​en.wikipedia.org/​wiki/​X_Window_System|X]],​ np. [[https://​sourceforge.net/​projects/​vcxsrv/​|vcxsrv]] \\ Uwaga: z powodu [[https://​github.com/​PowerShell/​Win32-OpenSSH/​issues/​1088|błędu]] w windowsowej wersji ssh może być konieczne posiadanie pliku ''​C:​\dev\tty'',​ <​html><​small></​html>​ np. tworzonego przez:<​code>​ 
 +mkdir \dev 
 +echo x > \dev\tty 
 +</​code>​ <​html></​small></​html>​a następnie ustawienie zmiennej DISPLAY na odpowiednią wartość przed wywołaniem ssh, np. w cmd.exe: \\ ''​set DISPLAY=localhost:​0''​ 
 +  * uruchomienie serwera VNC <​html><​small></​html>​(lub rdesktop)<​html></​small></​html>​ na maszynie w laboratorium i połączenie się z tym serwerem, wykorzystując [[https://​instrukcje.put.poznan.pl/​category/​vpn/​|VPN politechniki]] lub tunelowanie po SSH (opisane skrótowo [[sk1:​ssh_screen_tmux|tutaj]]). 
 +++++ 
 + 
 +++++ WLAN 1  | 
 +Podobnie jak na zajęciach z IPv6 (powyżej) w trakcie zajęć będą wykorzystywane komputery w laboratoriach. \\ 
 +Możliwe (zależy od tempa zajęć) że w trakcie zajęć będzie też potrzeba uruchomić Wireshark na komputerach w laboratorium. 
 +++++ 
 + 
 +++++ WLAN 2  | 
 +Zajęcia będą odbywać się na komputerach w laboratorium. \\ 
 +W zależności od ilości osób może wystąpić konieczność pracy w grupach – sprzętowych AP jest ograniczona ilość. 
 +Dlatego proszę o przećwiczenie pracy w jednej konsoli przez kilka osób (np. używając tmux/wemux lub współdzieląc ekran). 
 +++++ 
 + 
 +++++ WLAN 3  | 
 +Zajęcia będą odbywać się na komputerach w laboratorium. \\ 
 +Będziecie konfigurować sprzęt firmy MikroTik, który najłatwiej konfiguruje się z użyciem przeglądarki pod domyślnym ​ dla sprzętu tej firmy adresem IP 192.168.88.1.\\ 
 +Dla wygody i sprawnego działania interfejsu konfiguracyjnego zalecam skonfigurować przekierowanie portów po SSH. 
 +Możecie albo: 
 +  * użyć //local port forwarding//​ do przekazywania danych z połączeń nawiązywanych na podany port lokalnego komputera przez połączenie SSH do wskazanego adresu po stronie serwera SSH, np. przez: <​code>​ssh -Y -J infXXX@polluks.cs.put.poznan.pl -L 8080:​192.168.88.1:​80 root@lab-sec-X</​code>​ Wtedy połączenie pod ''​http://​localhost:​8080/''​ z przeglądarki internetowej spowoduje nawiązanie połączenia z serwera ssh do adresu 192.168.88.1:​80 i przekazywanie danych między tymi połączeniami,​ a więc wyświetlenie interfejsu konfiguracyjnego sprzętu. 
 +  * użyć //dynamic port forwarding//​ do uruchomienia proxy SOCKS tunelujących połączenia na drugą stronę połączenia SSH i skonfigurować połączenie przeglądarki z siecią tak by używało tego proxy. Przykładowa komenda ssh: <​code>​ssh -Y -J infXXX@polluks.cs.put.poznan.pl -D 8080 root@lab-sec-X</​code>​ Przykładowa instrukcja jak używać takiego proxy jest tutaj: https://​linuxize.com/​post/​how-to-setup-ssh-socks-tunnel-for-private-browsing/​ 
 + 
 +++++ 
 + 
 +====== Udostępnianie widoku swojego pulpitu ​ ====== 
 + 
 +Proszę wybrać __jedną__ metodę na udostępnianie mi podglądu kodu który piszecie. 
 + 
 +===== Metoda #1: Udostępnienie VNC prowadzącemu (Linuks) ===== 
 + 
 +==== Skrócona instrukcja ==== 
 +Instrukcja skrócona (dla osób które chcą gotowe polecenia i nie chce im się czytać dalej): 
 + 
 +  - zainstaluj openvpn, x11vnc i vncviewer 
 +  - wykonaj:<​code>​ 
 +wget http://​www.cs.put.poznan.pl/​jkonczak/​pub/​sk2/​sk2-vpn-ca.crt 
 +sudo openvpn --dev tap --client --ca sk2-vpn-ca.crt --auth-user-pass --daemon --remote ipv4.jprofesorek.mooo.com 
 +x11vnc -quiet -nopw -forever -display :0 & disown 
 +sleep 5 
 +ip -4 addr show dev tap0</​code>​ 
 +  - sprawdź z drugiego komputera czy po połączeniu go identycznymi poleceniami do VPNa możesz zobaczyć swój ekran:<​code>​vncviewer <​ip_komputera></​code>​ 
 + 
 +==== Pełna Instrukcja ==== 
 +   
 +=== Krok 1: dołączenie do VPNa ===
 W trakcie zajęć wykorzystywany będzie OpenVPN. Należy zainstalować odpowiednią paczkę (zwykle o nazwie ''​openvpn''​) w systemie z którego będzie udostępniany ekran. W trakcie zajęć wykorzystywany będzie OpenVPN. Należy zainstalować odpowiednią paczkę (zwykle o nazwie ''​openvpn''​) w systemie z którego będzie udostępniany ekran.
  
Linia 46: Linia 153:
   * (port i protokół domyślne - 1194/udp)   * (port i protokół domyślne - 1194/udp)
   * nazwa użytkownika i hasło, przekazane innym kanałem przez prowadzącego. ​ \\ Nazwę użytkownika i hasło można dla wygody wpisać do pliku o nieskomplikowanym ​ formacie: <code - userPass.txt>​theExampleUsername   * nazwa użytkownika i hasło, przekazane innym kanałem przez prowadzącego. ​ \\ Nazwę użytkownika i hasło można dla wygody wpisać do pliku o nieskomplikowanym ​ formacie: <code - userPass.txt>​theExampleUsername
-someIncorrectPassword</​code>​Uwaga: ​plikz hasłem musi mieć uprawnienia zabraniające odczyt komukolwiek poza bieżącym użytkownikiem (do ustawienia uprawnień można użyć np. ''​chmod go-rwx userPass.txt''​)+someIncorrectPassword</​code>​Uwaga: ​plik z hasłem musi mieć uprawnienia zabraniające odczyt komukolwiek poza bieżącym użytkownikiem (do ustawienia uprawnień można użyć np. ''​chmod go-rwx userPass.txt''​)
  
 Polecenie uruchamiające VPNa, należy je uruchamiać z __roota__ (**wybierz jedno**): Polecenie uruchamiające VPNa, należy je uruchamiać z __roota__ (**wybierz jedno**):
-  * Wersja 1 - wszystko w linii poleceń: <​code>​openvpn --dev tap --client --ca /​somewhere/​sk2-vpn-ca.crt --auth-user-pass /​somewhere/​userPass.txt --remote ipv4.jprofesorek.mooo.com</​code>​ Uwaga 1: można pominąć ​nazwę ​pliku ''​ /​somewhere/​userPass.txt'',​ wtedy program pyta o nazwę użytkownika / hasło. \\ Uwaga 2: można dodać opcję ''​--daemon'',​ która przenosi program w tło. Bez tej opcji program openvpn zajmuje konsolę (a zamknięcie okna z konsolą przerywa połączenie).+  * Wersja 1 - wszystko w linii poleceń: <​code>​openvpn --dev tap --client --ca /​somewhere/​sk2-vpn-ca.crt --auth-user-pass /​somewhere/​userPass.txt --remote ipv4.jprofesorek.mooo.com</​code>​ Uwaga 1: można pominąć ​podawanie ​pliku ''/​somewhere/​userPass.txt'',​ wtedy program pyta o nazwę użytkownika / hasło. \\ Uwaga 2: można dodać opcję ''​--daemon'',​ która przenosi program w tło. Bez tej opcji program openvpn zajmuje konsolę (a zamknięcie okna z konsolą przerywa połączenie).
   * Wersja 2 - przygotuj plik konfiguracyjny:​ <code - sk2-vpn.ovpn>​client   * Wersja 2 - przygotuj plik konfiguracyjny:​ <code - sk2-vpn.ovpn>​client
 remote ipv4.jprofesorek.mooo.com remote ipv4.jprofesorek.mooo.com
Linia 56: Linia 163:
 auth-user-pass /​somewhere/​userPass.txt auth-user-pass /​somewhere/​userPass.txt
 #​daemon</​code>​ następnie uruchom polecenie: <​code>​openvpn --config sk2-vpn.ovpn</​code>​ #​daemon</​code>​ następnie uruchom polecenie: <​code>​openvpn --config sk2-vpn.ovpn</​code>​
-  * Wersja 3 - użyj graficznego konfiguracja dla NetworkManagera (ta wersja potrzebuje NetworkManagera i może potrzebować dodatkowych pakietów, np. ''​network-manager-openvpn-gnome''​).+  * Wersja 3 - użyj graficznego konfiguracja dla NetworkManagera (ta wersja potrzebuje NetworkManagera i może potrzebować dodatkowych pakietów, np. ''​network-manager-openvpn-gnome''​). ​<​html><​small></​html>​ \\ Uwaga: poza przeklikaniem wymienionych wyżej ustawień konieczne jest wyłączenie dodawnia domyślnej bramy przez VPN: \\ ''​IPv4 options''​ / ''​Routes…''​ / ''​Use this connection only for resources on its network''​ \\ Można to też zmienić z konsoli: ''​nmcli c modify <​nazwa_połączenia>​ ipv4.never-default true''​ <​html></​small></​html> ​
  
 **Sprawdzenie czy wszystko poszło dobrze:** po wykonaniu wybranej z komend, w wynikach komendy ''​ip address''​ powinien pojawić się interfejs ''​tap0''​ z adresem IP z sieci 10.0.9.0/​24. Dodatkowo powinna działać komenda ''​ping 10.0.9.1''​. **Sprawdzenie czy wszystko poszło dobrze:** po wykonaniu wybranej z komend, w wynikach komendy ''​ip address''​ powinien pojawić się interfejs ''​tap0''​ z adresem IP z sieci 10.0.9.0/​24. Dodatkowo powinna działać komenda ''​ping 10.0.9.1''​.
Linia 62: Linia 169:
 <​html><​small></​html>​Dla zainteresowanych [[sk2:​vpn_serwer_dla_zajec|konfiguracja serwera]]<​html></​small></​html>​ <​html><​small></​html>​Dla zainteresowanych [[sk2:​vpn_serwer_dla_zajec|konfiguracja serwera]]<​html></​small></​html>​
  
-==== Krok 2: uruchomienie VNC ====+=== Krok 2: uruchomienie VNC ===
  
 Przykładowe polecenie używa serwer [[https://​en.wikipedia.org/​wiki/​X11vnc|x11vnc]] aby udostępnić bieżącą sesję graficzną. \\ <​html><​small></​html>​ Przykładowe polecenie używa serwer [[https://​en.wikipedia.org/​wiki/​X11vnc|x11vnc]] aby udostępnić bieżącą sesję graficzną. \\ <​html><​small></​html>​
Linia 68: Linia 175:
  
 Udostępnienie całej sesji graficznej: Udostępnienie całej sesji graficznej:
-  x11vnc -forever -display :0 &+  x11vnc -forever -display :0 & disown 
 +<​html><​small></​html>​
  
 +W powyższym poleceniu ''&​ disown''​ wrzuca program w tło i odłącza program od bieżącego terminala.
 +
 +<​html></​small></​html>​
 Oczywiście normalnie VNC pozwala na kontrolę myszy i klawiatury. W ''​x11vnc''​ można dodać opcję ''​-viewonly''​ żeby pozwolić tylko na podglądanie ekranu. \\ Oczywiście normalnie VNC pozwala na kontrolę myszy i klawiatury. W ''​x11vnc''​ można dodać opcję ''​-viewonly''​ żeby pozwolić tylko na podglądanie ekranu. \\
 Inne przydatne opcje to ''​-quiet''​ która zmniejsza gadatliwość standardowego wyjścia i ''​-nopw''​ która ​ pomija komunikat że serwer nie jest chroniony hasłem. Inne przydatne opcje to ''​-quiet''​ która zmniejsza gadatliwość standardowego wyjścia i ''​-nopw''​ która ​ pomija komunikat że serwer nie jest chroniony hasłem.
Linia 90: Linia 201:
 **Po uruchomieniu VPN i VNC należy na początku zajęć przesłać do prowadzącego swój adres IP z sieci 10.0.9.0/​24.** **Po uruchomieniu VPN i VNC należy na początku zajęć przesłać do prowadzącego swój adres IP z sieci 10.0.9.0/​24.**
  
-===== Metoda #2: Wtyczka 'Live Share' w VS code =====+===== Metoda #1: Udostępnienie VNC prowadzącemu (Windows) ===== 
 +Do zajęć z Qt / Javy można korzystać z Windowsa, stąd krótka instrukcja jak uruchomić VPN+VNC pod Windowsem. 
 + 
 +=== OpenVPN === 
 +Należy zainstalować openvpn: https://​openvpn.net/​community-downloads/​ \\ 
 +Nie udało mi się (ale za bardzo nie próbowałem) skorzystać z GUI, stąd 
 +proponuję z __uruchomionego jako administrator__ ​ cmd.exe lub powershella 
 +wykonać odpowiednią komendę: \\ 
 +   "​C:​\Program Files\OpenVPN\bin\openvpn.exe"​ … 
 +Argumenty dla komendy wyglądają jak w Linuksie. 
 +++++ Przykładowe screeny: | 
 +{{:​sk2:​win-vpn-1.png|}}\\ 
 +{{:​sk2:​win-vpn-2.png|}}\\ NB: plik z certyfikatem ''​sk2-vpn-ca.crt''​ nazywa się tutaj ''​sk2-vpn-ca.cer'',​ bo MS Edge "wie lepiej"​ jakie ściągany plik powinien mieć rozszerzenie.\\ 
 +{{:​sk2:​win-vpn-3.png|}} 
 +++++ 
 + 
 +=== VNC === 
 +Przykładowy i dość bezproblemowy serwer VNC to [[https://​www.tightvnc.com/​download.php|TightVNC]]. \\ 
 +Inne popularne serwery VNC to np. [[https://​archive.realvnc.com/​download/​open/​|RealVNC]] czy [[https://​tigervnc.org/​|TigerVNC]]. \\ 
 +W każdym przypadku proszę o niewymaganie hasła (ewentualnie podanie hasła prowadzącemu). 
 +++++ Przykładowy screen: | 
 +{{:​sk2:​win-vnc.png|}} 
 +++++ 
 + 
 + 
 +===== Metoda #2: Wtyczka 'Live Share' w VS code (tylko zajęcia z programowania C/​C++) ​===== 
 + 
 +++++ Ten sposób nie nadaje się do tematów innych niż 5-10 (od "​Wstęp do BSD sockets"​ do "Dobre praktyki w programowaniu"​) | 
 + 
 +Ta metoda jest prostsza do skonfigurowania,​ ale nie pozwala ona mi widzieć terminala, co utrudnia mi pomaganie w razie problemów z/podczas uruchomienia programów.
  
 Edytor VisualStudio Code pozwala udostępniać bieżąco edytowany projekt przy użyciu rozszerzenia [[https://​visualstudio.microsoft.com/​pl/​services/​live-share/​|Live Share]]. Edytor VisualStudio Code pozwala udostępniać bieżąco edytowany projekt przy użyciu rozszerzenia [[https://​visualstudio.microsoft.com/​pl/​services/​live-share/​|Live Share]].
Linia 100: Linia 240:
 {{:​sk2:​vscode_ls.png|}} {{:​sk2:​vscode_ls.png|}}
  
-**Uwaga**: Osoby korzystające z tej metody powinny:+**Uwaga**: Osoby korzystające z tej metody powinny ​do zajęć 1 i 2 z BSD sockets:
   * uruchomić u siebie usługę daytime na TCP i UDP   * uruchomić u siebie usługę daytime na TCP i UDP
   * lub wykonać z roota polecenie zastępujące daytime, np: \\ ''​socat udp-l:​daytime,​fork exec:date & socat tcp-l:​daytime,​fork exec:date &''​   * lub wykonać z roota polecenie zastępujące daytime, np: \\ ''​socat udp-l:​daytime,​fork exec:date & socat tcp-l:​daytime,​fork exec:date &''​
  
 +++++
sk2/zajecia_zdalne.1604408869.txt.gz · ostatnio zmienione: 2020/11/03 14:07 (edycja zewnętrzna)