Linux продолжается
Jun. 14th, 2008 09:37 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Спасибо всем, поставил Убунту, жить стало намного легче:) Теперь, как всегда, о главном:)
1. Я не понял, что, если я не вхожу администратором я не имею права модифицировать корень диска и системные файлы??? Такой наглости себе даже винды не позволяют:)
2. Возможности скачать пакет + все зависимости с которыми он собирался одним пучком, а потом уже руками/менеджером пакетов выбрать что я хочу сохранить, что переписать а что вообще скачать еще более свежее из Сети нет? Я в курсе, что за меня это предполагается будет делать менеджер пакетов, подключенный к сети и нефиг из самого себя автономный репозитарий изображать - но я хочу именно этого, причем в формате install.exe (ну хорошо, install.deb:)
1. Я не понял, что, если я не вхожу администратором я не имею права модифицировать корень диска и системные файлы??? Такой наглости себе даже винды не позволяют:)
2. Возможности скачать пакет + все зависимости с которыми он собирался одним пучком, а потом уже руками/менеджером пакетов выбрать что я хочу сохранить, что переписать а что вообще скачать еще более свежее из Сети нет? Я в курсе, что за меня это предполагается будет делать менеджер пакетов, подключенный к сети и нефиг из самого себя автономный репозитарий изображать - но я хочу именно этого, причем в формате install.exe (ну хорошо, install.deb:)
no subject
Date: 2008-06-14 10:08 pm (UTC)2. apt-get --download-only install package_name
no subject
Date: 2008-06-15 07:29 am (UTC)no subject
Date: 2008-06-15 08:59 am (UTC)no subject
Date: 2008-06-15 09:01 am (UTC)no subject
Date: 2008-06-15 11:40 am (UTC)apt-get --print-uris install package_name
Результат сохраняешь на флешку, несешь на другой комп, там скачиваешь все пакеты, несешь назад.
А может проще на убунте сеть наладить?
no subject
Date: 2008-06-15 07:00 pm (UTC)А наладить сеть - это просто другая задача, решаемая куда проще (роутер провайдера имитирует из себя локалку). Я хочу именно загрузокноподобный дивидюк, вставаил - установил - пользуюсь. Может быть, когда освоюсь просто скомпилю себе подобный (не на базе Убунты, вероятно)
no subject
Date: 2008-06-15 10:51 pm (UTC)no subject
Date: 2008-06-16 08:13 am (UTC)Аварийная дискета, в общем.
no subject
Date: 2008-06-16 09:07 am (UTC)Стандартный убунтовский CD вполне годится в качестве аварийной дискеты, по-моему. Часто ли тебе придется ставить систему на новый комп?
no subject
Date: 2008-06-16 09:30 am (UTC)no subject
Date: 2008-06-27 02:46 pm (UTC)То, что ты сформулировал, я бы делал примерно так:
- Взять станцию с сетью
- Наладить на ней нужный набор софта, выбить всё ненужное
- Получить список установленных пакетов
- Сделать DVD с этими пакетами и скриптом, который их (и только их) разворачивает на новую систему.
Первые два пункта понятны, третий dpkg -l . А вот четвёртый - в Убунте не знаю. В Дебиане я бы плясал от debootstrap, но могут быть более "кошерные" способы связанные с debian-installer - я его просто никогда не щупал.
(debootstrap - это устанавливалка дебиана методом разворачивания набора пакетов на показанное место в файловой системе, производимая из уже загруженного Линукса. Есть ли в Убунте, не знаю)
no subject
Date: 2008-06-14 10:10 pm (UTC)Естественно - это во всех Юниксах так. А ты что хотел, чтобы любой юзер мог изменять, к примеру, /.rhosts или /etc/passwd? :-)
Такой наглости себе даже винды не позволяют:)
Позволяют. В WinXP в корне диска C:\ обычный юзер по дефолту может изменять лишь одно - создавать новые директории (а вот в них он уже царь и бог). На сервере, подозреваю, и того нет.
Во второму вопросу, увы, не копенгаген.
no subject
Date: 2008-06-15 07:31 am (UTC)no subject
Date: 2008-06-15 07:41 am (UTC)С энузиазмом неофита :)
Date: 2008-06-15 09:20 am (UTC)Re: С энузиазмом неофита :)
Date: 2008-06-15 07:01 pm (UTC)no subject
Date: 2008-06-15 02:17 pm (UTC)Чтобы создавать в корне файлы / директории, используй "chmod 777 /". Если на безопасность тебе всё же не до конца наплевать, можно включить твоего юзера в группу, которой принадлежит корень (скажем, system или root - не знаю, что это за группа в Убунту), с помощью файла /etc/group и выставить "chmod 775 /".
В целом же система permissions в Юниксе намного менее гибкая, чем в NTFS, то бишь в Виндах.
no subject
Date: 2008-06-15 06:29 pm (UTC)В 90-х годах действительно была намного менее гибкая. В начале 2000-х был разработан posix стандарт на ACL, а вскоре после этого и первые реализации. В линуксе поддержка ACL появилась лет 5-6 назад, он в этом смысле сейчас ничем не хуже виндоуса.
no subject
Date: 2008-06-15 06:46 pm (UTC)no subject
Date: 2008-06-14 10:28 pm (UTC)По умолчанию, процессы обычного пользователя могут создавать и менять файлы только в домашнем каталоге (ну и еще временные файлы в специально отведенном месте). Если бы они могли менять системные файлы, это было бы нарушением системной защиты. Например, любая ошибка в web browser'е, приводящая к возможности удаленного доступа, могла бы приводить к заражению системы вирусом при посещении зараженных сайтов.
То, что в Windows XP сложно работать под пользователем с ограниченными правами, является серьезным недостатком Windows XP, вынуждающим пользователей давать себе полные права, что приводит к заражению вирусами.
2. Пакет всегда должен ставиться со всеми своими зависимостями. В противном случае программы, входящие в этот пакет, просто не будут запускаться. Поэтому если выбран пакет для установки, то пользователю не предлагается выбора, какие зависимости ставить. Или ставится пакет со всеми зависимостями, или не ставится ничего. Просто потому что по-другому нельзя.
Скачивать более свежее из сети крайне не рекомендуется, так как во-первых, более свежие версии нестабильны, а во-вторых, в репозитариях по умолчанию и так версии достаточно свежие. Кроме того, опять же возникает вопрос зависимостей. В репозитариях все зависимости отслежены и присутствуют.
Ставить софт не пакетами, а просто файлами, категорически не рекомендую: система управления пакетами не будет знать о таком софте, не сможет обеспечить ему все необходимые зависимости, и вообще может затереть его при обновлении пакетов.
Аналогии с Windows неуместны, потому что там другой принцип.
Во-первых, там нет нормальной системы управления пакетами, которая обеспечивает отслеживание зависимостей. Это приводит к тому, что в Windows программные пакеты содержат все, что им нужно, и зависят только от базовой системы, что нивелирует преимущества от использования разделяемых библиотек.
Во-вторых, в Windows есть четкое разделение между базовой системой, которая практически монолитна и имеет свою систему обновлений, и дополнительными пакетами, которые имеют свои собственные механизмы установки-удаления и обновления (или вообще не обновляемы).
В Linux-дистрибутивах, основанных на Debian (например, Ubuntu) и Red Hat (например, Fedora) вся система очень модульна и состоит из небольших пакетов, содержащих программы и библиотеки. Система управления пакетов отслеживает зависимости (например, программ от разделяемых библиотек) и не позволяет устанавливать пакет, пока не установлены все пакеты, которые ему необходимы для корректного функционирования. Влезать в эту систему отслеживания зависимостей без большого опыта и знаний опасно, так как это может легко привести к неработоспособной системе. К счастью, это обычно не так и просто и требует доступа системного администратора.
no subject
Date: 2008-06-15 07:40 am (UTC)> Пакет всегда должен ставиться со всеми своими зависимостями. В противном случае программы, входящие в этот пакет, просто не будут запускаться. Поэтому если выбран пакет для установки, то пользователю не предлагается выбора, какие зависимости ставить. Или ставится пакет со всеми зависимостями, или не ставится ничего. Просто потому что по-другому нельзя.
Это понятно. Проблема в том, что я хочу точно знать, какой пакет был установлен ради какого, и какая версия была в наличии у разработчика. Ну хотя бы для того, чтобы знать конфликты/несовместимости, которые могут возникнуть.
То есть, я хочу поставить X, вижжу что он требует пакетов A, B и C, устанавливаю сначала их, потом - X. В идеале я хочу скачать X, A, B, C с самого начала одним набором, причем именно те вермсии A, B, C которыми пользовался разработчик Х.
Потом то же самое с пакетом Y, требующим A.2.6, C, D., чтобы если выяснится что A.2.6 некорректно работает вместо исходного A, я точно знал какая программа с какой конфликттует и мог выбрать более дорогую моему сердцу.
Плюс к тому, я хочу организовать свой собственный дивидюк на котором будет весь софт, который я устанавливаю, в отлаженных и проверенных наборах-конфигурациях-установщиках, чтобы я мог приходить к новому, неподключенному в Сеть компу, ставить голую систему с загрузочного диска, потом вставлять диск софта, инсталлировать все оптом с него - и получать известную и настроенную под меня систему, без всяких скачиваний с Сети по пятнадцатому разу и отслеживания изменений.
no subject
Date: 2008-06-15 07:40 am (UTC)no subject
Date: 2008-06-27 02:51 pm (UTC)В такой формулировке звучит как задачка вокруг debootstrap плюс пара custom пакетов с твоими настройками, которые накатывать последними. В варианте "хочу настроек под себя" с инсталлером я бы уж точно не связывался, хотя с другой стороны, фиг знает как оно себя с разными видеокартами и мониторами поведёт (всё остальное железо подхватывается с места, я менял материнскую плату под Debian, который о том не предупреждали - он с места взлетел и даже звук был).
no subject
Date: 2008-06-15 02:14 pm (UTC)no subject
Date: 2008-06-15 07:03 pm (UTC)no subject
Date: 2008-06-15 10:59 pm (UTC)no subject
Date: 2008-06-16 08:14 am (UTC)no subject
Date: 2008-06-15 11:08 pm (UTC)Если интересуют подробности, могу рассказать.
no subject
Date: 2008-06-16 08:15 am (UTC)no subject
Date: 2008-06-27 02:52 pm (UTC)http://www.linuxfromscratch.org , кажется так.
Реально работать с этим не советую, замучаешься отслеживать обновления безопасности. А вот как игрушка - самое оно.
no subject
Date: 2008-06-14 10:35 pm (UTC)А что тебя возмущает? Это правильно. В SUSE, когда заходишь под root'ом, десктоп весь разрисован дымящимися бомбочками и "кирпичами". Типа, помни о смерти! :))
PS о переключении раскладок. Рекомендую: левая Win - переключить, пока нажата; правая Win - переключить. Ну как Shift и CapsLock. Все равно эти две клавиши - не-пришей-кобыле-хвост:)
no subject
Date: 2008-06-15 07:46 am (UTC)И вообще, правильная система может мне напоминать о смерти, но она не должна запрещать мне делать действия, потенциально к смерти приводящие:)
no subject
Date: 2008-06-15 11:10 pm (UTC)no subject
Date: 2008-06-16 08:45 am (UTC)no subject
Date: 2008-06-16 09:38 pm (UTC)Система просто не позволяет пользователю совершить действие не только бессмысленное, но еще и опасное.
no subject
Date: 2008-06-17 08:10 am (UTC)Как вообще тогда передавать файлы между разными пользователями, не принадлежащими к одной группе? Вводить директорию /usr/vladimir/share/... ? Но тогда юзеры получают возможность прочесть названия файлов/директорий в /usr/vladimir/, что может быть по какаим-то причинам неприятно. Или каждый раз просить дминов/пересылать по мылу и прочие глупости?
no subject
Date: 2008-06-17 07:23 pm (UTC)Точнее, «/home/vladimir/Public» (которая, кстати, у тебя уже должна быть).
Вовсе необязательно. Разрешение получать список файлов в каталоге и доступ к файлам и подкаталогам в этом каталоге — это разные биты доступа. Достаточно разрешить доступ к файлам в домашнем каталоге и подкаталоге «Public», но не разрешать листать эти каталоги. Такая техника, например, используется для разрешения HTTP-серверу доступа к домашней странице пользователя, которая обычно хранится в «public_html» в домашнем каталоге пользователя.
Ну, или еще можно передавать файлы через «/tmp» или «/var/tmp» — специальные каталоги для временных файлов.
no subject
Date: 2008-06-18 08:03 am (UTC)no subject
Date: 2008-06-27 02:56 pm (UTC)no subject
Date: 2008-06-27 02:54 pm (UTC)Это программы, которые ты запускаешь, не могут. А ты лично, руками - сколько угодно. Если честно, я так действительно сделал, чтобы задействовать в корне свободное место под фильмы; создал директорию, установил к ней права, остальное - уже без админских прав.
no subject
Date: 2008-06-27 03:27 pm (UTC)Спасибо за комментарии, буду разбираться:)