Мой сайт
Главная | Каталог статей | Регистрация | Вход
Вторник
23.04.2024
14:45
Приветствую Вас Гость | RSS
Главная » Статьи » Linux и Unix

Linux: примеры поиска файлов часть 4

Поиск файлов на основании их прав доступа (permissions)

Для начала немного о правах доступа к файлам. Правда доступа в Linux играют куда более существенную роль, нежели чем в Windows. Именно правами дается возможность на запуск файла. Так если в Windows файлы которые запускаются имеют расширение .exe.bat и т.д., то в Linux исполняемые файлы вообще могут быть без расширений или иметь совсем уж нестандартное расширение. А вот можно ли его будет запустить или нет — за это отвечают как раз атрибуты файла. 
Войдем в какую-нибудь директорию и там в консоли дадим команду ls -l или зададим ей в качестве дополнительного параметра имя конкретного файла, например файла, задающего саму команду ls. (Обратите, кстати, внимание на эту возможность команды ls -l — получить информацию о конкретном файле, а не о всех файлах каталога сразу).

$ ls –l  (сейчас мы делаем личтинг текущей директории)
drwxr-xr-x 2 root root 4096 Sep 12 14:58 testdir
-rwxr-x--x 1 root root 0 Sep 11 22:25 testfile
$ ls -l /bin/ls  (сейчас командой листинга мы получаем информацию о конкретном файле)
-rwxr-xr-x 1 root root 49940 Sep 12 1999 /bin/ls

Из этого вывода команды ls нас интересуют первые 10 символов. Первый символ определяет тип файла, остальные — задают правда доступа. В нашем выводе d определяет признак директории tesdir и - признак файла testfile и признак файла, задающего саму команду ls. Все возможные признаки первого символа:

  • - — обычный файл;
  • d —каталог;
  • b — файл блочного устройства;
  • c — файл символьного устройства;
  • s — доменное гнездо (socket);
  • p — именованный канал (pipe);
  • l — символическая ссылка (link).

Следующие девять символов отображают правда на доступ к файлу для пользователя, группы или тех кто не входит в группу пользователя и не является этим пользователем (назовем таких — другие). Возможные правда доступа: Read (r)— чтение, Write (w)— запись, eXecute (x)— исполнение. Если вместо этих букв стоит прочерк, то соответствующее право отсутствует. Данные права выставляются на три вышеперечисленные видов пользователей и видов групп пользователей.

Посредством выставления правильных прав на файл, директорию или их группы, пользователь может гибко контролировать доступ к созданным им файлам.

Для нашего тестового файла мы имеет следующие флаги: - rwx r-x --x . Это значит, что это обычный файл, который может читаться, модифицироваться и исполняться пользователем, может читаться и исполняться его группой, но не может модифицироваться, и все другие пользователи могут его только выполнять. Для выставления прав на файлы и/или директории, используется консольная команда chmod. Параметры в данную команду могут передаваться двумя различными способами —  числовой и буквенная.

Буквенный вариант:

[user]$ chmod [u|g|o|a][+|-|=][r|w|x} имя_файла

Первый атрибут — указание пользователей:

  • u (т. е. пользователь, который является владельцем);
  • g (группа);
  • o (все пользователи, не входящие в группу, которой принадлежит данный файл);
  • a (все пользователи системы, т. е. и владелец, и группа, и все остальные).

Второй атрибут — действия над правами:

  • + (предоставляем право);
  • – (лишаем соответствующего права);
  • = (установить указанные права вместо имеющихся),

Третий атрибут — уточнение какие права изменяются:

  • r (чтение);
  • w (запись);
  • x (выполнение).

Добавление права чтения для группы foo:

# chmod g+r foo 

Всем пользователям системы даётся право на выполнение файла testfile:

# chmod a+x testfile

Удалить право на чтение и запись файла testfile для всех пользователей, кроме владельца:

# chmod go-rw testfile

Дать всем право на чтение, запись и выполнение файла testfile:

# chmod ugo+rwx testfile или chmod a+rwx testfile


Источник: http://bestann.com.ru/comments/linux_find/
Категория: Linux и Unix | Добавил: SAM (20.07.2010)
Просмотров: 1476 | Комментарии: 5 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Категории раздела
Мои статьи [0]
Linux и Unix [47]
Все про Linux и Unix
Windows [2]
Все про Windows
Администрирование [5]
Все для Системного администратора
Cisco [2]
Мой опыт работы с кисками
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Copyright MyCorp © 2024
    Бесплатный конструктор сайтов - uCoz