- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF144:Ответы
Материал из Linuxformat.
Содержание |
Ответы
- Пишите нам по адресу answers@linuxformat.ru или спрашивайте на форуме: http://www.linuxformat.ru Мы найдем ответы на любой вопрос — от проблем с установкой системы или модемом до сетевого администрирования; главное — спросить!
1 Странное поведение
В Сейчас у меня LinuxMint 10 с DVD от LXF140. Весьма нетипично для Linux, в этом дистрибутиве мой экран виснет как минимум раз в сеанс. Сообщений об ошибках я не получаю, и ничего особенного не наблюдается: просто все зависает, и приходится перезагружаться.
При открытии версии KMail, установленной через центр программ Mint 10, появляется диалоговое окно с результатами различных тестов, и более 99 % прошли успешно. Но если не исправить хотя бы одну из указанных ошибок, при попытке закрыть это окно или сохранить копию отчета закрываются и окно, и KMail. Вот сообщение:
“Akonadi Server Self-Test Report: Test 12: ERROR Nepomuk search service not registered at D-Bus. Details: The Nepomuk search service is not registered at D-Bus which typically means it was not started or encountered a fatal error during startup.”
Майкл Годдард [Michael Goddard]
О Зависание может быть обусловлено аппаратной проблемой. Есть смысл запустить на всю ночь программу memtest, которая есть на большинстве Linux Live CD, чтобы выполнить тщательное тестирование памяти. Далее, вместо нажатия кнопки Reset или питания, попробуйте воспользоваться более дружелюбной к системе возможностью, известной как «магическая клавиша SysRq» [‘magic SysRq key’]. Нажмите комбинацию клавиш Alt+SysRq и, удерживая их в этом положении, последовательно нажмите клавиши R, E, I, S, U и B. Работа всех процессов завершится, все Ваши диски синхронизируются и отмонтируются, и система перезагрузится. Это не только позволит избежать повреждений файловой системы, но и сбросит на диск содержимое буферов, повысив шансы на получение отчета о проблеме в системном журнале, обычно в /var/log/messages. Есть несколько абсурдных сокращений, упрощающих запоминание этих букв; я предпочитаю вариант Reboot Even If System Utterly Broken [перезагрузиться, даже если система непоправимо поломана], но, возможно, проще будет запомнить их в обратном порядке (тогда получится слово BUSIER).
Akonadi и Nepomuk – часть т.н. «семантического рабочего стола» KDE [semantic desktop], причем Akonadi используется для хранения данных системы управления личной информацией (personal information management, PIM) – например, Вашей адресной книгой. Отсюда его важность для KMail. Сообщение об ошибке указывает, что сервер не запускается по одной из двух возможных причин: либо попыток запуска не предпринимается, либо при запуске происходит ошибка. Вы не сообщили, пользуетесь ли Вы KDE или пытаетесь применять KMail в Gnome - рабочем столе Mint по умолчанию. В последнем случае попробуйте зарегистрироваться в KDE и проверить, не исправит ли это ситуацию. Если проблема будет исправлена, Вы можете гарантировать работу сервера Akonadi, добавив его в раздел Startup Applications в Control Centre командой:
akonadictl start
Как вариант, можно воспользоваться kdeinit4, чтобы запустить все сервисы KDE, хотя для Ваших потребностей это может быть избыточным.
Неудача при запуске Akonadi может быть вызвана проблемой с конфигурацией, и в этом случае Вы можете сбросить все настройки к значениям по умолчанию, удалив или переименовав конфигурационные каталоги: ~/.config/akonadi и ~/.local/share/akonadi. ГМ
2 Утраченный root
В Обычно я ничего не устанавливаю с ваших дисков, кроме дистрибутивов. В этом месяце я взялся за установку программ и потерпел неудачу. Я обратил внимание, что в Ubuntu 10.10, Linux Mint 10, а теперь и в Debian Squeeze нет пользователя root: мне так и не удалось уломать их сделать меня root. Как правило, я пользуюсь командой su, а затем ввожу пароль root.
Иногда я регистрируюсь как root, чтобы выполнить некоторые вещи, которые в OpenSUSE обременительно выполнять с помощью su. Сейчас мое имя пользователя дает мне административные права, которые мне не нужны. Однако на диске доступно только index.html. Владельцем является root, а зарегистрироваться как root невозможно, и я в тупике. Пожалуйста, расскажите, как получить доступ к файлам и, в идеале, как зарегистрироваться от имени root.
Клайв Ширсби [Clive Shearsby]
О В работе Ubuntu с доступом от имени root до сих пор имеется путаница. Учетная запись root существует, иначе Вы не могли бы выполнить ничего требующего полномочий root. Взглянув на первую строку файла /etc/passwd, Вы увидите, что запись там определена. Но по умолчанию в Ubuntu отсутствует возможность зарегистрироваться в системе как пользователь root. Это не дает Вашей учетной записи пользователя административных прав автоматически – Вы все равно должны ввести пароль. Гораздо лучший контроль над доступом от имени root предоставляет sudo; и, на мой взгляд пользователя другого дистрибутива (не Ubuntu), этот подход лучше, чем метод грубой силы, используемый su (см. Часто задаваемые вопросы, где о su рассказано подробнее).
Запуск терминала от имени root делается одной из следующих команд:
sudo -i
или
sudo bash
Первая запускает интерактивный сеанс sudo, и Вы сможете вводить команды, которые требуют прав root. Вторая запускает от имени root оболочку Bash, предоставляя вам сеанс оболочки с правами root. С такими возможностями Вам не понадобится применять su. Если это все-таки нужно, решение будет очень простым. Введите команду, задающую новый пароль для пользователя root:
sudo passwd root
Вам могут предложить сначала ввести Ваш пароль, в зависимости от того, используете ли Вы sudo в той же самой оболочке и прошло ли уже пять минут с ее последнего использования, а затем – дважды ввести новый пароль пользователя root. После этого Вы сможете применить команду su для регистрации от имени root с новым паролем. Но я все же рекомендовал бы продолжать пользоваться sudo, поскольку это безопаснее и станет Вашей «второй натурой» очень скоро.
Ваш экранный снимок дошел до нас в не слишком читаемом виде, но описанная Вами ситуация выглядит весьма странной. Инструменты автомонтирования Gnome и KDE монтируют съемные устройства с правами владельца для пользователя, запустившего рабочий стол; DVD может принадлежать root, только если Вы примонтировали его из терминального сеанса с помощью sudo. Даже если так и было, файлы все равно должны быть читаемыми – и даже если права на них принадлежат root, обычному пользователю чтение все равно разрешено. С проблемой Вы можете столкнуться только при попытке установить нечто требующее записи в исходный каталог. Тогда скопируйте этот каталог с DVD на Ваш жесткий диск и выполните установку оттуда. НБ
3 Команда Ping
В Я кое-что обнаружил — не так чтоб очень критичное, но ответ получить хотелось бы. Я подключен к сети, но не могу отправлять команду ping на сайты или локальные машины из приложения Network Tools, хотя из терминала она работает.
В System > Admin > Network Tools сетевое устройство показано как карта Ethernet eth0, и при просмотре сайтов показатель Received Bytes возрастает. Подключение у меня явно есть — я вижу сайты в Firefox и Chrome. Но на вкладке Ping в Network Tools я не могу отправить команду на сайт или один из локальных компьютеров в моей сети. Раньше я такое мог, и, насколько я помню, настроек с тех пор не менял.
Дэвид Райт [David Wright]
О Это похоже на ошибку текущей версии gnome-nettool, влияющую также и на другие дистрибутивы; она не специфична для Ubuntu. По какой-то причине GUI выполняет не ту команду. Например, команда отправки ping на сервер Google выглядит так:
/bin/ping -b -c 5 www.google.com
Из терминала это работает, как и в том случае, если скомандовать ping, не указав полного пути. Но на самом деле GUI пытается выполнить вот что:
/bin/ping ping -b -c 5 www.google.com
Иначе говоря, используется /bin/ping и ping, вместо одной из них. В результате команда /bin/ping пытается разрешить первый элемент, не являющийся аргументом командной строки, как имя хоста, а это – команда ping. Запустив эту команду из терминала, Вы в подробностях увидите, как и почему ее выполнение заканчивается неудачей. Но gnome-nettool замечает только отсутствие ответов на команду ping в стандартном выводе и не сообщает ничего – сообщение о неизвестном хосте, которое Вы видите в терминальном сеансе, отправляется в стандартный поток ошибок (stderr). Вы также можете выяснить, что происходит, если запустите gnome-nettool из терминала и попробуете дать команду ping.
Почему пропущена и до сих пор не исправлена столь вопиющая ошибка – из области предположений. Возможно, эту функцию программы используют лишь немногие. Но для разработчиков исправление ее тривиально. Как вариант, Вы можете исправить ошибку сами, скачав, модифицировав и перекомпилировав исходный код; или просто в шестнадцатеричном редакторе забейте пробелами лишнюю строку ping. ПХ
4 KDE заполняет tmp
В Я недавно обновил свой рабочий стол до Kubuntu 10.04.1, с ISO-файла на рабочем столе. Вскорости (где-то через несколько рабочих дней) появляется следующее сообщение: ‘The process for the file protocol died unexpectedly’. Детальная информация — значки и все остальное — тоже исчезает с экранов Dolphin.
Видимо, проблема связана с пространством в tmp. Я обнаружил, что подкаталог kde-root в /tmp имеет размер около 8,5 ГБ и содержит очень много файлов с именами типа kconf_updateXXnnnn.tmp, где XX — подстроки вида SL, XL или MT. Похоже, что они добавляются туда примерно по файлу в 10 секунд. Если этот каталог удалить, то проблема временно решается — но только до следующего раза, а потом все повторяется. Можете ли вы объяснить, что происходит и как исправить проблему радикально — я имею в виду, может, ее создает какой-то (левый?) процесс?
Дэйв Коулсток [Dave Coulstock]
О Kconf_update – это процесс KDE, обновляющий файлы. Чтобы не заставлять все программы читать старую и новую версии формата файла настройки при каждом его изменении, программа просто сбрасывает небольшой файл в каталог .kde4/share/apps/kconf_update.
Kconf_update замечает появление этого файла и использует информацию из него, чтобы переписать файл настройки программы в новом формате. Каждый файл обновления запускается только один раз для каждого пользователя, так что проблема, с которой Вы столкнулись, по всей видимости, вызвана повторным запуском этих файлов. Подозреваю, что обновление завершается неудачей, поэтому временные файлы не удаляются, а kconf_update не помечает их как отработавшие и продолжает пытаться запустить их снова.
Подсказки про источник этой проблемы можно найти в файле журнала kconf_update – он хранится в ~/.kde4/share/apps/kconf_update/log/update.log. Поскольку временные файлы находятся в каталоге kde-root, это – программа, запускаемая от имени root (или через sudo), поэтому ключ к решению ищите в файле /root/.kde4/share/apps/kconf_update/log/update.log. Сообщения об ошибках должны указывать имя программы и конкретный файл; файлы данных kconf_update заканчиваются строкой UPD и обычно хранятся в /usr/share/apps/kconf_update.
Вы можете удалить файл, прекратив хроническое создание временных файлов, но в итоге Ваши файлы настройки могут прийти в противоречивое состояние. Альтернатива – узнав, какой именно файл создает проблему, поискать в Web отчеты об этой конкретной проблеме; вероятно, найдутся даже готовые решения. Так как Ваша версия KDE довольно старая, вполне возможно, что проблема уже решена, и обновление избавит Вас от нее. Когда Вы идентифицируете проблемную программу, Ваши поиски в Web помогут Вам найти лучший способ действий. МС
5 Горести Wine
В Я уже устанавливал и тестировал Wine, но мне ни разу не удалось запустить никакую Windows-программу, кроме Notepad. Теперь я работаю с Ubuntu 10.04, и при попытках пользоваться Kindle for PC или Internet Explorer результат оказывается нулевым — в смысле, nada, niets, nichts, rien, шиш. Wine запускается и тут же стопорит. После стольких лет я начинаю думать, что все это надувательство. Или я не нашел некой «секретной кнопки»?
Йохан Николаас Хербшлеб [Johan Nicolaas Herbschleb]
О Чудес Wine не сотворяет: чтобы работать с разными Windows-приложениями, эта программа должна постоянно развиваться. Значит, следует стремиться запускать новейшую версию, а ее маловероятно найти в репозиториях большинства дистрибутивов. Ubuntu 10.04 и 10.10 используют версию 1.2.1, хотя для скачивания в http://winehq.org доступна версия 1.3.13. Каждый новый релиз поддерживает все больше Windows-приложений, так что Вашим первым шагом должна стать деинстал- ляция штатной версии Wine Вашего дистрибутива и загрузка пакета для Ubuntu с http://www.winehq.org/download.
Часто это помогает, но мантра «новейшее – всегда самое лучшее» не всегда применима к Windows-приложениям, которые Вы пытаетесь установить. Откат к более старым релизам нередко означает получение совместимости с Wine. Например, мой Kindle for PC работает с Wine, но не в самой свежей версии, хотя все же позволяет делать то, что я хочу. Изменения, внесенные в новейшую версию ПО Kindle, привели к тому, что пока эта новейшая версия с Wine не работает.
Более старую версию можно загрузить с адреса http://tinyurl.com/kindle4wine или поискать в Web по ключевым словам ‘wine’ и ‘kindle’. Нужный Вам инсталлятор размером 5,2 МБ. Запустите его следующей командой:
wine KindleForPC-installer.exe
Эта команда установит программу, но пока не запускайте ее: скомандуйте winecfg, затем перейдите на вкладку Applications, нажмите кнопку Add Application и добавьте программу Kindle for PC. Затем выберите эту программу и установите опцию версии Windows в Windows 98, что решит некоторые проблемы с визуализацией GUI. Если Вы этого не сделаете, то не сможете видеть поля, куда Вам нужно будет вводить регистрационную информацию при первом запуске программы. Однако это можно сделать вслепую, введя свое входное имя, нажав клавишу Tab, введя пароль и, наконец, нажав клавишу Enter.
Другие программы могут потребовать аналогичных фокусов, но форумы по адресу http://forums.winehq.org плюс помощь Вашего любимого поисковика обычно помогают решить проблему. НБ
6 Параллельные скрипты
В Я хотел бы написать скрипт оболочки, работающий последовательно, пока он не подойдет к точке, когда нужно будет одновременно запустить четыре больших программы, для минимизации их совокупного времени исполнения. После чего я хотел бы продолжать работать по остальным функциям исходного скрипта, и снова в последовательном режиме.
Прочитав LXF140, я считаю, что я мог бы использовать демона at для размножения процессов, используя что-либо наподобие now + 1 minute. Я бы модифицировал процессы так, чтобы по завершении они отправляли в файл уникальный флаг, а я потом справлялся бы с ним для определения фактически завершенных процессов. Я бы добавил еще проверку, завершились ли они все, и, если еще не все процессы завершили работу, использовал бы команду sleep с приращениями, скажем, по пять минут, чтобы дождаться завершения всех процессов. Каждый из моих процессов идет часа четыре.
Дик Бочан [Dick Bochan]
О То, что Вы хотите, можно сделать и проще, не проверяя файлы на модификации постоянно. Ядро предоставляет средства наблюдения за изменениями файла или каталога, а пакет inotify-tools содержит пользовательское ПО, позволяющее сделать это. Я не стал бы усложнять запуск команд, добавляя at – просто припишите & к каждой из них, чтобы они шли в фоновом режиме:
process1 & process2 & …
Если пусковая нагрузка процессов высока, вставьте между ними команды sleep, чтобы распределить нагрузку между запусками. Если каждый из этих процессов создает при выходе файл, можно использовать inotifywait, чтобы дождаться создания этих файлов, и циклы ожидания будут не нужны:
for i in {1..4}; do inotifywait -e CREATE -qq /tmp/myprocess/ done
Здесь /tmp/myprocess – каталог, где будут создаваться файлы флагов; символ косой черты на конце велит inotifywait отслеживать изменения в содержимом каталога, а не самого каталога. Inotifywait ожидает события создания файла, а затем выходит, и опция -qq подавляет весь вывод. Цикл выполняется четыре раза, так что выход происходит по завершении всех четырех процессов и записи их флаговых файлов, вне зависимости от того, когда это случится. В идеале Ваш скрипт должен обеспечить, чтобы перед началом процессов каталог был пуст.
Чтобы проверить успешность завершения каждого процесса, можно записать код результата в файл статуса и затем проверять каждый из них на успешность перед тем, как продолжить выполнение. Это более эффективный метод, чем циклы sleep – скрипт просто стоит и ждет, пока ядро не просигналит об изменении в каталоге.
Вы должны иметь право модифицировать отдельные процессы для создания файлов статуса (хотя Вы дали понять, что так оно и есть). В противном случае, можно запускать их так, чтобы файлы создавались при выходе процесса. Строка
(process1 ; touch /tmp/myprocess/p1) &
запускает команды, перечисленные в скобках, в подоболочке, которая затем отключается через &. После этого команды выполняются последовательно, так что когда завершается process1, touch создает флаговый файл. Альтернативные версии –
(process1 && touch /tmp/myprocess/p1) & (process1 && touch /tmp/myprocess/p1 || touch /tmp/myprocess/p1failed) &
Первая из них создает файл только при успешном завершении process1, и если один из процессов завершится с ошибкой, Ваш скрипт будет ждать бесконечно. Второй вариант создает другой файл, если process1 завершается с ошибкой, что позволяет Вам проверить, завершились ли все процессы успешно, а потом продолжать. ПХ
7 Трюки с разделами
В С машиной моей жены возникла проблема, и я не знаю, как ее исправить. Она решила отказаться от Windows, перейдя на Fedora 14. Раньше на ее машине была система с двойной загрузкой — Windows 2000 и Fedora 8. Я обновил ее до Fedora 14 (естественно, создав сперва резервную копию ее данных), но обнаружил, что на диске много неиспользованного пространства. Вот листинг команды fdisk –l:
Device Boot Start End Blocks Id System /dev/sda1 * 2048 514047 256000 83 Linux /dev/sda2 514048 4708351 2097152 83 Linux /dev/sda3 4708352 6805503 1048576 82 Linux/swap /dev/sda4 52693200 234436544 90871672+ f W95 Ext’d (LBA) /dev/sda5 59006808 234227699 87610446 83 Linux /dev/sda6 52697088 58955775 3129344 83 Linux
Sda2 — это каталог /, sda5 — /home, sda6 — /var. Я хотел бы избавиться от /dev/sda4 и сделать из этого раздела раздел Linux, но так как это расширенный раздел, я не уверен, что не наврежу разделам sda5 и 6. При просмотре через GParted мне сообщается, что на /dev/sda4 уже есть три главных раздела.
Алан Брей [Alan Bray]
О Sda4 – это действительно расширенный раздел, содержащий два логических раздела, sda5 и sda6. Ваше свободное пространство расположено между sda3 и sda4. Не там ли раньше размещалась Windows 2000? На этом пространстве нельзя создать новый раздел, потому что у Вас больше нет свободных главных разделов, а sda4 нельзя удалить, не разрушив sda5 и sda6. Опция переустановки вызывает у меня омерзение, но возможно, что в Вашем случае это будет простейшим вариантом. Поскольку у Вас два диска, и Вы предпочитаете индивидуальную схему разбиения на разделы, предлагаю использовать LVM – опцию, о которой позаботится установщик Fedora. Тогда Вам понадобятся только два физических раздела: один для /boot и один для физического тома LVM. Все остальное будет рассматриваться как логические тома внутри LVM.
Я всегда даю людям, настраивающим систему LVM, совет создавать логические тома ровно таких размеров, которые им нужны. LVM упрощает задачу увеличения размеров тома, и Вы можете создать каждый том с размером, соответствующим Вашим текущим потребностям, а все остальное пространство LVM оставить неиспользованным. При этом Вы сможете создавать новые тома или увеличивать размеры существующих всего парой щелчков мышью (или запуском пары команд). Вы больше не привязаны к физическому плану разбиения на разделы, поэтому размер каждого тома можно менять независимо от остальных.
Если переустановка в данном случае – не вариант, можно переключиться на использование LVM, загрузившись с Live CD, удалив /dev/sda3 в cfdisk или GParted и, наконец, создав новый раздел, заполняющий все пространство между sda2 и sda4 (примерно 200 ГБ). Пометьте этот раздел как раздел LVM и инициализируйте его командой
pvcreate /dev/sda3
Затем создайте группу томов следующей командой:
vgcreate MyVolGroup /dev/sda3
Вы можете присвоить группе любое имя по своему вкусу – возможно, включив в него имя хоста Вашего компьютера, чтобы сделать его уникальным. После этого создавайте логические тома с помощью следующих команд:
lvcreate --name var --size 5G MyVolGroup lvcreate --name home --size 15G MyVolGroup
Они выглядят как /dev/MyVolGroup/var и /dev/MyVolGroup/home, и Вы можете создавать файловые системы и примонтировать их точно так же, как и любые другие блочные устройства. Примонтируйте и старые, и новые устройства var и скопируйте содержимое; то же самое проделайте для устройства home. Отредактируйте /etc/fstab, чтобы отразить имена новых устройств, а затем перезагрузитесь.
Когда все это заработает, можете снова загрузиться с Live CD, удалить каталоги с /dev/sda3 по /dev/sda6 и воссоздать sda3, на этот раз заполнив все пространство. Пометьте его как том LVM, любым инструментом для управления файловыми системами. Наконец, велите LVM использовать новый раздел sda3, командой
pvresize /dev/sda3
Как и при любой операции, манипулирующей файловыми системами и разделами, не забудьте сначала создать резервную копию данных – но при переустановке Вам так и так понадобится это сделать. ПХ
8 Виртуальные диски
В У меня есть настольный компьютер с двойной загрузкой, имеющий жесткий диск размером 320 ГБ с Windows XP и Linux Mint, причем XP установлена на одном разделе, а Linux — на другом. Они занимают около 200 ГБ дискового пространства, а примерно 100 ГБ у меня свободно. Я загрузил VirtualBox для Linux, и программа отлично запускается с помощью мастера.
Не объясните ли вы мне, как настроить виртуальную машину на свободном разделе, чтобы не попортить остальных разделов? И чтобы в будущем я мог, при необходимости, быстро от него избавиться, чтобы использовать освободившееся пространство для других целей?
Джон Джексон [John Jackson]
О VirtualBox, как и другие эмуляторы, использует виртуальные диски, а не физические разделы. Каждый виртуальный диск для хост-системы – это просто файл, который может храниться где угодно. Вам не нужны отдельные разделы для их хранения, хотя при желании можно поступить и так. Сам я храню образы виртуальных дисков на отдельном разделе, потому что тогда они не крадут про- странство у хост-системы, даже если сверх меры разрастаются.
Обычно размер виртуальных дисков устанавливается динамически. Это значит, что размер файла ровно таков, сколько нужно для хранения содержимого гостевой системы. Например, можно создать четыре виртуальных диска по 50 ГБ на разделе размером 100 ГБ, и они туда поместятся – по крайней мере, пока Вы не начнете их заполнять. Чтобы освободить пространство, занятое виртуальным диском, достаточно удалить файл VDI (Virtual Disk Image).
Поэтому короткий ответ на Ваш вопрос таков: используйте GParted в Mint, чтобы создать файловую систему на свободных 100 ГБ дискового пространства. Затем, создав виртуальную машину в VirtualBox, настройте ее так, чтобы она использовала созданный на этом пространстве файл VDI. ГМ
Большой вопрос. Как просматривать DVD в Linux Mint?
В Пытаюсь просмотреть диски DVD или Blu-ray на моем HPE-Pavilion 137-c, с Linux Mint 9 KDE, но у меня это не получается. Но почему? Может, это зависит от компьютера? У моего сына установлен дистрибутив Linux Mint 9 KDE на Gateway, и он спокойно смотрит DVD.
Рубен Гонсалес [Ruben Gonzalez]
О У каждого релиза LinuxMint две версии. Одна предназначена для редистрибуции и не включает опции, легальность которых в ряде стран подвергается сомнению. Сюда относятся и библиотеки, необходимые для просмотра зашифрованных коммерческих DVD.
Но не все потеряно. Установите пакет libdvdcss2! Сперва доберитесь до репозитория Medibuntu – полные инструкции находятся на странице Howto сайта http://medibuntu.org. После этого установите libdvdcss2 через Synaptic – и любое Ваше ПО для воспроизведения DVD распознает эту библиотеку и применит ее для их расшифровки.
Иначе обстоят дела с дисками Blu-ray, потому что алгоритмы защиты цифровых авторских прав (DRM) для них гораздо сложнее, чем для DVD. Но и тут есть опция, позволяющая воспроизводить или сдирать их для Linux. Возможно, в Вашей стране это считается незаконным – прежде чем продолжать, проверьте, так ли это. Программа MakeMKV умеет брать фильмы с диска Blu-ray на жесткий диск, откуда они воспроизводятся в любом медиа-плейере. Как вариант, программа извлечет их прямо в сетевой поток – его можно просматривать с проигрывателя типа VLC, способного принимать сетевой ввод.
MakeMKV – только условно бесплатное ПО, но пока оно на стадии бета-тестирования и ключевой файл бесплатен; и таким останется до тех пор, пока не выйдет альтернативное ПО на основе открытого кода. Загрузите эту программу с http://www.makemkv.com. Скачать надо два файла: makemkv_vX.Y. Z_bin.tar.gz и makemkv_vX.Y. Z_oss.tar.gz, где X. Y.Z – номер версии. Распакуйте оба файла в терминале и скопируйте их в соответствующие каталоги, начав с исходного пакета:
tar -xf makemkv_vX.Y.Z_oss.tar.gz cd makemkv_vX.Y.Z_oss
Затем скомпилируйте и установите ПО:
make -f makefile.linux sudo make -f makefile.linux install
Повторите то же самое для двоичной сборки.
Если возникнут сообщения об отсутствующих командах или пакетах, убедитесь, что у Вас установлены пакеты build-essential, libc6-dev, libssl-dev, libgl1-mesa-dev и libqt4-dev. Сделайте это через менеджер пакетов или командой
sudo apt-get install build-essential libc6-dev libssl-dev libgl1-mesa-dev libqt4-dev
Запустите MakeMKV, откройте Ваш диск и выберите нужный заголовок и опцию Stream From The File Menu. На вид ничего не произойдет, но потом появится диалоговое окно с сообщением вроде следующего:
Streaming server started, web server address is http://localhost:51000/stream/title0.ts
Запустите VLC, выберите опцию Open Network Stream из меню Media и вставьте адрес, который выведет MakeMKV. Диск Blu-ray должен начать воспроизведение. Этот метод годится и для просмотра содержимого Blu-ray на другом компьютере, без привода BD-ROM, при условии, что оба компьютера находятся в одной сети и канал связи между ними достаточно быстр. Тогда нужно будет использовать имя хоста или IP-адрес другого компьютера, а не localhost. МС
Шаг за шагом: Трансляция Blu-Ray через MakeMKV
- 1 Установите libdvdcss
- Первый шаг к воспроизведению DVD – убедиться через менеджер пакетов, что у вас установлена библиотека libdvdcss, и установить ее, если это не так.
- 2 Добавьте репозиторий
- Если библиотека libdvdcss недоступна, добавьте Medibuntu. На сайте есть команда, которую надо ввести в терминале, чтобы добавить репозиторий.
- 3 Откройте ваш диск Blu-ray
- Запустите MakeMKV, и программа обнаружит ваш привод BD и раскроет информацию о диске. Это займет несколько секунд.
- 4 Выберите дорожку
- MakeMKV выделяет все дорожки, поэтому снимите выделение со всех, кроме главной. Снимите выделение с ненужных подзаголовков и аудиодорожек.
- 5 Транслируйте поток
- Нажмите кнопку Stream – некоторое время будет казаться, что MakeMKV ничего не делает, а затем выведется адрес его Web-сервера.
- 6 Не щелкайте по ссылке
- Вставьте адрес сервера из окна, выведенного MakeMKV, в видеопроигрыватель вроде VLC и смотрите содержимое вашего диска Blu-ray.
Часто задаваемые вопросы su
- Для запуска программ, требующих полномочий root, одни дистрибутивы используют sudo, а другие — более традиционный префикс (?? совершенно непонятно с каких пор команда оболочки меняющая учетные данные пользователя вдруг стала "префиксом") su; какая из этих опций лучше?
- Дело не в том, какая из этих опций лучше: они выполняют чуть разные задачи. А именно, команда sudo великолепна для предоставления прав root (совершенно не обязательно root, обидно что редакция LXF продолжает распространять это заблуждение)) конкретному пользователю, чтобы дать возможность выполнить то, что ему необходимо, не раскрывая при этом пароля root. Она дает администраторам тонкий контроль над тем, кто и что может выполнять. su, с другой стороны, дает одному пользователю доступ от имени другого – в частности, от имени root.
- Это полезно знать; но мне нужен полный доступ от имени суперпользователя, значит, очевидный выбор — su?
- Не столь очевидный, как вам кажется: su — сокращение не от superuser, а от switch user – переключение пользователей. su дает любому пользователю право работать от имени другого пользователя, если он знает нужный пароль. Если не указать никакого имени пользователя, то по умолчанию доступ будет предоставлен от имени root, но это не единственный вариант. Администраторы могут регистрироваться от имени других пользователей, чтобы исправить что-либо в их настройках, причем им нет нужды знать пароли этих пользователей (если root использует команду su для регистрации от имени другого пользователя, то указывать пароль не надо). Поэтому вы можете, например, исправить для пользователя crontab, дав команду:
su fred -c “crontab -e”
- Это интересно, но все-таки, для полного доступа от имени root, su ведь та команда, которая мне нужна?
- Не совсем: su, вызванная сама по себе, даст вам привилегии суперпользователя, но вы все равно останетесь в своей исходной пользовательской среде. Все переменные, установленные для существующего пользователя, вместе с текущим каталогом, будут прежними, а путь изменяется на /sbin:/bin:/usr/sbin:/usr/bin, а значит, все, что вы установили в /usr/local, больше не будет доступно напрямую.
- А я и не знал; но это объясняет иногда наблюдаемое странное поведение. Не расскажете ли, как получить полный доступ от имени root через X-терминал к рабочему столу пользователя?
- Для этого добавьте - к команде su, в самом конце, после всех остальных опций. Можно также использовать --login – так будет более удобочитаемо, но придется дольше вводить. Последняя опция предоставляет вам практически полную регистрационную среду и в 99 % случаев будет эквивалентна прямому доступу от имени суперпользователя-root, или любого другого указанного вами пользователя.
- Вот это похоже на дело. Кстати, иногда мне нужно запускать от имени root графические программы, но я получаю сообщения об ошибке — мол, не настроена опция DISPLAY. Как обойти эту проблему?
- Можете использовать xhost или любой другой трюк с DISPLAY, чтобы предоставить вашему пользователю, получившему администраторские права root с помощью su, доступ root для использования вашего рабочего стола; но существует более простое решение. Установите sux (произносится как ‘su ex’, а не ‘sucks’) и используйте эту команду вместо su. Она принимает те же аргументы, но устанавливает доступ к X перед вызовом su.
Краткая справка про… X-проброс
Основа всех графических интерфейсов Linux – X, сетевой протокол. Хотя ваш дисплей обычно связан с X-сервером на локальной машине, это вовсе не обязательно. Вам, наверное, случалось пользоваться рабочим столом на удаленном компьютере через VNC или Nx. Но недостаток этого подхода – то, что рабочий стол одного компьютера воспроизводится на другом, поскольку тогда на удаленном компьютере действительно должен быть запущен рабочий стол. А если это просто сервер без монитора, то запуск рабочего стола будет пустой тратой ресурсов.
Вместо запуска всего рабочего стола можно просто запустить нужное вам приложение, установив соединение через SSH (то есть это безопасно даже при соединении через публичную сеть). Введите следующую команду в вашем любимом клиенте терминала:
ssh -X user@remote.computer someprogram
Если someprogram – GUI-приложение, его окно должно открыться на вашем рабочем столе. Здесь следует учесть еще пару аспектов. Первый – вы должны иметь доступ к другому компьютеру через SSH, регистрируясь через пароль либо ключ. На сервере SSH другого компьютера должна быть активна опция X-проброса [X-Forwarding]. Обычно она активна по умолчанию, но лучше в этом убедиться: в файле /etc/ssh/sshd_config должна содержаться строка
X11Forwarding yes
Есть еще ряд опций SSH, способных вам пригодиться. Вместо -X можно применить опцию -Y. Правда, она доступна, только если сервер SSH настроен с опцией Trusted X11 Forwarding, но в этом случае существенно ускорит вашу работу. Еще одна опция, -C, подхлестнет медленные каналы, применив сжатие всех данных, хотя для очень медленных соединений X обычно не подходит: при очень узкой полосе пропускания лучшим решением будут TightVNC или Nx.
Имейте в виду, что в Mac OS X для отображения тоже допустим X, и вы можете использовать данный метод для показа окна программы Mac на вашем дисплее Linux и наоборот.