Starten met Cygwin

Als je thuis bent in ssh en systeembeheer is windows een ware hel. Goede tools voor systeembeheer moeten apart geïnstalleerd worden of moeten van een derde fabrikant komen. Nochtans is het mogelijk om heel wat sysadmin-tools op uw  windows-box te verkrijgen. Welkom in de wereld van Linux on Windows, meer bepaald Cygwin.

Wat is Cygwin?

Cygwin is een set van tools om een Linux-omgeving te verkrijgen op Windows. Via Cygwin kun je (praktisch) dezelfde commando’s gebruiken die uw linux-collega’s gebruiken om bv een ssh-verbinding te leggen.

Wat zijn de verschillen tussen Cygwin en Linux?

Ten eerste is er geen sudo aanwezig. Alles gebeurt met de rechten van de aangemelde gebruiker. Met andere woorden: een gebruiker die in windows controle heeft over map A, zal deze controle hebben in Cygwin. Heeft deze gebruiker geen controle hierover ,zal dat ook niet het geval zijn in Cygwin. Je kan uiteraard cygwin uitvoeren als administrator en je hebt controle over alles.

Een ander verschil is dat in Cygwin een map /cygdrive aanwezig is. Dit is het equivalent van Deze computer in Windows. Alle schijven (HDD, USB, Optic, …) zullen daar verschijnen als hun windows equivalent (/cygdrive/c/ is de C:\)

Let’s get it started

Om te starten download je de setup van www.cygwin.com en klik op volgende. Je krijgt de optie vanwaar je wilt installeren. Ikzelf kies altijd “Install from Internet”. Als ik de pakketen al op mijn computer heb staan kan ik kiezen voor Install from Local Directory. Daarna kies je uw installatiemap en de map waar je uw gedownloade pakketten wil naartoe sturen. Vooraleer je een download-mirror aanduid geef je aan of je via proxy werkt of niet en daarna kun je uw pakketten kiezen. Er zijn in de standaard mirrors eigenlijk genoeg pakketten aanwezig voor een standaard-installatie. Wil je echter dingen als GNOME of KDE installeren raad ik je aan om even CygwinPorts te checken. Hier worden zaken aangeboden die niet door de cygwin-ontwikkelaars worden aangeboden.

Bij de eerste installatie ga ik er gewoon los door. Geen extra pakketten, die installeer ik later via de terminal.

De terminal

In de terminal is quasi alles van linux aanwezig op een windows-omgeving. Zo kun je via dezelfde ssh-commando’s uw connectie starten. Kun je via screen zaken in de achtergrond laten gebeuren.

Pakketten installeren

om pakketten in cygwin te installeren is de setup van cygwin nodig. Ikzelf raad daarom aan om deze in uw in cygwin-installatie onder /bin te zetten. Hierdoor kun je er rechtsreeks aan zonder een volledig pad te typen.

Een pakket installeren doe je als volgt:

 cygsetup -g -q -P [pakket]

Dit zal uiteindelijk wel de GUI openen maar zal u niets vragen. Andere mogelijkheden om dit te doen is bv apt-cyg installeren of de setup handmatig openen.

Pro-tips

Zet uw home-folder juist

Bij het starten van cygwin word uw home-folder ingesteld als /home/[username] Dit is standaard en totaal niet aangeraden. Ikzelf stel dit altijd in op mijn windows home-folder. Dit doe je met dit commando.

 mkpasswd -l -p "$(cygpath -H)" > /etc/passwd

Na het uitvoeren van dit programma, herstart je cygwin

Fix bestandspermissies homefolder

Indien je de vorige tip hebt uitgevoerd zal je merken dat uw home-folder een probleem heeft met een unknown-group op alle bestanden. Dit kan opgelost worden door het in het bestand /etc/fstab de mount-option noacl toe te voegen aan de /cygdrive-mount. Hierna herstart je cygwin en worden de windows.

Geen waarschuwing bij gebruik van Windows Pad

In cygwin is het mogelijk om naast /cygdrive/c/ ook gewoon C:\ te gebruiken. Dit geeft echter een waarschuwing. Om deze waarschuwing te laten verdwijnen moet in Windows de omgevingsvariabele CYGWIN aanmaken waarna je deze vult met de waarde nodosfilewarning. Op deze pagina vind je alle variabelen die je nog in dit bestand kan steken. Deze moeten worden gescheiden met een puntkomma.

 

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.