2016-06-27 4 views
0

У меня есть следующие каталоги на HDFS (которые слабо соответствует модели POSIX):Изменение разрешений для других ТОЛЬКО

[[email protected] ~]$ hdfs dfs -ls/
Found 11 items 
drwxrwxrwx - yarn hadoop   0 2016-03-14 14:19 /app-logs 
drwxr-xr-x - hdfs hdfs   0 2016-06-27 09:40 /apps 
drwxr-xr-x - yarn hadoop   0 2016-03-14 14:19 /ats 
drwxr-xr-x - hdfs hdfs   0 2016-03-14 14:50 /demo 
drwxr-xr-x - hdfs hdfs   0 2016-03-14 14:19 /hdp 
drwxr-xr-x - mapred hdfs   0 2016-03-14 14:19 /mapred 
drwxrwxrwx - mapred hadoop   0 2016-03-14 14:19 /mr-history 
drwxr-xr-x - hdfs hdfs   0 2016-03-14 14:42 /ranger 
drwxrwxrwx - spark hadoop   0 2016-06-27 10:02 /spark-history 
drwxrwxrwx - hdfs hdfs   0 2016-06-27 09:38 /tmp 
drwxr-xr-x - hdfs hdfs   0 2016-06-27 09:38 /user 

Как очевидно, что «другие» могут свободно работать на этих каталогах.

Я хочу, чтобы держать владельца и группы прав доступа без изменений/как есть, но изменить «другие» пользовательской форме, например

drwxr-xr-x - hdfs hdfs   0 2016-06-27 09:40 /apps 

to 

drwxr-x--- - hdfs hdfs   0 2016-06-27 09:40 /apps 

drwxr-xr-x - hdfs hdfs   0 2016-03-14 14:19 /hdp 

to 

drwxr-xr-- - hdfs hdfs   0 2016-03-14 14:19 /hdp 

В крайнем случае, я, возможно, потребуется предоставить только для чтения или нет доступа в все от других пользователей, например:

drwxrwxr-- - yarn hadoop   0 2016-03-14 14:19 /app-logs 
drwxr-xr-- - hdfs hdfs   0 2016-06-27 09:40 /apps 
drwxr-xr-- - yarn hadoop   0 2016-03-14 14:19 /ats 
drwxr-xr-- - hdfs hdfs   0 2016-03-14 14:50 /demo 
drwxr-xr-- - hdfs hdfs   0 2016-03-14 14:19 /hdp 
drwxr-xr-- - mapred hdfs   0 2016-03-14 14:19 /mapred 
drwxrwxr-- - mapred hadoop   0 2016-03-14 14:19 /mr-history 
drwxr-xr-- - hdfs hdfs   0 2016-03-14 14:42 /ranger 
drwxrwxr-- - spark hadoop   0 2016-06-27 10:02 /spark-history 
drwxrwxr-- - hdfs hdfs   0 2016-06-27 09:38 /tmp 
drwxr-xr-- - hdfs hdfs   0 2016-06-27 09:38 /user 

Как я могу рекурсивно сделать это без указания битов для владельца и группы?

ответ

1

Взято отсюда: https://www.washington.edu/computing/unix/permissions.html

Чтобы изменить режим файла, используйте команду CHMOD. Общая форма

chmod [email protected] file1 file2 ... 

, где: Х представляет собой любое сочетание букв «и» (для владельца), «г» (для группы), «о» (для других), «а» (для все, то есть для «уго»); @ является либо '+' для добавления разрешений, '-' для удаления разрешений, или '=' в назначить разрешения абсолютно; и Y - любая комбинация 'r', 'w', 'x'. Ниже приведены некоторые примеры:

chmod u=rx file  (Give the owner rx permissions, not w) 
chmod go-rwx file  (Deny rwx permission for group, others) 
chmod g+w file   (Give write permission to the group) 
chmod a+x file1 file2 (Give execute permission to everybody) 
chmod g+rx,o+x file (OK to combine like this with a comma) 

так, согласно этому, ответ будет:

chmod -R o-wx path 
+1

@fedorqui спасибо за редактирование не – num8er

+1

Нет проблем:) я чувствовал, что это было необходимо, чтобы улучшить читаемость – fedorqui

Смежные вопросы