То, когда Вы вводите команду, которые не делают, существует в Вашей системной функции выполнений удара command_not_found_handle()
. В этой функции существует вызов к /usr/lib/command-not-found
сценарий, который печатает сообщения.
Мое первое предположение, которое изменит источник этого сценария для печати сообщений к stdout
вместо этого stderr
, но когда я читал источник сценария, я нашел, что можно настроить его, чтобы просто спросить Вас, если Вы хотите установить недостающий пакет.
Если Вы экспортируете переменную COMMAND_NOT_FOUND_INSTALL_PROMPT
Вас попросят установить недостающий пакет:
pbm@ubuntu:~$ git
The program 'git' is currently not installed. You can install it by typing:
sudo apt-get install git
pbm@ubuntu:~$ export COMMAND_NOT_FOUND_INSTALL_PROMPT=""
pbm@ubuntu:~$ git
The program 'git' is currently not installed. You can install it by typing:
sudo apt-get install git
Do you want to install it? (N/y)y
sudo apt-get install git
[sudo] password for pbm:
К сожалению, существует нет COMMAND_NOT_FOUND_INSTALL_PROMPT
таким образом, я могу найти немного других опций:
1) Пакет установки от 12,04 - это не должна быть проблема - это - только немного сценариев в Python, таким образом, это должно работать (непротестированный!).
2) Изменение stderr
кому: stdout
. Чтобы сделать это редактируют файл /usr/lib/python2.7/dist-packages/CommandNotFound/CommandNotFound.py
и изменение stderr
кому: stdout
в строках 237 и 240.
После этого можно использовать его таким образом:
pbm@ubuntu:~$ git
The program 'git' is currently not installed. You can install it by typing:
sudo apt-get install git
pbm@ubuntu:~$ `git`
//Installation begins
Если Вы добавляете -y
опция к apt-get
команда в строках 237 и 240 Вы могли также использовать синтаксис !! | sh
.
3) Можно также изменить этот сценарий от строки 242 таким образом:
print >> sys.stderr, _("You can install it by typing:")
f = open("%s/.install-missing" % os.path.expanduser('~'),'w')
print >> sys.stderr, "sudo apt-get install %s" % packages[0][0]
print >> f, "sudo apt-get install %s" % packages[0][0]
f.close()
Таким образом Вы получите свою команду в файле ~/.install-missing
, таким образом, можно создать псевдоним:
alias im="chmod +x ~/.install-missing; ~/.install-missing"
Если Вы звоните im
пакет будет установлен.
С наилучшими пожеланиями... Я не знаю.
Я использую gparted
когда мои разделы больше не соответствуют моей потребности, gparted помогает мне создать, скопировать, переместить, изменить размер, удалить разделы. Это с GUI, действительно простым в использовании.
Я изменил свои разделы больше чем дюжина времен на моем текущем ноутбуке с начала... и каждый раз, когда он должен был оснастить мои потребности лучшее новыми ограничениями.
Изменение /etc/fstab
файл, на который можно сказать всем установленным дистрибутивам указывать на том же/, загружает / var или / домашний раздел. Необходимо сделать это для каждого/etc/fstab файла (т.е. для каждого распределения).
Я лично запустил бы с более простого плана, чем Ваш. /
, /home
, и возможно /boot
если Вы действительно действительно действительно думаете, что Вам будет нужен он. И затем, создайте символьную ссылку и смонтируйте раздел им, поскольку потребность появляется (это, покончили /etc/fstab
).
Для моего текущего debian/ubuntu дистрибутива у меня, оказывается, есть полные 15 Гбайт /
со всеми моими установленными инструментами, таким образом, я должен выделить немного больше, чем это. Данные Additionnal хранятся на других разделах, смонтированных как / домой и / базы данных.
Кажется, что на разделе нет никакого свободного пространства. Если возможно установить openSUSE в этой ситуации затем, это не по крайней мере никакая забава для людей на Вашем уровне. В теории Вы могли просто поместить его на один из существующих дисков, но хотя возможный я боюсь, что результат сбивал бы с толку.
Я предлагаю уменьшить размер Вашего / домашний раздел и создать новый раздел в новом свободном пространстве и сделать это PV LVM. Это - опция Вам?
Наличие 1 гибибайта /boot
раздел обычно не имеет смысла вообще. Хотя я признаю, что ситуация может отличаться для разработчиков ядра (если они не используют VMs). Я рассмотрел бы совместное использование /boot
между дистрибутивами, опасными, по крайней мере.