Полезная информация

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

№25112-01-2012 11:45:42

X Strange
Участник
 
Группа: Members
Зарегистрирован: 21-02-2010
Сообщений: 103
UA: Opera 11.6

Re: Linux, Windows, Mac OS X - IX

krigstask пишет

Мне интересно узнать, как это должно работать.

krigstask пишет

Каталог-то создать не проблема, а вот как потом этот зоопарк разруливается? См. следующие вопросы.

krigstask пишет

Так расскажи, как оно должно работать, а я буду стараться задавать неудобные вопросы.

Ну, насколько я понимаю, в NixOS это разруливается примерно так: при установке любой программы создаётся отдельный каталог (что-то вроде /nix/store/<название каталога>). Название каталога состоит из UUID и названия программы (в NixOS UUID почему-то идёт в начале названия каталога, что затрудняет ручное хождение по этим каталогам: упорядочиваются они из-за этого не по алфавиту). Каждая программа (более того, каждая отдельная версия) устанавливается в свой каталог. Внутри каталога, естественно, своя иерархия каталогов /bin, /lib, и.т.д.

krigstask пишет

Угу, угу. А всякие $PATH и $LD_PRELOAD кто будет разруливать? И как?

$PATH — с помощью символических ссылок и аналога eselect.
$LD_PRELOAD разруливать не нужно, так как эта переменная управляет загрузкой библиотеки _перед_ запуском программы. Этот механизм использует, например, программа leaktracer для обнаружения утечек памяти и другие программы, которым нужно подменить библиотечные вызовы. Разруливать нужно $LD_LIBRARY_PATH. Про это надо будет изучить более подробно. Её вроде как нужно разруливать и на этапе компиляции, и на этапе выполнения (хотя я не уверен, что и то и другое одновременно.) /etc/ld.so.conf, понятно, использовать нельзя, так как тогда все программы полезут в один каталог за библиотеками, что не соответствует поставленной задаче.

krigstask пишет

Ну это общая проблема безверсионных бинарных дистрибутивов. То, что в Gentoo лечится revdep-rebuild'ом (и предотвращается через @preserved-rebuild в Portage 2.2), в них исправляется ожиданием, пока почешутся разработчики

Можно поподробнее про @preserved-rebuild? Что он собой представляет и каков механизм его работы?


# rm -rf /

Отсутствует

 

№25212-01-2012 12:45:30

krigstask
друг народа
 
Группа: Members
Откуда: Rampova, Inkerimaa
Зарегистрирован: 13-09-2005
Сообщений: 4593
UA: Opera 11.6
Веб-сайт

Re: Linux, Windows, Mac OS X - IX

X Strange пишет

$PATH — с помощью символических ссылок и аналога eselect.

И как это выглядит? В случае, допустим, с Opera 9.6, 11.51 и 11.60. Есть исполняемый файл `opera` и три штуки `opera-$версия`?

X Strange пишет

Разруливать нужно $LD_LIBRARY_PATH. Про это надо будет изучить более подробно. Её вроде как нужно разруливать и на этапе компиляции, и на этапе выполнения (хотя я не уверен, что и то и другое одновременно.)

Ну да, я эти переменные никогда не трогал и путаюсь в названиях. Там же первые три символа совпадают! (-%Е
Так вот и хотелось бы понять, как это работает. То, что ничего не отваливается, это, конечно, хорошо, а вот будет ли всё гладко работать при нормальном обновлении? Поставил программу, ей нужна библиотека, потом библиотека обновилась, с ней программа тоже работает нормально. Ничего не отвалится при удалении старой версии библиотеки?

X Strange пишет

Можно поподробнее про @preserved-rebuild? Что он собой представляет и каков механизм его работы?

Насчёт деталей механизма не скажу, но выглядит для пользователя это примерно так: если библиотека сильно обновилась и, скажем, /usr/lib64/libjpeg.so.7 стала /usr/lib64/libjpeg.so.8, то /usr/lib64/libjpeg.so.7 не удаляется из системы, а записывается в список библиотек «к удалению». Соответственно, emerge каждый раз говорит, что надо бы перебрать некоторые пакеты (зависящие от этой библиотеки). Так что ты запускаешь `emerge @preserved-rebuild`, все эти пакеты пересобираются и только тогда библиотека собственно удаляется из системы.


Ядрёная консоль делает меня сильней!

Отсутствует

 

№25312-01-2012 12:55:28

X Strange
Участник
 
Группа: Members
Зарегистрирован: 21-02-2010
Сообщений: 103
UA: Opera 11.6

Re: Linux, Windows, Mac OS X - IX

krigstask пишет

И как это выглядит? В случае, допустим, с Opera 9.6, 11.51 и 11.60. Есть исполняемый файл `opera` и три штуки `opera-$версия`?

Думаю, да. Исполняемый файл opera — это симлинк на один из трёх opera-$версия.

krigstask пишет

Ну да, я эти переменные никогда не трогал и путаюсь в названиях. Там же первые три символа совпадают! (-%Е

А я довольно часто трогал LD_LIBRARY_PATH, чтобы запустить скачанную «на посмотреть» программу с библиотеками из домашнего каталога.

krigstask пишет

Так вот и хотелось бы понять, как это работает. То, что ничего не отваливается, это, конечно, хорошо, а вот будет ли всё гладко работать при нормальном обновлении? Поставил программу, ей нужна библиотека, потом библиотека обновилась, с ней программа тоже работает нормально. Ничего не отвалится при удалении старой версии библиотеки?

Собственно, происходит именно так, как в portage 2.2: библиотека удаляется только когда ни одна программа от неё не зависит.


# rm -rf /

Отсутствует

 

№25412-01-2012 15:30:06

krigstask
друг народа
 
Группа: Members
Откуда: Rampova, Inkerimaa
Зарегистрирован: 13-09-2005
Сообщений: 4593
UA: Opera 11.6
Веб-сайт

Re: Linux, Windows, Mac OS X - IX

X Strange пишет

Собственно, происходит именно так, как в portage 2.2: библиотека удаляется только когда ни одна программа от неё не зависит.

То есть я, например, обновляю glib, оно самостоятельно переключается (символьными ссылками там или через LD_LIBRARY_PATH) на новую версию, и потом удаляется, если всё в порядке с новой версией?


Ядрёная консоль делает меня сильней!

Отсутствует

 

№25512-01-2012 15:56:36

X Strange
Участник
 
Группа: Members
Зарегистрирован: 21-02-2010
Сообщений: 103
UA: Opera 11.6

Re: Linux, Windows, Mac OS X - IX

krigstask пишет

То есть я, например, обновляю glib, оно самостоятельно переключается (символьными ссылками там или через LD_LIBRARY_PATH) на новую версию, и потом удаляется, если всё в порядке с новой версией?

Я думаю, не совсем так. glib — это ведь библиотека, насколько я понимаю, поэтому на неё не нужно «переключаться».  Обновляется библиотека, потом проверяется, какие пакеты зависят от старой версии, затем они пересобираются для работы с новой версией (в новые слоты, то есть какое-то время программа одной версии есть в двух экземплярах — с использованием старой и новой версии), система переключается на новый профиль. Если в течение определённого времени не было замечено проблем в новой версии, старые удаляются, иначе производится откат к старой версии программ/библиотек.
Меня больше интересует вот, что. Можно ли собрать программу так, чтобы она не была привязана к конкретной версии библиотеки, а только к местоположению. То есть, чтобы эти библиотеки можно было именно «переключить»?

Добавлено 12-01-2012 15:57:56
Да, это я, разумеется, писал про то, как я предполагаю это сделать в LFS. В NixOS это может быть сделано иначе — точно я не знаю.

Отредактировано X Strange (12-01-2012 15:57:56)


# rm -rf /

Отсутствует

 

№25615-01-2012 21:51:08

sentaus
Участник
 
Группа: Members
Зарегистрирован: 03-06-2005
Сообщений: 759
UA: Rekonq 0.8

Re: Linux, Windows, Mac OS X - IX

Могу сказать только, что панику развели на пустом месте - данная функция элементарно отключается ( о чём, кстати, выссказался и представитель M$) и никоим образом не помешает установке линукса.

Ну вот мы и дождались того, о чём говорили большевики

Для производителей систем на базе архитектуры ARM в числе требований появился обязательный пункт, запрещающий предоставление любых способов отключения безопасной загрузки на системах, базирующихся на архитектуре ARM (Windows 8 будет поддерживать данную архитектуру).

http://www.opennet.ru/opennews/art.shtml?num=32797

И MS тут даже по линии антимонопольщиков предъявить ничего нельзя, они на рынке армов монополистами не являются.

Отредактировано sentaus (15-01-2012 21:56:56)

Отсутствует

 

№25702-02-2012 23:09:54

X Strange
Участник
 
Группа: Members
Зарегистрирован: 21-02-2010
Сообщений: 103
UA: Opera 11.6

Re: Linux, Windows, Mac OS X - IX

Такой вопрос.
Когда-то давно, задолго до того как я появился на этом форуме, здесь обсуждалось, что в Windows при безопасном извлечении флэшки происходит не только отмонтирование, но и отключение устройства: лампочка на флэшке обычно гаснет и вроде как опять подмонтировать флэшку уже нельзя — только вытащить из USB-порта и вставить снова. Не помню точно, отображается ли она после этого в диспетчере устройств. В Linux же происходит только отмонтирование. Лампочка не гаснет и можно снова подмонтировать, устройство присутствует в файловой системе /dev. Обычно этого достаточно. Если файловая система отмонтирована, то с файловой системой ничего не должно случиться. Если же на флэшку ничего не записывали, а только читали, то можно выдёргивать без отмонтирования.  А как быть с командой mkfs, которая пишет на флэшку в обход файловой системы, когда ни о какой файловой системе или монтировании речи не идёт? Как обеспечивается целостность данных?


# rm -rf /

Отсутствует

 

№25802-02-2012 23:16:23

Tiger.711
&#8204;
 
Группа: Extensions
Откуда: из Лесу
Зарегистрирован: 30-07-2010
Сообщений: 7975
UA: Nightly 13.0

Re: Linux, Windows, Mac OS X - IX

X Strange пишет

и вроде как опять подмонтировать флэшку уже нельзя

Можно. Вроде бы, даже стандартными виндовыми средствами, но я пользуюсь USR

X Strange пишет

Не помню точно, отображается ли она после этого в диспетчере устройств.

Может отображаться корректно, может как неопознанный девайс. Разные компы и разные флешки себя ведут по-своему...


Большой кот... Пуфыстый... Полосатый... Зубастый (:

Отсутствует

 

№25902-02-2012 23:20:11

X Strange
Участник
 
Группа: Members
Зарегистрирован: 21-02-2010
Сообщений: 103
UA: Opera 11.6

Re: Linux, Windows, Mac OS X - IX

Tiger.711 пишет

Можно. Вроде бы, даже стандартными виндовыми средствами, но я пользуюсь USR

А как это сделать стандартными виндовыми средствами?
Можно ли через USR подключить флэшку, отмонтированную стандартными виндовыми средствами?


# rm -rf /

Отсутствует

 

№26002-02-2012 23:50:22

Tiger.711
&#8204;
 
Группа: Extensions
Откуда: из Лесу
Зарегистрирован: 30-07-2010
Сообщений: 7975
UA: Nightly 13.0

Re: Linux, Windows, Mac OS X - IX

X Strange пишет

А как это сделать стандартными виндовыми средствами?

Этого я не знаю. Просто где-то когда-то читал, что это возможно. Кроме того, USR же как-то это делает, верно?

X Strange пишет

Можно ли через USR подключить флэшку, отмонтированную стандартными виндовыми средствами?

Да, можно.


Большой кот... Пуфыстый... Полосатый... Зубастый (:

Отсутствует

 

№26103-02-2012 01:17:38

Keepun
Участник
 
Группа: Extensions
Зарегистрирован: 08-12-2007
Сообщений: 591
UA: Firefox 9.0
Веб-сайт

Re: Linux, Windows, Mac OS X - IX

X Strange пишет

Обычно этого достаточно. Если файловая система отмонтирована, то с файловой системой ничего не должно случиться.

Это от флешки зависит. Вполне могут сдохнуть, поэтому Винь подстраховывается, но реакция у флешек разная.

В Диспетчере Устройств можно Поиск запустить и некоторые флешки ответят.


Зачем вашему компу оперативная память, если вы сами не хотите, чтобы софт ее всю использовал?

Отсутствует

 

№26203-02-2012 21:46:52

X Strange
Участник
 
Группа: Members
Зарегистрирован: 21-02-2010
Сообщений: 103
UA: Opera 11.6

Re: Linux, Windows, Mac OS X - IX

Keepun пишет

Это от флешки зависит. Вполне могут сдохнуть, поэтому Винь подстраховывается, но реакция у флешек разная.

Меня больше интересует вопрос --- можно ли в Linux отключить флэшку так же, как это происходит в Windows?


# rm -rf /

Отсутствует

 

№26303-02-2012 22:32:48

sentaus
Участник
 
Группа: Members
Зарегистрирован: 03-06-2005
Сообщений: 759
UA: Konqueror 4.8

Re: Linux, Windows, Mac OS X - IX

Меня больше интересует вопрос --- можно ли в Linux отключить флэшку так же, как это происходит в Windows?

можно командой eject.

Отсутствует

 

№26406-02-2012 10:35:25

krigstask
друг народа
 
Группа: Members
Откуда: Rampova, Inkerimaa
Зарегистрирован: 13-09-2005
Сообщений: 4593
UA: Opera 11.6
Веб-сайт

Re: Linux, Windows, Mac OS X - IX

sentaus пишет

можно командой eject.

Не вижу эффекта от этой команды, кстати.


Ядрёная консоль делает меня сильней!

Отсутствует

 

№26506-02-2012 11:53:20

sentaus
Участник
 
Группа: Members
Зарегистрирован: 03-06-2005
Сообщений: 759
UA: Firefox 10.0

Re: Linux, Windows, Mac OS X - IX

krigstask пишет

е вижу эффекта от этой команды, кстати.

sudo eject /dev/sdX

в качестве X Вставить нужную букву - что пишет?

Отсутствует

 

№26606-02-2012 19:33:42

krigstask
друг народа
 
Группа: Members
Откуда: Rampova, Inkerimaa
Зарегистрирован: 13-09-2005
Сообщений: 4593
UA: Opera 11.6
Веб-сайт

Re: Linux, Windows, Mac OS X - IX

sentaus
Ничего не пишет, ничего и не происходит.


Ядрёная консоль делает меня сильней!

Отсутствует

 

№26706-02-2012 19:38:25

sentaus
Участник
 
Группа: Members
Зарегистрирован: 03-06-2005
Сообщений: 759
UA: Firefox 10.0

Re: Linux, Windows, Mac OS X - IX

Ничего не пишет

Это правильно :)

ничего и не происходит.

А вот это не факт. Вобще должно соответствующее устройство в /dev исчезнуть, и появиться сообщение об этом в выводе dmesg. Есть там что-нибудь новое после этого?

Отсутствует

 

№26806-02-2012 20:00:17

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Nightly 12.0

Re: Linux, Windows, Mac OS X - IX

> можно командой eject.
Хм… а я это привык делать правой клавишей по флэшке в наутилусе. Уж не знаю eject оно вызывает али нет, но буфер докидывает и демонтирует корректно.

Отсутствует

 

№26906-02-2012 20:19:54

Merlyel
псЫх
 
Группа: Extensions
Откуда: Уфа
Зарегистрирован: 20-12-2005
Сообщений: 2415
UA: Chrome 16.0

Re: Linux, Windows, Mac OS X - IX

Lain_13 пишет

Хм… а я это привык делать правой клавишей по флэшке в наутилусе. Уж не знаю eject оно вызывает али нет, но буфер докидывает и демонтирует корректно.

И даже лампочка на флешке гаснет? :)


жЫзнь рандомна... и ничего с этим не поделаешь ;)

Отсутствует

 

№27006-02-2012 20:31:43

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Nightly 12.0

Re: Linux, Windows, Mac OS X - IX

Merlyel
У меня две флэшки и они без лампочек. Не могу сказать.

Отсутствует

 

№27109-02-2012 15:55:40

Shura
Участник
 
Группа: Members
Зарегистрирован: 06-05-2006
Сообщений: 1205
UA: Firefox 10.0
Веб-сайт

Re: Linux, Windows, Mac OS X - IX

У меня когда телефон в режиме флешки подключаешь к компу, а потом в гноме нажимаешь "Извлечь устройство", то телефон понимает, что его отключили и выключает режим флешки. А вот в KDE ситуация другая, извлечения телефон не видит и никак на него не реагирует, так и остаётся в режиме флешки пока кабель от компа не отключишь.


FreeBSD 8.2, IceWM

Отсутствует

 

№27219-02-2012 13:54:29

sentaus
Участник
 
Группа: Members
Зарегистрирован: 03-06-2005
Сообщений: 759
UA: Rekonq 0.8

Re: Linux, Windows, Mac OS X - IX

Новый логотип Windows 8: решётки на окнах.
1537.Win8Logo_5F00_01_5F00_008485DD.jpg


Впрочем, новое - это хорошо забытое старое, и, возможно, логотип windows 1.0 куда лучше отразил бы суть :)
6318.2_5F00_thumb_5F00_0B0559FD.png

Отсутствует

 

№27319-02-2012 14:54:32

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 10.0

Re: Linux, Windows, Mac OS X - IX

Лучше вот так:
evolution.png
(утянуто)


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№27419-02-2012 16:54:37

adidharma
&#32;
 
Группа: Members
Зарегистрирован: 15-08-2011
Сообщений: 754
UA: Nightly 13.0

Re: Linux, Windows, Mac OS X - IX


pcxFirefox - лучшая сборка Лисы!

Отсутствует

 

№27504-03-2012 23:51:02

X Strange
Участник
 
Группа: Members
Зарегистрирован: 21-02-2010
Сообщений: 103
UA: Opera 11.6

Re: Linux, Windows, Mac OS X - IX

Недавно я обнаружил интересное явление. В последнее время я ставлю виндовые игрушки под wine, а не под windows. Это удобнее по многим причинам, в частности можно отметить возможность оконного запуска и быстрого переключения. Большая часть игрушек, которые я ставил,  работает под wine отлично. Иногда случается так, что игрушка требует наличия вставленного cdrom. В этом случае я создавал iso образ и давал команду:

Выделить код

Код:

mount -o loop /path/to/image.iso /mnt/cdrom

и указывал /mnt/cdrom в качестве cd-привода в настройках winecfg. И это работало. Но одна из игрушек так работать не захотела, жалуясь на отсутствие cdrom'a. При этом после того, как я вставил и подмонтировал настоящий cdrom, игрушка запустилась! Я бы понял, если бы это было под виндой! Но под Wine... Видимо, в Wine API есть функция, позволяющая проверить содержимое настоящего CD-привода. Я откопал специальную программу cdemu (http://cdemu.sourceforge.net/), которая с помощью специального модуля ядра (vhba-module) создаёт в каталоге /dev/ виртуальный cd-rom /dev/cdrom1, который потом нужно подмонтировать. С такой эмуляцией всё работает нормально, что, видимо, подтверждает предположение о наличии соотвествующей API-функции.
А теперь вопрос.
В gentoo мне удалось заставить cdemu работать, так как ядро я собирал сам. А вот в ArchLinux возникла проблема с загрузкой модуля, которую мне пока не удалось решить. Можно ли как-нибудь обойтись без cdemu и модулей ядра? Или проще будет собрать ядро вручную и в ArchLinux?

Отредактировано X Strange (04-03-2012 23:56:23)


# rm -rf /

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]