Portál AbcLinuxu, 30. dubna 2025 09:05
Chtěl jsem mít ve Windows plnohodnotný linuxový terminál přístupný na jedno kliknutí. Chvíli mi splňoval základní požadavky cygwin, ale později přestal dostačovat. Toto je stručný návod jak jsem problém vyřešil.
Náš Linux budeme virtualizovat. K virtualizaci použijeme VirtualBox.
Vytvoříme virtuální stroj s názvem 'linuxvm'. Přiřadíme mu dvě síťové karty. Karta1 typu HostOnly, Karta2 typ NAT. HostOnly slouží pro možnost připojení na virtuál z Windows a NATovací pro přístup z virtuálu na internet. HostOnly síťová karta se nakonfiguruje ve Windows v Síťová připojení na pevnou IP adresu 192.168.56.1.
Nainstalujeme minimální distribuci Debian z netinstall a na něm SSH. Konfigurace sítě debianu je umístěna v souboru /etc/network/interfaces a vypadá následovně:
auto lo iface lo inet loopback auto eth1 iface eth1 inet dhcp auto eth0 iface eth0 inet static address 192.168.56.101 netmask 255.255.255.0 network 192.168.56.0 broadcast 192.168.56.255 gateway 192.168.56.254 dns-nameservers 8.8.8.8 8.8.4.4
Pokud je virtuál spuštěný, tak je na něj možný SSH přístup přes IP adresu 192.168.56.101. Máme tedy přístupný linuxový stroj, ale má to dva problémy. Musí se spustit VirtualBox, v něm nastartovat virtuál, spustit PuTTy, zadat SSH jméno a heslo. To zatím nesplňuje požadavek linuxové konzole na jedno kliknutí a jsou neustále viditelná dvě běžící okna VirtualBoxu. Je třeba proces více zjednodušit.
Virtualbox na to má příkaz VBoxManage.exe, který je součásti instalace. Vytvoříme startovací .bat soubor s názvem virtualbox.bat. Jeho obsah bude:
@ECHO OFF start "" "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm "linuxvm" --type headless
Na Windows 8 ho umístíme do adresáře:
c:\Users\UZIVATEL\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
Automatické spuštění virtuálu po startu Windows je tímto zajištěno.
Pro automatické SSH přihlášení je možnost vytvořit bezheslový klíč, nebo virtuálu zařídit bezheslový přístup. Já zde popíši druhý postup. Úprava konfiguračního souboru SSH serveru:
/etc/ssh/sshd_config
Nastavit volby:
PermitEmptyPasswords yes UsePAM no
Uživateli na kterého se budete hlásit odeberte heslo:
passwd -d uzivatel
Tímto byl zřízen bezheslový přístup na vybraného uživatele
Aby se PuTTY automaticky přihlásila po spuštění, tak musí mít uloženou session s IP adresou 192.168.56.101 a uloženo jméno uživatele v nastavení:
Connection -> Data -> Auto-login username
PuTTy se bude spouštět s odkazem, který obsahuje parametr na načtení uložené session.
C:\putty.exe -load jmenosession
Odkaz na PuTTy s tímto parametrem je možné umístit například do rychlého spouštění na lištu Windows. VirtualBox s debianem v této minimální konfiguraci na pozadí vyžaduje pouze 50MB paměti, takže to není nijak náročné.
Nyní stačí pouze jeden klik na Windows liště a jste v plnohodnotném linuxovém terminálu.
Tiskni
Sdílej:
Dal jsem +, nicméně: nebylo by lepší dát do virtuálu ty Windows?
A i když je PuTTY asi milionkrát lepší než CMD od MS, tak stejně má k dobrému terminálu dost daleko, s Konsolí (a jinými) se to nedá vůbec srovnávat. Tak bych to spíš řešil tak, že bych v tom GNU/Linuxu spustil nějaké minimalistické DE nebo správce oken a v něm nějaký plnohodnotný emulátor terminálu.
o celé to prostředíco si mam pod tim predstavit? Menu - nic vic me nenapada.
Co je na cygwinu nečistého?Nebyl utracen rituálně správným způsobem (šchita).
Mrtvá technologie, mrtvá platforma. To si radši napíšu vlastní skriptovací jazyk, to bude perspektivnější
Chvíli mi splňoval základní požadavky cygwin, ale později přestal dostačovat.V čem?
Bridge měl v mém případě dvě nevýhody. Hodí virtuál na celou síť, takže je pak přístupný z celé této sítě. To bylo nežádoucí. Dále pokud by to mělo být celé řešeno například na notebooku, který se připojuje do různých sítí, tak by virtuál nemohl mít nastavenou pevnou IP. Různé sítě používají různé IP adresy a při použití DHCP by se musela IP adresa virtuálu pokaždé zjistit a změnit v session PuTTy.
Neříkám, že by se nenašlo nějaké řešení těchto problémů s použitím bridge, ale nakliknout ty dvě síťovky je opravdu jednoduché a účel to splnilo. Navíc to celé funguje i když počítač není zapojen v žádné síti.
Ten terminal sice bude mit (relativne) izolovany od zbytku Windows, ale v tom clanku neni receno, k cemu to chce.Je tam řečeno, že to chce jako náhradu za cygwin, doslova:
Chvíli mi splňoval základní požadavky cygwin, ale později přestal dostačovat.Což v tomhle případě nemůže prostě plnohodnotně sloužit. Ale je pravda, že třeba nechce plnohodnotnou náhradu cygwinu.
Rekl bych, ze jde jen o nestastne formulovany nadpis.Tak.
Je tam řečeno, že to chce jako náhradu za cygwin... ale nevime, jak ten Cygwin pouzival :)
chce něco, co bude plnit úlohy, které u něj plnil cygwin, nikoli něco s nadmnožinou jeho funkcí.Když cygwin přestal dostačovat, tak chce něco, co má nadmnožinu funkcí cygwinu, ne? Jinak by cygwin dostačoval. BTW: Kam jsme se to zase dostali?
Když cygwin přestal dostačovat, tak chce něco, co má nadmnožinu funkcí cygwinu, ne?Musel bych se praštit třikrát něčím těžkým do hlavy a ani potom bych asi takovouhle implikaci nedokázal vymyslet.
"Nejprve jsem se prepravoval osobnim automobilem, nyni vsak preferuji letadlo."Letadlo muze jeho potrebam vyhovovat mnohem lepe, trebaze v nem chybi i naprosto nejzakladnejsi funkce, ktere ma osobnim automobil: nelze si stahnout okenko, nelze si zatroubit, ...
"Na zakladni psani mi stacila obycejna tuzka, ale rozhodl jsem se zvolit neco lepsiho a koupil si tedy propisku."Text napsany (obycejnou) propiskou nejde vygumovat, nemuzes si zabrousit hrot a dokonce se s propiskou i hur dela stinovani a ruzne silne cary, tzn. ze propiska je na kresleni naprosto nevhodna. Ergo funkce (vlastnosti) propisky nejsou nadmnozinou funkci (vlastnosti) tuzky. Zjednodusujes to na uvahu "A dava smysl vymenit za B jen v pripade, ze B ma vsechny vlastnosti A", ale opomijis skutecnost, ze nektere vlastnosti mohou byt zcela neuzitecne. A jeste neco. Z ceho usuzujes, ze uz Cygwin nepouziva? Nikde to nevyvracel. Klidne muze pouzivat virtualizovany system na cast uloh, Cygwin na zbytek uloh.
Chtěl jsem mít ve Windows plnohodnotný linuxový terminálsem myslel, ze to je prave putty ....
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.