lunedì 29 giugno 2009

Wake on LAN - Parte 2

Ora che siete pronti e avete tutte le informazioni necessarie non resta che tornare nel computer da cui volete fare il WOL e dare il via al processo.

Opsss!!!
Quasi mi dimenticavo di spiegarvi come si deve fare....

Semplicissimo ci sono due modi: uno testuale da riga di comando e l'altro utilizzando un programma free con interfaccia grafica.

Sono entrambi efficaci e semplici alla stessa maniera.
Se vi trovate in Windows allora potrete scaricare questa semplice utilità in più e attraverso il Prompt dei Comandi (Start - Esegui - CMD) lanciare la sveglia al vostro computer remoto.
Mc-Wol è una semplice utility Dos che funziona su ogni LAN. Ricordatevi che ciò che digitate non è case-sensitive quindi potete ignorare maiuscole e minuscole.
Il link per scaricare è questo: Mc-Wol.exe
Una volta Scaricato e salvato il programma andate nella cartella dove si trova mc-wol.exe attraverso il Prompt e digitate:
mc-wol 11:11:11:11:11:11

Per chi come me utilizza invece una distribuzione Linux potete scaricare ether-wake.
Il link è questo: Ether-wake e lanciare il comando:
./ether-wake 11:11:11:11:11:11

In entrambi i casi "11:11:11:11:11:11" è il MAC address della macchina che si intente "svegliare".

Se si preferisce un Utility Grafica allora consiglio Magic Packet Sender freeware.

Scaricabile gratuitamente cliccando qui (350 KB, compatibile con Windows 98, ME, 2000, XP, Server 2003, Vista), richiede la presenza del framework .NET 2.0 di Microsoft.



Dopo aver installato ed eseguito il programma sul terminale remoto, è sufficiente indicare (Host Name) l'IP del router o l'indirizzo mnemonico associato (DynDNS), selezionare Internet da Subnet Mask, il MAC Address del sistema "da risvegliare".
Per default, Magic Packet Sender utilizza la porta UDP:9. A discrezione dell'utente, è comunque possibile usare altre porte od un diverso protocollo.
Cliccando sul pulsante Send il sistema remoto specificato verrà avviato inviando un apposito pacchetto WOL.

Una volta che il sistema sarà avviato, sarà possibile amministrarlo con tool di gestione remota, accedere al proprio server FTP, accedere a risorse disponibili sul proprio server web, avviare una connessione SSH. Tutti i servizi dovranno essere ovviamente configurati opportunamente sulla medesima macchina.

Vai alla Lezione Precedente

Se ci sono dubbi o spiegazioni poco chiare lasciate pure un commento vi risponderò il prima possibile.

I PRIMI COMANDI BATCH

Ora si parte veramente con la programmazione in batch.

Come in tutti i linguaggi di programmazione che si rispettano anche nel batch ci sono le istruzioni di controllo, mentre però in C++, PHP, Bash... questi permettono di compiere molto lavoro con poca difficoltà in batch è differente.

I comandi sono: "if", "for" e "goto".

I primi due sono molto comuni, l'istruzione condizionale IF permette di chiedere al programma di stabilire un confronto o una situazione che al suo avvenimento deve essere susseguita da altre istruzioni. Una specifica, in batch non esiste il comando "else" o "then" che permette di dire "se succede A prosegui con il programma normale, altrimenti fai un'altra operazione", no il batch non lo sopporta.
L'istruzione FOR invece si riferisce ad una ripetizione di una parte del programma per tante volte quante gli è stato chiesto di fare.

L'istruzione GOTO, il famoso "salta a", è l'istruzione più pericolosa perché se non si stà attenti si può creare un virus, cioé un programma che va in "loop" e continua a venir processato dal Sistema Operativo bloccando ogni altra operazione.
Per esempio si può creare un programma che spenga il computer ad ogni avvio, non vi sarà più possibile accedere a Windows così.
A parte questi inconvenienti che possono essere comunque controllati devo avvertirvi che il comando GOTO può avviare qualsiasi istruzione basta fare attenzione che poi non vengano scritte nuove istruzioni.

Riprendiamo il file creato attraverso la procedura spiegata nel precedente post:

<>
cls
rem Il comando CLS serve a cancellare ogni scritta precedente sul prompt
@echo off
rem QUESTO E` IL MIO PRIMO FILE BATCH
rem Ora creiamo il nostro programma con if e goto
rem Stabiliamo il valore di alcune variabili
echo.*************************************
echo.* Primo programma di prova *
echo.*************************************
rem Ora diamo le istruzioni da seguire
echo. Premi 1 per salutare, 2 per dire addio, 3 per uscire.
set /p val_1= Inserisci il valore desiderato:
rem Usando il SET /P possiamo creare una variabile a cui verrà dato un valore da tastiera
if %val_1%==1 goto saluta
if %val_1%==2 goto addio
if %val_1%==3 goto eof
rem Abbiamo inserito tre IF che il programma scieglierà a seconda del valore di "val_1"
rem Le scritte dopo GOTO indicano la parte di programma alla quale deve andare
rem Con "eof" si intende "end of file"
:saluta
echo. Buongiorno caro %username%!
goto eof
rem Il GOTO alla fine serve perché altrimenti il programma eseguirebbe anche a parte seguente di codice
:addio
echo. Addio caro %username%!
goto eof
:eof
echo. Grazie per aver uilizzato la mia applicazione!
pause
rem Il comando PAUSE ferma il programma fino alla pressione di un tasto qualsiasi
exit
rem Il comando EXIT serve per uscire dal dal Prompt dei comandi

Vai alla Lezione Precedente
Vai alla Lezione Successiva

Alla prossima lezione.
Continua...

lunedì 22 giugno 2009

Wake on LAN - Parte 1

Come forse qualcuno già saprà esiste la possibilità di accendere un computer remoto attraverso la rete; troppo difficile: non è vero ed ora ve lo spiegherò.

Il Wake on LAN consiste nell'invio di un "pacchetto magico" attraverso la vostra rete locale LAN in modo da poter accendere un computer senza fisicamente muoversi dalla propria scrivania.
Naturalmente oltre al WOL (Wake on LAN) esiste anche il WAN (Wake on WAN) ossia utilizzando una rete normale, Internet per intendersi, per accendere il vostro computer di casa magari.

Il primo passo da fare è accendere il vostro computer su cui volete fare il WOL ed entrare nel BIOS, di solito occorre premere ESC o F2 all'avvio; se non funziona provate a leggere rapidamente la scritta in basso a sinistra alla prima schermata, vi spiegherà come entrare nel BIOS perché dipende da computer a computer.

Una volta entrati dovete cercare le impostazioni di accensione (POWER) e la scritta "Wake on LAN" oppure "Wakeup on LAN" o simili come mostrato in figura e impostare il valore su "Enable".





Ora uscite dal BIOS e salvate le impostazioni, il più è fatto perché non tutti i computer possono eseguire questa procedura.

Ora riavviate e caricate il Sistema Operativo caricato nel PC.

Dovrete leggere il vostro MAC (Media Access Control) non basta l'IP infatti; l'indirizzo MAC viene scritto direttamente sulla vostra scheda di rete così potrete individuare il computer da accendere senza dover indovinare.

La procedura è molto facile:

per Windows dovete aprire il Prompt dei comandi: Start - Esegui - CMD. Una volta entrati digitate "ipconfig /all" e in questo modo otterrete tutte le informazioni che vi servono. Non dovrete fare altro che annotarvi l'indirizzo della scheda a cui vorrete inviare il segnale. L'indirizzo MAC è un "Indirizzo Fisico", nel formato XX-XX-XX-XX-XX-XX.

per Linux la procedura è altrettanto semplice da terminale o shell dei comandi digitate "ifconfig" e prendetevi nota dell'indirizzo MAC poi digitate "ethtool -s eth0 wol g", questo abiliterà la sveglia del vostro computer all'arrivo del MagicPacket.

Ora che avete fatto tutto e preso nota di quello che vi serve spegnete pure il computer e tornate su quello da cui volete fare il WOL.

Vai alla Lezione Successiva

Continua la prossima volta...

venerdì 19 giugno 2009

LE VARIABILI D'AMBIENTE IN WINDOWS

Come sempre prima di spiegare il fnzionamento dei comandi, anche quelli più semplici bisogna dare una rapida occhiata a quali e quante variabili è permesso usare in un file batch.

Esistono solo due tipi di variabili: quelle numeriche (1, 2, 3, ...) e quelle stringa di testo (ciao, a, b, oggi c'è il sole, ...).

Creare una variabile è molto facile, l'istruzione da dare è "set 'nome variabile'='valore della variabile'". Il comando "set" senza nessun argomento serve anche per visualizzare tutte le variabili preimpostate dal sistema.

In uno script di esempio:

<>
@echo off
echo. QUESTO E` IL MIO PRIMO FILE BATCH
set val_1=1
rem LA VARIABILE val_1 E` STATA INIZIALIZZATA A "1"
set val_2=ciao come va?
rem LA VARIABILE val_2 E` STATA INIZIALIZZATA A "ciao come va?"
echo. %val_1%
rem IL PROGRAMMA STAMPERA` "1"
echo %val_2%
rem IL PROGRAMMA STAMPERA` "ciao come va?"
...

Come mostrato nel frammento di codice per utilizzare una variabile all'interno del programma occorre inserirla tra due simboli di percentuale "%...%".

Oltre alle variabili utente, cioé quelle che volete dichiarare voi possono essere utilizzate delle variabili già dichiarate.

Le Variabili d'ambiente in Windows XP

Le variabili d'ambiente contengono un percorso predefinito dal sistema, in queste variabili Windows ha registrato una serie di indirizzi che possono essere utilizzati all'interno dei vostri script.
Le più comuni sono:

%alluserprofile% -> Posizione del profilo All Users
%appdata% -> Posizione dove le applicazioni memorizzano i dati di default
%cd% -> Directory corrente di lavoro
%comspec% -> Percorso alla shell dei comandi
%date% -> Data corrente
%errorlevel% -> Codice di errore dell'ultimo comando eseguito. Un valore nullo equivale tipicamente a nessun errore
%homedrive% -> Lettera del drive connesso alla directory home dell'utente.
%homepath% -> Locazione della directory home dell'utente
%homeshare% -> Percorso di rete alla directory home condivisa dell'utente.
%path% -> Specifica il percorso di ricerca per gli eseguibili
%pathext% -> Lista delle estensioni che il sistema operativo considera come file eseguibili
%programfile% -> Cartella di installazione di default dei programmi
%random% -> Numero decimale casuale tra 0 e 32767
%systemdrive% -> Lettera di unità del drive che contiene la directory principale di Windows XP
%systemroot% -> Percorso completo alla directory principale di Windows XP
%time% -> Ora corrente
%username% -> Nome dell'utente correntemente loggato
%userprofile% -> Percorso completo del profilo dell'utente corrente
%windir% -> Percorso alla directory del sistema operativo

Queste variabili possono essere modificate temporaneamente dall'utente attraverso il comendo set:

"set nome variabile=percorso alternativo"

Una volta modificate all'interno del file quando questo termina il suo lavoro riporta la variabile allo stato iniziale.
Per la variabile PATH è possibile agganciare un percorso a quelli già inseriti:

set path=%path%; altro percorso

In questa maniera la variabile sarà incrementata e oltre ai soliti percorsi già contenuti alla fine ne avrà uno nuovo deciso da voi.

Vai alla Lezione Precedente
Vai alla Lezione Successiva

Alla prossima lezione.
Continua...

lunedì 15 giugno 2009

BATCH

Ormai programmare in batch è quasi diventato obsoleto e inutile. Windows continua a emulare MS-DOS ma solo sopra la sua interfaccia grafica; al contrario di Linux che continua a girare con entrambe le interfacce: grafica la cosiddetta GUI che permette all'utente di lavorare attraverso varie finestre con menu e di utilizzare il mouse, terminale la SHELL che invece consiste di una schermata nera alttraverso la quale è possibile digitare input che il Sistema Operativo interpreterà.

Tornando ai nostri cari file batch vorrei illustrare alcune potenzialità nascoste.

Creare un file batch è facilissimo, posizionatevi nella cartella in cui volete crearlo e - Tasto destro del mouse - Nuovo - File di testo .txt, ora rinominatelo in prova.bat e alla domanda: "Modificare l'estensione del file?" date OK.

Il vostro file prova.bat è pronto, per iniziare a scrivere il vostro primo programma premete tasto destro del mouse - Modifica e vi si aprirà il Blocco Note dal quale vi sarà possibile editare il file.

!ATTENZIONE! Facendo doppio clic sul file viene considerato in esecuzione, Windows interpreta i file .bat come se fossero eseguibili.

Da dove cominciare, dal principio logicamente:

L'istruzione "echo" permette di scrivere a video tutto quello che viene digitato successivamente.
Aprite il Prompt dei comandi - Start - Esegui - cmd, e digitate "echo CIAO" e poi date Invio, nella riga sotto verrà scritto CIAO.

<>

C:\Document and Settings\"Nome del vostro utente"\echo CIAO
CIAO
C:\Document and Settings\"Nome del vostro utente"\
...

In un file batch l'echo è sempre attivo cioé tutto quello che scrivete sarà visualizato a video una volta che eseguirete il file per ovviare a questo inconveniente è possibile dare l'istruzione "@echo off".
Questa disattiva tutti gli echo successivi e abitualmente è la prima istruzione che si scrive all'interno del file.

<>
@echo off
...

Se successivamente si volesse far comparire una scritta a video basta digitare "echo." seguito da uno spazio e il testo che si vuole visualizzare.

<>
@echo off
echo. QUESTO E` IL MIO PRIMO FILE BATCH
...

Altra istruzione importante da menzionare all'inizio è "rem" che serve per scrivere commenti, tutto quello che viene scritto successivamente all'istruzione rem sarà interpretato dal programmacome un semplice commento e non sarà elaborato.

<>
@echo off
echo. QUESTO E` IL MIO PRIMO FILE BATCH
rem QUESTA RIGA NON SARA` VISUALIZZATA E NON SARA` ELABORATA
...

Vai alla Lezione Successiva

Alla prossima lezione.
Continua...

martedì 9 giugno 2009

SONO USCITI I NUOVI MAC - WWDC 09


Tutti lo aspettavano e finalmente è avvenuto, il WWDC 09.

Come sempre Apple ha stupito tutti, non si ferma mai e continua il suo processo di crescita e innovazione.
Sono stati presentati i nuovi mac, da oggi MacBookPro, anche il modello da 13"; una rivoluzione infinita, il case è lo stesso di quello precedente ma è un blocco unico e la batteria è integrata (batteria che ora dura 7 ore, circa il 40% in più di quella vecchia).
Da ora sarà possibile montare su tutti i mac portatili fino a 8GB di ram, prima massimo 4GB; è stata aumentata la velocità del dispatcher, un dual core sempre più potente, tutto il sistema a 64 bit compreso il Sistema Operativo nuovissimo che uscirà a settembre Snow Leopard.

Ma Apple non si è di certo fermata qua e ha presentato anche il nuovo iPhone 3GS una meraviglia.

Nuovo sistema operativo, molte più potenzialità e capacità, come sempre però in America costerà pochissimo mentre in Italia verrà venduto a partire da 599€.
Ma a parte questi piccoli inconvenienti l'Apple rimane la migliore casa produttrice di computer e software, una volta passati non si torna più indietro e ci si domanda com'è stato possibile lavorare con quei lentissimi e antiquatissimi computer Windows.