Pages : 1
#1 Le 05/03/2008, à 16:23
- jb33
ptit coup de main pour script bash
Bonjour tout le monde,
voila j'ai un tp a faire pendant les vacances et je bloque sur 2 partie donc si vous pouviez m'aider svp .
Voila l'énoncé :
1.3.1.5. Planification de tâches
• Gérer les droits d'accès à at et cron( at.allow, at.deny, cron.allow, cron.deny )
• Gérer les tâches at( listage / ajout / suppression / modification )
• Gérer les tâches cron ( listage / ajout / suppression / modification )
1.3.1.6. Gestion des disques
• Lister les partitions de votre/vos disque(s)
• Créer un système de fichier sur une partition
• Lancer un utilitaire de partitionnement( fdisk, cfsdisk, ... )
• Monter une partition locale (L'utilisateur spécifie la partition et le point de montage)
• Gérer la swap (Création, activation et désactivation)
Le tout doit etre contenu dans un .sh.
Merci d'avance.
#2 Le 05/03/2008, à 17:03
- JérémieR
Re : ptit coup de main pour script bash
Pouvez-vous faire mes devoirs s'il vous plait.
Hors ligne
#3 Le 05/03/2008, à 17:54
- Sysko le prospecteur
Re : ptit coup de main pour script bash
c'est moi ou tu es à Supinfo et ils t'ont filé le méchant tp Linux ^^
si tel est le cas t'es pas obligé de le faire en bash ( perso je sais que sa se faisait plutot bien en C ) et pas obligé qu'il se finisse par .sh même si c'est un script bash ,
de plus si tu es à Supinfo et que c'est le tp linux , un simple coup d'oeil à ton essentiel de cours répondra de façon claire et pedagogique à tes questions
ps : j'ai bientot des partiels , aucun ubunteros sympa pour réviser à ma place ?
Dernière modification par Sysko le prospecteur (Le 05/03/2008, à 18:00)
Projet tatoeba : projet collaboratif visant à créer un corpus de phrases d'exemples traduites dans le plus de langues possibles
Hors ligne
#4 Le 05/03/2008, à 19:30
- jb33
Re : ptit coup de main pour script bash
c'est bien le tp Supinfo, sauf que le formateur nous oblige a le faire en bash .
Apres l'essentiel ca fait 2 jour que je suis dessus et j'ai quand meme énormément de mal, donc si je vous pouviez me donner juste un tit point de départ au moins ca srai sympa .
#5 Le 05/03/2008, à 21:10
- Yannick_LM
Re : ptit coup de main pour script bash
Je comprends pas la question ... Tu dois faire quoi, exactement ?
Pour le 1.3.5, tu gagnerai à prendre une distribution Linux quelconque, et à regarder du côté de man at et man cron, y a tout dedans.
Pour le 13.6, ce qu tu cherches se trouve de toutes façons dans /etc/fstab et/ou mount.
Et bash me paraît tout à fait l'outil adapté pour ce faire.
EDIT : suit au message de Sysko le prospecteur
Et bash me paraît être un outil adapté pour ce faire.
@Sysko le prospecteur
Sinon, deux gros +1 : pour le début du script et pour l'avantage d'avoir un débugger.
(je me sers quasiment tout le temps de bash pour faire ces choses-là, et jamais du C, à vrai dire)
Dernière modification par Yannick_LM (Le 06/03/2008, à 01:35)
Trucs et astuces pour Vim
Ma web page avec des trucs dessus ...
Hors ligne
#6 Le 06/03/2008, à 00:48
- Sysko le prospecteur
Re : ptit coup de main pour script bash
En fait vu qu'il y a un nombre assez consequent de question , qui doit regrouper en gros tout les outils de gestion d'un ordinateur sous linux ( gestion utilisateur / reseaux / disque / planification etc ... etc... ) un langage comme le c perso m'avait semblé plus adpaté ( surtout avec la glib ) car on a un debuggueur etc... alors que si l'on fait un erreur dans un script bash il faut la plupart du temps trouver l'erreur âr sois même ( bon on a quand même un indication de la ligne ou cela ne marche pas mais bon .... )
sinon je repete dans l'essentiel partie cron / at il t'explique clairement quel commande fait quoi et comment , comment sont organisé les fichier crontab etc...
idem sur comment est organisé le fichier fstab , donc à part faire un condensé des choses qui se trouvent déjà dans ton essentiel ( chose que tu peux faire toi même ) on ne peut pas faire grand choz pour toi
à la rigueur comme à chaque fois qu'un étudiant poste ici pour qu'on fasse ses devoirs je peux te dire
" poste au moins un début de script "
et ensuite on pourra voir ou tu bloque et t'aider en conséquence , car bon la manière dont tu post ton .... poste on a l'impression que tu dit : " bon les gars j'ai pas envie de me fouler et vu que les linuxiens sont des mecs sympa alors vous allez me faire ça au noir et depêchez vous car bon j'ai une date butoire
de plus une personne qui ne connait pas ce que tu as à faire aura à du mal à comprendre tes attentes vu que tu fais un simple copier coller de l'énoncé hors de tout contexte
voila tout ce que j'avais à dire
1 - relis ton essentiel les réponses sont dedans
2 - commence à faire un debut de script pour ces parties là
3 - si tu n'y arrives toujours pas reposte ici , avec la partie de ton script qui bloque en expliquant clairement ou tu bloque etc... et on sera heureux de t'aider
Dernière modification par Sysko le prospecteur (Le 06/03/2008, à 00:53)
Projet tatoeba : projet collaboratif visant à créer un corpus de phrases d'exemples traduites dans le plus de langues possibles
Hors ligne
#7 Le 06/03/2008, à 16:21
- jb33
Re : ptit coup de main pour script bash
j'ai reussi a pondre un tit code mais j'ai encore besoin d'un tit coup de main.
Voici mon code:
#! /bin/bash
#Plannification des taches
gererDroit()
{
clear;
read -p " voulez vous gerer les droit at(1) ou cron(2)? " choix;
case $choix in
1)
read -p " voulez vous autoriser(1) ou interdire(2) l'acces a at? " at;
case $at in
1)
echo " vous allez autoriser l'acces a at ";
;;
2)
echo " vous allez interdire l'acces a at ";
;;
*)
echo " Ceci n'est pas un choix valide, retour au menu "
gererDroit;
;;
esac
break
;;
2)
read -p "voulez vous autorise(1) ou interdire(2) l'acces a cron? " cron;
case $cron in
1)
echo " vous allez autoriser l'acces a cron ";
;;
2)
echo " vous allez interdire l'acces a cron ";
;;
*)
echo " Ceci n'est pas un choix valide, retour au menu "
gererDroit;
;;
esac
break
;;
esac
break
}
gererAt()
{
clear;
echo " Que voulez vous faire? "
echo " Listage(1) / ajout(2) / suppression(3) / modification(4) ? "
read choix
case $choix in
1)
echo " liste des taches at en cour "
atq
;;
2)
echo " ajout de tache at "
;;
3)
echo " suppression des taches at en cour "
atrm
;;
4)
echo " modification des taches at en cour "
;;
*)
echo " Ceci n'est pas un choix valide, retour au menu "
gererAT;
;;
esac
break
}
gererCron()
{
clear;
echo " Que voulez vous faire? "
echo " Listage(1) / ajout(2) / suppression(3) / modification(4) "
read choix
case $choix in
1)
echo " Liste le contenu du fichier crontab courant "
crontab -l;
;;
2)
echo " Ajout de taches crontab "
crontab -e;
;;
3)
echo " Suppression de taches crontab "
crontab -e;
;;
4)
echo " Modification de taches crontab "
crontab -e;
;;
*)
echo " Ceci n'est pas un choix valide, retour au menu "
gererCron;
;;
esac
break
}
menu()
{
clear;
echo " ***Menu*** "
echo " Gerer les droit d'acces a at et a cron (1) "
echo " Gerer les taches at ( listage / ajout / suppression / modification ) (2) "
echo " Gerer les taches cron ( listage / ajout / suppression / modification ) (3) "
echo " Que desirez vous faire ?"
read fct
case $fct in
1)
gererDroit;
;;
2)
gererAt;
;;
3)
gererCron;
;;
*)
echo " Ceci n'est pas un choix valide, retour au menu "
menu;
;;
esac
break
}
menu;
Je voudrais donc savoir pour la fonction gererDroit comment je peux autoriser/interdire l'acces et pour la fonction gererAt comment je peux ajouter/modifier.
Merci d'avance pour ceux qui me repondront
#8 Le 06/03/2008, à 20:29
- Sysko le prospecteur
Re : ptit coup de main pour script bash
Sinon je suis complétement d'accord surle fait que pour de petit projet , portant sur des commandes linux qui plus est, un bon script bash sera peut êter plus facile à mettre en place ( enfin après il est vrai que pour une personne à l'aise avec le scripting bash cela reste aussi valable pour des projets plus conséquents ....)
sinon pour gerer les droits d'accès à at
c'est moi ou on te parle dans l'énoncé ( et dans ton essentiel , je sais je suis casse c**** ) d'un fichier at/cron.allow/deny dedans tu met les non des utilisateurs qui ont (pas) accès à at / cron et voila le tour est joué , après pour les ajout / modifications c'est de la simple édition de fichier texte ( à coup de echo et de grep sa se fait très bien ( ou , dans le cas de la modification , tu peux t'amuser à utiliser sed ou awk pour montrer que t'es un warrior , mais encore une fois du echo et du grep feront aussi très bien l'affaire )
voila sinon après si ta le temps des potes de ma promo qui avait fait sa en bash ( les pauvres ^^ ) avait utilisé je sais plus trop quoi pour donner un rendu graphique à leur script bash ( j'ai plus le nom en tête désolé , moi j'avais fais avec la libncurses comme un gros mazo ^^ )
ps : tu pourrais même optimiser ton code ( mais la je chipote ) en faisant qu'une seule fonction pour at et cron vu que les fichier deny et allow de cron /at ont le même fonctionnement , mais bon après c'est vrai que c'est la classe de dire à ses potes ( geeks, les autre s'en foutent je pense ) " ouais j'ai fait 15 000 lignes de script pour mon projet "
Dernière modification par Sysko le prospecteur (Le 06/03/2008, à 20:32)
Projet tatoeba : projet collaboratif visant à créer un corpus de phrases d'exemples traduites dans le plus de langues possibles
Hors ligne