Перейдя из ОС Windows в Linux пользователи сталкиваются с кучей непонятных им вещей. Есть много вопросов которые их тревожат, но спросить они не решаються - боятся. Так давайте же поможем им поскорее разобраться с новой замечательной системой. Может и сами узнаем чего нового.Примечание: Так как Gentoo новичкам не поставить, то этот материал носит скорее пропагандистский характер
Общие вопросы
Первая проблема которая встает перед линуксоидом это установка программ. Программы можно ставить из исходников и бинарных пакетов. На бинарниках завязаны такие дистрибутивы как RedHat, Mandrake, Fedore Core, ASP Linux, ALT Linux, Debian и прочие. С исходниками работают Gentoo Linux и *BSD-системы.
Чтобы установить программу в Gentoo Linux нужно только ввести: emerge программа emerge скачает все необходимое с интернета, скомпилирует и установит. Если же программы нет в дереве портов, то придеться ставить ее из тарболла.
Поправочка: В Gentoo тоже можно ставить прекомпиленные (заранее собранные) программы путем вызова команды: emerge --usepkg --getbinpkg программа или короче так: emerge -gk программа Но сборка из исходных текстов предпочтительнее.
Все программы в исходных текстах поставляются в виде тарболлов (файлы с расширением tar.gz, tar.bz2, tbz2, tgz, впрочем последние два - большая редкость). Тарболл по своей сути - это просто архив, который можно распаковать следующими командами: tar -xvjf super_proga_0.1.tar.bz2 для tar.bz2(или tbz2) и tar -xvzf super_proga_0.1.tar.gz для tar.gz(tgz). И архив будет распакован в текущий каталог.
Кстати -v - абсолютно лишнее. :) Dron
Я бы сказал так, распаковка tar –zxvf , архивы bz и gz2 –jxvf, удобно запомнить, различается только j в начале. =) das
Некоторым проще запоминать xzf как eXtract Zipped File. j - для bzip2 wt
Дальнейшие инструкции по установке можно прочитать в файле INSTALL или README, но чаще всего установка выглядит так: ./configure make Дальше от пользователя root: make install
Но пользователям Gentoo лучше прочитать следующий раздел.
Gentoo Way
Установка из тарболлов может показаться достаточно простой на первый взгляд, однако, она может затруднить управление пакетами и создать некоторые проблемы в дальнейшем, поэтому лучше воспользоваться мощью системой управления пакетами portage. Наверняка, о беспроблемной сборке необходимой вам программы уже позаботилось сообщество пользователей и разработчиков Gentoo. Чтобы узнать это, попробуйте найти нужную вам программу в базе портежей набрав: emerge -s [название программы] или по описанию: emerge -S [ключевое слово] что правда занимает достаточно много времени, и лучше использовать специально для этого написаные утилиты, например esearch emerge esearch eupdatedb esearch [название программы] или по описанию esearch -S [ключевое слово] так же можно проводить поиск по категориям. Например esearch -F mail-client покажет все почтовые клиенты, информация о которых есть в дереве портежей. Так же при поиске можно использовать регулярные выражения.
Неплохим подспорьем может послужить GUI фронтенд к портежам, например Porthole(интерфейс GTK).Для любителей KDE есть Kentoo(встраивается в центр управления) и Guitoo.
Если вам потребовалось установить программу из неофицального ebuild'а, сначала прочтите Portage_Overlay.
Если же ebuild скрипта найти не удалось или нужно наложить дополнительные патчи, то это значит, что пора освоить написание скриптов. Для этого можно воспользоваться skel.ebuild'ом который находится с каталоге portage. Так же не повредит прочтение en:HOWTO Create an Updated Ebuild.
Удобной средой разработки и правки ebuild скриптов является abeni
Говоря языком Windows, root - это администратор. Но в отличие от Windows, root - абсолютный хозяин системы. Он может сделать все, даже удалить системные файлы, или произвести низкоуровневое форматирование жесткого диска. По идее, root всегда знает что делает, поэтому такая власть вполне оправданна. Рутом можно стать несколькими способами:
первоначально войти систему под этим аккаунтом.
через su. Для этого в консоли введите su
[user@gentoo user]$su
Password:
[root@gentoo user]#
Пользователь user должен быть в группе wheel. При вводе пароля он отображаться не будет.
через sudo. Это дополнительная программа, которую можно установить командой:
$ emerge sudo
Ее преимущества перед обычным su заключаются в том, что можно протоколировать все выполненные команды, а значит понять, кто и как именно сделал что-то непрвильно. :) Кроме того, можно разрешить определенным пользователям выполнять только определенные команды с правами root, что существенно повышает безопасность системы. И, наконец, для использования sudo не нужно знать пароль root - достаточно помнить свой. ;) Все эти и другие настройки производятся редактированием файла конфигурации sudo - /etc/sudoers.
Пользоваться ей очень просто:
$ sudo команда
(например, "sudo ls -l"). Если же вам нужно выполнить не одну команду, а просто временно стать root, используйте следующий синтаксис:
$ sudo -s
Для того, чтобы перестать быть root после этого, достаточно ввести команду
$ exit
Секреты консоли
Можно на 100% гарантировать, что количество команд в вашей Linux системе больше пары тысяч. Но практически все линуксоиды используют из этого количества не более 100 команд, хотя и это, пожалуй, завышенное число. Человеку, который линукс видел только на скринах, будет полезно узнать, как же использовать эту консоль.
Linux - отлично документированная система. Подробную информацию о программе, команде или основным конфигурационном файлам можно получить при помощи команды man. Например man whereis выдаст вам подробную справку по использованию команды whereis, а команда man fstab выдаст синтаксис конфигурационного файла /etc/fstab.
Если вам не удалось найти нужную информацию, можно заглянуть в /usr/share/doc (в Gentoo Linux так же находится в /usr/doc). Там хранится документация программ.
Примечание: Для более детальной информации обратитесь в соответствующий раздел Страницы MAN
Без этой команды навигация по файловой системе будет невозможна. Смысл её простой - сменить текущий каталог. А синтаксис такой: cd /home/vasya/katalog Можно использовать как абсолютные, так и относительные пути к папкам.
Абсолютный путь - это путь указанный от корневого каталога(/).
Относительный путь - это путь указанный относительно текущего каталога.
Например, если вы находитесь в каталоге /home/vasya, то для перехода в /home/vasya/katalog вам нужно ввести только cd katalog Необходимо отметить, что в Linux нет такого понятия, как "диски". Все разделы жестких дисков, CD-приводы, сетевые диски и т.д. отображаются в виде каталогов файловой системы (обычно в /mnt).
Чтобы узнать в каком каталоге вы сейчас находитесь используется команда pwd.
Используется для получения списка файлов и каталогов. Например, ls выведет нам содержимое текущего каталога. Для вывода информации о каталоге, в котором вы сейчас не находитесь, используется ls /etc. Наверняка вас не удовлетворят только имена файлов. Для увеличения количества выводимой информации используйте опцию "-l" ls -l. Теперь ls выведет вам много полезной информации, такой как права, время последней модификации, размер и прочее.ls -la с опцией "-a" покажет скрытые файлы (by morgoth)
Предназначена для копирования файлов и каталогов. Например, скопируем файл /home/vasya/katalog/linux.txt в каталог /home/vasya. Делается это так: cp /home/vasya/katalog/linux.txt /home/vasya А вдруг мы хотим чтобы файл linux.txt получил имя gentoo.txt? Тогда делаем так: cp /home/vasya/katalog/linux.txt /home/vasya/gentoo.txt По умолчанию cp не копирует каталоги. Чтож, заставим его это делать. Скопируем /home/vasya/katalog в каталог /tmp так: cp -R /home/vasya/katalog /tmp Ключ -R указывает на рекурсивное копирование. Как и в случае с файлами, можно поменять конечное имя каталога: cp -R /home/vasya/katalog /tmp/novoe_imya У cp есть еще один полезный ключ: -p. Он предназначен для сохранения всех параметров файла (владельца, прав доступа, битов suid, sgid). Рекомендуем всегда указывать ключ -p, особенно если вы частенько сидите под суперпользователем (чего делать категорически не рекомендуется).
Предназначена для удаления фаилов. Например, удалим файл /home/vasya/katalog/linux.txt: rm /home/vasya/katalog/linux.txt или если каталог /home/vasya/katalog текущий, тогда можно так: rm linux.txt Будте осторожны, удаленный фаил нельзя восстановить, как в Dos или Windows.
Для удаления пустого каталога /home/vasya/testdir введите rmdir /home/vasya/testdir Не бойтесь указывать абсолютный путь к каталогу - будет удален только последний элемент пути. Для удаления этого же каталога рекурсивно (вместе с подкаталогами и файлами) введите rm -r /home/vasya/testdir
Предназначена для просмотра оставшегося места на диске df -h Ключ -h позволяет увидеть вывод в удобном для человека формате (например 1K 234M 2G)
Длинные пути к файлам и каталогам - довольно частое явление. И бороться с этим достаточно легко. Все современные оболчки (aka shell) обладают возможностью автодополнения. Что это значит? Например, есть файл cd home/vasya/katalog/vtoroi_katalog/ooooooooooooochendlinnoeimyakataloga. Ясно, что вбивать имя полностью - это сомнительное удовольствие. ;) Поэтому поручим часть работы shell'у. Мы пишем только часть имени, а остальное будет дополнять шелл. Для дополнения необходимо нажать Tab. Например: cd /h<TAB>/v<TAB>/k<TAB>/v<TAB>/o<TAB>
Примечание: в оболочке Zsh достаточно написать
cd /h/v/k/v/o и нажать "Tab". Оболочка сама развернет сокращение в полный путь. Но тут могут возникнуть проблемы, в том случае, если в каталоге /home есть 2 подкаталога /home/vasya и /home/vika. Шелл не сможет понять куда же вы хотите попасть. Чтобы помочь ему нужно указать еще одну букву в пути, то есть /home/va<TAB>, чтобы выбор был однозначным. Если вы не помните части пути, то можете два раза нажать Tab и вы увидите список возможных вариантов. Например: ls /home/<TAB><TAB> выведет на экран содержимое директории /home.
Такая ситуация возникает довольно часто.Например вам необходимо обновить систему по ssh находясь далеко от своего компьютера, но удерживать связь постоянно вы не можете. Для этой цели можно использовать программу nohup. Например, так можно запустить xmms: nohup xmms Вызываемой программе можно передавать аргументы. Теперь при закрытии терминала xmms будет работать, работать и работать ;) или: xmms & но это только освободит терминал. После закрытия терминала приложение завершиться.
Так же можно использовать программу screen.
Графическая оболочка X Window
Работа с буфером обмена в системе X Window гораздо удобнее, чем в ОС Windows. Для копирования и вставки текста делаем так:
выделяем нужный текст мышкой
в нужном месте щелкаем на среднюю кнопку или колесико мышки, и текст вставляется там, где курсор.
Конечно, вы можете использовать и комбинации OC Windows (Ctrl+C, Ctrl+V), однако, следует помнить, что комбинация Ctrl+C экстренно остановит выполнение команды в терминале, другими словами, попытавшись скопировать вывод программы комбинацией Ctrl+C, вы рискуете убить ее выполнение. Будьте внимательнее.
Возможно также использование комбинации Ctrl+Insert для копирования в буфер и Shift+Insert для вставки из него.
Для этого их необходимо добавить в уровень запуска default. Для этого необходимо выполнить: rc-update add xfs default и rc-update add xdm default Первой командой мы заставили автоматически стартовать сервер шрифтов, а вторая указывает на автозапуск менеджера входа в систему. Для того, чтобы вместо xdm запускался другой менеджер входа необходимо немного отредактировать /etc/rc.conf.
Файл: /etc/rc.conf
..
DISPLAYMANAGER="kdm"
..
Теперь вместо xdm будет запускаться kdm.
Файл: /etc/rc.conf
..
DISPLAYMANAGER="gdm"
..
Теперь вместо xdm будет запускаться gdm более красивый менеджер.