|
Dimensione: 16327
Commento:
|
Dimensione: 2047
Commento: Linguaggio R
|
| Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
| Linea 2: | Linea 2: |
| #language it | #LANGUAGE it |
| Linea 4: | Linea 4: |
| <<Indice(depth=3)>> | <<Indice(depth=2)>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=104024";)>> |
| Linea 6: | Linea 7: |
| <<Informazioni(rilasci="16.04";forum="http://forum.ubuntu-it.org/viewtopic.php?t=104024";)>> | |
| Linea 9: | Linea 9: |
| '''R''' è un linguaggio di programmazione open source specificatamente progettato per analisi statistiche. <<BR>> In questa guida è illustrato come installare una distribuzione di '''R''' e l'IDE specifico '''RStudio'''. |
|
| Linea 10: | Linea 13: |
| In Ubuntu e tutti i sistemi ''Unix-like'' si è sentito l'esigenza di rendere tutti i dati, dispositivi, cartelle, singoli processi eccetera dei file. Inoltre, tutti i file all'interno del sistema hanno associati un utente proprietario, un gruppo di utenti e dei permessi che ne regolano l'accesso. Solo il super utente "root" ha la possibilità di accedere a qualsiasi file nel sistema senza tenere conto dei permessi.<<BR>> In questa guida sono illustrati i metodi per visualizzare e modificare i permessi dei file. |
= Installazione = |
| Linea 13: | Linea 15: |
| = Interfaccia grafica = | == Da repository ufficiali == [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://r-base | r-base]]. |
| Linea 15: | Linea 18: |
| == Cambiare i permessi di lettura e scrittura ai file == | == Da sorgenti esterni (Ubuntu 16.04) == Per ottenere una distribuzione di '''R''' aggiornata seguire i seguenti passaggi: 0. Digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo add-apt-repository 'deb [arch=amd64,i386] cran.mirror.garr.it/mirrors/CRAN/bin/linux/ubuntu xenial/' }}} 0. Aggiornare la lista dei pacchetti digitando:{{{ sudo apt update}}} 0. Installare '''R''' digitando:{{{ sudo apt install r-base}}} |
| Linea 17: | Linea 28: |
| 0. Avviare il [[AmbienteGrafico/FileManager|file manager]] e spostarsi nella cartella dove è presente il file di cui si vuole cambiare i permessi. 0. Fare clic con il tasto destro del mouse sul file per aprire il menu contestuale e cliccare su '''Proprietà'''. 0. Spostarsi nella scheda '''Permessi'''. 0. In base al [[AmbienteGrafico/FileManager|file manager]], seguire i seguenti passaggi: * '''Nautilus''', '''Caja''', '''Thunar''': nei menu a tendina '''Accesso''' relativi ai vari utenti e gruppi selezionare l'opzione desiderata. * '''Pcmanfm''': nei menu a tendina relativi alle voci sotto '''Controllo accesso''' selezionare l'opzione desiderata. * '''Dolphin''': nei menu a tendina relativi alle voci sotto '''Permessi di accesso''' selezionare l'opzione desiderata. |
= IDE = |
| Linea 25: | Linea 30: |
| == Cambiare i permessi di esecuzione ai file == | == RStudio == ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Da Ubuntu 16.04 RStudio è disponibile solo per sistemi a 64 bit.''' || 0. Scaricare dalla [[https://www.rstudio.com/products/rstudio/download/#download|pagina di download ufficiale]] la versione adatta al proprio sistema. 0. Procedere alla sua [[AmministrazioneSistema/InstallareProgrammi/PacchettiDebian|installazione]]. Una volta installato sarà possibile [[AmbienteGrafico/AvviareProgrammi|avviare]] il programma. |
| Linea 27: | Linea 36: |
| 0. Avviare il [[AmbienteGrafico/FileManager|file manager]] e spostarsi nella cartella dove è presente il file da rendere eseguibile. 0. Fare clic con il tasto destro del mouse sul file per aprire il menu contestuale e cliccare su '''Proprietà'''. 0. Spostarsi nella scheda '''Permessi'''. 0. In base al [[AmbienteGrafico/FileManager|file manager]], seguire i seguenti passaggi: * '''Nautilus''', '''Caja''', '''Thunar''': mettere o togliere la spunta a '''Consenti l'esecuzione del file come programma'''. * '''Dolphin''': mettere o togliere la spunta a '''Eseguibile'''. * '''Pcmanfm''': nel menu a tendina '''Esecuzione''' impostare gli utenti che si desidera possano avviare il file. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/note.png,,center)>> ||<style="padding:0.5em; border:none;">''Il file [[AmbienteGrafico/FileManager|file manager]] '''Thunar''' permette di mettere la spunta solo ad alcuni tipi di file. Qualora per il file desiderato non sia possibile, seguire la [[#chmod|procedura testuale]].'' || = Interfaccia testuale = == Visualizzare i permessi == Per visualizzare i permessi dei file e delle cartelle contenute in una data cartella, digitare nel [[AmministrazioneSistema/RigaDiComando|terminale]] il comando:{{{ ls -l /percorso/alla/cartella }}} dove al posto di `/percorso/alla/cartella` inserire il percorso alla cartella desiderata. Se l'argomento non viene fornito, il comando viene applicato alla directory corrente. Il risultato saranno righe simili alle seguenti: {{{ totale 28 drwx------ 2 root root 16384 2007-02-21 11:18 lost+found drwxr-xr-x 33 utente1 utente1 4096 2007-05-21 11:41 utente1 }}} Il significato dei vari componenti del risultato è il seguente: * Il primo carattere a sinistra indica un attributo specifico del file descritti nel seguito. * I successivi nove caratteri rappresentano i permessi e sono divisi in tre terne descritte nel seguito. * Il successivo numero indica i collegamenti a tale file o cartella. * Il primo nome è il proprietario. * Il secondo nome è il gruppo. * Il successivo numero è la dimensione apparente in byte. * La data dell'ultima modifica. * Il nome del file o cartella. * Se collegamento simbolico, il carattere «->» seguito dalla destinazione del collegamento. Il significato del primo carattere è riferito all'attributo del file, come esposto dalla seguente tabella: ||<rowbgcolor="#cccccc":>'''Attributo'''||<:>'''Descrizione''' || ||<#f7f7f7 :> - ||<:> file|| ||<#f7f7f7 :> d ||<:>cartella|| ||<#f7f7f7 :> b ||<:> dispositivo a blocchi|| ||<#f7f7f7 :> c ||<:> dispositivo a caratteri|| ||<#f7f7f7 :> l ||<:> collegamento simbolico|| ||<#f7f7f7 :> p ||<:> named pipe|| ||<#f7f7f7 :> s ||<:> socket|| Il significato delle terne è riferito ai permessi relativi ai vari utenti e gruppi, come esposto dalla seguente tabella: ||<rowbgcolor="#cccccc":>'''Terna'''||<:>'''Output di ls''' ||<:>'''Utente''' || ||<#f7f7f7> prima terna||<:> -rwx---``---|| owner (proprietario) || ||<#f7f7f7> seconda terna||<:> --``--rwx---|| group (gruppo) || ||<#f7f7f7> terza terna||<:> ---``---``-rwx|| other (altro) || Sono presenti tre diverse restrizioni di accesso, come esposto dalla seguente tabella: ||<rowbgcolor="#cccccc":>'''Simbolo'''||<:>'''Permesso'''||<:>'''Azione'''|| ||<#f7f7f7 :>r || read || lettura || ||<#f7f7f7 :>w || write || scrittura || ||<#f7f7f7 :>x || execute || esecuzione || ||<#f7f7f7 :>- || || assenza del permesso || I significati variano a seconda si riferiscano a file o cartelle: * nel caso ci si riferisca a un file: * '''r''': consente di aprire un file per visualizzarne il contenuto; * '''w''': consente di sovrascrivere o aggiungere dati a un file; * '''x''': consente di eseguire un file (nel caso si tratti di un file eseguibile). * nel caso ci si riferisca a una directory: * '''r''': consente la visualizzazione del contenuto della directory, con il comando '''ls'''; * '''w''': consente la creazione o l'eliminazione di file all'interno della directory; * '''x''': consente di accedere alla directory (per esempio con il comando [[AmministrazioneSistema/ComandiBase#cd|cd]]) anche nel caso non se ne possa visualizzarne il contenuto. ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Applicare il permesso di scrittura ad una cartella consente la cancellazione dei file contenuti in essa anche ad utenti che non possiedono i permessi di scrittura su tali file.''' || <<Anchor(chmod)>> == Cambiare i permessi ai file == Il comando da utilizzare nel [[AmministrazioneSistema/RigaDiComando|terminale]] per la modifica dei permessi è '''chmod''', la cui sintassi è: {{{ chmod [OPZIONI] PERMESSI nomefile }}} dove al posto di `nomefile` inserire il nome del file di cui si intende modificare i permessi, al posto di `PERMESSI` i permessi desiderati. È possibile modificare i permessi attraverso l'uso dei numeri e delle lettere, esposti nei seguenti paragrafi. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Non è consigliabile modificare i permessi ai file di sistema, alcuni file hanno dei permessi molto restrittivi per scongiurare accessi non autorizzati e problemi di sicurezza. Ad esempio, il file `/etc/shadow`, che contiene le password utente, non ha impostato alcun permesso per gli utenti.''' || === Utilizzare chmod con i letterali === Quello che segue è il dizionario dei letterali da usare con i permessi: ||<rowbgcolor="#cccccc" :>'''Opzioni''' ||<:>'''Definizione''' || ||<#f7f7f7 :> u || proprietario || ||<#f7f7f7 :> g || gruppo || ||<#f7f7f7 :> o || altri || ||<#f7f7f7 :> x || esecuzione || ||<#f7f7f7 :> w || scrittura || ||<#f7f7f7 :> r || lettura || ||<#f7f7f7 :> + || aggiungi permesso || ||<#f7f7f7 :> - || annulla permesso || ||<#f7f7f7 :> = || imposta permesso || In generale, la sintassi da adoperare è la seguente:{{{ chmod UTENTE+/-/=PERMESSI nomefile }}} dove al posto di `UTENTE` si deve inserire una qualsiasi combinazione di `u`, `g` e `o`, al posto di `+/-/=` uno dei tre simboli, al posto di `PERMESSI` una qualsiasi combinazione di `x`, `w`, e `r` e al posto di `nomefile` il nome del file di cui si intende manipolare i permessi. Ad esempio: * Aggiungere il bit di esecuzione al «proprietario»: {{{ chmod u+x nomefile }}} * Aggiungere agli «altri» i bit di scrittura ed esecuzione: {{{ chmod o+wx nomefile }}} * Negare al «gruppo» il bit di lettura:{{{ chmod g-r nomefile }}} * Aggiungere i bit di lettura, scrittura ed esecuzione a tutti gli utenti:{{{ chmod ugo+rwx nomefile }}} === Utilizzare chmod con i numeri === Quello che segue è il dizionario dei numeri da usare con i permessi e la relativa definizione in lettere: ||<rowbgcolor="#cccccc":>'''Opzioni''' ||<:>'''Definizione''' ||<:>'''Definizione in lettere''' || ||<#f7f7f7 :> #-- || proprietario ||u (user)|| ||<#f7f7f7 :> -#- || gruppo || g (group)|| ||<#f7f7f7 :> --# || altri || o (others)|| ||<#f7f7f7 :> 0 || nessun permesso || - || ||<#f7f7f7 :> 1 || esecuzione || (x, execution)|| ||<#f7f7f7 :> 2 || scrittura || (w, write) || ||<#f7f7f7 :> 3 || esecuzione + scrittura || (xw) || ||<#f7f7f7 :> 4 || lettura || (r, read)|| ||<#f7f7f7 :> 5 || lettura + esecuzione|| (rx, somma dei valori 1+4) || ||<#f7f7f7 :> 6 || lettura + scrittura|| (rw, somma dei valori 2+4) || ||<#f7f7f7 :> 7 || lettura + scrittura + esecuzione|| (rwx, somma dei valori 1+2+4) || «Proprietario», «gruppo» e «altri» sono rappresentati da tre numeri in sequenza. Per ottenere il valore da impostare, è sufficiente determinare la tipologia d'accesso e poi sommare i numeri relativi alle tipologie di permesso. Per esempio: * Se si desidera il file `nomefile` con i permessi '''-rw-rw-rwx''' è necessario utilizzare la seguente combinazione: ||<rowbgcolor="#cccccc":> '''Proprietario''' ||<:> '''Gruppo''' ||<:> '''Altri''' || ||<rowbgcolor="#f7f7f7":> lettura e scrittura||<:> lettura e scrittura ||<:> lettura, scrittura ed esecuzione|| ||<:> 4+2=6 ||<:> 4+2=6 ||<:> 4+2+1=7 || il comando da digitare sarà quindi il seguente:{{{ chmod 667 nomefile }}} * Se si desidera il file `nomefile` con i permessi '''--w-r-x--x''' è necessario utilizzare la seguente combinazione: ||<rowbgcolor="#cccccc":> '''Proprietario''' ||<:> '''Gruppo''' ||<:>'''Altri''' || ||<rowbgcolor="#f7f7f7":> scrittura||<:> lettura ed esecuzione||<:> esecuzione|| ||<:> 2 ||<:> 4+1=5 ||<:> 1 || il comando da digitare sarà quindi il seguente:{{{ chmod 251 nomefile }}} Quelli che seguono sono degli esempi di utilizzo del comando '''chmod''' con i numeri: * Aggiugnere il bit di esecuzione al «proprietario»:{{{ chmod 744 nomefile }}} * Aggiungere ad «altri» i bit lettura ed esecuzione:{{{ chmod 647 nomefile }}} * Negare a «gruppo» il bit lettura:{{{ chmod 604 nomefile }}} * Aggiungere i bit lettura, scrittura ed esecuzione a tutti: {{{ chmod 777 nomefile }}} ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">Per cambiare i permessi in modo ricorsivo a tutti i file presenti in una cartella ed alla cartella stessa si deve usare l'opzione `-R`. || ##=== Utilizzare chmod con sudo === ## ##I comandi '''chmod''' e '''sudo''' possono essere combinati per cambiare i permessi a file di cui non si è proprietari. ## ##||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Cambiare i permessi nel modo sbagliato ai file sbagliati può compromettere l'integrità del sistema. Utilizzare il comando''' [[AmministrazioneSistema/Sudo|sudo]] '''con attenzione.''' || ## ##Quelli che seguono sono degli esempi di gestione dei permessi con i privilegi di amministrazione del sistema: ##{{{ ##user@host:/home/user$ ls -l /usr/local/bin/somefile ##-rw-r--r-- 1 root root 550 2005-11-13 19:45 /usr/local/bin/somefile ##user@host:/home/user$ ## ##user@host:/home/user$ sudo chmod o+x /usr/local/bin/somefile ## ##user@host:/home/user$ ls -l /usr/local/bin/somefile ##-rw-r--r-x 1 root root 550 2005-11-13 19:45 /usr/local/bin/somefile ##user@host:/home/user$ ##}}} <<Anchor(umask)>> = Cambiare i permessi delle partizioni = == umask, fmask e dmask == File system come NTFS o FAT hanno un sistema per gestire utenti e permessi incompatibile col sistema usato da GNU/Linux, pertanto durante la fase di montaggio di tali file system viene assegnato in modo predefinito un utente proprietario e un gruppo proprietario ed i relativi permessi a tutti i file presenti in essi, e per tutto il tempo in cui tali file system rimangono montati non si potrà modificare né i permessi, né l'utente o il gruppo proprietario.<<BR>> In modo predefinito vengono assegnati permessi di lettura, scrittura ed esecuzione per tutti gli utenti e sono validi sia per i file che per le cartelle. Per modificarli è possibile usare le opzioni: * `umask`: togliere i permessi a file e cartelle. * `dmask`: togliere i permessi alle cartelle. * `fmask`: togliere i permessi ai file di dati. I permessi per le partizioni vengono solitamente modificati attraverso l'uso del suddetto modificatore nel file `/etc/fstab`, il contenuto del quale sarà simile al seguente: {{{ # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/sda1 / ext3 defaults,errors=remount-ro 0 1 /dev/sda2 /media/windowsXP ntfs-3g umask=0222,ro,nls=utf8 0 0 /dev/sdb1 /media/windows98 vfat umask=0002,nls=utf8 0 0 /dev/sdb2 /media/storage ntfs-3g dmask=000,fmask=113 0 0 }}} Nell'esempio: * la directory `/media/windowsXP` viene montata in sola lettura (opzione `ro`) e la maschera corrispondente toglie i permessi di scrittura a tutti gli utenti. * La directory `/media/windows98` lascia tutti i permessi all'utente proprietario e al gruppo proprietario, ma toglie il permesso di scrittura agli altri utenti, in modo che questi non potranno né creare o eliminare file (permesso di scrittura negato per le directory), né modificare i file esistenti (permesso di scrittura negato per i file). * Nella directory `/media/storage` tutti gli utenti possono accedere a tutte le directory, possono creare o eliminare file (come indicato dalla dmask), ma non hanno il permesso di eseguire eventuali file eseguibili, e in più gli utenti che non fanno parte del gruppo proprietario o che non sono l'utente proprietario non possono modificare nessun file. == Cambiare i permessi di una partizione FAT con umask == Per assegnare a tutti gli utenti i permessi di accesso in scrittura e lettura alla partizione FAT, seguire i seguenti passaggi: 0. Creare una copia di sicurezza del file `/etc/fstab` con il seguente comando:{{{ sudo cp /etc/fstab /etc/fstab.old }}} 0. Aprire il file sopra citato con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] digitando nel [[AmministrazioneSistema/RigaDiComando|terminale]]:{{{ sudo nano /etc/fstab }}} 0. Cercare la riga relativa al volume FAT desiderato, simile alla seguente:{{{ /dev/dispositivo /punto/di/mount vfat defaults 0 0 }}} una volta trovata, modificarla come segue:{{{ /dev/dispositivo /punto/di/mount vfat umask=000 0 0 }}} 0. Per applicare le modifiche seguire uno dei seguenti metodi: * Riavviare il sistema. * Smontare e rimontare il volume digitando nel [[AmministrazioneSistema/RigaDiComando|terminale]]:{{{ sudo umount /punto/di/mount sudo mount /punto/di/mount }}} sostituendo `/punto/di/mount` con la cartella da cui si potrà accedere alla partizione. = Ulteriori risorse = * [[http://linux.die.net/man/1/chmod|Pagina man di chmod]] * [[http://linux.die.net/man/2/chown|Pagina man di chown]] * [[http://linux.die.net/man/1/chgrp|Pagina man di chgrp]] * [[Hardware/DispositiviPartizioni/MontarePartizioni/Fat|Montare una partizione FAT]] |
== Jupyter Notebook == '''[[http://jupyter.org/|Jupyter]]''' è un editor basato su browser web specificatamente progetto per i linguaggi di programmazione '''Julia''', '''[[Programmazione|Python]]''' ed '''R'''. Per utilizzare '''R''' in una cella di '''Jupyter''' è sufficiente inserire la stringa `%%R` all'inizio di ogni cella in cui si vuole scrivere in '''R'''. |
| Linea 286: | Linea 41: |
| ##CategoryAmministrazione |
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
R è un linguaggio di programmazione open source specificatamente progettato per analisi statistiche.
In questa guida è illustrato come installare una distribuzione di R e l'IDE specifico RStudio.
Installazione
Da repository ufficiali
Installare il pacchetto r-base.
Da sorgenti esterni (Ubuntu 16.04)
Per ottenere una distribuzione di R aggiornata seguire i seguenti passaggi:
Digitare nel terminale il seguente comando:
sudo add-apt-repository 'deb [arch=amd64,i386] cran.mirror.garr.it/mirrors/CRAN/bin/linux/ubuntu xenial/'
Aggiornare la lista dei pacchetti digitando:
sudo apt update
Installare R digitando:
sudo apt install r-base
IDE
RStudio
Scaricare dalla pagina di download ufficiale la versione adatta al proprio sistema.
Procedere alla sua installazione.
Una volta installato sarà possibile avviare il programma.
Jupyter Notebook
Jupyter è un editor basato su browser web specificatamente progetto per i linguaggi di programmazione Julia, Python ed R. Per utilizzare R in una cella di Jupyter è sufficiente inserire la stringa %%R all'inizio di ogni cella in cui si vuole scrivere in R.
