Helpdesk: Migracja OneDrive z dysku na dysk

2024-11-01

Plany się z czasem zmieniają. Decyzja o przechowywaniu swoich danych na dysku C z czasem podlega weryfikacji, bo C być może jest już prawie pełny, a D świeci pustkami.

Migracja OneDrive na inny dysk nie jest trudna. Oto kroki do wykonania:

  1. Otwórz OneDrive >> Kliknij zębatkę >> Wybierz ustawnienia (settings) >> przejdź do konto (account).
  2. Tutaj kliknij „Unlink this PC”. W tym momencie pliki tak jak były w starej lokalizacji, tak sobie tam zostały, ale się nie synchronizują. Możesz zostawić to okienko otwarte, bo za chwilę coś będzie tu do zrobienia.
  3. Teraz przenieś swoje pliki np. z dysku C na D
  4. Wróć do okienka z pkt. 2. Teraz trzeba ponownie podłączyć komputer do synchronizacji z OneDrive. Podczas konfiguracji wskaż na nową lokalizację swoich danych. We wskazanym katalogu powinien się znajdować skopiowany w kroku 3 katalog
  5. Po zakończeniu konfiguracji zobaczysz że OneDrive skanuje wszystkie pliki i synchornizuje ich zawartość, ale spokojnie – proces sprawda tylko czy pliki są takie same, nie kopiuje ich jeśli nie trzeba. Niemniej proces może zabrać trochę czasu…
By Rafał Kraik in Helpdesk

Helpdesk: VSC – zwiększenie wcięć w explorerze

2024-10-22

Nie wiem, czy to już wzrok zawodzi, czy co, ale jak dla mnie okienko explorera w VSC jest jakoś takie nieczytelne. Foldery są mało widoczne, zlewają sie z plikami itp. Ale da sie to zmienić!

W ustawieniach (File >> Preferences >> Settings) VSC odszukaj ustawienia „tree indent”. Ja ustwiłem sobie tą wartość na „zabójcze” 32, ale 16 też znacznie poprawia widoczność wcięć:

By Rafał Kraik in Helpdesk

Helpdesk: migracja Windows 11 na nowy dysk (klonowanie dysku)

2024-10-19

Gdy w końcu dojrzejesz do decyzji o wymianie dysku na większy, nie chcesz przechodzić przez proces instalacji systemu operacyjnego, instalacji oprogramowania, konfiguracji itp. itd. W takim przypadku pomocne może być klonowanie dysku.

Istnieje dużo aplikacji, które pozwolą sklonować dysk, problem tylko w tym, jak sobie te programy poradzą zwłaszcza z utrzymaniem możliwości bootowania ze sklonowanego dysku. Dlatego ku pamięci opiszę tu z jakich narzędzi korzystałem, a jakie zawiodły i dlaczego.

Mój plan nr 1 to skorzystanie z oprogramowania dodawanego do dysku. Zdecydowałem się na dysk Western Digital Black Edition, a WD dodaje do niego licencję na Acronis True Image. Program ten ma zadziałać z całą mocą jeśli tylko wykryje dysk WD podpięty do systemu. Rozpakowałem i przy pomocy obudowy Natec Rino podłączyłem dysk do komputera. Ze strony WD pobrałem Acronis-a. Zainstalowałem, a potem otworzyłem program i… zobaczyłem komunikat o błędzie aktywacji licencji. Oprogramowanie nie widziało dysku WD i nie chciało się aktywować. Rzeczywiście dysk identyfikował się w systemie jako Jmicron i stało się tak raczej nie dlatego, że sprzedawca sprzedał podróbkę, ale po prostu WD przejęło firmę Jmicron. Wypełniłem więc zgłoszenie usterki i machnąłem ręką na WD i Acronisa. Szkoda, bo większość dysków, jakie mam to WD i jak do tej pory nie miałem z nimi większych problemów, a tu taka klapa. Gdyby jednak wszystko zadziałało, pewnie kontynuowałbym tak jak na tym video albo tak, jak opisali to w instrukcji.

Co ciekawe, już we wspomnianej instrukcji pisano, że nowy dysk musi być zainstalowany w komputerze, a stary może się znajdować „na zewnątrz”. Podobno połączenie dysków odwrotnie (stary w komputerze, nowy w obudowie na zewnątrz), może spowodować, że nowy dysk po klonowaniu nie będzie sie bootował. Tymczasem…. znalazłem lepsze rozwiązanie, które takiego problemu nie miało.

Bohaterami zostali:

Clonezille można pobrać w formacie ISO, u mnie plik nazywał się clonezilla-live-3.2.0-5-amd64. Ten obraz ISO należy następnie przegrać np. na pendrive, ale w taki sposób, aby dysk USB był bootowalny i właśnie w tym przegraniu obrazu pomaga Rufus.

Tak więc:

  • pobrałem Clonezille
  • pobrałem Rufusa
  • znalazłem pen drive
  • włożyłem pen drive do portu USB
  • uruchomiłem Rufusa i przeniosłem obraz ISO clonezilli na pendrive

Dokładny opis, jak to zrobić znajduje się np. tutaj: https://beitadmin.pl/jak-sklonowac-dysk-za-pomoca-clonezilli/

Następnie dokładnie tak, jak jest to opisane we wspomnianym artykule

  • podłączyłem nowy dysk do komputera za pomocą zewnętrznej obudowy
  • uruchomiłem komputer z pendrive
  • krok po kroku powiedzialem Clonezilli, co chcę zrobić. Trzeba tylko uważać na wybierane opcje. Przy drobnym błędzie można sobie sklonować nowy (pusty) dysk na stary (z twoimi cennymi danymi)
  • potem wyłączyłem komputer i wymieniłem dyski miejscami. Teraz nowy dysk był już w komputerze
  • następnie trzymając kciuki włączyłem komputer i WSZYSTKO DZIAŁALO

Może jedyna wada tego rozwiązania była taka, że na nowym dysku powstał układ systemu plików i podział partycji, taki sam ja na oryginalnym dysku. W moim przypadku migracja była z dysku 500GB na dysk 2TB, więc po prostu utworzyłem dodatkowy wolumen przeznaczając na niego to dodatkowe wolne miejsce. Może tak i jest lepiej?

Podsumowując: zawiodłem się na bonusach rozdawanych przez WD w postaci programu Acronis True Image. Nadal uważam, że dyski WD są dobrej jakości. Znowu przekonałem się, że open source i rozwiązania oparte o Linuxa prezentują świetną jakość. Polecam Clonezille i Rufusa!

By Rafał Kraik in Helpdesk

PowerShell: grep

2024-10-16

Oj, brakuje pod Windows prostej funkcji grep, ale skoro jest PowerShell, to można sobie taką funkcję zrobić samemu!

Get-ChildItem c:\temp\*.* -Recurse -File | Select-String -Pattern "TODO:"

By Rafał Kraik in Power Shell, SQL

GitHub: Pull Request review w GitHub CLI

2024-10-15

GitHub jest super, ale kiedy chcesz zautomatyzować co nieco w zakresie pracy z kodem, to przyda się praca z linii komend. Jeśli jeszcze nie masz zainstalowanego GitHub CLI to pobierz je.

Pełna lista komend gh znajduje się tutaj: GitHub CLI | Take GitHub to the command line

Zaczynamy w cmd od przejścia do właściwego repo. To ważne, bo chociaż komendy gh pozwalają przy pomocy parametru wskazać, na którym repo będą wykonywane pewne czynności, to wygodnie jest korzystać z domyślnego repo, którym jest to, gdzie uruchomiło się gh

Pracę zaczyna się od zalogowania.

gh auth login

Teraz zależnie od konfiguracji mogą wydarzyć się różne rzeczy, ale np. autoryzować można się za pomocą Personal Access Token (PAT). Wystarczy wkleić PAT i już zostaniemy uwierzytelnieni jako właściwy użytkownik z właściwym dostępem.

Aby wyświetlić oczekujące Pull Request uruchom

gh pr list

W odpowiedzi wyświetli się lista oczekujących pull requestów. Można podejrzeć metadane uruchamiając polecenie view z odpowiednim numerem pr:

gh pr view 2

Żeby zobaczyć jakie zmiany idą za pull request uruchom

gh pr diff 2

Jednym z zadań do wykonania podczas akceptacji pull request jest wykonanie review, a w tym review często dodajemy komentarz (opcja c odpowiada za komentarz, a opcja b za blok tekstu):

gh pr review 2 -c -b „good idea!”

Oprócz review można też zaakceptować request:

gh pr review 2 –approve

No i wreszcie pull request można dołączyć do brancha:

gh pr merge 2

Do kompletu zostałoby jeszcze tylko może w jaki sposób utworyć nowy pull request. Zrobisz to tak:

gh pr create –base main –head „automation”–title „Automation added” –body „Added automation to data processing”

By Rafał Kraik in Git

Hyper-V: Konfiguracja sieci „internal” z dostępem do Internetu

2024-10-08

Hyper-V pozwala utworzyć Virtual Switch typu:

  • private – wyizolowana sieć, bez dostępu do sieci hosta
  • internal – wewnętrzna wirtualna sieć, do której dostęp może mieć komputer wirtualny, jak i system hosta, co za tym idzie, można udostępnić Internet
  • external – maszyna wirtualna „widzi” tę samą sieć, co host

Jeśli chcesz, aby maszyna wirtualna miała dostęp do Internetu, to przez eliminację odpada sieć private. Można by skorzystać z sieci external, ale wtedy jest delikatny problem z adresem IP komputera wirtualnego, bo jest on przyznawany przez DHCP, a możesz preferować jednak stały adres IP. Ewentualne skonfigurowanie statycznego adresu IP na maszynie wirtualnej może doprowadzić do konfliktów, a tego byśmy nie chcieli. I tak zostaje sieć internal.

No to po kolei:

  • Otwórz managera Hyper-V i w Virtual Switch Manager utwórz sieć typu internal. Możemy ją nazwać np. InternalSwitch. Można to też zrobić poleceniem PowerShell:
New-VMSwitch -SwitchName "InternalSwitch" -SwitchType Internal
  • Na komputerze hosta w PowerShell uruchomionym jako administrator uruchom kolejno polecenia, które skonfigurują tę maszynę do NAT:
    • Przypisanie do interfejsu hosta odpowiadającego za komunikację z siecią wewnętrzną stałego adresu IP (tutaj 192.168.0.1). Jeśli nie lubisz PowerShella, można to też wyklikać
New-NetNAT -Name "InternalNAT" -InternalIPInterfaceAddressPrefix "192.168.0.0/24"
  • Nadal w Powershell na hoście
    • Konfiguracja wewnętrznej sieci do NAT. Tutaj trzeba użyć PowerShella, lub ewentualnie dodać do hosta rolę RRAS (Routing and Remote Access Server), ale to dość dużo pracy w porównaniu do jednej komendy
New-NetIPAddress -IPAddress 192.168.0.1 -PrefixLength 24 -InterfaceAlias "vEthernet (InternalSwitch)"
  • W ustawieniach maszyny wirtualnej podłącz interfejs sieciowy do sieci internal
  • Skonfiguruj maszynę wirtualną ze stałym adresem IP:
    • Adres IP – dowolny nieużywany jeszcze adres IP z zakresu 192.168.0.0/24
    • Brama domyślna – 192.168.0.1 – czyli ten sam adres IP, co używany na wewnętrznym interfejsie hosta
    • DNS – dowolny, np googlowski 8.8.8.8

U mnie działa!

By Rafał Kraik in Helpdesk

Linux: Kilka połączeń na jednym interfejsie

2024-10-08

Network manager to sprytna bestia. Można dla jednego interfejsu sieciowego zdefiniowac np. polaczenie net-static, ktore przypisuje temu interfejsowi adres statyczny  oraz polaczenie net-dynamic, ktore przydziela interfejsowi adres z DHCP. W danej chwili może być aktywne tylko jedno połącznie, ale w ramach potrzeb można się przełączyć z jednej konfiguracji do drugiej. Zwykle jedno połączenie odpowiada jednemu interfejsowi, ale… warto wiedzieć, że się da 🙂

Tak można by zdefiniować net-static:

nmcli connection add type ethernet con-name net-static ifname eth0 ip4 192.168.1.100/24 gw4 192.168.1.1

a tak można zdefiniować net-dynamic:

nmcli connection add type ethernet con-name net-dynamic ifname eth0

Potem można aktywować net-static:

nmcli connection up net-static

A tak można aktywować net-dynamic:

nmcli connection up net-dynamic

Żeby zobaczyć listę dostępnych połączeń dla jednego interfejsu użyj:

nmcli connection show --active

By Rafał Kraik in Linuxy