|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Feb 2006
Messaggi: 169
|
[BASH] Un po' di dubbi
ciao a tutti!
sono alle prime armi con bash e dopo una prima infarinatura sui comandi sto provando a fare alcuni esericizi. Vorrei proporvi alcuni di questi esercizi sperando che possiate darmi una mano per capire come risolverli. Per il primo esercizio ho solo un dubbio teorico. La situazione è questa: l'utente Pippo crea questo script che ha il compito di generare alcune stringhe per poi salvarle in un file leggibile solo dal proprietario. Lo script deve essere leggibile ed eseguibile da tutti, ma modificabile solo dal proprietario. Il dubbio riguarda il file su cui lo script deve salvare le stringhe: - se questo file deve essere creato a parte dal proprietario il problema non si pone, perchè è sufficiente che venga creato con i permessi 622. In questo modo chiunque esegua lo script può scrivere nel file, ma solo il proprietario che l'ha creato può leggerlo (e scriverlo). - se il file in cui scrivere le stringhe dev'essere creato dallo script, la cosa (per me) diventa più complicata. Avevo pensato di fare ricorso al SUID bit..praticamente ho provato a dare allo script i permessi 4755 e all'interno dello script ho creato il file che deve contenere le stringhe con i permessi 600. In questo modo chiunque esegue lo script diventa Pippo, crea il file dando la possibilità solo a Pippo di leggerlo e scriverlo e ci scrive le stringhe. Il problema è che, forse per motivi di sicurezza, il SUID bit non funziona. Se eseguo lo script e poi controllo con ps chi sta eseguendo lo script non risulta Pippo, ma l'utente che effettivamente ha lanciato lo script. Quindi il file viene creato con i permesso 600, ma riferiti all'utente che ha eseguito lo script e non a Pippo. ![]() E' anche possibile che la mia soluzione sia giusta e che chi ha proposto l'esercizio volesse solo verificare l'apprendimento del SUID bit al di là dell'effettivo funzionamento, ma il dubbio mi rimane. Quindi la mia domanda è...c'è altro modo per risolvere l'esercizio? Il secondo esercizio è questo: Due file hanno lo stesso contenuto a parte una o più variazioni nella loro parte iniziale di lunghezza fissa. Fare uno script che dia informazioni sull'identità del contenuto indipendentemente dalla variazione dell'intestazione dei file. Qui il problema è proprio la comprensione del testo ![]() ![]() Il terzo (e ultimo) esercizio è questo: Fare in modo che il proprio prompt principale indichi il numero di utenti che hanno almeno una sessione interattiva aperta nel sistema. ovviamente lo script dovrà agire sulla variabile PS1, ma non riesco a capire come contare gli utenti con almeno una sessione interattiva. Da quello che so, uno shell è interattivo quando è lanciato senza opzioni, quindi stavo pensando a questo per cercare di individuare tutte le sessioni interattive, ma non so come fare ![]() ![]() Scusate per la lunghezza del post e grazie a chiunque voglia aiutarmi ![]()
__________________
Acer Ferrari 4005 - Turion64 ml-37 2.0 Ghz - RAM 2GB Corsair PC3200 - ATI Radeon X700 128 MB - WD Scorpio 5400.2 250GB - Broadcom wi-fi 802.11b/g - Bluetooth - Matshita UJ875S SuperMulti DL DVD-ROM SLOT-IN |
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: Feb 2006
Messaggi: 169
|
non mi aiuta nessuno?
![]()
__________________
Acer Ferrari 4005 - Turion64 ml-37 2.0 Ghz - RAM 2GB Corsair PC3200 - ATI Radeon X700 128 MB - WD Scorpio 5400.2 250GB - Broadcom wi-fi 802.11b/g - Bluetooth - Matshita UJ875S SuperMulti DL DVD-ROM SLOT-IN |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Dec 2000
Città: Trento
Messaggi: 5917
|
Quote:
![]() per il terzo, il comando che ti serve e': w (e dopo e' facile)
__________________
Linux User #272700 >+++++++++[<+++++++++>-]<+.++.>++++[<---->-]<++.+++++++. HOWTO: SSH Firewall e DMZ ɐɹdosoʇʇos oʇuǝs ıɯ |
|
![]() |
![]() |
![]() |
#4 | ||
Member
Iscritto dal: Feb 2006
Messaggi: 169
|
Ciao e grazie mille per la risposta.
Quote:
![]() per il primo esercizio volevo solo capire se la mia interpretazione è giusta o meno. Secondo me per fare quello che l'esercizio chiede si deve impostare per lo script il SUID bit...il problema è che non posso verificare se così funziona perchè anche se imposto il SUID bit e lancio lo script, il processo che esegue lo script rimane di proprietà di chi esegue lo script e non del proprietario dello script (penso che sia dovuto a impostazioni di sicurezza di bash)...insomma non sono sicuro se la mia soluzione è giusta perchè non la posso provare. per il secondo esercizio non ho avanzato nessuna ipotesi..semplicemente perchè non ho capito il testo. Non capisco proprio cosa dovrei fare. Quote:
![]() ![]() ![]()
__________________
Acer Ferrari 4005 - Turion64 ml-37 2.0 Ghz - RAM 2GB Corsair PC3200 - ATI Radeon X700 128 MB - WD Scorpio 5400.2 250GB - Broadcom wi-fi 802.11b/g - Bluetooth - Matshita UJ875S SuperMulti DL DVD-ROM SLOT-IN |
||
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:02.