chmod limite !

chmod limite ! - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 27-06-2003 à 10:39:43    

Hi !
Voulant changer les droits de tous les fichiers d un repertoire g fait tout bonnement chmod 644 * . Jusque la normal.  
Resultat :
 
/bin/chmod : Argument list too long  :non:  
 
Pas tres  gentil de sa part
 
Je voudrais donc savoir a combien est limite ce petit chmod ?

Reply

Marsh Posté le 27-06-2003 à 10:39:43   

Reply

Marsh Posté le 27-06-2003 à 11:03:09    

C'est une limitation de l'environnement pas de chmod.
 

Citation :

I tried to move about 5000 files with mv, but it said:
 
  bash: /bin/mv: Argument list too long
 
The UNIX operating system tradionally has a fixed limit for the amount
of memory that can be used for a program environment and argument list
combined.  You can use getconf to return that limit.  On my Linux system
(2.2.12) that amount is 128k.  On my HP-UX system (11.0) that amount is
2M.  It can vary per operating system.  POSIX only requires 20k which
was the traditional value used for probably 20 years.  Newer operating
systems releases usually increase that somewhat.
 
  getconf ARG_MAX
  131072
 
Note that your message came from "bash" your shell command line
interpreter.  Its job is to expand command line wildcard characters
that match filenames.  It expands them before any program can see
them.  This is therefore common to all programs on most UNIX-like
operating systems.  It cannot exceed the OS limit of ARG_MAX and if it
tries to do so the error "Argument list too long" is returned to the
shell and the shell returns it to your.
 
This is not a bug in 'mv' or other utilitities nor is it a bug in 'bash'
or any other shell.  It is an architecture limitation of UNIX-like
operating systems.  However, it is one that is easily worked around
using the supplied utilities.  Please review the documentation on 'find'
and 'xargs' for one possible combination of programs that work well.
 
You might think about increasing the value of ARG_MAX but I advise
against it.  Any limit, even if large, is still a limit.  As long as it
exists then it should be worked around for robust script operation.  On
the command line most of us ignore it unless we exceed it at which time
we fall back to more robust methods.
 
Here is an example using chmod where exceeding ARG_MAX argument length
is avoided.
 
  find htdocs -name '*.html' -print0 | xargs -0 chmod a+r


 
http://mail.gnu.org/archive/html/b [...] 00048.html
 
Google est notre ami.
 
CHaiCA

Reply

Marsh Posté le 27-06-2003 à 11:07:34    

chmod -R 644 mon rep


---------------
:: Light is Right ::
Reply

Marsh Posté le 27-06-2003 à 11:09:25    

tomate77 a écrit :

chmod -R 644 mon rep


 
En faisant ca tu attribut 644 d abord a ton rep et apres ben t es dans la merde pour changer les droits des fichiers a l interieur du dossier  :non:

Reply

Marsh Posté le 27-06-2003 à 11:12:01    

O'gure a écrit :


 
En faisant ca tu attribut 644 d abord a ton rep et apres ben t es dans la merde pour changer les droits des fichiers a l interieur du dossier  :non:  


 

root@tomate:/mnt# l
total 28
drwxrwxrwx    2 root     root         4096 Jun 26 23:21 incoming
drwxrwxrwx    2 root     root        16384 Jun 19 17:27 lost+found
drwxr-xr-x    2 root     root         4096 Jun 24 14:52 mnt
drwxrwxrwx    2 root     root         4096 Jun 26 12:28 temp
root@tomate:/mnt# l temp/
total 713264
-rwxrwxrwx    1 tomate   tomate    1067155 Jun 24 20:28 0AB9E21C75387D7BD2897418556B00C6
-rwxrwxrwx    1 tomate   tomate          0 Jun 24 18:47 DBFCA8AD4BE442D86C5BABC959F4B412
-rwxrwxrwx    1 tomate   tomate          0 Jun 23 23:19 ECE57BBB827A789F5E3048BA15400825
-rwxrwxrwx    1 tomate   tomate   728590336 Jun 27 11:11 F761EDEC74DBF1E176700FFABF0609B7
root@tomate:/mnt# chmod -R 644 temp/
root@tomate:/mnt# l temp/
total 713264
-rw-r--r--    1 tomate   tomate    1067155 Jun 24 20:28 0AB9E21C75387D7BD2897418556B00C6
-rw-r--r--    1 tomate   tomate          0 Jun 24 18:47 DBFCA8AD4BE442D86C5BABC959F4B412
-rw-r--r--    1 tomate   tomate          0 Jun 23 23:19 ECE57BBB827A789F5E3048BA15400825
-rw-r--r--    1 tomate   tomate   728590336 Jun 27 11:12 F761EDEC74DBF1E176700FFABF0609B7
root@tomate:/mnt#

 
 
 :p


---------------
:: Light is Right ::
Reply

Marsh Posté le 27-06-2003 à 11:12:44    

comme toujours dans ces cas, find est ton ami :

Citation :


pour les fichiers :  
find . -type f -exec chmod  644 {} \;  
 
pour les reps :  
find . -type d -exec chmod  755 {} \;
 


http://forum.hardware.fr/forum2.ph [...] 086&cat=11


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 27-06-2003 à 11:14:16    

C'était un peu marqué en dernière ligne de ma citation (première réponse au topic) mais bon...
 
CHaiCA


Message édité par chaica le 27-06-2003 à 11:14:53
Reply

Marsh Posté le 27-06-2003 à 11:15:40    

chaica a écrit :

C'était un peu marqué en dernière ligne de ma citation (première réponse au topic) mais bon...
 
CHaiCA


 :jap:  
ça m'apprendra à pas tout lire  :jap:


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 27-06-2003 à 11:19:41    

[root@dhcp9 ietf]# ll
total 320
drw-rw-rw-    2 augure   augure     229376 jun 27 10:40 dl/
drwxrwxrwx    2 augure   augure       4096 jun 26 22:39 drafts/
drwxr-xr-x    2 augure   augure      86016 jun 26 22:42 rfc/
[root@dhcp9 ietf]# chmod -R 644 drafts/
[root@dhcp9 ietf]# ll
total 320
drw-rw-rw-    2 augure   augure     229376 jun 27 10:40 dl/
drw-r--r--    2 augure   augure       4096 jun 26 22:39 drafts/   <----------
drwxr-xr-x    2 augure   augure      86016 jun 26 22:42 rfc/
[root@dhcp9 ietf]# ll drafts/
total 540
-rw-r--r--    1 augure   augure      48579 jun 19 17:51 draft-beaulieu-ike-xauth-02.txt
-rw-r--r--    1 augure   augure      25659 jun 19 17:52 draft-dukes-ikev2-config-payload-00.txt
-rw-r--r--    1 augure   augure      27844 mar 12 12:08 draft-ietf-ipsec-dpd-02.txt
-rw-r--r--    1 augure   augure     240174 jun 19 17:47 draft-ietf-ipsec-ikev2-08.txt
-rw-r--r--    1 augure   augure      16127 mar 12 12:08 draft-ietf-ipsec-ikev2-ecnfix-01.txt
-rw-r--r--    1 augure   augure      38467 mar 12 12:08 draft-ietf-ipsec-ikev2-tutorial-01.txt
 
 
 
 
Ok mais la t es ROOT, moi z aime pas, et puis ton repertoire il est en 644 apres...
 
 
 
 

Reply

Marsh Posté le 27-06-2003 à 11:20:44    

O'gure a écrit :

[root@dhcp9 ietf]# ll
total 320
drw-rw-rw-    2 augure   augure     229376 jun 27 10:40 dl/
drwxrwxrwx    2 augure   augure       4096 jun 26 22:39 drafts/
drwxr-xr-x    2 augure   augure      86016 jun 26 22:42 rfc/
[root@dhcp9 ietf]# chmod -R 644 drafts/
[root@dhcp9 ietf]# ll
total 320
drw-rw-rw-    2 augure   augure     229376 jun 27 10:40 dl/
drw-r--r--    2 augure   augure       4096 jun 26 22:39 drafts/   <----------
drwxr-xr-x    2 augure   augure      86016 jun 26 22:42 rfc/
[root@dhcp9 ietf]# ll drafts/
total 540
-rw-r--r--    1 augure   augure      48579 jun 19 17:51 draft-beaulieu-ike-xauth-02.txt
-rw-r--r--    1 augure   augure      25659 jun 19 17:52 draft-dukes-ikev2-config-payload-00.txt
-rw-r--r--    1 augure   augure      27844 mar 12 12:08 draft-ietf-ipsec-dpd-02.txt
-rw-r--r--    1 augure   augure     240174 jun 19 17:47 draft-ietf-ipsec-ikev2-08.txt
-rw-r--r--    1 augure   augure      16127 mar 12 12:08 draft-ietf-ipsec-ikev2-ecnfix-01.txt
-rw-r--r--    1 augure   augure      38467 mar 12 12:08 draft-ietf-ipsec-ikev2-tutorial-01.txt
 
 
 
 
Ok mais la t es ROOT, moi z aime pas, et puis ton repertoire il est en 644 apres...
 
 
 
 

:heink:  
 
1. root ou un autre, c est pareil ...
2. 644 ct un exemple
3. :D


---------------
:: Light is Right ::
Reply

Marsh Posté le 27-06-2003 à 11:20:44   

Reply

Marsh Posté le 27-06-2003 à 11:27:40    

1. root ou un autre, c est pareil ...
Ah non, imagine que je ne peut pas etre root
:sweat:  
2. 644 ct un exemple
Ah non, le droit en execution sur un repertoire est important
 
[augure@dhcp9 ietf] $ ll
total 320K
drw-rw-rw-    2 augure   augure       224K jun 27 10:40 dl/
drwxrwxrwx    2 augure   augure       4,0K jun 26 22:39 drafts/
drwxr-xr-x    2 augure   augure        84K jun 26 22:42 rfc/
[augure@dhcp9 ietf] $ chmod -R 644 drafts/
chmod: échec d'obtention des attributs de `drafts//draft-beaulieu-ike-xauth-02.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-dukes-ikev2-config-payload-00.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-ikev2-08.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-mcdonald-ipv6-sec-api-00.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-dpd-02.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-ikev2-ecnfix-01.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-ikev2-tutorial-01.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-nat-t-ike-05.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-rfc2402bis-02.txt': Permission denied
  :sweat:  
 
Mais bon... G finis par y arriver...

Reply

Marsh Posté le 27-06-2003 à 11:30:58    

O'gure a écrit :

1. root ou un autre, c est pareil ...
Ah non, imagine que je ne peut pas etre root
:sweat:  
2. 644 ct un exemple
Ah non, le droit en execution sur un repertoire est important
 
[augure@dhcp9 ietf] $ ll
total 320K
drw-rw-rw-    2 augure   augure       224K jun 27 10:40 dl/
drwxrwxrwx    2 augure   augure       4,0K jun 26 22:39 drafts/
drwxr-xr-x    2 augure   augure        84K jun 26 22:42 rfc/
[augure@dhcp9 ietf] $ chmod -R 644 drafts/
chmod: échec d'obtention des attributs de `drafts//draft-beaulieu-ike-xauth-02.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-dukes-ikev2-config-payload-00.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-ikev2-08.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-mcdonald-ipv6-sec-api-00.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-dpd-02.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-ikev2-ecnfix-01.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-ikev2-tutorial-01.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-nat-t-ike-05.txt': Permission denied
chmod: échec d'obtention des attributs de `drafts//draft-ietf-ipsec-rfc2402bis-02.txt': Permission denied
  :sweat:  
 
Mais bon... G finis par y arriver...


1. root : c parce que le rep etait a root
2. 644 : ca marche aussi :p


---------------
:: Light is Right ::
Reply

Marsh Posté le 27-06-2003 à 11:31:03    

O'gure : et tu as fait comment finalement?
 
CHaiCA

Reply

Marsh Posté le 27-06-2003 à 11:37:13    

Par petit bout   :lol:  
il ne s appelait pas tous pareils
 
ps: le rep il etait pas a root... lui il fait ce qu il veut avec ce quil veut meme si c pas a lui.

Reply

Marsh Posté le 27-06-2003 à 11:38:29    

O'gure a écrit :

Par petit bout   :lol:  
il ne s appelait pas tous pareils
 
ps: le rep il etait pas a root... lui il fait ce qu il veut avec ce quil veut meme si c pas a lui.


oui et alors ??
 
si le rep appartient a ton user tu en fais ce ke tu veux ;)


---------------
:: Light is Right ::
Reply

Marsh Posté le 27-06-2003 à 11:50:51    

Oui. Mais si tu dis a ton rep que tu n a pas droit de le traverser
chmod 6xx par exemple (tu t enleve le droit d execution a ton rep) et bein tu n a plus le droit de le traverser.
 Tu l a demander, tu l a voulut.
 
Essaye. (sans etre root)
 
chmod 600 rep
cd rep
!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed