![]() |
Bienvenue invité ( Connexion | Inscription )
![]() ![]() |
![]() |
![]()
Message
#1
|
|
![]() BIDOUILLE Guru ![]() ![]() ![]() ![]() ![]() Groupe : Admin Messages : 55 528 Inscrit : 14 Jan 2001 Lieu : Paris Membre no 3 ![]() |
PowerApp propose une nouvelle application sous OS X (10.6 minimum) appelée ramdisk4mac et commercialisée 8,99 euros. Comme son nom l'indique, elle permet de créer facilement un Ramdisk et de gérer son comportement à l'extinction ou au redémarrage. Elle gère en particulier la sauvegarde de ce disque mémoire ou sa copie régulière vers un support qui ne risque pas de voir son contenu effacé en cas d'extinction ou de redémarrage.
Utiliser un Ramdisk est devenu une solution intéressante maintenant que la RAM est peu coûteuse et qu'un Mac Pro peut embarquer 64 ou 128 Go de RAM. Nous en utilisons un dans tous nos articles visant à tester les débits de SSD rapides. Maintenant, sachez qu'il est très simple sous OS X de créer un Ramdisk via le terminal: Voici la commande Terminal permettant d'un créer un très facilement. diskutil erasevolume HFS+ “ramdisk” `hdiutil attach -nomount ram://8000000` Dans ce cas, on obtient un Ram Disk d'environ 4 Go, le dernier chiffre étant le nombre de blocks de 512 bits. Pour un 2 Go il faut mettre 4000000 et pour un 8 Go 16000000, sachant que qu'on parle de blocks de 512 octets. Pour vous en débarrasser et récupérer la mémoire utilisée, il suffit de le démonter (attention tout son contenu est alors effacé). Sur un Mac récent doté de DDR3 1600, on dépasse les 3,6 Go par seconde en débit, avec des pointes supérieures à 4 Go par seconde en écriture. C'est surtout sur les petits fichiers d'un Ramdisk est infiniment supérieur en débit à un SSD. Lien vers le billet original -------------------- C'est parce que la vitesse de la lumière est plus grande que celle du son que tant de gens paraissent brillants avant d'avoir l'air con
|
|
|
![]()
Message
#2
|
|
Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Rédacteurs Messages : 32 233 Inscrit : 15 Nov 2005 Membre no 49 996 ![]() |
Pour vous en débarrasser et récupérer la mémoire utilisée, il suffit de le démonter (attention tout son contenu est alors effacé). Il y a quelques années, j'avais fait un petit script pour gérer des RamDisks, avec notamment une fonction pour les démonter en faisant une capture du contenu, pour pouvoir les restaurer ensuite.À voir si ça marche encore avec un OS X d'aujourd'hui : http://www.infobidouille.com/ramdisksh-11/ -------------------- |
|
|
![]()
Message
#3
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Quelle connerie ils peuvent pas inventer pour vendre leurs RAMDISK de merde!
Citation Why is that necessary?
Solid State drives benefit from a much bigger speed than a mechanical Hard Drive, but that comes with a prize of less writing cycles than a normal hard disk. That means a SSD will have a much shorter life span compared to a mechanical hard disk. Ce message a été modifié par Kalm - 5 May 2014, 04:28. |
|
|
![]()
Message
#4
|
|
Adepte de Macbidouille ![]() Groupe : Membres Messages : 114 Inscrit : 27 Dec 2007 Membre no 103 555 ![]() |
Merci pour les éléments de création de ramdisk.
So quelqu'un a les éléments pour automatiser le transfert des écritures de Chrome (ou de tout autre appli) depuis le SSD vers ce disque je suis preneur. |
|
|
![]()
Message
#5
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 2 415 Inscrit : 31 Aug 2006 Membre no 67 018 ![]() |
Depuis plusieurs années, j'utilise iRamDisk qui permet également de déplacer en ramdisk les caches de la bibliothèque utilisateurs.
Cela évite de nombreuses écritures temporaires sur les ssd et permet ainsi de prolonger leur durée de vie. Je viens de remarquer que lui aussi est maintenant proposé à 8,99 !!! ![]() |
|
|
Guest_macmagna_* |
![]()
Message
#6
|
Guests ![]() |
Personnellement, j'utilise le bout de code ci-dessous encapsulé dans une appli AppleScript et lancé automatiquement au démarrage, pour monter un RAMDisk de 2Go et déplacer dedans le dossier utilisateur "caches" dans lequel le système lit et écrit constamment. A utiliser sans modération, c'est gratuit !
![]() Code do shell script " diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://3906250` mkdir /Volumes/RAMDisk/Caches rm -r ~/Library/Caches ln -s /Volumes/RAMDisk/Caches ~/Library/Caches" [Edit] C'est un RAM disk de 2Go, pour 4Go remplacer 3906250 par 7812500. Ce message a été modifié par macmagna - 5 May 2014, 08:00. |
|
|
![]()
Message
#7
|
|
![]() Macbidouilleur de vermeil ! ![]() ![]() ![]() ![]() Groupe : Membres Messages : 1 167 Inscrit : 30 Sep 2008 Membre no 122 696 ![]() |
Personnellement, j'utilise le bout de code ci-dessous encapsulé dans une appli AppleScript et lancé automatiquement au démarrage, pour monter un RAMDisk de 4Go et déplacer dedans le dossier utilisateur "caches" dans lequel le système lit et écrit constamment. A utiliser sans modération, c'est gratuit ! ![]() Code do shell script " diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://3906250` mkdir /Volumes/RAMDisk/Caches rm -r ~/Library/Caches ln -s /Volumes/RAMDisk/Caches ~/Library/Caches" Merci beaucoup macmagna pour ton petit bout de code, qui m'explique comment utiliser cet espace. Je suppose qu'on peut écrire un fichier dedans par une commande du genre : echo Bonjour > /Volumes/RAMDisk/fichier.temp |
|
|
![]()
Message
#8
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Personnellement, j'utilise le bout de code ci-dessous encapsulé dans une appli AppleScript et lancé automatiquement au démarrage, pour monter un RAMDisk de 4Go et déplacer dedans le dossier utilisateur "caches" dans lequel le système lit et écrit constamment. A utiliser sans modération, c'est gratuit ! ![]() Code do shell script " diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://3906250` mkdir /Volumes/RAMDisk/Caches rm -r ~/Library/Caches ln -s /Volumes/RAMDisk/Caches ~/Library/Caches" Perso, un truc que j'arrive pas a faire et qui serait intéressant pour accélérer le bouzin, serait d'exporter le dossier "T"dans "var" Code /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T Tout le temp streaming flash etc... s'y logent. j'ai deja auparavant essayé le type de commande que t'as posté , ca fonctionne, pour le cacheUser, cache iTune ou autre, mais impossible d'arriver a mes fins avec le dossier "T" j'ai le sentiment que le RamDisk devrait monté avant le login pour bien faire. PS: Bon j'y ai pas non plus passé des journées, hein ^^ Ce message a été modifié par Kalm - 5 May 2014, 07:43. |
|
|
Guest_macmagna_* |
![]()
Message
#9
|
Guests ![]() |
...Merci beaucoup macmagna pour ton petit bout de code, qui m'explique comment utiliser cet espace. Je suppose qu'on peut écrire un fichier dedans par une commande du genre : echo Bonjour > /Volumes/RAMDisk/fichier.temp Je ne suis pas un spécialiste du Terminal mais oui, tu peux compléter ce code pour lui faire faire d'autres choses. Pour une application plus sérieuse, il faudrait tester que le RAMDisk a été correctement créé avant de jouer avec... ...Perso, un truc que j'arrive pas a faire et qui serait intéressant pour accélérer le bouzin, serait d'exporter le dossier "T"dans "var" Code /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T Tout le temp streaming flash etc... s'y logent. j'ai deja auparavant essayé le type de commande que t'as posté , ca fonctionne, pour le cacheUser, cache iTune ou autre, mais impossible d'arriver a mes fins avec le dossier "T" j'ai le sentiment que le RamDisk devrait monté avant le login pour bien faire. PS: Bon j'y ai pas non plus passé des journées, hein ^^ Le dossier que tu indiques est protégé du point de vue de l'utilisateur, donc tu ne peux pas le supprimer et créer un lien au moment du login. Tu pourrais toutefois essayer de créer le lien symbolique via le Terminal avec avec un sudo (le code ci-dessous tient compte d'un RAM disk monté sous "/Volumes/RAMDisk", remplace éventuellement avec le chemin de ton RAM disk): Code sudo rm -r /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T sudo ln -s /Volumes/RAMDisk/T /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T Ton RAMDisk doit être monté avant de créer le lien. A tester... Ce message a été modifié par macmagna - 5 May 2014, 07:51. |
|
|
![]()
Message
#10
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Thanks,
Avais également essayé en créant un lien symbolique, rien a faire. Je re-testerais a l'occasion. |
|
|
Guest_macmagna_* |
![]()
Message
#11
|
Guests ![]() |
Thanks, Avais également essayé en créant un lien symbolique, rien a faire. Je re-testerais a l'occasion. A moins que le chemin de ce dossier ne change à chaque re-démarrage, il n'y a pas de raison que cela ne fonctionne pas. Une fois le lien créé, il sera invalide au démarrage jusqu'au moment du login utilisateur et du montage du RAM disk. Si le système doit négocier avec ce dossier avant le login, cela posera un problème, sinon non. Il est possible aussi que le système ou les apps utilisant ce dossier "T" testent ses permissions pour des raisons de sécurités et dans ce cas il faudrait ajouter quelques lignes pour cloner plus complètement le dossier à ce niveau. Il faudrait donc regarder l'user:group et les permissions de ton dossier "T" et les appliquer au dossier "T" du RAMDisk avec "sudo chown user:group /Volumes/RAMDisk/T" et "sudo chmod perms /Volumes/RAMDisk/T". |
|
|
![]()
Message
#12
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Yep, parce que je viens a nouveau d'essayer et kif.
Apres avoir lancé la commande , il ecrase "T" et créait correctement le lien symbolique "T" mais ne redirige rien vers le Ramdisk, tout s'ouvres a nouveau dans le dossier "T" voila ce ca donne lorsque je veux ouvrir le lien Impossible d’effectuer l’opération car l’élément d’origine de « T » est introuvable.^^ Edit: Apres reflexion fait , je vais creer un dossier "T" dans le RAMDISK ca devrait aller tt de suite mieux hehe Ce message a été modifié par Kalm - 5 May 2014, 08:51. |
|
|
![]()
Message
#13
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Nikel, tout s'exporte après avoir créait un dossier "T" dans le ramdisk
Merci pr le coup de main macmagna ;-) Mais la ca rigole plus dans certain cas, comme du streaming HD, c'est pas un petit RamDisk de 2 GB qu'il faut ^^ Ce message a été modifié par Kalm - 5 May 2014, 09:01. |
|
|
Guest_macmagna_* |
![]()
Message
#14
|
Guests ![]() |
Oui, il fallait bien sur créer aussi un dossier dans le RAMDisk avant de jouer avec le lien
![]() Code mkdir /Volumes/RAMDisk/T
puis sudo rm -r /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T sudo ln -s /Volumes/RAMDisk/T /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T Ce message a été modifié par macmagna - 5 May 2014, 09:02. |
|
|
![]()
Message
#15
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Oui, il fallait bien sur créer aussi un dossier dans le RAMDisk avant de jouer avec le lien ![]() Code mkdir /Volumes/RAMDisk/T puis sudo rm -r /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T sudo ln -s /Volumes/RAMDisk/T /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T J'ai crées ce RamDisk pour le temps d'exécution, mais pour ceux qui craignent l'usure SSD, la ca en vaut vraiment la peine, y a enormement de cache tp qui se logent dans ce dossier "T" PS" Ca fait 10mn que je viens de lancer un film en streaming, en suis deja a 900 MB sur le RamDisk Ce message a été modifié par Kalm - 5 May 2014, 09:21. |
|
|
![]()
Message
#16
|
|
![]() Macbidouilleur de vermeil ! ![]() ![]() ![]() ![]() Groupe : Membres Messages : 1 076 Inscrit : 16 Dec 2002 Membre no 5 167 ![]() |
J'ai crées ce RamDisk... mais pour ceux qui craignent... Étant de ceux qui "craignent", c'est-à-dire plus sudoku que sudo, je rêve d'une petite application pour résumer toutes les commandes terminal à employer pour : - créer un ramdisk, puis y créer tous les dossiers utiles - créer les commandes permettant de tester l'état pour autoriser cette reconfiguration - lister les dossiers à localiser dans ce ramdisk et les commandes correspondantes pour les transférer, autoriser ce qu'il faut, faire un rapport détaillé de la mise en place, etc. - gérer les sauvegardes utiles - etc. D'après ce que j'ai lu sur ce fil, ça devrait être possible. Je propose un nom pour l'application : RamBidouille... -------------------- Co-fondateur et Administrateur de l'U.P.L.
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la liste |
|
|
![]()
Message
#17
|
|
![]() BIDOUILLE Guru ![]() ![]() ![]() ![]() ![]() Groupe : Admin Messages : 55 528 Inscrit : 14 Jan 2001 Lieu : Paris Membre no 3 ![]() |
Maintenant il faut que je trouve le temps et le protocole pour tester l'impact de la compression RAM de Mavericks sur ses performances et celle d'un RAMdisk. Mais pas facile car déjà les performances du disque sont très inconstantes et limitées par quelque chose au niveau de l'OS. en théorie on est à 12800 Mo/s par canal et un portable en a deux.
-------------------- C'est parce que la vitesse de la lumière est plus grande que celle du son que tant de gens paraissent brillants avant d'avoir l'air con
|
|
|
![]()
Message
#18
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
J'ai crées ce RamDisk... mais pour ceux qui craignent... Étant de ceux qui "craignent", c'est-à-dire plus sudoku que sudo, je rêve d'une petite application pour résumer toutes les commandes terminal à employer pour : - créer un ramdisk, puis y créer tous les dossiers utiles - créer les commandes permettant de tester l'état pour autoriser cette reconfiguration - lister les dossiers à localiser dans ce ramdisk et les commandes correspondantes pour les transférer, autoriser ce qu'il faut, faire un rapport détaillé de la mise en place, etc. - gérer les sauvegardes utiles - etc. D'après ce que j'ai lu sur ce fil, ça devrait être possible. Je propose un nom pour l'application : RamBidouille... Yep, très bonne idée mais ne suis pas Dev. Si je l'avais été , ca serait deja fait avec toutes les options nécessaires puis commercialisé a 1 Euros symbolique ^^ et pas leurs merde a 8 euros ![]() Ce message a été modifié par Kalm - 5 May 2014, 10:01. |
|
|
![]()
Message
#19
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Maintenant il faut que je trouve le temps et le protocole pour tester l'impact de la compression RAM de Mavericks sur ses performances et celle d'un RAMdisk. Si quelconque problèmes y a tjrs moyen de désactiver la compression. desactivation Code sudo nvram boot-args="vm_compressor=1" Activation Code sudo nvram -d boot-args Ou bien encore un reset "pram" qui remet tt en ordre Ce message a été modifié par Kalm - 5 May 2014, 10:24. |
|
|
![]()
Message
#20
|
|
![]() Adepte de Macbidouille ![]() Groupe : Membres Messages : 129 Inscrit : 26 Sep 2009 Lieu : Saint-Nazaire Membre no 142 859 ![]() |
j'en prend bonne note !
![]() -------------------- Un mec sur saint-nazaire ou un site généraliste sur les systemes-electroniques.academia.edu - peut-être qu'un jour j'aurais le temp de finir Mon-Électron.com
Dis-donc, elle est pas un peu longue ta signature là ? |
|
|
![]()
Message
#21
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
|
|
|
Guest_macmagna_* |
![]()
Message
#22
|
Guests ![]() |
Qui peut m'expliquer l'intérêt de sauvegarder le contenu du RAMDisk entre deux re-démarrages?
Pour moi, le RAMDisk sert à réduire les accès disques fréquents = vitesse accrue + économie des SSDs, mais je ne vois pas pourquoi il faudrait sauver/restaurer le RAMDisk... Perso, je m'en sert principalement sur le dossier "~/Caches" et sur le dossier utilisé par Xcode lors des compilations et je trouve cela plutôt sain de savoir que lorsque j'éteins ma machine tous les fichiers de ces deux dossiers disparaissent, puisqu'ils sont censés être temporaires, en tout cas du moins pour "~/Caches"... ...et pour ceux qui veulent conserver le RAMDisk en l'état, il suffit de ne pas éteindre la machine et de passer plutôt par la mise en veille entre deux sessions, non? Sinon, la sauvegarde du RAMDisk est assez simple, le code ci-dessous copie le contenu du RAMDisk dans un dossier RAMDisk_backup situé dans le dossier utilisateur: Code sudo cp -pR /Volumes/RAMDisk ~/RAMDisk_backup idem pour la restauration (noter le slash de fin de "~/RAMDisk_backup/" qui indique a "cp" de copier le contenu du dossier et non le dossier lui-même): Code sudo cp -pR ~/RAMDisk_backup/ /Volumes/RAMDisk ...et pour les paresseux avides de petits profits: - intégrez les bouts de codes trouvés dans ce forum dans une appli Cocoa ou AppleScript - ajoutez quelques tests - réalisez une jolie interface glossy/flashy avec des boutons et des boites à cocher - vendez le tout sur le MacAppStore à moins de 8€, succès probable... ![]() |
|
|
![]()
Message
#23
|
|
![]() Macbidouilleur de vermeil ! ![]() ![]() ![]() ![]() Groupe : Membres Messages : 1 224 Inscrit : 8 Oct 2005 Membre no 47 466 ![]() |
Quelle connerie ils peuvent pas inventer pour vendre leurs RAMDISK de merde! Citation Why is that necessary? Solid State drives benefit from a much bigger speed than a mechanical Hard Drive, but that comes with a prize of less writing cycles than a normal hard disk. That means a SSD will have a much shorter life span compared to a mechanical hard disk. La peur fait vendre... ![]() Perso, un truc que j'arrive pas a faire et qui serait intéressant pour accélérer le bouzin, serait d'exporter le dossier "T"dans "var" Code /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T Tout le temp streaming flash etc... s'y logent. Le streaming Flash seulement ou autre? (Streaming iTunes...?) |
|
|
![]()
Message
#24
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
Thanks, Avais également essayé en créant un lien symbolique, rien a faire. Je re-testerais a l'occasion. A moins que le chemin de ce dossier ne change à chaque re-démarrage, il n'y a pas de raison que cela ne fonctionne pas. Une fois le lien créé, il sera invalide au démarrage jusqu'au moment du login utilisateur et du montage du RAM disk. Si le système doit négocier avec ce dossier avant le login, cela posera un problème, sinon non. Il est possible aussi que le système ou les apps utilisant ce dossier "T" testent ses permissions pour des raisons de sécurités et dans ce cas il faudrait ajouter quelques lignes pour cloner plus complètement le dossier à ce niveau. Il faudrait donc regarder l'user:group et les permissions de ton dossier "T" et les appliquer au dossier "T" du RAMDisk avec "sudo chown user:group /Volumes/RAMDisk/T" et "sudo chmod perms /Volumes/RAMDisk/T". Le chemin se retrouve en principe dans $TMPDIR un echo $TMPDIR dans le premier terminal disponible devrait confirmer cela. -------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
![]()
Message
#25
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Le streaming Flash seulement ou autre? (Streaming iTunes...?) J'utilise pas iTune pr le streaming, mais viens d'essayer avec une bande annonce Oui, c'est également dans "T" nommé "MediaCache" Viens de faire la MAJ d'un petit soft et le fichier qui permet la MAJ y est également en zip, autant dire que c'est le Rush dans de ce dossier ^^ Ce message a été modifié par Kalm - 5 May 2014, 14:01. |
|
|
![]()
Message
#26
|
|
Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Rédacteurs Messages : 32 233 Inscrit : 15 Nov 2005 Membre no 49 996 ![]() |
Qui peut m'expliquer l'intérêt de sauvegarder le contenu du RAMDisk entre deux re-démarrages? Perso j'utilise un Ramdisk pour le cache de Firefox. Avoir la persistence me permet donc de conserver le cache d'un redémarrage à l'autre.Pour moi, le RAMDisk sert à réduire les accès disques fréquents = vitesse accrue + économie des SSDs, mais je ne vois pas pourquoi il faudrait sauver/restaurer le RAMDisk... Il y a sans doute aussi des cas où le Ramdisk est utile pour des questions de performances, mais avec des données importantes qu'il faut conserver. Perso j'ai deux Ramdisks du coup : - un persistant, sauvegardé automatiquement toutes les 10 minutes, où j'ai principalement le cache de Firefox; - un non persistant qui me sert pour le temp. -------------------- |
|
|
![]()
Message
#27
|
|
Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 2 071 Inscrit : 27 Feb 2003 Membre no 6 447 ![]() |
Est-il possible de faire en sorte que les fichiers de swap du système, les fichiers de log et de caches dans les différentes bibliothèques soient sur RamDisk ?
Avec un volume de démarrage SSD, y a-t-il un bénéfice sensible avec le RamDisk ? |
|
|
![]()
Message
#28
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 2 964 Inscrit : 3 Nov 2005 Membre no 49 239 ![]() |
Qui peut m'expliquer l'intérêt de sauvegarder le contenu du RAMDisk entre deux re-démarrages? Perso j'utilise un Ramdisk pour le cache de Firefox. Avoir la persistence me permet donc de conserver le cache d'un redémarrage à l'autre.Pour moi, le RAMDisk sert à réduire les accès disques fréquents = vitesse accrue + économie des SSDs, mais je ne vois pas pourquoi il faudrait sauver/restaurer le RAMDisk... Il y a sans doute aussi des cas où le Ramdisk est utile pour des questions de performances, mais avec des données importantes qu'il faut conserver. Perso j'ai deux Ramdisks du coup : - un persistant, sauvegardé automatiquement toutes les 10 minutes, où j'ai principalement le cache de Firefox; - un non persistant qui me sert pour le temp. Bonjour Qu'est ce que tu entends par 'temp' ? Merci |
|
|
![]()
Message
#29
|
|
Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 1 760 Inscrit : 13 Nov 2002 Lieu : Près de Liège (Be) Membre no 4 663 ![]() |
Est-il possible de faire en sorte que les fichiers de swap du système, les fichiers de log et de caches dans les différentes bibliothèques soient sur RamDisk ? Avec un volume de démarrage SSD, y a-t-il un bénéfice sensible avec le RamDisk ? Utiliser de la RAM pour stocker le fichier qui se remplit quand on n'a pas assez de RAM ? |
|
|
![]()
Message
#30
|
|
Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Rédacteurs Messages : 32 233 Inscrit : 15 Nov 2005 Membre no 49 996 ![]() |
Est-il possible de faire en sorte que les fichiers de swap du système, les fichiers de log et de caches dans les différentes bibliothèques soient sur RamDisk ? Les fichiers logs et les caches, oui, en modifiant leur emplacement ou en faisant des liens symboliques (cf plus haut).Le swap par contre, ça n'a pas vraiment de sens de le mettre sur un Ramdisk : quand l'OS décharge des données de la RAM vers le swap, c'est qu'il juge que la RAM doit être libérée pour autre chose. Mettre le swap en RAM fait perdre tout l'intérêt de ce mécanisme... Le seul cas où ça a éventuellement du sens de mettre le swap dans un Ramdisk, c'est quand on a un Ramdisk physique, c'est-à-dire une unité de stockage basée sur de la RAM et indépendante de la RAM système, qui ne vient donc pas amputer cette dernière, où à la limite quand une partie de la RAM n'est pas visible par l'OS et qu'on peut la récupérer avec un Ramdisk (par exemple, quand on a plus de 3-3.5 Go de RAM avec un Windows 32 bits, il y a une partie de la RAM qui n'est pas vue par l'OS mais que certains logiciels de Ramdisks arrivent tout de même à utiliser). -------------------- |
|
|
Guest_macmagna_* |
![]()
Message
#31
|
Guests ![]() |
Le chemin se retrouve en principe dans $TMPDIR un echo $TMPDIR dans le premier terminal disponible devrait confirmer cela. Dans ce cas, on doit pouvoir modifier le script de départ comme ceci afin de déplacer sur le RAMDisk à la fois le dossier de cache et le dossier des éléments temporaires: Code diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` mkdir /Volumes/RAMDisk/Caches rm -r ~/Library/Caches ln -s /Volumes/RAMDisk/Caches ~/Library/Caches mkdir /Volumes/RAMDisk/Temp rm -r $TMPDIR ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} Le RAMDisk à été porté du coup à 4Go pour garder plus de marge avec les fichiers temporaires. Ce message a été modifié par macmagna - 5 May 2014, 16:40. |
|
|
![]()
Message
#32
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Le chemin se retrouve en principe dans $TMPDIR un echo $TMPDIR dans le premier terminal disponible devrait confirmer cela. Dans ce cas, on doit pouvoir modifier le script de départ comme ceci afin de déplacer sur le RAMDisk à la fois le dossier de cache et le dossier des éléments temporaires: Code diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` mkdir /Volumes/RAMDisk/Caches rm -r ~/Library/Caches ln -s /Volumes/RAMDisk/Caches ~/Library/Caches mkdir /Volumes/RAMDisk/Temp rm -r $TMPDIR ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} Le RAMDisk à été porté du coup à 4Go pour garder plus de marge avec les fichiers temporaires. J'essaierai demain, j'ai les mirettes qui tombes ![]() |
|
|
![]()
Message
#33
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
Attention, si on lance le script avec sudo, c'est à dire qu'on change l'id de l'utilisateur par celui de root, $TMPDIR sera vide.
-------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
Guest_macmagna_* |
![]()
Message
#34
|
Guests ![]() |
Attention, si on lance le script avec sudo, c'est à dire qu'on change l'id de l'utilisateur par celui de root, $TMPDIR sera vide. Non, a priori on n'a pas besoin de sudo car le dossier "T" semble être créé comme un dossier utilisateur. Les commandes fonctionnent lorsqu'on les tape dans le Terminal, reste à voir ce qui se passe lorsqu'elles sont incluses dans un script qui se lance au démarrage. Je les ai ajouté dans mon script personnel de RAMDisk, je verrai ce qui se passe au re-démarrage demain matin... A noter le "${TMPDIR%/}" dans la dernière ligne pour supprimer le dernier slash (/) du chemin renvoyé par $TMPDIR qui provoque sinon une erreur. Ce message a été modifié par macmagna - 5 May 2014, 17:45. |
|
|
![]()
Message
#35
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Attention, si on lance le script avec sudo, c'est à dire qu'on change l'id de l'utilisateur par celui de root, $TMPDIR sera vide. Non, a priori on n'a pas besoin de sudo car le dossier "T" semble être créé comme un dossier utilisateur. Les commandes fonctionnent lorsqu'on les tape dans le Terminal, reste à voir ce qui se passe lorsqu'elles sont incluses dans un script qui se lance au démarrage. Je les ai ajouté dans mon script personnel de RAMDisk, je verrai ce qui se passe au re-démarrage demain matin... A noter le "${TMPDIR%/}" dans la dernière ligne pour supprimer le dernier slash (/) du chemin renvoyé par $TMPDIR qui provoque sinon une erreur. En dirigeant ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} On créait un lien symbolique "tmp" qui pointe sur le RamDisk mais tout ce qui est dans le dossier "T" n'est pas redirigé . Pourquoi ne pas avoir rediriger "T" je comprend pas. "tmp" dans " T" est un dossier qui n'existe pas a l'origine, pourquoi l'avoir créé ? Ce message a été modifié par Kalm - 5 May 2014, 18:52. |
|
|
![]()
Message
#36
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 3 606 Inscrit : 10 Feb 2011 Membre no 164 526 ![]() |
Eh, les gars, je vois bien les commandes T et vous lis avec attention.
Mais si on revient à l'appli PowerApp mentionnée dans la news par Lionel, que je me suis procuré pour voir… j'ai un peu de mal à piger comment m'en servir. J'ai un SSD de 1 To et 32 Go de RAM (iMac). Bon. Je crée un RamDisk de 4 Go, admettons. Soit c'est pour une utilisation temporaire (A), soit permanente (B) A - je bosse sur un fichier Photoshop. Je le mets dedans et je bosse dessus ? Quand j'ai fini mon taf, je le sors de l'image disque et basta ? B - j'ai cru comprendre que l'un des intérêts d'un RamDisk est de prolonger la vie des SSD. Bon. Mais à propos de quels fichiers ? Des caches ? Si oui, je fais quoi avec ces fichiers caches ? Faut créer un lien symbolique dans leur place originelle (genre avec SymbolicLinker) et déplacer l'écriture de ces fichiers dans le RamDisk ? Quelqu'un peut expliquer un exemple concret ? Je vois que SartMatt dit s'en servir pour le cache de FireFox… comment faire ça avec PowerApp, sans avoir recours au Terminal, ou, si c'est tout de même indispensable quelle est la procédure ? Merci pour les profanes. ![]() |
|
|
Guest_macmagna_* |
![]()
Message
#37
|
Guests ![]() |
J'ai testé En dirigeant ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} On créait un lien symbolique "tmp" qui pointe sur le RamDisk mais tout ce qui est dans le dossier "T" n'est pas redirigé . Pourquoi ne pas avoir rediriger "T" je comprend pas. "tmp" dans " T" est un dossier qui n'existe pas a l'origine, pourquoi l'avoir créé ? Le code: Code ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} Crée un lien symbolique à l'emplacement "${TMPDIR%/}" qui pointe vers le dossier "/Volumes/RAMDisk/Temp". "${TMPDIR%/}" représente l'emplacement du dossier utilisateur temporaire, en d'autres termes, ton dossier "T". C'est donc bien ton dossier "T" qui pointe désormais vers "/Volumes/RAMDisk/Temp". Tout ce qui sera écrit vers ce dossier sera re-dirigé vers le dossier "/Volumes/RAMDisk/Temp". Je le teste chez moi depuis quelques heures et cela fonctionne parfaitement. Le fait de nommer le dossier de re-direction "Temp" au lieu de "T" ne change rien, j'aurai pu écrire à la place: Code ln -s /Volumes/RAMDisk/LeDossierTdeKalm ${TMPDIR%/} et obtenir le même résultat (à part qu'il aurait fallu créer préalablement un dossier "/Volumes/RAMDisk/LeDossierTdeKalm"). Eh, les gars, je vois bien les commandes T et vous lis avec attention. Mais si on revient à l'appli PowerApp mentionnée dans la news par Lionel, que je me suis procuré pour voir… j'ai un peu de mal à piger comment m'en servir. J'ai un SSD de 1 To et 32 Go de RAM (iMac). Bon. Je crée un RamDisk de 4 Go, admettons. Soit c'est pour une utilisation temporaire (A), soit permanente (B) A - je bosse sur un fichier Photoshop. Je le mets dedans et je bosse dessus ? Quand j'ai fini mon taf, je le sors de l'image disque et basta ? B - j'ai cru comprendre que l'un des intérêts d'un RamDisk est de prolonger la vie des SSD. Bon. Mais à propos de quels fichiers ? Des caches ? Si oui, je fais quoi avec ces fichiers caches ? Faut créer un lien symbolique dans leur place originelle (genre avec SymbolicLinker) et déplacer l'écriture de ces fichiers dans le RamDisk ? Quelqu'un peut expliquer un exemple concret ? Je vois que SartMatt dit s'en servir pour le cache de FireFox… comment faire ça avec PowerApp, sans avoir recours au Terminal, ou, si c'est tout de même indispensable quelle est la procédure ? Merci pour les profanes. ![]() L'intérêt des lignes de commandes que nous évoquons ici est de ne pas avoir à acheter et utiliser d'application de type PowerApp ou équivalent pour créer un RAM disk... L'intérêt d'acheter et d'utiliser une application de type PowerApp ou équivalent est de ne pas avoir à utiliser des lignes de commandes pour créer un RAM disk... Choisit ton camp mais ne mélange pas les deux, au risque de mettre un gros bazar dans ton système. |
|
|
![]()
Message
#38
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Alors la je comprend vraiment pas macmagna
Je tape Code mkdir /Volumes/RAMDisk/Temp rm -r $TMPDIR ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} Donc il creait le fichier temp dans la RamDisk mais le lien Symbolique "temp" et dans "T" il ne remplace pas ce dossier. Du coup tout ce que j'envois en temporaire reste dans "T" Y a un truc qui m'échappe, j'en perd mon Latin, bon je l ai jamais parlé non plus ^^ Ce message a été modifié par Kalm - 5 May 2014, 20:10. |
|
|
![]()
Message
#39
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 3 606 Inscrit : 10 Feb 2011 Membre no 164 526 ![]() |
L'intérêt des lignes de commandes que nous évoquons ici est de ne pas avoir à acheter et utiliser d'application de type PowerApp ou équivalent pour créer un RAM disk... L'intérêt d'acheter et d'utiliser une application de type PowerApp ou équivalent est de ne pas avoir à utiliser des lignes de commandes pour créer un RAM disk... Choisit ton camp mais ne mélange pas les deux, au risque de mettre un gros bazar dans ton système. Merci pour ces précisions. J'avais bien compris cette alternative dès le départ. Mais cela ne répond pas à mes questions. ![]() |
|
|
![]()
Message
#40
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
L'intérêt des lignes de commandes que nous évoquons ici est de ne pas avoir à acheter et utiliser d'application de type PowerApp ou équivalent pour créer un RAM disk... L'intérêt d'acheter et d'utiliser une application de type PowerApp ou équivalent est de ne pas avoir à utiliser des lignes de commandes pour créer un RAM disk... Choisit ton camp mais ne mélange pas les deux, au risque de mettre un gros bazar dans ton système. Merci pour ces précisions. J'avais bien compris cette alternative dès le départ. Mais cela ne répond pas à mes questions. ![]() Le problème avec une App comme PowerMa,, est qu'elle n'inclue pas de menu déroulant ou autre pour choisir le cache ou le temp que tu voudras rediriger vers le RamDisk, du coup t' es obliger de passer par les lignes commande En gros t'as acheté un RamDisk avec option persistent, c'est tout. D'ou entre autre mon ton cavalier en debut News |
|
|
Guest_macmagna_* |
![]()
Message
#41
|
Guests ![]() |
Alors la je comprend vraiment pas macmagna Je tape Code mkdir /Volumes/RAMDisk/Temp rm -r $TMPDIR ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} Donc il creait le fichier temp dans la RamDisk mais le lien Symbolique "temp" et dans "T" il ne remplace pas ce dossier. Du coup tout ce que j'envois en temporaire reste dans "T" Y a un truc qui m'échappe, j'en perd mon Latin, bon je l ai jamais parlé non plus ^^ Quand tu tapes "rm -r $TMPDIR", tu supprimes normalement ton dossier "T", il n'existe plus. Commence par ça et regarde si ton dossier "T" est effectivement détruit. Ensuite, quand tu tapes "ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/}" tu crée un lien symbolique à la même place ("/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/") qui pointe (re-dirige) vers le dossier du RAMDisk "/Volumes/RAMDisk/Temp". Si tu tapes la dernière commande alors que le lien est déjà créé, un deuxième lien symbolique "Temp" est créé dans "/Volumes/RAMDisk/Temp" mais il est invalide. Deux choses à vérifier: 1) dans le Terminal, "echo $TMPDIR" renvoie "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/". 2) avec le Finder, va dans "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/" et "Lis les Informations" sur ton dossier "T", ce doit être un Alias et non un Dossier. Si ce n'est pas le cas, alors on a encore du boulot ![]() |
|
|
![]()
Message
#42
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
Deux choses à vérifier: 1) dans le Terminal, "echo $TMPDIR" renvoie "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/". 2) avec le Finder, va dans "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/" et "Lis les Informations" sur ton dossier "T", ce doit être un Alias et non un Dossier. Si ce n'est pas le cas, alors on a encore du boulot ![]() Petite précision : echo $TMPDIR renvoie /var/folders/cf/..../T/ et /var est un lien symbolique pour /private/var : Code lrwxr-xr-x@ 1 root wheel 11 5 oct 2013 /var -> private/var Ce qui ne doit pas poser de problème en principe pour le fonctionnement du script EDIT : Attention ! J'ai testé la suppression de $TMPDIR afin de le recréer sur un Ramdisk. J'ai été confronté au problème décrit sur cette page : http://kieranhealy.org/blog/archives/2014/...nservicesagent/ La création du répertoire com.apple.IconServices a réglé le problème. Ce message a été modifié par yponomeute - 5 May 2014, 21:42. -------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
![]()
Message
#43
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Quand tu tapes "rm -r $TMPDIR", tu supprimes normalement ton dossier "T", il n'existe plus. Commence par ça et regarde si ton dossier "T" est effectivement détruit. Nope, il le detruit pas, renvoie "override r--r--r-- X/staff for /var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T//qt_menu.nib/classes.nib? " il le detruit qu'avec la commande "rm -r /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T" Ensuite, quand tu tapes "ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/}" tu crée un lien symbolique à la même place ("/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/") qui pointe (re-dirige) vers le dossier du RAMDisk "/Volumes/RAMDisk/Temp". Du coup il creait un lien "Temp" ........./T/Temp Si tu tapes la dernière commande alors que le lien est déjà créé, un deuxième lien symbolique "Temp" est créé dans "/Volumes/RAMDisk/Temp" mais il est invalide. Ensuite le lien "Temp" dans "T" redirige correctement vers le RamDisk, mais par défaut tout reste dans "T" Deux choses à vérifier: 1) dans le Terminal, "echo $TMPDIR" renvoie "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/". 2) avec le Finder, va dans "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/" et "Lis les Informations" sur ton dossier "T", ce doit être un Alias et non un Dossier. Si ce n'est pas le cas, alors on a encore du boulot ![]() Nope, ca reste Type "dossier" ![]() Ce message a été modifié par Kalm - 5 May 2014, 22:36. |
|
|
![]()
Message
#44
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
j ai compris grace au renvoie, j ai vire"nib" dans "T"
Maintenant "T" pointe vers le RamDisk. ;-) ![]() Ce message a été modifié par Kalm - 5 May 2014, 22:48. |
|
|
Guest_macmagna_* |
![]()
Message
#45
|
Guests ![]() |
Ce matin j'ai démarré avec le script modifié qui génère le RAMDisk et exporte $TMPDIR dessus mais j'ai été confronté à un problème: certains icônes dans mon Dock avaient disparu. C'est peut être en rapport avec le problème relevé par yponomeute mais la création d'un dossier "com.apple.IconServices" dans "Temp" n'a rien réglé sur le moment, aussi j'en suis revenu à la configuration précédente et j'ai laissé "T" à sa place originale.
[Edit] La consultation des logs systèmes de démarrage dans la Console, confirme que certains services, dont IconServices, ont besoin du dossier tmp avant le log-in du premier utilisateur, ce qui est logique. Il faudrait donc prévoir un script qui restaure le dossier T avant extinction de la machine puis qui l'exporte (et non le supprime) sur le RAM disk lors du log-in. La suppression du lien symbolique vers T lors de l'extinction de la machine pourrait suffire à régler le problème, le dossier étant automatiquement re-créé par le système s'il est absent au démarrage. Ce message a été modifié par macmagna - 6 May 2014, 07:09. |
|
|
![]()
Message
#46
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Ce matin j'ai démarré avec le script modifié qui génère le RAMDisk et exporte $TMPDIR dessus mais j'ai été confronté à un problème: certains icônes dans mon Dock avaient disparu. C'est peut être en rapport avec le problème relevé par yponomeute mais la création d'un dossier "com.apple.IconServices" dans "Temp" n'a rien réglé sur le moment, aussi j'en suis revenu à la configuration précédente et j'ai laissé "T" à sa place originale. [Edit] La consultation des logs systèmes de démarrage dans la Console, confirme que certains services, dont IconServices, ont besoin du dossier tmp avant le log-in du premier utilisateur, ce qui est logique. Il faudrait donc prévoir un script qui restaure le dossier T avant extinction de la machine puis qui l'exporte (et non le supprime) sur le RAM disk lors du log-in. La suppression du lien symbolique vers T lors de l'extinction de la machine pourrait suffire à régler le problème, le dossier étant automatiquement re-créé par le système s'il est absent au démarrage. Yep,j'ai eu le meme soucis hier soir, mais la flemme de poster, fatigué malgré le café ;-) Au redémarrage, plus rien sur le bureau/Fan a fond, j'ai donc supprimer le lien "T" qui ne pointé vers plus rien. J'ai lancé une App pour reconstruire le dossier "T" puis créer le repertoire "com.apple.IconServices" tout est revenu dans l'ordre. Et si on creait une image de restauration de "T" et "com.apple.IconServices" avant extinction de la machine? PS;Pardon , pas reveillé ce matin, en gros c'est ce que tu expliques concernant la restauration ^^ Ce message a été modifié par Kalm - 6 May 2014, 08:06. |
|
|
![]()
Message
#47
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Peut être quelques element de reponse vers ce lien.;-)
https://gist.github.com/pklaus/931579#file-...mdisk_macosx-sh Code #!/bin/bash
# +----------------------------------------------------------------------+ # | | # | Set up Mac OS X to store temporary files in RAM rather than on disk.| # | | # | By Philipp Klaus <http://blog.philippklaus.de> | # | | # | Originally by Ricardo Gameiro <http://blogs.nullvision.com/?p=357> | # | Changes by Daniel Jenkins | # | <http://blogs.nullvision.com/?p=357#comment-1140> | # | | # +----------------------------------------------------------------------+ cd /System/Library/StartupItems sudo mkdir RamFS sudo chown -R root:wheel RamFS sudo chmod -R u+rwX,g+rX,o+rX RamFS cat << "EOF" | sudo tee RamFS/RamFS > /dev/null #!/bin/sh # Create a RAM disk with same perms as mountpoint RAMDisk() { mntpt=$1 rdsize=$(($2*1024*1024/512)) echo "Creating RamFS for $mntpt" # Create the RAM disk. dev=`hdik -drivekey system-image=yes -nomount ram://$rdsize` # Successfull creation... if [ $? -eq 0 ]; then # Create HFS on the RAM volume. newfs_hfs $dev # Store permissions from old mount point. eval `/usr/bin/stat -s $mntpt` # Mount the RAM disk to the target mount point. mount -t hfs -o union -o nobrowse $dev $mntpt # Restore permissions like they were on old volume. chown $st_uid:$st_gid $mntpt chmod $st_mode $mntpt fi } # Test for arguments. if [ -z $1 ]; then echo "Usage: $0 [start|stop|restart] " exit 1 fi # Source the common setup functions for startup scripts test -r /etc/rc.common || exit 1 . /etc/rc.common StartService () { ConsoleMessage "Starting RamFS disks..." RAMDisk /private/tmp 256 RAMDisk /var/run 64 #RAMDisk /var/db 1024 #mkdir -m 1777 /var/db/mds } StopService () { ConsoleMessage "Stopping RamFS disks, nothing will be done here..." # diskutil unmount /private/tmp /private/var/run # diskutil unmount /private/var/run } RestartService () { ConsoleMessage "Restarting RamFS disks, nothing will be done here..." } RunService "$1" EOF sudo chmod u+x,g+x,o+x RamFS/RamFS cat << EOF | sudo tee RamFS/StartupParameters.plist > /dev/null <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd"> <plist version="0.9"> <dict> <key>Description</key> <string>RamFS Disks Manager</string> <key>OrderPreference</key> <string>Early</string> <key>Provides</key> <array> <string>RamFS</string> </array> <key>Uses</key> <array> <string>Disks</string> </array> </dict> </plist> EOF |
|
|
![]()
Message
#48
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Ce matin j'ai démarré avec le script modifié qui génère le RAMDisk et exporte $TMPDIR dessus mais j'ai été confronté à un problème: certains icônes dans mon Dock avaient disparu. C'est peut être en rapport avec le problème relevé par yponomeute mais la création d'un dossier "com.apple.IconServices" dans "Temp" n'a rien réglé sur le moment, aussi j'en suis revenu à la configuration précédente et j'ai laissé "T" à sa place originale. [Edit] La consultation des logs systèmes de démarrage dans la Console, confirme que certains services, dont IconServices, ont besoin du dossier tmp avant le log-in du premier utilisateur, ce qui est logique. Il faudrait donc prévoir un script qui restaure le dossier T avant extinction de la machine puis qui l'exporte (et non le supprime) sur le RAM disk lors du log-in. La suppression du lien symbolique vers T lors de l'extinction de la machine pourrait suffire à régler le problème, le dossier étant automatiquement re-créé par le système s'il est absent au démarrage. Bon du coup, j'ai testé en créant une image persistante du RamDisk de "T" avant le l'extinction. après re-demarrage le lien retrouve bien ses petits mais seulement une fois le RamDisk monté, ce qui ne ce fait pas en priorité lors du demarrage. ![]() PS: sinon plus de soucis de disparition du bureau ou autre. EDIT Fausse joie, un nouveau redémarrage et tout ce qui était sur le bureau a nouveau disparu, Fan a fond. Le lien ne retrouve plus ses petits, J'ai donc supprimé le lien "T" pour que le système en créait un nouveau au démarrage. PS: Comme tu le soulignes la restauration devrait se faire avant le Log in. Ce message a été modifié par Kalm - 6 May 2014, 09:42. |
|
|
Guest_macmagna_* |
![]()
Message
#49
|
Guests ![]() |
Le script que tu as trouvé Kalm fait tout dans les règles avec un service dédié, c'est la meilleure solution.
Je n'ai pas décortiqué tout le code, mais on peut parier que les gars ont ajouté tout ce qu'il faut pour éviter les mauvaises surprises. L'autre solution est de déplacer les dossiers, plutôt que de les détruire, lors du login et du logout. Il faudrait probablement aussi démonter le RAMDisk lors du logout et tester sa présence ou pas lors du login... Le script de log-in deviendrait donc: Code if [ ! -e /Volumes/RAMDisk ] then diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` fi cp rp ~/Library/Caches /Volumes/RAMDisk/Caches rm -r ~/Library/Caches ln -s /Volumes/RAMDisk/Caches ~/Library/Caches cp -rp $TMPDIR /Volumes/RAMDisk/Temp rm -r $TMPDIR ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} Le script de log-out: Code rm ~/Library/Caches cp -rp /Volumes/RAMDisk/Caches ~/Library/Caches rm $TMPDIR cp -rp /Volumes/RAMDisk/Temp $TMPDIR et il y a moyen de s'assurer que des scripts se lancent au login et au logout en usant de: Code sudo defaults write com.apple.loginwindow LoginHook chemin/vers/le/script/de/login et de:Code sudo defaults write com.apple.loginwindow LogoutHook chemin/vers/le/script/de/logout A noter que tout ceci est expérimental et peut poser, entre autres, de sérieux problèmes lors d'une utilisation multi-utilisateurs (mélange possible des Caches et des Temp des différents utilisateurs, etc...)... A utiliser donc avec sagesse et modération, à vos risques et périls, bien entendu... ![]() |
|
|
![]()
Message
#50
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Le script que tu as trouvé Kalm fait tout dans les règles avec un service dédié, c'est la meilleure solution. Je n'ai pas décortiqué tout le code, mais on peut parier que les gars ont ajouté tout ce qu'il faut pour éviter les mauvaises surprises. Yep, mais selon les témoignage ne fonctionne pas en 10.9. L'autre solution est de déplacer les dossiers, plutôt que de les détruire, lors du login et du logout. Il faudrait probablement aussi démonter le RAMDisk lors du logout et tester sa présence ou pas lors du login... N'étant pas un spécialiste du script (jamais touché) ^^, tu peux m'expliquer un peu comment tu intègres ces 2 script dans l'éditeurs Apple Script afin que ca se fasse automatiquement. ![]() ![]() |
|
|
Guest_macmagna_* |
![]()
Message
#51
|
Guests ![]() |
N'étant pas un spécialiste du script (jamais touché) ^^, tu peux m'expliquer un peu comment tu intègres ces 2 script dans l'éditeurs Apple Script afin que ca se fasse automatiquement. ![]() ![]() Tu ouvres l'Editeur AppleScript puis tu copies ton script en prenant soin de l'encadrer par do shell script "". Pour le script de login, ça donne ça: Code do shell script " ensuite tu fais "Fichier->Enregistrer...", et tu choisis "Application" dans le format de fichier avant de clicker "Enregistrer". Tu obtiens ainsi une petite application autonome qui exécute ton bout de script chaque fois qu'elle est lancée. Tu peux faire ça avec les deux scripts et lancer la première application automatiquement à l'ouverture de cession en la choisissant dans les éléments à lancer pour ton compte (PreferencesSystemes->UtilisateursEtGroupes-> onglet "Ouverture"). Par contre rien n'est prévu pour le logout donc tu devras le faire manuellement.if [ ! -e /Volumes/RAMDisk ] then diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` fi cp rp ~/Library/Caches /Volumes/RAMDisk/Caches rm -r ~/Library/Caches ln -s /Volumes/RAMDisk/Caches ~/Library/Caches cp -rp $TMPDIR /Volumes/RAMDisk/Temp rm -r $TMPDIR ln -s /Volumes/RAMDisk/Temp ${TMPDIR%/} " L'autre option (avec sudo defaults write com.apple.loginwindow LogoutHook chemin/vers/le/script/de/logout) est meilleure mais "chemin/vers/le/script/de/logout" doit pointer, a priori, vers un script et non une application. Dans ce cas il faut copier le script dans un fichier texte, puis faire un "chmod +x chemin/vers/le/script" pour le rendre exécutable, puis utiliser "sudo defaults write com.apple.loginwindow LogoutHook chemin/vers/le/script/de/logout". Un détail important avec l'utilisation de "sudo defaults write com.apple.loginwindow LoginHook et LogoutHook" c'est que le script est exécuté en "root" et que donc il ne doit pas contenir de chemins relatifs (préfixés par "~") mais que des chemins absolus (commençant par "/"). Si tu dois utiliser cette solution, tu dois donc changer les deux "~/Library/Caches" par le chemin complet du genre "/Users/Kalm/Library/Caches"... |
|
|
![]()
Message
#52
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Merci macmagna.
Je vais tester ca et reviendrais pour les retours ;-) |
|
|
![]()
Message
#53
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
'L'autre option (avec sudo defaults write com.apple.loginwindow LogoutHook chemin/vers/le/script/de/logout) est meilleure mais "chemin/vers/le/script/de/logout" doit pointer, a priori, vers un script et non une application. Dans ce cas il faut copier le script dans un fichier texte, puis faire un "chmod +x chemin/vers/le/script" pour le rendre exécutable, puis utiliser "sudo defaults write com.apple.loginwindow LogoutHook chemin/vers/le/script/de/logout". Un détail important avec l'utilisation de "sudo defaults write com.apple.loginwindow LoginHook et LogoutHook" c'est que le script est exécuté en "root" et que donc il ne doit pas contenir de chemins relatifs (préfixés par "~") mais que des chemins absolus (commençant par "/"). Si tu dois utiliser cette solution, tu dois donc changer les deux "~/Library/Caches" par le chemin complet du genre "/Users/Kalm/Library/Caches"... Si le script est exécuté en tant que root le contenu de la variable $TMPDIR ne sera plus bon non plus. -------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
Guest_macmagna_* |
![]()
Message
#54
|
Guests ![]() |
'L'autre option (avec sudo defaults write com.apple.loginwindow LogoutHook chemin/vers/le/script/de/logout) est meilleure mais "chemin/vers/le/script/de/logout" doit pointer, a priori, vers un script et non une application. Dans ce cas il faut copier le script dans un fichier texte, puis faire un "chmod +x chemin/vers/le/script" pour le rendre exécutable, puis utiliser "sudo defaults write com.apple.loginwindow LogoutHook chemin/vers/le/script/de/logout". Un détail important avec l'utilisation de "sudo defaults write com.apple.loginwindow LoginHook et LogoutHook" c'est que le script est exécuté en "root" et que donc il ne doit pas contenir de chemins relatifs (préfixés par "~") mais que des chemins absolus (commençant par "/"). Si tu dois utiliser cette solution, tu dois donc changer les deux "~/Library/Caches" par le chemin complet du genre "/Users/Kalm/Library/Caches"... Si le script est exécuté en tant que root le contenu de la variable $TMPDIR ne sera plus bon non plus. Tout à fait! bien vu ![]() Il vaut donc mieux remplacer tous les chemins par des chemins absolus, ce qui ne rend pas le script très portable ![]() |
|
|
![]()
Message
#55
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
Pour obtenir le chemin vers le répertoire temporaire de l'user toto si le script est exécuté en tant que root :
Code TD=`sudo -H -u toto getconf DARWIN_USER_TEMP_DIR`
if [ ! -e /Volumes/RAMDisk ] then diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` fi cp rp /Users/toto/Library/Caches /Volumes/RAMDisk/Caches rm -r /Users/toto/Library/Caches ln -s /Volumes/RAMDisk/Caches /Users/toto/Library/Caches cp -rp $TD /Volumes/RAMDisk/Temp rm -r $TD ln -s /Volumes/RAMDisk/Temp ${TD%/} Ce message a été modifié par yponomeute - 6 May 2014, 11:33. -------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
Guest_macmagna_* |
![]()
Message
#56
|
Guests ![]() |
Pour obtenir le chemin vers le répertoire temporaire de l'user toto si le script est exécuté en tant que root : Code TD=`sudo -H -u toto getconf DARWIN_USER_TEMP_DIR` if [ ! -e /Volumes/RAMDisk ] then diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` fi cp rp /Users/toto/Library/Caches /Volumes/RAMDisk/Caches rm -r /Users/toto/Library/Caches ln -s /Volumes/RAMDisk/Caches /Users/toto/Library/Caches cp -rp $TD /Volumes/RAMDisk/Temp rm -r $TD ln -s /Volumes/RAMDisk/Temp ${TD%/} Oui, et on parlera aussi de l'existence d'une variable DARWIN_USER_CACHE_DIR qui pointe sur le dossier "C"... En toute logique, il faudrait aussi porter celui-là sur le RAMDisk, ou peut-être le dossier parent qui les contient tous les deux (plus un dossier "0" chez moi)? |
|
|
![]()
Message
#57
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Pour obtenir le chemin vers le répertoire temporaire de l'user toto si le script est exécuté en tant que root : Code TD=`sudo -H -u toto getconf DARWIN_USER_TEMP_DIR` if [ ! -e /Volumes/RAMDisk ] then diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` fi cp rp /Users/toto/Library/Caches /Volumes/RAMDisk/Caches rm -r /Users/toto/Library/Caches ln -s /Volumes/RAMDisk/Caches /Users/toto/Library/Caches cp -rp $TD /Volumes/RAMDisk/Temp rm -r $TD ln -s /Volumes/RAMDisk/Temp ${TD%/} Oui, et on parlera aussi de l'existence d'une variable DARWIN_USER_CACHE_DIR qui pointe sur le dossier "C"... En toute logique, il faudrait aussi porter celui-là sur le RAMDisk, ou peut-être le dossier parent qui les contient tous les deux (plus un dossier "0" chez moi)? Je l'ai fait avec le script "toto" et "macmagna" et avec "calme" ^^ Code do shell script " TD=`sudo -H -u kalm getconf DARWIN_USER_TEMP_DIR` if [ ! -e /Volumes/RAMDisk ] then diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` fi cp rp /Users/kalm/Library/Caches /Volumes/RAMDisk/Caches rm -r /Users/kalm/Library/Caches ln -s /Volumes/RAMDisk/Caches /Users/kalm/Library/Caches cp -rp $TD /Volumes/RAMDisk/Temp rm -r $TD ln -s /Volumes/RAMDisk/Temp ${TD%/} " Dans les 2 cas. Le lien "T" pointe correctement vers "temp" mais aucun dossier "Caches"n'a ete créait dans le RAMDisk. EDIT: Une petite precision, mon "home" kalm est exporté sur le HDD /Volumes/DATA, le système etant sur le SSD, mais ne posait aucun problème avec les commandes précédente, le dossier "Caches" etait correctement copier dans le RamDisk. Ce message a été modifié par Kalm - 6 May 2014, 12:20. |
|
|
![]()
Message
#58
|
|
Nouveau Membre Groupe : Membres Messages : 35 Inscrit : 28 Apr 2014 Membre no 190 307 ![]() |
C'est sympa un Ram Disk comme on en avait sur Amiga à l'époque (Toute la ram était accessible sous la forme d'un Ram Disk).
![]() Ce message a été modifié par JimNeray - 6 May 2014, 12:11. -------------------- Mac Pro 4.1 Upgradé 5.1 hexa 3.46Ghz 24Gb SSD GTX680 / G4 Sawtooth Sonnet 1Ghz / iPhone 3g / iPhone 4s / iPhone 6s
Commodore 64 / Amiga 500-600-1200-2000-4000T-CD32 / Atari 1040STe-VCS2600 |
|
|
Guest_macmagna_* |
![]()
Message
#59
|
Guests ![]() |
Je l'ai fait avec le script "toto" et "macmagna" et avec "calme" ^^ Tu ne dois remplacer "toto" que par ton nom d'utilisateur, le nom de ton dossier Home, le faire avec le mien ne fonctionnera pas ![]() De toute façon, la motif de yponomeute ne concerne que le script exécuté en root et ne s'applique pas à la version AppleScript que tu utilises avec le "do shell script" autour... Je te conseille d'en revenir au script de départ que tu transformes en application AppleScript et que tu lances à l'ouverture de cession, c'est ce que je fais moi même, je n'exporte toutefois pas le dossier T sur le RAMDisk, cela m'évite tous les autres problèmes, comme celui de restaurer le dossier lors du logout. Une petite precision, mon "home" kalm est exporté sur le HDD /Volumes/DATA, le système etant sur le SSD, mais ne posé aucun probleme avec les commandes precedente, le dossier "Caches" etait correctement copier dans le RamDisk. Alors c'est normal que le dossier "Caches" ne soit pas là. Tu dois remplacer dans le script tous les "~/Library/Caches" par le chemin qui mène au tien sur "/Volumes/DATA". J'ignore comment est organisé et où se trouve ton dossier Home sur ton disque "DATA" alors je ne peux te donner le chemin complet mais il est clair que ta config est particulière: SSD + HDD + RAMDisk avec dossiers déplacés et re-dirigés..., ça donne un peu le tournis ![]() C'est sympa un Ram Disk comme on en avait sur Amiga à l'époque (Toute la ram était accessible sous la forme d'un Ram Disk). ![]() Oui c'est clair! J'en ai eu un aussi et je me rappelle bien de la petite disquette sur le Bureau (pardon le WorkBench) qui représentait la RAM dans ce cas... en tout cas, c'était bien plus simple que ce que l'on cherche à faire ici... |
|
|
![]()
Message
#60
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
Je l'ai fait avec le script "toto" et "macmagna" et avec "calme" ^^ Code do shell script " TD=`sudo -H -u kalm getconf DARWIN_USER_TEMP_DIR` if [ ! -e /Volumes/RAMDisk ] then diskutil erasevolume HFS+ RAMDisk `hdiutil attach -nomount ram://7812500` fi cp rp /Users/kalm/Library/Caches /Volumes/RAMDisk/Caches rm -r /Users/kalm/Library/Caches ln -s /Volumes/RAMDisk/Caches /Users/kalm/Library/Caches cp -rp $TD /Volumes/RAMDisk/Temp rm -r $TD ln -s /Volumes/RAMDisk/Temp ${TD%/} " Dans les 2 cas. Le lien "T" pointe correctement vers "temp" mais aucun dossier "Caches"n'a ete créait dans le RAMDisk. EDIT: Une petite precision, mon "home" kalm est exporté sur le HDD /Volumes/DATA, le système etant sur le SSD, mais ne posait aucun problème avec les commandes précédente, le dossier "Caches" etait correctement copier dans le RamDisk. Normal, il manque un tiret devant rp dans le premier cas ![]() Code cp -rp /Users/kalm/Library/Caches /Volumes/RAMDisk/Caches
-------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
![]()
Message
#61
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Merci macmagna et yponomeute,
Oui je mettais bien "kalm"^^ je l'ai copié avec un tiret devant "rp" et le dossier"Caches" dans le RamDisk a bien était copié. Je vais maintenant lancer le scrip logout. |
|
|
![]()
Message
#62
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Pour le scrip log out
Code do shell script " rm ~/Library/Caches cp -rp /Volumes/RAMDisk/Caches ~/Library/Caches rm $TMPDIR cp -rp /Volumes/RAMDisk/Temp $TMPDIR " Il fonctionne pour le dossier "Cache" il écrase le lien et recopie correctement dans library mais en ce qui concerne le dossier"T" le lien est tjrs la est reste pointé vers le Ramdisk. |
|
|
![]()
Message
#63
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
On aurait pas oublié le "-" devant "$TMPDIR" ?
![]() Edit: Ben non, c'est pas ca ![]() Ce message a été modifié par Kalm - 6 May 2014, 14:03. |
|
|
Guest_macmagna_* |
![]()
Message
#64
|
Guests ![]() |
On aurait pas oublié le "-" devant "$TMPDIR" ? ![]() Edit: Ben non, c'est pas ca ![]() Tu dois tester "rm $TMPDIR" dans le Terminal pour voir ce qui se passe. Cela doit supprimer le lien symbolique et laisser la place libre pour la restauration depuis le RAMDisk. Attention, le Terminal est très puissant, ne joue pas avec les commandes si tu ne sais pas ce que tu fais, c'est comme ça qu'on efface "accidentellement" son HDD... ![]() La commande pour effacer ton disque principal est "rm -r /" (plus efficace avec "sudo" devant, là tout y passe...), tu vois on en est pas très loin... |
|
|
![]()
Message
#65
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Nope macmagna, meme la ca veut pas l'ecraser
rm $TMPDIR rm: /var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/: is a directory PS: Pas de soucis ,je peux tt casser je sort couvert ;-) EDIT" lorsque je le supprime a la mano, ca fonctionne ainsi que la restauration, c'est juste cette ligne de commande "rm $TMPDIR" qui veut pas effacer le lien "T" Ce message a été modifié par Kalm - 6 May 2014, 15:56. |
|
|
Guest_macmagna_* |
![]()
Message
#66
|
Guests ![]() |
Nope macmagna, meme la ca veut pas l'ecraser C'est bizarre, "rm $TMPDIR" devrait supprimer le lien mais s'il te renvoie "rm: /var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/: is a directory" c'est que le lien n'est pas en place et que tu as toujours le dossier original en "$TMPDIR". Bien sur, en faisant le ménage à la main, tu arrive au bon résultat mais c'est pas le but.rm $TMPDIR rm: /var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/: is a directory PS: Pas de soucis ,je peux tt casser je sort couvert ;-) EDIT" lorsque je le supprime a la mano, ca fonctionne ainsi que la restauration, c'est juste cette ligne de commande "rm $TMPDIR" qui veut pas effacer le lien "T" Après avoir lancé le script de login, tu dois t'assurer que le lien est bien en place. C'était le 2) à vérifier dans la discussion d'hier: 2) avec le Finder, va dans "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/" et "Lis les Informations" sur ton dossier "T", ce doit être un Alias et non un Dossier. Il est possible que ton dossier T, comme c'était le cas hier il me semble, contiennent des fichiers récalcitrants qui empêchent sa suppression par "rm -r $TMPDIR" dans le script de login. Si c'est la cas, le lien n'est pas créé et la suite ne peut se dérouler normalement. |
|
|
![]()
Message
#67
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Bien sur j'ai bien envie que ca supprime le lien avec logout, c'etait a titre d'info.
Oui l'alias est au bonne endroit et donné comme type "Alias" Alias /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn Pour le fichier récalcitrant "nib" je l'avais supprimé pour verifier et meme résultat ca ne veut pas effacer le lien ni via le terminal ni via le script. Fais suer ca bloque juste sur une commande ![]() EDIT: "rm -r $TMPDIR" n'est pas la meme commande du script ni celle que tu m'as fournis pr ecraser le lien via le terminal, Nous sommes d'accord, non? tu as rajouté "-r" a "$TMPDIR" Ce message a été modifié par Kalm - 6 May 2014, 16:52. |
|
|
Guest_macmagna_* |
![]()
Message
#68
|
Guests ![]() |
Bien sur j'ai bien envie que ca supprime le lien avec logout, c'etait a titre d'info. Pour tester rapidement si le lien est en place sur T, tu peux taper dans le Terminal "readlink $TMPDIR". Si le lien est bon, le Terminal te renverra le chemin complet vers le RAMDisk, sinon il ne reverra rien.
Oui l'alias est au bonne endroit et donné comme type "Alias" Alias /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn Pour le fichier récalcitrant "nib" je l'avais supprimé pour verifier et meme résultat ca ne veut pas effacer le lien ni via le terminal ni via le script. Fais suer ca bloque juste sur une commande ![]() |
|
|
![]()
Message
#69
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Bien sur j'ai bien envie que ca supprime le lien avec logout, c'etait a titre d'info. Pour tester rapidement si le lien est en place sur T, tu peux taper dans le Terminal "readlink $TMPDIR". Si le lien est bon, le Terminal te renverra le chemin complet vers le RAMDisk, sinon il ne reverra rien.Oui l'alias est au bonne endroit et donné comme type "Alias" Alias /private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn Pour le fichier récalcitrant "nib" je l'avais supprimé pour verifier et meme résultat ca ne veut pas effacer le lien ni via le terminal ni via le script. Fais suer ca bloque juste sur une commande ![]() yep, il voit rien, mais c'est a ni rien comprendre puisque je vois le flux streaming d'un fim bien redirigé vers le Ramdisk dans ""temp" readlink $TMPDIR MacBook-Pro-de-kalm:~ kalm$ |
|
|
Guest_macmagna_* |
![]()
Message
#70
|
Guests ![]() |
EDIT: Pour clarifier "rm" efface un fichier ou un lien, "rm -r" efface un dossier."rm -r $TMPDIR" n'est pas la meme commande du script ni celle que tu m'as fournis pr ecraser le lien via le terminal, Nous sommes d'accord, non? tu as rajouté "-r" a "$TMPDIR" Dans le script de login on a "rm -r $TMPDIR" pour effacer le dossier original et pouvoir créer ensuite un lien à sa place. Dans le script de logout on a "rm $TMPDIR" pour effacer le lien et pouvoir copier le dossier présent sur le RAMDisk à sa place. yep, il voit rien, Alors c'est qu'il y a toujours un dossier en $TMPDIR et ça explique pourquoi le script de logout ne marche pas. Il doit y avoir une confusion quelque part, avec toutes ces manips, difficile de ne pas s'embrouiller, ou bien il y a quelque chose de différent sur ton système, peut être liée à l'exportation de ton Home sur un autre disque...
mais c'est a ni rien comprendre puisque je vois le flux streaming d'un fim bien redirigé vers le Ramdisk dans ""temp" readlink $TMPDIR MacBook-Pro-de-kalm:~ kalm$ |
|
|
![]()
Message
#71
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Bon c'est vrai que c'est un peu une machine a gaz , mais ca marche plutôt très bien ^^
http://forum.macbidouille.com/index.php?sh...=380295&hl= Bon du coup, j'ai lancé "rm" puis glissé le lien "T" dans le terminal voila ce qui me donne comme chemin mais ne l'efface tjrs pas. rMacBook-Pro-de-Kalm:~ kalm$ rm /private/var/folders/cf/frl8mffs4qgcnntfrxkxkkc0000gn/T MacBook-Pro-de-Kalm:~ kalm$ |
|
|
![]()
Message
#72
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
J'ai fait plusieurs tests. Parfois ça marche, parfois pas
![]() Quand ça marche pas c'est la copie de T qui foire avec le message d'erreur : Code cp: /var/folders/st/4b5fl_890gs456jd9t71k8rr0000gn/T//ics1956: Operation not supported on socket
cp: /var/folders/st/4b5fl_890gs456jd9t71k8rr0000gn/T//icssuis501: Operation not supported on socket -------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
Guest_macmagna_* |
![]()
Message
#73
|
Guests ![]() |
La commande à l'air de fonctionner et comme il n'y a pas de "-r" dedans on peut supposer qu'il y avait donc un lien et non un dossier en $TMPDIR. C'est juste l'inverse de tout à l'heure...
Après cette commande, il n'y normalement plus rien à "/private/var/folders/cf/frl8mffs4qgcnntfrxkxkkc0000gn/T ", à vérifier (par un petit "ls $TMPDIR" par exemple). J'ai fait plusieurs tests. Parfois ça marche, parfois pas ![]() Quand ça marche pas c'est la copie de T qui foire avec le message d'erreur : Code cp: /var/folders/st/4b5fl_890gs456jd9t71k8rr0000gn/T//ics1956: Operation not supported on socket cp: /var/folders/st/4b5fl_890gs456jd9t71k8rr0000gn/T//icssuis501: Operation not supported on socket Oui certain éléments du répertoire temporaire sont problématiques pour la copie. La solution initiale de détruire le dossier est peut-être plus fiable. |
|
|
![]()
Message
#74
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
La commande à l'air de fonctionner et comme il n'y a pas de "-r" dedans on peut supposer qu'il y avait donc un lien et non un dossier en $TMPDIR. C'est juste l'inverse de tout à l'heure... Après cette commande, il n'y normalement plus rien à "/private/var/folders/cf/frl8mffs4qgcnntfrxkxkkc0000gn/T ", à vérifier (par un petit "ls $TMPDIR" par exemple). J'ai fait plusieurs tests. Parfois ça marche, parfois pas ![]() Quand ça marche pas c'est la copie de T qui foire avec le message d'erreur : Code cp: /var/folders/st/4b5fl_890gs456jd9t71k8rr0000gn/T//ics1956: Operation not supported on socket cp: /var/folders/st/4b5fl_890gs456jd9t71k8rr0000gn/T//icssuis501: Operation not supported on socket Oui certain éléments du répertoire temporaire sont problématiques pour la copie. La solution initiale de détruire le dossier est peut-être plus fiable. J'ai détruis le dossier "T" et en ai recréé un, kif le log ramdisk me donne a nouveau des dizaines de dossier "temp" impossible a copier ![]() Edit: Lionel, La prochaine fois evite le sujet RamDisk STP, je n'en peux plus ![]() Ce message a été modifié par Kalm - 6 May 2014, 19:05. |
|
|
![]()
Message
#75
|
|
Adepte de Macbidouille ![]() Groupe : Membres Messages : 125 Inscrit : 5 Oct 2004 Lieu : Perth Membre no 24 694 ![]() |
Damn, du coup, 8€ pour cette application ne me semble pas très chers, surtout pour quelqu'un comme moi qui n'aime pas trop déconner avec le terminal
![]() ![]() ![]() -------------------- Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la liste
|
|
|
Guest_macmagna_* |
![]()
Message
#76
|
Guests ![]() |
Damn, du coup, 8€ pour cette application ne me semble pas très chers, surtout pour quelqu'un comme moi qui n'aime pas trop déconner avec le terminal ![]() ![]() ![]() C'est pas faux, sauf que pour 8€ tu as probablement le même type de code dans un joli emballage et que donc tu reste potentiellement soumis aux mêmes problèmes. Pour info, j'utilise depuis longtemps un RAM disk basé sur les lignes de codes données sur ce forum et je n'ai aucun problème avec (et en plus, je suis plus riche de 8€ ![]() |
|
|
![]()
Message
#77
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
Edit: Lionel, La prochaine fois evite le sujet RamDisk STP, je n'en peux plus ![]() Parlons noatime alors ![]() -------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
![]()
Message
#78
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Damn, du coup, 8€ pour cette application ne me semble pas très chers, surtout pour quelqu'un comme moi qui n'aime pas trop déconner avec le terminal ![]() ![]() ![]() Certe, mais le soucis avec ce type d'application et qu'il n'est pas possible de mettre tout les fichiers temporaire comme on essaie de le faire ici. Est il au moins possible de mettre le caches User avec cette Application? Sans lignes de commande évidement. Ce message a été modifié par Kalm - 7 May 2014, 11:33. |
|
|
![]()
Message
#79
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 2 594 Inscrit : 28 Mar 2008 Membre no 111 113 ![]() |
Edit: Lionel, La prochaine fois evite le sujet RamDisk STP, je n'en peux plus ![]() Parlons noatime alors ![]() Oui, mais ça n'est supporté qu'à partir de Leopard... Sous Tiger, il faut un kernel bidouillé, je l'ai en version PPC, mais comme je ne l'ai pas encore testé, je ne peux pas en parler. -------------------- "Heartbreaker" G3 B&W 300 overclock 400 MHz, PowerBook G4 "Alu" 15" 1.25 GHz (avec SSD mSATA), G4 AGP 400 MHz, MDD bipro 867 MHz, MDD mono 1.25 GHz (deuxième alim. en panne), Quicksilver 800 MHz (avec alim. ATX), tous sous Tiger. iPod Touch "Original" 32 Go sous iOS 3.1.3.
Et un MHack : CM MSI 7046 Rev. 1, Intel P4 (32 bits, monocoeur, HT, SSE3, 3.4 GHz), CG GeForce 9500GS. Avec Chameleon et Snow Leopard. A part la veille et le haut-parleur interne, tout marche. |
|
|
![]()
Message
#80
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Edit: Lionel, La prochaine fois evite le sujet RamDisk STP, je n'en peux plus ![]() Parlons noatime alors ![]() Je l'ai activé par défaut, mais pas certains que le poids des écritures soit très significatif, par contre ce dossier "T" ca fait aucun doute, mais bon pas facile a mettre en place. Vu les GB qui passent par ce dossier ca semble étonnant qu'aucun Dev si soit penché. ![]() |
|
|
![]()
Message
#81
|
|
Adepte de Macbidouille ![]() Groupe : Membres Messages : 125 Inscrit : 5 Oct 2004 Lieu : Perth Membre no 24 694 ![]() |
Vu les GB qui passent par ce dossier ca semble étonnant qu'aucun Dev si soit penché. ![]() Prochainement en vente sur l'Appstore à 7,99€, engineered by "Kalm Corporation". -------------------- Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la liste
|
|
|
![]()
Message
#82
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Vu les GB qui passent par ce dossier ca semble étonnant qu'aucun Dev si soit penché. ![]() Prochainement en vente sur l'Appstore à 7,99€, engineered by "Kalm Corporation". Ben la comme argument marketing, tu pourrais vraiment annoncer que tu évites énormément d'écriture sur le SSD, enfin Usure pour EFFRAYER ![]() Ce message a été modifié par Kalm - 7 May 2014, 15:22. |
|
|
![]()
Message
#83
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Deux choses à vérifier: 1) dans le Terminal, "echo $TMPDIR" renvoie "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/T/". 2) avec le Finder, va dans "/private/var/folders/cf/frl8mffs4qgcnntfrxkxpkkc0000gn/" et "Lis les Informations" sur ton dossier "T", ce doit être un Alias et non un Dossier. Si ce n'est pas le cas, alors on a encore du boulot ![]() Petite précision : echo $TMPDIR renvoie /var/folders/cf/..../T/ et /var est un lien symbolique pour /private/var : Code lrwxr-xr-x@ 1 root wheel 11 5 oct 2013 /var -> private/var Ce qui ne doit pas poser de problème en principe pour le fonctionnement du script EDIT : Attention ! J'ai testé la suppression de $TMPDIR afin de le recréer sur un Ramdisk. J'ai été confronté au problème décrit sur cette page : http://kieranhealy.org/blog/archives/2014/...nservicesagent/ La création du répertoire com.apple.IconServices a réglé le problème. Suis confronté au meme problème, mais sa creation dans le lien "T" ne le résout pas, meme lorsque je le créais avant que cela arrive. Edit: :Egalement lorsqu'il est sauvegarder avant la destruction de "T" puis recopié lors de la creation du lien"T" Ca fonctionne chez toi yponomeute, aucun soucis de CPU de disparition d'icones ou autres? Ce message a été modifié par Kalm - 8 May 2014, 07:45. |
|
|
![]()
Message
#84
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Bon ca avance un peu
J'ai testé sur un clone Lion 10.7.5. Tout fonctionne correctement, pas de charge CPU ni d'icône ou de dossier invisible, le temp(Steaming) et le cache sont bien écrit sur le RamDisk . Il semble donc bien que ce soit le répertoire "com.apple.IconServices" sous Mavericks qui pose problème dans ce dossier "T". |
|
|
![]()
Message
#85
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
Je suis en train de tester une autre approche sous Mavericks : renommer le dossier T en T.old, (au lieu de le copier sur le ramdisk puis de le supprimer) puis faire un lien symbolique vers le dossier T sur le Ramdisk
-------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
![]()
Message
#86
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Je suis en train de tester une autre approche sous Mavericks : renommer le dossier T en T.old, (au lieu de le copier sur le ramdisk puis de le supprimer) puis faire un lien symbolique vers le dossier T sur le Ramdisk Et au reboot, tu penses pas qu'il va reconstruire le dossier "T" par défaut, puisque du coup absent pour le systeme ? Ce message a été modifié par Kalm - 8 May 2014, 10:32. |
|
|
![]()
Message
#87
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
J'ai pas encore fait de reboot ^^
Mais faudra adapter le script de logout pour remettre les choses dans l'ordre, c'est à dire renommer le lien symbolique en T.link et renommer T.old en T Code mv T T.link mv T.old T et au démarrage après création du Ramdisk : Code mkdir /Volumes/RAMDisk/T mv T T.old mv T.link T faut être dans le répertoire /private/var/folders/...../ pour lancer les commande mv Pour l'instant je fait tout dans le terminal, je vais tâcher d'écrire un script si c'est concluant EDIT : J'ai sandbox qui est pas content Code 08/05/2014 11:21:49,000 kernel[0]: Sandbox: fontworker(15215) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/ConsolaR.ttf_ATS_15215_1502172458
08/05/2014 11:21:49,000 kernel[0]: Sandbox: fontworker(15215) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/ConsolaR.ttf_ATS_15215_1502174351 08/05/2014 11:41:45,895 sandboxd[765]: ([15263]) fontworker(15263) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/Panic Sans.dfont_ATS_15263_-1596492252 08/05/2014 11:41:45,913 sandboxd[765]: ([15263]) fontworker(15263) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/Panic Sans.dfont_ATS_15263_-1596487917 08/05/2014 11:41:45,931 sandboxd[765]: ([15263]) fontworker(15263) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/migu-2m-regular.ttf_ATS_15263_-1596482990 08/05/2014 11:41:45,948 sandboxd[765]: ([15263]) fontworker(15263) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/migu-2m-bold.ttf_ATS_15263_-1596474300 Ce message a été modifié par yponomeute - 8 May 2014, 10:43. -------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
![]()
Message
#88
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
EDIT : J'ai sandbox qui est pas content Code 08/05/2014 11:21:49,000 kernel[0]: Sandbox: fontworker(15215) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/ConsolaR.ttf_ATS_15215_1502172458 08/05/2014 11:21:49,000 kernel[0]: Sandbox: fontworker(15215) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/ConsolaR.ttf_ATS_15215_1502174351 08/05/2014 11:41:45,895 sandboxd[765]: ([15263]) fontworker(15263) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/Panic Sans.dfont_ATS_15263_-1596492252 08/05/2014 11:41:45,913 sandboxd[765]: ([15263]) fontworker(15263) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/Panic Sans.dfont_ATS_15263_-1596487917 08/05/2014 11:41:45,931 sandboxd[765]: ([15263]) fontworker(15263) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/migu-2m-regular.ttf_ATS_15263_-1596482990 08/05/2014 11:41:45,948 sandboxd[765]: ([15263]) fontworker(15263) deny file-write-create /Volumes/RAMDisk/T/TemporaryItems/migu-2m-bold.ttf_ATS_15263_-1596474300 ![]() Je continu les tests sous 10.7.5, Faut impérativement détruire le lien "T" avant le logout. Sinon ca, tout semble baigner. ^^Et comme plus de MAJ systeme pour cet OS devrait pas en avoir a l 'avenir. Ce message a été modifié par Kalm - 8 May 2014, 12:01. |
|
|
![]()
Message
#89
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 969 Inscrit : 26 Jan 2011 Lieu : Pollachius virens Membre no 164 083 ![]() |
IconServices fait des siennes aussi
![]() Code 08/05/2014 13:16:27,000 kernel[0]: Sandbox: com.apple.IconSe(690) deny file-write-create /Volumes/RAMDisk/T/com.apple.IconServices/DB6F4BB497AA2F9C81EF1AA857B063E7.iscachebmp.tmp Quelqu'un sait décoder les règles sandbox qu'on trouve dans /System/Library/Sandbox/Profiles ? -------------------- MBP 2017 15" avec clavier pourri et touchbar inutile
|
|
|
Guest_macmagna_* |
![]()
Message
#90
|
Guests ![]() |
IconServices fait des siennes aussi ![]() Code 08/05/2014 13:16:27,000 kernel[0]: Sandbox: com.apple.IconSe(690) deny file-write-create /Volumes/RAMDisk/T/com.apple.IconServices/DB6F4BB497AA2F9C81EF1AA857B063E7.iscachebmp.tmp Quelqu'un sait décoder les règles sandbox qu'on trouve dans /System/Library/Sandbox/Profiles ? Ha ouais tiens manquait plus que la PowerBox (processus qui gère le sandboxing) dans cette histoire... ![]() ...mais ceci expliquerait bien cela puisque si les processus IconServices sont Sandboxés alors l'écriture dans des répertoires non autorisés va forcement échouer... Je ne connais pas la syntaxe de ce qui est utilisé dans les fichiers .sb du dossier "/System/Library/Sandbox/Profiles" mais d'après moi: Cette ligne de "com.apple.iconservicesd.sb": Code (allow file-write-unlink (regex "^/private/var/folders/[a-zA-Z]+/[_a-zA-Z0-9]+/[CT]/com.apple.IconServices/")) semble permettre l'écriture et la destruction de fichiers dans les sous-réperetoires "C/com.apple.IconServices/" et "T/com.apple.IconServices/" de $TMPDIR. Probablement qu'ajouter une ligne similaire à: Code (allow file-write-unlink (regex "^/Volumes/RAMDisk/T/com.apple.IconServices/") permettrait d'en faire de même dans le dossier "com.apple.IconServices" du RAMDisk. De même ces lignes de "com.apple.IconServicesAgent.sb": Code (define icon-service-temp-path (string-append "^/private" (regex-quote (param "TEMP_PATH")))) etCode (apply-write-and-issue-extension allow (regex icon-service-temp-path)) semble autoriser l'accès au dossier temporaire "T" et on pourrait imaginer ajouter: Code (apply-write-and-issue-extension allow (regex "^/Volumes/RAMDisk/T/")) pour permettre l'accès à notre dossier "T" du RAMDisk. Je tiens à préciser que pour ce que j'en sais, les applications Sandboxés sont signées et que par conséquent modifier une ressource dépendante de celles-ci pourrait empêcher le lancement de l'application en question. Qui à envie de jouer à modifier les profils systèmes Sandbox? Kalm? ![]() Ce message a été modifié par macmagna - 8 May 2014, 17:02. |
|
|
![]()
Message
#91
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
|
|
|
Guest_macmagna_* |
![]()
Message
#92
|
Guests ![]() |
Si tu veux essayer il faut:
1) Copier sur le Bureau et modifier les fichiers "/System/Library/Sandbox/Profiles/com.apple.iconservicesd.sb » et «/System/Library/Sandbox/Profiles/com.apple.IconServicesAgent.sb » « à la main » 2) renommer les fichiers originaux 3) Copier les fichiers modifiés à la place des originaux 4) Restaurer dessus les bons user:group et permissions dans le Terminal: Code sudo chown root:wheel /System/Library/Sandbox/Profiles/com.apple.iconservicesd.sb sudo chmod 644 /System/Library/Sandbox/Profiles/com.apple.iconservicesd.sb sudo chown root:wheel /System/Library/Sandbox/Profiles/com.apple.IconServicesAgent.sb sudo chmod 644 /System/Library/Sandbox/Profiles/com.apple.IconServicesAgent.sb 5) puis re-démarrer C’est plutôt délicat et il n’y aucune garantie de succès... Ne pas oublier bien sûr, un bon backup des fichiers originaux avant tout traffic. Si ça marche, tu viens de trouver une belle faille de sécurité (modifier la portée d’une application Sandboxée en modifiant un fichier système). Si quelqu'un à des idées ou des remarques sur tout ce bazar, je suis preneur. |
|
|
![]()
Message
#93
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Yep macmagna, mais je les renomme par quelle noms?
|
|
|
Guest_macmagna_* |
![]()
Message
#94
|
Guests ![]() |
Yep macmagna, mais je les renomme par quelle noms? Tu renomme les fichiers originaux avec un autre nom (n'importe lequel qui ne correspond pas à l'identifiant interne d'une application présente, tu peux par exemple juste ajouter .backup à la fin) pour pouvoir mettre à leur place les fichiers modifiés. |
|
|
![]()
Message
#95
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
Yep macmagna, mais je les renomme par quelle noms? Tu renomme les fichiers originaux avec un autre nom (n'importe lequel qui ne correspond pas à l'identifiant interne d'une application présente, tu peux par exemple juste ajouter .backup à la fin) pour pouvoir mettre à leur place les fichiers modifiés. Lorsque tu veux dire "2) renommer les fichiers originaux » Tu veux bien dire ceux que j ai copié sur le bureau? ensuite je les recopies a l emplacement des originaux Mais ça ne va pas remplacer les originaux non modifié puisque pas le meme noms, donc j' en fais quoi , je les supprime. ? EDIT Ah, d'accord tu veux dire que les dossiers sur le bureau sont simplement des backup en cas de problème.;-) Ce message a été modifié par Kalm - 8 May 2014, 18:51. |
|
|
Guest_macmagna_* |
![]()
Message
#96
|
Guests ![]() |
Yep macmagna, mais je les renomme par quelle noms? Tu renomme les fichiers originaux avec un autre nom (n'importe lequel qui ne correspond pas à l'identifiant interne d'une application présente, tu peux par exemple juste ajouter .backup à la fin) pour pouvoir mettre à leur place les fichiers modifiés. Lorsque tu veux dire "2) renommer les fichiers originaux » Tu veux bien dire ceux que j ai copié sur le bureau? ensuite je les recopies a l emplacement des originaux Mais ça ne va pas remplacer les originaux non modifié puisque pas le meme noms, donc j' en fais quoi , je les supprime ? Non, je veux dire que tu dois modifier le nom des fichiers originaux dans /System/Library/Sandbox/Profiles/ pour éviter de les écraser quand tu remet en place les fichiers modifiés (ceux qui sont sur le Bureau). Plus simplement pour faire un backup des fichiers originaux: Code sudo cp -f /System/Library/Sandbox/Profiles/com.apple.iconservicesd.sb /System/Library/Sandbox/Profiles/com.apple.iconservicesd.sb.backup sudo cp -f /System/Library/Sandbox/Profiles/com.apple.IconServicesAgent.sb /System/Library/Sandbox/Profiles/com.apple.IconServicesAgent.sb.backup et pour restaurer les fichiers originaux en cas de problème: Code sudo cp -f /System/Library/Sandbox/Profiles/com.apple.iconservicesd.sb.backup /System/Library/Sandbox/Profiles/com.apple.iconservicesd.sb sudo cp -f /System/Library/Sandbox/Profiles/com.apple.IconServicesAgent.sb.backup /System/Library/Sandbox/Profiles/com.apple.IconServicesAgent.sb Attention à pas t'emmêler les pinceaux! Je te conseille aussi de copier les fichiers originaux à un autre endroit sûr, n'oublies pas que c'est des fichiers systèmes qu'on est pas censé toucher alors c'est pas le moment d'en perdre un (ou deux)... Citation EDIT Ah, d'accord tu veux dire que les dossiers sur le bureau sont simplement des backup en cas de problème.;-) Non, les fichiers sur le bureau sont des copies que tu vas modifier puis recopier à la place des originaux. Pour ne pas perdre les originaux, tu dois en faire un backup avant, grâce aux commandes plus haut (les deux premières lignes). Ce message a été modifié par macmagna - 8 May 2014, 18:58. |
|
|
![]()
Message
#97
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
La je patauge, c'est plus clair.
et si je renomme les originaux av « m » a la fin , les lignes de commande pour les permissions user ne le trouve plus du coup. Je dois pas rajouter le « m » au commande également, non? |
|
|
Guest_macmagna_* |
![]()
Message
#98
|
Guests ![]() |
La je patauge, c'est plus clair. et si je renomme les originaux av « m » a la fin , les lignes de commande pour les permissions user ne le trouve plus du coup. Je dois pas rajouter le « m » au commande également, non? Tu ne dois renommer les fichiers originaux qu'une fois que les versions modifiées (= les copies sur ton Bureau) sont prêtes pour les remplacer. Je t'ai envoyé la manip mieux détaillée par mail. Rend aux originaux leur nom d'origine (enlève les .m) et lis mon mail jusqu'à bien comprendre de quoi il est question. |
|
|
![]()
Message
#99
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 5 195 Inscrit : 24 Aug 2010 Lieu : Saigon Membre no 158 214 ![]() |
La je patauge, c'est plus clair. et si je renomme les originaux av « m » a la fin , les lignes de commande pour les permissions user ne le trouve plus du coup. Je dois pas rajouter le « m » au commande également, non? Tu ne dois renommer les fichiers originaux qu'une fois que les versions modifiées (= les copies sur ton Bureau) sont prêtes pour les remplacer. Je t'ai envoyé la manip mieux détaillée par mail. Rend aux originaux leur nom d'origine (enlève les .m) et lis mon mail jusqu'à bien comprendre de quoi il est question. ![]() |
|
|
![]()
Message
#100
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 2 415 Inscrit : 31 Aug 2006 Membre no 67 018 ![]() |
Cela fait tellement plaisir de vous retrouver pour quelque chose de vraiment utile à bidouiller
![]() Je vous encourage ![]() |
|
|
![]() ![]() |
Nous sommes le : 4th September 2025 - 16:26 |