Linux: Błąd podczas instalacji VIM

2021-11-16

Podczas instalcji VIM pojawia się błąd:

Testing changes… Failed to install packages: Error running transaction: file /usr/share/man/man1/vim.1.gz from install of vim-common-2:7.4.1868-1.fc22.x86_64 conflicts with file from vim-minimal-2:7.4.640-4.fc22.x86_64

Pomaga uruchomienie:

sudo yum update vim-minimal 

sudo yum install vim-enhanced

a to tylko jedno z rozwiązań z https://unix.stackexchange.com/questions/119310/transaction-check-error-in-installing-vim

By Rafał Kraik in Błedy

Ubuntu: Zmiana rozdzielczości w Hyper-V

2021-10-29

Niby prosta rzecz, ale wymaga grzebania w konfiguracji GRUB. Ponieważ modyfikacja pliku jest zastrzeżona dla administratora pamiętaj o sudo:

sudo vi /etc/default/grub

Tutaj trzeba poprawić jedną linijkę:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash video=hyperv_fb:1920x1080"

Po zapisaniu pliku, trzeba zastosować zmianę:

sudo update-grub

Po restarcie – rozdzielczość się zmieni:

sudo reboot
By Rafał Kraik in Linuxy

Linux: Bash: uniq – unikalne czy nieunikalne czy co…?

2021-10-17

Jest sobie w shellu polecenie uniq. Zgodnie z opisem w man:

uniq - report or omit repeated lines

Wydawałoby się więc, że przesłanie wyniku polecenia, które generuje jakieś tam wiersze danych, powinno zwrócić tylko unikalne dane. Np.

head /etc/passwd | cut -d : -f7

zwraca informacje o skonfigurowanych shellach dla kilku początkowych użytkowników z pliku /etc/passwd. (Screen poniżej)

Kiedy prześlemy dane do uniq, to wydaje sie, że wynikiem powinny być unikalne shelle:

head /etc/passwd | cut -d : -f7 | uniq

Jednak tak nie jest. Dlaczego? Wystarczy zajrzeć do man-a ponownie, a tam stoi jak byk:

Filter adjacent matching lines from INPUT (or standard input), writing to OUTPUT (or standard output).

kluczowe słowo to „adjacent” – 2 linijki zostaną potraktowane jako dublujące się, gdy stoją obok siebie. Jeśli między nimi jest jakaś inna linijka, to uniq nie usunie powtarzającej się kopii, no chyba że…. użyjesz opcji -u:

head /etc/passwd | cut -d : -f7 | uniq -u

Wszystko to widać ładnie na obrazku poniżej:

 

By Rafał Kraik in Linuxy

Windows: Webex: Komunikat o braku domyślnego programu pocztowego

2021-10-14

Masz sobie Webexa, z jego wszystkimi funkcjami integrującymi np. kalendarz Outlooka z harmonogramem spotkań. Outlook jest w ustawieniach Windowsa ustawiony jako domyślny. Niestety, kiedy Webex startuje, narzeka na brak programu domyślnego. O co chodzi!?

Podejrzewam, że to kwestia niekończących się zmian w Windows. Wskutek tego Webex sprawdza program domyślny tam, gdzie Outlook go nie wpisuje.

Na szczęście łatwo to poprawić.

  • Otwórz rejestr (regedit.exe) – jak zwykle zachowaj ostrożność, bo łatwo coś uszkodzić
  • W rejestrze poszukaj ścieżki
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Clients\Mail
  • Tutaj znajdziesz klucz Default. Pewnie będzie pusty. Kliknij go i wpisz
Microsoft Outlook
  • Zrestartuj Webexa i powinno już wszystko być OK 🙂

By Rafał Kraik in Helpdesk

Linux: środowisko programistyczne

2021-09-29

Do czego może sie przydać Liux GUI? Biuro? Gry? A może środowisko dla programisty? Tutaj umieszczam komendy przygotowujące moją stację do pracy z Visual Studio Code, GIT, Azure CLI i terraform

Instalacja Visual Studio Code i git na Ubuntu

# download from https://code.visualstudio.com/download
sudo apt install ./code_1.62.3-1637137107_amd64.deb 

sudo apt install git


git clone https://github.com/......
code

Instalacja AZ CLI na Ubuntu

sudo apt install curl
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
 az login

Instalacja terraform na Ubuntu:

sudo apt-get update && sudo apt-get install -y gnupg software-properties-common curl
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
sudo apt-get update && sudo apt-get install terraform
terraform --version

I instalacja open ssh – tak dla wygody:

sudo apt-get install openssh-server
sudo systemctl  start ssh
sudo systemctl  enable ssh
By Rafał Kraik in Linuxy

Linux: Skryptowanie w BASH – kurs z podręcznikiem PDF – promocja

2021-09-07

Oto nasz nowy kurs: Administrator Linux: Skryptowanie w BASH.

Dlaczego ten temat?

  1. Bo to właśnie skryptowanie pozwala na automatyzację pracy administratora, więc w końcowym efekcie odciąża go od pracy
  2. Bo BASH, mimo iż powstał wiele lat temu, do dzisiaj właściwie niewiele się zmieił
  3. Bo BASH lub jemu podobne shelle występują w najnowszych rozwiązaniach chmurowych
  4. Bo automatyzajca w połączeniu  ze standaryzacją pozwala jednemu administratorowi zarządzać nie kilkoma serwerami. ale setkami i tysiącami serwerów

W tym kursie:

  • nauczysz się automatyzować pracę administratora
  • programowanie w BASHu rozpoczniesz od podstaw
  • zobaczysz zastosowanie skryptów na praktycznych przykładach
  • dzięku dołączonemu podręcznikowi PDF z notatką i zadaniami będziesz w stanie samodzielnie i w kontrolowany sposób samodzielnie pisać skrypty – już od pierwszych lekcji

Jeśli temat wydaje Ci sie ciekawy, to od 8 do 12 września 2021 możesz kupić ten kurs w promocyjnej premierowej cenie korzystając z kuponu TERAZBASH. Zresztą kupon zadziała tez na pozostałe nasze kursy – pełna lista w profilu autora: Rafał Mobilo | Microsoft Certified Trainer | Udemy

By Rafał Kraik in Aktualności

Linux: Montowanie zdalnego dysku (samba, network share)

2021-09-06

Do zmontowania zasobu sieciowego można wykorzystać polecenie:

sudo mount -t cifs //192.168.2.20/Gigabajtus ./fax -o user=faxuser
[sudo] password for boss: 
Password for faxuser@//192.168.2.20/Gigabajtus:  ***********

faxuser to użytkownik zdalny (majacy dostęp do zdalnego share)

boss to lokalny użytkownik z uprawnieniami do sudo

Pierwsze haslo podajemy dla sudo, a drugie, to haslo zdalnego użytkonika zasobu sieciowego

Takie montowanie pozwoli wprawdzie wyświetlić dane z zasobu sieciowego, ale do zapisu trzeba by jeszcze dodać uid= i guid=. Dlaczego? Lokalny użytkownik uzyskujący dostęp do zdalnych zasobów, jako tako – nie ma tam zdefiniowanych uprawnień, bo jest użytkownikiem lokalnym. Dodanie tych opcji powoduje, że operacje wykonywane na zdalnym zasobie będą „mapowane” tak, jakby uruchamiał je użytkownik z określonym uid i guid

Polecenie może nawet wyglądać tak:

sudo mount -t cifs //192.168.2.20/Gigabajtus ./fax -o user=faxuser,uid=1000,gid=1000

Teraz zostaniemy tylko zapytani o haslo, ale jeśli do polecenia dodamy jeszcze password, to żadnego pytania już nie będzie:

sudo mount -t cifs //192.168.2.20/Gigabajtus ./fax -o user=faxuser,password='remote-password',uid=1000,gid=1000

No to pięknie. Taka komenda o nic nie pyta, więc może dałoby się montować zasoby zdalne automatycznie? Zazwyczaj posłuujemy się do tego plikiem fstab, ale… ten plik jest czytelny dla wszystkich, a my musielibyśmy tam umieścić haslo. To zły pomysł. Zamiast tego można utworzyć plik na dysku o następujacej zawartości:

user=faxuser
password=remote_password
#domain=myDomain

Teraz można już posłużyć się poleceniem bez hasła, które wykorzysta ten plik:

sudo mount -t cifs //192.168.2.20/Gigabajtus ./fax -o credentials=/home/boss/.sambaclient/config-cams.ini,uid=1000,gid=1000

Ponieważ plik zawiera haslo…. lepiej byloby zadbać o nadanie właściwych uprawnień…  np. 600. Admin i tak podejrzy, ale przecież montowanie i tak jest wykonywane przez admina, więc haslo jest mu znane.

Oto jak może wyglądać zawartość pliku fstab:

//192.168.2.20/Gigabajtus  /home/boss/fax   cifs  credentials=/home/boss/.sambaclient/config-cams.ini,uid=1000,gid=1000,iocharset=utf8  0  0

Od tej pory zdalny zasób sieciowy będzie instalowany automatycznie po bootowaniu systemu

https://wiki.samba.org/index.php/Mounting_samba_shares_from_a_unix_client

https://unix.stackexchange.com/questions/68079/mount-cifs-network-drive-write-permissions-and-chown

Auto-mount Samba / CIFS shares via fstab on Linux

By Rafał Kraik in Linuxy