Каталоги и Файловые системы
Каталоги и Файловые системы- 5.10
- 6.06 LTS
- Community Docs
Каталоги и Файловые системы
Пред.
След.
Основы Linux
В Linux и Unix все — файл. Директории, устройства, сами файлы — все это ФАЙЛЫ. Устройства определяются узлами (Minor node и Major node), но при этом они остаются файлами.
Файловые системы Linux и Unix организованы в виде древовидной иерархической структуры. Самый верхний уровень файловой системы это /
или корневой каталог. Все остальные файлы и каталоги находятся в корневом каталоге. Например, /home/jebediah/cheeses.odt
показывает правильный полный путь к файлу cheeses.odt
, который находится в каталоге jebediah
, который находится в каталоге home
, который, в свою очередь, находится в корневом каталоге.
В корневом каталоге находится набор важных каталогов, общих для большинства систем Linux. Вот список основных каталогов, которые находятся непосредственно в корневом (/
) каталоге:
/bin
— важные бинарные (исполняемые) приложения/boot
— загрузочные конфигурационные файлы, ядра и другие файлы, необходимые во время загрузки операционной системы/dev
— файлы устройств/etc
— конфигурационные файлы, стартовые сценарии/home
— домашние каталоги пользователей/initrd
— используется при создании частного initrd процесса загрузки/lib
— системные библиотеки/lost+found
— предоставляет систему потерян+найден для файлов в корневом (/
) каталогеfilename>/media
/mnt
— файловые системы на вашем жестком диске, примонтированные вручную/opt
— каталог для установки дополнительных приложений/proc
— специальный динамический каталог, содержащий информацию о состоянии системы, включая процессы, исполняемые в данный момент/root
— домашний каталог пользователя root, произносится «слэш-рут»/sbin
— важные системные бинарные приложения/srv
— может содержать файлы веб-сервера, ftp-сервера и др./sys
— системные файлы/tmp
— временные файлы/usr
— приложения и файлы, наиболее доступные всем пользователям/var
— изменяемые файлы, такие как логи и базы данных
Пред.
След.
Начало
Основы Linux
Права
Как начать пользоваться командной строкой (linux/win/mac) · GitHub
Этот урок переехал в мой гитхаб: https://github.com/codedokode/pasta/blob/master/soft/cli.md
Ниже — старая, неактуальная версия.
Я не знаю, ты пользуешься Линуксом или Уиндоузом (обычно туториалы рассчитаны на линуксоидов и макосников, уиндоуз не модный среди молодежи). В макоси все практически так же как и в линуксе, в windows пошли своим путем и сделали все как в DOS.
Думаю, что в данном случае тебе поможет не рыба, а удочка, так что держи пасту. Если после прочтения у тебя будут какие-то вопросы, или по-прежнему непонятно, почему команды не работают, пиши в наш уютный тред, разберемся.
Краткий мануал чайника по командной строке:
Как попасть в командную строку?
- Windows XP: Пуск — Выполнить — набрать cmd — нажать [enter]
- Windows7: Пуск — набрать cmd — наждать [enter]
- MacOS: Запустить приложение Терминал (его можно найти поиском в той фигне которая справа вверху экрана)
- Ubuntu: Запустить приложение Терминал или нажать Alt + Ctrl + F1 (ааа как вернуться назад? Ctrl + F7)
- Linux: если ты линуксоид, ты и так знаешь
Во всех операционных системах
↑,↓ — стрелки вверх и вниз в командной строке позволяют смотреть предыдущие введенные команды, чтобы 2 раза не набирать. В Windows при закрытии окошка консоли вся история теряется, в других ОС — сохраняется.
[tab] — автодополняет имена файлов и команды. Если в текущем каталоге есть файл file.txt, ты наберешь fi и нажмешь [tab] то он автодополнит имя файла (или предложит варианты, если таких файлов несколько).
[ctrl+c] — прерывает выполнение команды, например, если она долго тупит
Важно: клавиша Esc не работает в командной строке. Клавиши Ctrl + C, V, X не работают как «копировать/вырезать/вставить» (иногда для вставки можно использовать Shift + Ins). Клавиша Ctrl + Q не работает как «выход».
Линукс и мак
В линуксе и маке, [ctrl+l] очищает экран, [ctrl+k] и [ctrl+u] удаляют все перед или после курсора, [ctrl+w] удаляет слово перед курсором, [ctrl+r] делает поиск по истории команд (для отмены поиска нажми [ctrl+c], escape в командной строке не работает, для завершения поиска нажми стрелку вправо/влево), [ctrl+d] завершает работу и закрывает консоль.
Еще в линуксе и маке иногда не работают Home и End, используй [ctrl+a] чтобы перейти в начала строки и [ctrl+e], чтобы в конец.
Буфер обмена
В командной строке не работает ctrl+v,c,x для вставки, копирования и вырезания текста. Иногда (зависит от настроек системы) вставить текст можно через [shift+ins], иногда правой кнопкой мыши. Скопировать текст можно, выделив мышью (в Windows надо разрешить выделение текста сначала в настройках окна и нажать Enter после выделения).
Текущий каталог
В командной строке результат выполнения команд зависит от того, в каком каталоге и на каком диске ты находишься. Какой каталог текущий, в Windows написано в подсказке, а в linux можно узнать командой
(print working directory)
Чтобы перейти в другой каталог, в линуксе используют команду cd
:
cd / — перейти в корневой каталог (в линукс нет букв дисков, и корневой каталог один на всю систему) cd /etc/apache — перейти в каталог /etc/apache cd files — переходит в каталог files внутри текущего cd . . — переходит в родительский кталог cd ../.. — переходит на 2 уровня выше cd ~ — перейти в свой домашний каталог (/home/anon например) cd ~/test — перейти в /home/anon/test
В Windows, сначала надо перейти на нужный диск командой
, d:
, e:
и так далее. Потом использовать cd
или chdir
:
d: - перейти на диск d: cd \ — перейти в корневой каталог cd \windows\system32 cd .. cd ..\..
Обрати внимание, windows и linux используют разные виды слешей. Обрати внимание, ..
обозначает «родительский каталог». Обрати внимание, только в линукс и мак ~
обозначает «домашний каталог» (это /home/username
или /Users/username
). .
(одна точка) обозначает текущий каталог и cd .
никуда не перейдет. /
(линукс) или \
(Windows) обозначает корневой каталог.
Очистка экрана
В linux — команда clear
или клавиша [ctrl+L], в windows — команда cls
(clear screen).
Список файлов
Посмотреть, какие файлы есть в текущем каталоге, можно командой dir
в Windows и командой ls
в линуксе (ls -a
— показывает все файлы, включая скрытые, ls -l
— показывает не только имена, но и размер, дату создания файла, права на него).
Посмотреть права на файл в Линукс можно либо командой
, либо stat file.txt
Команды и оболочка
Оболочка — это cmd.exe в Windows и bash в линукс, это та программа, которая собственно мигает курсором и выполняет твои команды. Ты набираешь команды, а она их выполняет. Команда обычно состоит из имени команды, и, иногда, дополнительных параметров, отделенных пробелом, вроде:
ls — показать список файлов в линукс ls -l — показать файлы с подробностями dir — показать список файлов в windows с подробностями dir /b — показать только имена файлов, без подробностей
Подсказка
Почти у любой команды есть подсказки. Чтобы их увидеть, добавь к имени команды параметр (--help
или /?
):
В линукс: ls --help
— выведет справку по команде ls
В линукс: man bash
— выведет подробную длинную справку по команде bash (для выхода жми q,
для прокрутки используй стрелки и PgUp/PgDn)
В Windows: dir /?
— выведет справку по команде dir
В Windows: help
выведет подсказку по основным командам
Виды команд
Команды бывают внутренние (это маленький список команд, встроенных в оболочку). Встроенные команды — это, например, cd
в линукс или exit
в Windows. Их мало.
Внешние команды — их большинство — это фактически программы, лежащие на диске. Оболочка ищет их не по всему диску, а только в заранее заданных папках. Список папок перечислен в специальной переменной PATH. Просмотреть эту переменную можно так:
В линуксе: echo $PATH
В windows: echo %PATH%
В linux PATH — это папки /bin, /usr/bin, /usr/local/bin, /sbin, /usr/sbin, именно в них в Линуксе хранятся почти все программы. В текущем каталоге програмы не ищутся, если это не указать явно.
В Windows PATH — это всякие системные папки вроде c:\windows и так далее + текущий каталог, в котором ты находишься. Заметь, что папки вроде c:\program files\autocad в PATH не добавлены и в Windows таким образом, из командной строки обычные программы и игры, установленные в Program Files, не запустить. Только то, что положено в системные папки.
Таким образом: если ты под линуксом, и ты набираешь команду php
, то скорее всего файл php лежит в одной из *bin папок и эта команда запустит php. Если ты под Windows установил php допустим в c:\php, и не прописал этот путь в PATH, то набрав php
, оболочка не найдет файл php.exe и ничего не запустит. И ты скажешь «что за кривой мануал, ничего не работает, ну его нафиг».
Печалька.
Что же делать? 1) добавить папку с php в PATH через мой компьютер — свойства и перезалогиниться в систему 2) писать вместо php
полный путь c:\php\php. exe
Продолжаем. Допустим, ты хочешь запустить в командной строке файл my.php , который находится в текущем каталоге:
Линукс: php my.php Windows: c:\php\php.exe my.php
Допустим, ты хочешь запустить php-файл не из текущего каталога. Тогда надо написать путь к нему:
Линукс: php /some/dir/my.php Windows: c:\php\php.exe d:\files\my.php
В общем, проще запускать файлы из текущег каталога, чем мучаться с путями.
Больше команд — linux
Попрактиковаться в линукс в командной строке можно на таких командах:
Создать текстовый файл: cat > file.txt [enter] ввести текст [enter][ctrl+d] — и файл создан Просмотреть текстовый файл: cat file.txt Просмотреть огромный текстовый файл, который не влеазает на экран: cat file.txt | less В просмотрщике работают стрелки и q для выхода (escape не работает). Удалить файл: rm file.txt Скопировать файл: cp file.txt copy.txt Переместить/переименовать файл: mv file. txt copy.txt Скопировать в другую папку: cp file.txt /some/other/directory Запустить команду и сохранить ее вывод в файл: ls -la > file.txt (эта команда выведет список файлов, но не на экран, а сохранит в файл. Бывает иногда полезно). Вывести файл, но не весь, а только первые 10 строк: cat file.txt | head -10 Вывести последние 10 строк файла: cat file.txt | tail -10 Вывести только строки файла, содержащие слово «dog»: cat file.txt | grep dog Найти файлы, в имени которых есть «dog», в каталоге /tmp: find /tmp -iname '*dog*' Узнать текущее время: date Создать папку: mkdir folder Удалить папку: rm -r folder Померять, сколько времени выполнялась команда: time [команда] Узнать свой id пользователя: id Показать список запущенных процессов: ps -lax Показать что-то вроде диспетчера задач: top (для выхода q) Запустить редактор, из которого хрен выйдешь, так как никакие привычные кнопки не работают: vi
Подробнее о работе команд можно узнать с помощью параметра --help
, дописанного после команды.
Больше команд — Windows
Попрактиковаться в комнадной строке в Windows можно так:
help — выводит список полезных команд dir — выводит файлы в каталоге Создать текстовый файл: copy con file.txt[enter]ввести текст[enter][ctrl+z][enter] — файл создан Просмотреть текстовый файл: type file.txt Просмотреть огромный текстовый файл: type file.txt | more (enter — прокрутка, q — выход) Удалить файл: del file.txt Скопировать файл: copy /b file.txt copy.txt Переименовать файл: ren file.txt copy.txt Запустить команду и сохранить вывод в файл: dir /? > file.txt Создать текстовый файл с одной строкой текста: echo lalala lololo > file.txt Дописать строчку в конец файла: echo boom >> file.txt Создать папку: mkdir folder Удалить папку: rmdir folder Узнать текущее время: time и date (ctrl+с для выхода)
Подробнее о работе команд можно узнать с помощью параметра /?
, дописанного после команды.
Команды для работы с сетью Интернет
В линукс показать информацию о настройке сети: ifconfig
(или /sbin/ifconfig
если у
тебя в PATH нет /sbin)
В Windows показать информацию о сети: ipconfig
Пропинговать (проверить связь) с сервером: ping google. com
Узнать IP по имени домена: nslookup yandex.ru
Показать список открытых с компьютера соединений: netstat
(в подсказке по команде указаны также параметры, с помощью которых, например, можно вывести какая программа установила это соединение)
Проверить путь до какого-то сервера или узла сети:
- в Windows:
tracert google.com
- в linux:
traceroute google.com
(не работает? пиши/usr/sbin/traceroute
или пропиши уже себе sbin в PATH)
Больше информации
Используй ключи --help
и /?
Гугли мануал по командной строке windows/linux в интернете.
http://archive-ipq-co.narod.ru
Корневой каталог в файловой системе Linux
Если вы новый пользователь ОС Linux и начинаете проходить обучение по Linux, вас может разочаровать документация по Linux, в которой используется несколько разных терминов для обозначения одного и того же или сходного объекта. вещь.
Чтобы помочь положить конец этому разочарованию в Linux, в этой статье описываются термины: / (корневой каталог) и /root (домашний каталог пользователя root) и пользователь root по отношению друг к другу.
Мы сосредоточимся на описании каталога / (root), а затем кратко опишем домашний каталог /root и пользователя root.
Советы по Linux: Названия статей, оканчивающиеся на «Linux Concepts &Terms», помогут вам научиться использовать Linux на языке гиков. Изучая термины Linux, вы сможете понять концепции Linux и, исходя из этого, вы научитесь использовать Linux! Понимание концепций Linux — это основа вашего обучения работе с Linux.
Каталог / (корневой) в файловой системе Linux
Корневой каталог в файловой системе Linux обозначается символом / (косая черта). Думайте об этом как о корне дерева.
Есть несколько каталогов, которые всегда создаются по умолчанию в системе Linux, например каталоги с именами: home, bin и var.
И каждый из этих каталогов всегда содержит один и тот же «тип» программ или файлов данных.
Думайте о каталогах, расположенных вне корневого каталога, как о ответвлениях от корня / (корневого) каталога в файловой системе Linux.
Советы по Linux: В некоторой документации по Linux «файловая система» Linux также часто указывается как «файловая система» (одно слово).
Когда вы запускаете команды Linux или используете документацию Linux, бывают случаи, когда вам нужно указать полный путь (он же абсолютный путь) к каталогу или файлу. А при указании полного пути к каталогу или файлу в системе Linux вы всегда указываете путь, начиная с корневого каталога.
Иерархия файловой системы Linux определена в документе, в котором излагаются требования и рекомендации по размещению каталогов и файлов для ОС Linux (операционной системы).
Советы по Linux: Просто выполните поиск в Интернете по запросу «иерархия файловой системы linux», чтобы увидеть этот документ.
Аналогичные термины Linux: / (корневой) каталог в файловой системе Linux, /root (домашний каталог пользователя root) и пользователя root
Каталог /root — Домашний каталог пользователя root
Существует каталог с именем «root», который находится непосредственно «вне» каталога / (корневой). Это «домашний» каталог пользователя root. Путь: /root — это полный путь к этому каталогу.
Пользователь root — используется для системного администрирования Linux
Пользователь root имеет все разрешения (права и возможности) для всей системы Linux. Этот пользователь используется для системного администрирования Linux.
Советы по Linux: Если вы используете Ubuntu Linux, пользователь root заблокирован и непригоден для использования (или отключен). Чтобы работать в качестве пользователя root и запускать команды системного администрирования Linux, вам необходимо выполнить команду Linux sudo (вместе с командами системного администрирования), а не входить в систему как пользователь root или использовать команду su для входа в систему в качестве пользователя root.
Подумайте, как легко будет научиться пользоваться Linux, когда вы будете смотреть все эти термины и концепции Linux, четко описанные в видеоруководстве по Linux!
ROOT: tutorials/io Directory Reference
copyFiles. C | |
Пример сценария, показывающего, как скопировать все объекты (включая каталоги) из исходного файла. | |
dirs.C | |
Этот макрос показывает, как создать иерархию каталогов в корневом файле. Учебник иллюстрирует использование и точность типа данных Double32_t Вы должны запускать это руководство с ACLIC: словарь будет создан автоматически. | |
fildir.C | |
Этот макрос отображает структуру данных ROOT Directory | |
файл.C | |
Этот макрос отображает физический КОРЕНЬ файловая структура | |
float16. C | |
Tu учебник, иллюстрирующий использование и точность типа данных Float16_t. | |
hadd.C | |
togram files Этот макрос используется только в учебных целях: вместо него используйте исполняемый файл $ROOTSYS/bin/hadd ! Пример скрипта показывая, как создать файл ROOT с подкаталогами. | |
loopdir.C | |
Пример скрипта для циклического перебора всех объектов файлового каталога ROOT и печати в Postscript всех Производные объекты Th2. Пример сценарий для циклического перебора всех объектов файлового каталога ROOT и печати в Postscript всех производных объектов Th2. | |
mergeSelective. |