Как компилировать .файл Java на Ubuntu?

Как я могу скомпилировать .файл Java?

Какие программы мне будут нужны? Если мне необходима Java JDK, то мне также будет нужна помощь в установке этого. Я совсем новичок в Ubuntu, поэтому все программы, которые мне нужны для установки мне нужен учебник о том, как установить их.

+83
Aguinore 26 апр. 2014 г., 1:52:35
28 ответов

Иногда, ложные списки добавляются в интерфейсы в /etc/сети/во время обновления. Менеджер сети предполагает, поэтому вы будут управлять эти интерфейсы; в вашем случае, беспроводных, а не Нм. Пожалуйста, проверьте:

gksudo команду Gedit /и т. д./сети/интерфейсов

Если есть что-нибудь больше, чем это, удалите его:

авто Ло
iface защитный Ло инет замыкания

Тщательно вычитан, сохранить и закройте окно gedit. Перезагрузите Нм:

сеть-Диспетчер служб судо перезагрузка

Теперь ваши беспроводные нужно правильно управляться Нм.

+961
bakinski87 03 февр. '09 в 4:24

Я установил Ubuntu 12.10 quantal Кетцаль 64 бит, на другой раздел Windows Vista 32 бит (принес эту фабрику и мне полезно для программ, которые приносят).

Я хочу, чтобы клонировать как операционной системы с clonezilla Live, но в Clonezilla-Живые страницы появляется мне разные варианты загрузки, и я не знаю, что все варианты правильные и сделать правильный выбор для оптимального клонирования операционных систем, нужным для меня в Скачать clonezilla-Живые страницы, таковы:

лез-эстабль emisiones (.ИСО / .молнии) - 2.1.1-7

clonezilla-видео-20130314-дискретные-для i386
clonezilla-live-2.1.1-7-amd64.zip
clonezilla-live-2.1.1-7-amd64.iso
clonezilla-live-2.1.1-7-i486.zip
clonezilla-live-2.1.1-7-i486.iso
clonezilla-live-2.1.1-7-i686-pae.zip
clonezilla-live-2.1.1-7-i686-pae.iso

В чем разница между Clonezilla-Live на основе Debian, и альтернативный, основанный на Ubuntu?.

Я хочу сжечь Clonezilla-видео на DVD, так что я думаю, что молния-это не ко мне, нет?

Что такое право выбора мне?

Спасибо заранее любое простое объяснение.

+915
Julid 22 мая 2019 г., 7:58:44

У меня в ту же точку и нашли выход, надеюсь, что это работает для вас также.

Мое оборудование-это GT2222m шлюз с четырехъядерным proccesor и большим объемом оперативной памяти. В основном, с помощью Windows я скачал вещь Wubi, чтобы иметь возможность переключаться между выиграть и Ubuntu 12.10 месяцев назад. Потом пришло уведомление об обновлении запроса для обновления до 13.04 я согласился, и он, казалось, хорошо, пока он где-то повесили во время обновления "Убунту документы". После этого он попал в фиолетовый экран и логотип, и его повесили.

Так вот как я это исправил:

После перезагрузки вам будет предложено выбрать между Windows и Ubuntu -если у вас есть подобные установки в шахте - ты выбрал Ubuntu, и после приходит "GNU версии жратвы..." главное меню с двумя вариантами. Второй способ-это "дополнительные опции..." и т. д., Я выбираю это. Затем идет еще одно меню с несколькими строками, как: "Убунту 13.04.ХХХХХ...". Я выбираю один наиболее упоминая "режим восстановления" в своем названии. Потом я пришел в меню maintanaince и выбрал вариант имени: "dpkg для восстановления сломанных файлов". Потом окно подтверждения с некоторыми предупреждениями, я согласился (как у меня был выбор..) он пошел работать. Я понял, что восстановление каждого файла в установить и он остановился дважды, чтобы спросить меня, если я хотел скачать некоторые из них (в основном, пресловутый "Убунту документы"), как только он вернулся и сказал мне файлы не были там, чтобы скачать, так что я бы сделать что-то еще позже (конечно без подробностей...). Я подтвердил все, что до тех пор, пока это было сделано. Заняло около 20 минут, но это было новое авто. Потом еще окно с предупреждением и я пришел к терминалу, как режим, в котором я должен войти в систему введя имя пользователя и пароль. Слева с командной строке я набрал команду: sudo перезагружаем Набрал свой пароль и ПК перезагружается до normallity обновлена до Ubuntu 13.04

Надеюсь, что это работает для вас.

+866
Sylvia Elliott 13 окт. 2019 г., 8:29:06

Я хочу удалить Windows Vista с моего ноутбука, который в настоящее время работает с двойной загрузкой ОС Vista + Ubuntu и использовать Ubuntu в качестве единственной ОС.

Ноутбук нестабильно при запуске Windows Виста, потому что он выключается без взаимодействия. Убунту работает безупречно на нем. Я думаю в формате ноутбука. Но, это лучше для меня на Ubuntu, только без окна Vista? Посоветуйте, пожалуйста.

+815
Ashley White 4 сент. 2013 г., 10:31:54

Сохраните файл и откройте терминал, выполните следующую команду:

судо смолы xvzf themeFile.tar.gz -с /usr/доли/темы/

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

+777
NWS 8 янв. 2018 г., 23:41:24

Я могу поручиться за обоих, Майнкрафт и Intel видео от процессора. В моем случае, используя Minecraft с NVIDIA или с Intel иногда создает очень странные глюки, как будто я могу видеть весь мир без рельефа, или, может быть, поэтому цвета мусора остановиться на одной стороне экрана и не оставит.

С Intel видеокартой, у меня графика Intel 2000, и это не делает работу правильно с 3D вещи, ну в принципе любую игру. Я могу использовать его для работы в интернете. Даже не глядя и видео в YouTube, но не начинаются ищу игры или все будет висеть, а не только приложения игры. В моем случае я с графикой 2000 года, в вашем случае вы являетесь графика 3000, но если я уверен, многие обновления, полученные в 12.04 по технологии песчаный мост поможет нам с этим проблемы.

Я должен добавить, что я еще не пробовал ППД упомянутых Глаубер Кардосо.

+758
chellebertuk 9 янв. 2012 г., 19:35:50

Вам не придется ничего настраивать самостоятельно. Я запускаю в Ubuntu 12.04 64но вместе с Windows 7 и я просто нажал "установить рядом с Windows" и использовать ползунок, чтобы deterime сколько места я собирался дать каждой ОС. Он должен настроить GRUB и все, кроме себя. Пытались ли вы позволить ему сделать это самим, вместо того, чтобы вручную это делать?

+727
nickolay9 9 июн. 2019 г., 3:11:44

Откройте терминал и выполните следующие команды:

gconftool-2 --Набор /настольный компьютер/гном/URL-адресов обработчиков/НТТР/команда --введите строку 'для Firefox %U', а
gconftool-2 --Набор /настольный компьютер/гном/URL-адресов обработчиков/и HTTPS/команда --введите строку 'для Firefox %U', а

Эта команда говорит свой файл-менеджер для открытия ссылок в браузере Firefox. %U в основном стоит на URL-адрес должен быть открыт. Вы можете прочитать больше об этом здесь.

+672
Vera Maria Mcdowell 28 июл. 2018 г., 19:55:07

Я пытался посмотреть несколько трейлеров от apple.com но вдруг он просит QuickTime, а не показ фильма. Он работал до прошлой недели, не уверен, если некоторые обновления напутал что-то вверх. Любой способ, как я могу проверить его и исправить эту проблему.

Установлены ограничения дополнительно. Браузер Firefox последней версии. VLC плагин установлен.

+659
Poppy 10 мая 2018 г., 2:34:48

Похоже, этот человек имел такую же проблему и был в состоянии исправить это путем редактирования файла xorg.конфигурационный файл. Вы можете выполнять команды себя или просто скопировать и вставить файл конфига автор написал в комментариях.

+655
Enrique de Miguel 11 апр. 2018 г., 16:31:08

Я знаю что было много вопросов по этому поводу, но большинство, кажется, были при использовании Wubi, или маршрутизатор и или конкретных микросхем.

Для меня интернет на моем раздел с Ubuntu-это медленно, чтобы начать, используя последний хром на 13.04. (у меня Асер Aspire 5349)
Каждая страница просто сидит там 5 секунд, потом начинает загружать, да и то давно.
Однако, в Windows 8, он работает безотказно. Только этим роутером уже около месяца, все другие устройства и телефоны в доме работают нормально, но просто моя Ubuntu моем машинку, кажется, не работает правильно, либо с Firefox (катастрофические), или хром.

Это хоть и не постоянный. Иногда, он будет загрузить совершенно нормально, никаких проблем. Но около половины - 70% времени, это просто медленное начало и медленное, чтобы закончить.

Я действительно не волнует, если это только с двойной загрузкой проблема, так как я собираюсь стать Убунту-только с утра, но если это будет проблемой для меня тогда тоже, только с Убунту, то я хотел бы видеть, что происходит с ним.

Однако на Chrome я заметил в маленьком "статус бар" в нижнем углу, когда это медлительность(страница даже не начинает загрузку) он пишет "отправка запроса...", если это поможет...

Любая помощь приветствуется!

+640
Misza 4 апр. 2019 г., 5:08:05

Сначала вам может понадобиться, чтобы дать .ш файл разрешение на выполнение. чмод +х file.shтогда вы можете выполнить ее с ./file.sh.

Вы также можете щелкнуть правой кнопкой мыши по файлу, выбираем Свойства, Затем выберите Разрешения, а затем выберите 'Разрешить выполнение файла как программы. Тогда вы дважды щелкните файл и выберите пункт 'Выполнить в терминале' и 'Run'.

+588
user6651517 12 мая 2019 г., 20:28:52

Установите CompizConfigSettingsManager ( судо apt-получить установку compizconfig-настройки-диспетчер )

Перейдите в "сетке" (в разделе "Управление окнами") > "Привязок" (должен быть установлен). Оттуда, настроить привязки клавиш для 'проиграть' и 'поставить правильно'.

+581
Clara Cox 15 июл. 2016 г., 15:37:38

Я только что купил новый ПК, который является Асер Aspire В3-551 г. Во-первых, я установил Ubuntu 12.10. Однако, я не могу использовать некоторые функции, потому что это не стабильный.

Затем, я установил 12.04. Но мой тачпад не работает. Я нашел в KDE-настройка-touchad и ККМ-тачпад с РЕПО. Даже так, это все равно не сработает.

Кстати, кнопки работают на моем тачпаде и моя ОС 64бит.

+572
Jawad Ezzahraoui 13 мая 2013 г., 20:30:25

На самом деле вы можете это исправить, просто делая

судо РМ /usr/share/mime/packages/kde.xml 
обновление-мим-база данных команду sudo /usr/доли/мим

Вот цитата из Ана Герерро в 2008 году, так что думаю, что это будет исправлено сейчас.

Эти фальшивые типы устанавливаются к kdelibs с файлом /usr/share/mime/packages/kde.xml поскольку давным-давно. Они хранятся в kde4libs.

В последней версии, обновление-мим-база данных стала подробного об этом неизвестно типа, и поэтому вы получаете эту ошибку при обновлении вещи, а затем обновление-мим-базы данных выполняется. Он вряд ли будет изменен.

+563
user37567 6 авг. 2012 г., 0:57:18

Ок, вы же не можете пропустить ОС от менеджера обновлений. Поэтому вам придется загружать из файла в Ubuntu 12.04 ИСО (через компакт-диск, например.).

Этими способами можно установить ИСО:

Живой CD: следуйте инструкциям!

С USB установщик снова, выполните действия!

Автономный установщик: установка следуйте инструкциям!

+542
HendraWD 2 июн. 2019 г., 2:28:49

У меня ноутбук и настольных компьютеров под управлением Ubuntu и Xubuntu соответственно оба 64-разрядные версии 11.10

Я использую XBMC на обеих машинах играть СМИ.

Я хочу получить доступ к моей медиа на рабочем столе и играть на моем ноутбуке....

Мне нужно что-то, что можно включить обновление библиотеки [пробовал UPnP и я vereytime найти directorry]

я попробовал много вещей, но на машинах других машина не появится в сети Windows или автоопределение...

ручное добавление IP-адреса открывается окно для ввода пароля, и я не могу даже открыть с ID и передать этой машины.

Пожалуйста, помогите мне!

+535
Hossein MN 5 июн. 2019 г., 9:01:27

Моя рекомендация-Банши, но это вопрос ваших предпочтений.

+532
Aleksandra Neckahuptysiowska 3 мая 2017 г., 10:18:04

Это, наверное, следующая ошибка: https://bugs.launchpad.net/ubuntu/+источник/udev из/+ошибка/1008325

Однако, я подозреваю, что была намеренно изменена мейнтейнеров Ubuntu для консистенции.

+497
Asadefa 5 апр. 2013 г., 19:26:25

procfs представлена информация о запущенных процессах.

Например:

$ сна 120 &
[2] 11581
$ Общ /прок/11581
...
команду
чвд
...
$ кот /труды/11581/командной строки
sleep120
+422
Jeffrey Lott 5 авг. 2015 г., 5:10:24

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

У меня в XAMPP работает, и Firefox открыт и я начала виртуальной машины используя VirtualBox. Чем у меня были некоторые проблемы с переключатель рабочих мест (не мог нажать Esc или клавишу Windows и мышь не реагируют... все было заблокировано), поэтому мне пришлось выключить ноутбук (удерживая кнопку питания в течение 5 секунд).

Когда я начал его снова, в XAMPP не работает. Я запустить его через "каталог/opt/lampp/lampp пуск" обычно, но я не могу достичь его с помощью Firefox. Просто как Apache не работает.

Я использую ElementaryOS на 64-разрядной студия Dell ноутбук и в XAMPP 1.8.1.

Есть ли здесь гуру в XAMPP?

+340
Sathira Ranaweera 24 февр. 2015 г., 15:06:39

Использовать несколько окон инструмент для монтажа изображения (как Деамон средства) и запустить wubi, просто дважды щелкните на wubi.exe. Это не совсем нормально , но это близко достаточно для большинства целей.

+334
Raja Reddy Karangula 17 февр. 2013 г., 17:22:46

Извините, если этот вопрос задавали ранее; если да, то я не мог найти его.

На 12.04 я мог подключиться к Wi-Fi и загружать страницы в интернете, но меня просят ввести пароль от WiFi каждые десять секунд. Если я вернуться, он снова подключается нормально, но он просит снова через десять секунд, делая Wi-Fi Интернет, по сути, непригодным для использования.

Я использую ThinkPad в компании Lenovo SL510, если это имеет значение. Я никогда не имел подобную проблему в 11.10.

+275
goron 23 сент. 2013 г., 5:30:00

Получил это работает следующим образом, переход в/var/www в/пример.ком/целевой/public_html папку затем выдал следующее: в файле /var/www в/пример.ком/целевой/public_html Факер. Может быть, что я не в правильной папке.

+224
Stack V 6 дек. 2015 г., 10:16:20

Как сделать внутренние звуки работая с MacBook? Я использую Ubuntu 10.10. Звуки работают, когда я использую гарнитуру, но внутренние звуки не работает.

+157
sazzadhusen iproliya 30 июл. 2016 г., 5:07:02

Проблема была я был на Ubuntu 64-бит, так что я перешел на Ubuntu 32-битная и все работает теперь нормально.

+152
Carl Harter 27 нояб. 2017 г., 7:04:06

я снимаю виртуальную машину с Ubuntu сервер. Я вошел в систему через SSH-команды в терминале от моего Ubuntu домашнего ПК. Прежде чем я вышел, я случайно набрал "остановка СШ" в терминале, потому что я думал, что закончится мой SSH-сессии с сервером. В конце "выход" сделал это - теперь я не могу подключиться к серверу, используя "СШ пользователя@хост" с сообщением об ошибке:

СШ: подключение к хост-порт хоста 22: соединение отклонено

Я думаю, что закрыли СШ-модуль на сервере. Как альтернативный способ связи, я уже пробовал команду "пользователь по [email protected]хозяина", но в итоге эта команда также пытается по SSH к серверу. Как я снимал эту виртуальную машину, я не имеют прямого доступа к серверам файловой структуры, чтобы изменить конфигурационный файл или что-то подобное. Есть ли другой способ, кроме SSH для подключения к серверу?

Спасибо заранее

+44
mia22260891 12 дек. 2010 г., 12:11:17

у меня есть работа вокруг для следующей ошибкой :

Шаг 1: Посмотрите, что вам нужно сделать, это, во-первых, сделайте резервную копию скрипта vpnc через следующую команду :

судо СР файл /etc/vpnc/vpnc-скрипт /etc/vpnc/vpnc-скрипт.ВСК

Шаг 2: теперь то, что вам нужно сделать, это открыть vpnc-скрипт с помощью любого редактора любовь к работе с(Ви, в vim , emacs, в Редакторе gedit).

судо команду gedit файл /etc/vpnc/vpnc-скрипт

и удалить контент внутри него и скопировать содержимое ниже :


#!/Бен/ш
# Список параметров, передаваемых через окружающую среду
#* причина, почему этот сценарий был назван одним из: пре-инициализации, отсоединения
#* VPNGATEWAY -- адрес шлюза VPN (всегда присутствует)
#* TUNDEV-устройство тоннеля (всегда присутствует)
#* INTERNAL_IP4_ADDRESS -- адреса (всегда присутствует)
#* INTERNAL_IP4_MTU -- МТУ (чаще всего неопределенные)
#* INTERNAL_IP4_NETMASK -- Маска (часто отключенное)
#* INTERNAL_IP4_NETMASKLEN-длина маски сети (чаще всего неопределенные)
#* INTERNAL_IP4_NETADDR -- адрес сети (только если маска набор)
#* INTERNAL_IP4_DNS-список DNS-серверов
#* INTERNAL_IP4_NBNS -- список wins-серверов
#* INTERNAL_IP6_ADDRESS -- IPv6-адрес 
#* INTERNAL_IP6_NETMASK -- маска сети протокол IPv6 
#* INTERNAL_IP6_DNS -- список для IPv6 DNS-серверов
#* CISCO_DEF_DOMAIN -- имя домена по умолчанию 
#* CISCO_BANNER -- баннер с сервера
#* CISCO_SPLIT_INC -- количество сетей в Сплит-сети-список
#* CISCO_SPLIT_INC_%d_ADDR -- сетевой адрес
#* CISCO_SPLIT_INC_%d_MASK -- маска подсети (например: 255.255.255.0)
#* CISCO_SPLIT_INC_%d_MASKLEN -- masklen подсети (например: 24)
#* CISCO_SPLIT_INC_%d_PROTOCOL -- протокол (чаще всего 0)
#* CISCO_SPLIT_INC_%d_SPORT -- исходный порт (чаще всего 0)
#* CISCO_SPLIT_INC_%d_DPORT -- порт назначения (чаще всего 0)
#* CISCO_IPV6_SPLIT_INC -- количество сетей в Сплит-сети-список адресов IPv6 
#* CISCO_IPV6_SPLIT_INC_%d_ADDR -- сетевой адрес IPv6 
#* CISCO_IPV6_SPLIT_INC_$%d_MASKLEN -- подсети IPv6 masklen

# FIXMEs:

# Раздел: маршрут обработки 

# 1) на 3 значения CISCO_SPLIT_INC_%d_PROTOCOL/спорт/DPORT в настоящее время игнорируется
# Для того, чтобы использовать их, нам, возможно, понадобится ОС конкретных решений
# * В Linux: iptables в -Т мангл-я следующее <условия> -й маршрут --оиф $TUNDEV
# Этот будет *альтернатива* изменения маршрутов (и, следовательно, 2) и 3)
# не должен быть актуален на всех)
# 2) Существуют две различные функции, чтобы установить маршруты: общие маршруты и
# маршрут по умолчанию. Почему маршрут по умолчанию выполняется с помощью универсального варианта маршрута?
# 3) в случае разделения туннеля, все маршруты, но маршрут по умолчанию может вам заменить
# не восстанавливается позже. Надо обязательно проверить и сохранить их просто
# как маршрут по умолчанию
# 4) Ответы на DHCP-сервер не должен быть отправлен в туннель

Обращение # раздел B: разделение DNS 

# 1) может быть раздача может сделать что-то подобное
# 2) парсить пакеты DNS выходить через тоннель и перенаправить их в исходное DNS-сервер

#ОКР | сортировка
#комплект -х

# =========== скрипт (переменная) установки ====================================

Путь=/каталоге:/usr на/sbin:$путь

ОС="`команде uname -с"

HOOKS_DIR=в/etc/vpnc
DEFAULT_ROUTE_FILE=/ВАР/работа/vpnc/маршрут по умолчанию
RESOLV_CONF_BACKUP=/ВАР/работа/vpnc/файл resolv.конф-резервное копирование
ИМЯ_СКРИПТА=`и basename $0`

# в некоторых системах, например. Дарвин и FreeBSD, чернослив в /var/запуск при загрузке
если [ ! -Д "в/var/работа/vpnc" ]; затем
 команды mkdir -р в /var/работа/vpnc
 [ -X в каталог /sbin команды restorecon ] & & на /sbin/команды restorecon /ВАР/работа/vpnc
интернет

# глупый обработки: без жира в /usr/местные/Бен ... (в stdout)
IPROUTE="`ИС | команда grep '^/"" 2> /dev/нуль

если команде ifconfig --Help и 2>&1 | grep в составе busybox > /dev/нуль; тогда
ifconfig_syntax_inet=""
еще
ifconfig_syntax_inet="инет"
интернет

если [ "$ОС" = "Линукс" ]; затем
ifconfig_syntax_ptp="pointopoint"
route_syntax_gw="гв"
route_syntax_del="дель"
route_syntax_netmask="маска"
еще
ifconfig_syntax_ptp=""
route_syntax_gw=""
route_syntax_del="удалить"
route_syntax_netmask="-маска"
интернет
если [ "$ОС" = "управления" ]; затем
route_syntax_interface="интерфейс"
ifconfig_syntax_ptpv6="$INTERNAL_IP6_ADDRESS"
еще
route_syntax_interface=""
ifconfig_syntax_ptpv6=""
интернет

если [ -р в /etc/openwrt_release ] && [ -Н "$OPENWRT_INTERFACE" ]; затем
 . /etc/functions.sh
 включить /Либ/сети
MODIFYRESOLVCONF=modify_resolvconf_openwrt
RESTORERESOLVCONF=restore_resolvconf_openwrt
Элиф [ -х с /sbin/resolvconf ]; затем дополнительный инструмент # на Debian, Ubuntu и Gentoo в
MODIFYRESOLVCONF=modify_resolvconf_manager
RESTORERESOLVCONF=restore_resolvconf_manager
Элиф [ -х с /sbin/netconfig от имени ]; затем инструмент # на SUSE после 11.1
MODIFYRESOLVCONF=modify_resolvconf_suse_netconfig
RESTORERESOLVCONF=restore_resolvconf_suse_netconfig
Элиф [ -х с /sbin/modify_resolvconf ]; тогда # обязательный инструмент на SUSE раньше, чем 11.1
MODIFYRESOLVCONF=modify_resolvconf_suse
RESTORERESOLVCONF=restore_resolvconf_suse
еще # универсальный для любой ОС
MODIFYRESOLVCONF=modify_resolvconf_generic
RESTORERESOLVCONF=restore_resolvconf_generic
интернет


# =========== сценарий крючки =================================================

run_hooks() {
Крюк="$1"

 если [ -д ${HOOKS_DIR}/${крюк}.д ]; Тогда
 для сценария в ${HOOKS_DIR}/${крюк}.д/* ; делать
 [ -Ф $скрипт ] && . $скрипт
сделано
интернет
}

# =========== туннельный интерфейс обработки ====================================

do_ifconfig() {
 если [ -н "$INTERNAL_IP4_MTU" ]; затем
МТУ=$INTERNAL_IP4_MTU
 Элиф [ -Н "$IPROUTE" ]; затем
 Маршрут MTUDEV=`$IPROUTE сделать "$VPNGATEWAY" | СЭД -НЭ 'с/^.*Дэв \([а-З0-9]*\).*$/\1/п"
 Ссылка показать МТУ=`$IPROUTE "$MTUDEV" | СЭД -пе 'с/^.*МТУ \([[:цифра:]]\+\).*$/\1/п"
 если [ -н "$МТУ" ]; затем
 МТУ=`выражение $МТУ - 88`
интернет
интернет

 если [ -з "$МТУ" ]; затем
МТУ=1412
интернет

 # Указывать на интерфейс точки требуют маской 255.255.255.255 на некоторых системах
 если [ -н "$IPROUTE" ]; затем
 $IPROUTE установить ссылку Дэв "$TUNDEV" до МТУ "$МТУ"
 $IPROUTE адрес добавить "INTERNAL_IP4_ADDRESS $/255.255.255.255" равный "$INTERNAL_IP4_ADDRESS" Дэв "$TUNDEV"
еще
 команду ifconfig "$TUNDEV" ${ifconfig_syntax_inet} "$INTERNAL_IP4_ADDRESS" $ifconfig_syntax_ptp "$INTERNAL_IP4_ADDRESS" сетевая маска 255.255.255.255 МТУ ${МТУ} до
интернет

 если [ -н "$INTERNAL_IP4_NETMASK" ]; затем
 set_network_route INTERNAL_IP4_NETADDR $INTERNAL_IP4_NETMASK $$INTERNAL_IP4_NETMASKLEN
интернет

 # Если маска, содержащая адрес _и_ маска
 если [ -н "$INTERNAL_IP6_ADDRESS" ] && [ -з "$INTERNAL_IP6_NETMASK" ]; затем
INTERNAL_IP6_NETMASK="INTERNAL_IP6_ADDRESS$/128"
интернет
 если [ -н "$INTERNAL_IP6_NETMASK" ]; затем
 если [ -н "$IPROUTE" ]; затем
 $IPROUTE -6 аддр добавить $INTERNAL_IP6_NETMASK Дэв $TUNDEV
еще
 # В отличие от старых ИС, мы не указываем dest_address
 # вот на *БСД. В OpenBSD за одним отказываются принимать
 # входящие пакеты на этот адрес, если мы делаем.
 # Для OpenVPN делает то же самое (дает dest_address для устаревших ИС
 # но не для IPv6).
 # Только Солярис нуждается в этом; следовательно, $ifconfig_syntax_ptpv6
 команду ifconfig "$TUNDEV" inet6 $INTERNAL_IP6_NETMASK ifconfig_syntax_ptpv6 $МТУ $МТУ до
интернет
интернет
}

destroy_tun_device() {
 дело "$ОС" в
 Проект NetBSD|FreeBSD) и # и, наверное, другие...
 команду ifconfig "$TUNDEV" уничтожить
;;
эсок
}

# =========== маршрут обработки ====================================

если [ -н "$IPROUTE" ]; затем
 fix_ip_get_output () {
 СЭД -Е 'С/ /\Н/Г' | \
 СЭД -Пе '1П;/через/{Н, Р};/Дев/{н, р};/в src/{Н, Р};/МТУ/{Н, Р}'
}

 set_vpngateway_route() {
 $Маршрут IPROUTE добавить `$IPROUTE сделать "$VPNGATEWAY" | fix_ip_get_output`
 Маршрут $IPROUTE очистить кэш 
}

 del_vpngateway_route() {
 $IPROUTE маршрута $route_syntax_del "$VPNGATEWAY"
 Маршрут $IPROUTE очистить кэш 
}

 set_default_route() {
 $IPROUTE маршрут | команда grep '^по умолчанию:' | fix_ip_get_output > "$DEFAULT_ROUTE_FILE"
 $IPROUTE путь заменить умолчанию Дэв "$TUNDEV"
 Маршрут $IPROUTE очистить кэш 
}

 set_network_route() {
Сеть="$1"
Маска="$2"
NETMASKLEN="$3"
 $IPROUTE маршруту заменить "$сети$NETMASKLEN" Дэв "$TUNDEV"
 Маршрут $IPROUTE очистить кэш 
}

 reset_default_route() {
 если [ -с "$DEFAULT_ROUTE_FILE" ]; затем
 $IPROUTE маршруту заменить "кошки" "$DEFAULT_ROUTE_FILE"`
 Маршрут $IPROUTE очистить кэш 
 РМ -Ф -- "$DEFAULT_ROUTE_FILE"
интернет
}

 del_network_route() {
Сеть="$1"
Маска="$2"
NETMASKLEN="$3"
 $IPROUTE маршрута $route_syntax_del "$сети/$NETMASKLEN" Дэв "$TUNDEV"
 Маршрут $IPROUTE очистить кэш 
}

 set_ipv6_default_route() {
 # Нам не сохранить/восстановить маршрута IPv6 по умолчанию, просто добавьте более высокий приоритет, одним.
 IPROUTE маршрут -6 $добавить по умолчанию Дэв "$TUNDEV" метрика 1
 $IPROUTE -6 маршрута очистить кэш 
}

 set_ipv6_network_route() {
Сеть="$1"
NETMASKLEN="$2"
 Маршрут $IPROUTE -6 заменить "$сети$NETMASKLEN" Дэв "$TUNDEV"
 Маршрут $IPROUTE очистить кэш 
}

 reset_ipv6_default_route() {
 $IPROUTE -6 маршруту дель по умолчанию Дэв "$TUNDEV"
 Маршрут $IPROUTE очистить кэш 
}

 del_ipv6_network_route() {
Сеть="$1"
NETMASKLEN="$2"
 $IPROUTE маршрут -6 дель "$сети/$NETMASKLEN" Дэв "$TUNDEV"
 $IPROUTE -6 маршрута очистить кэш 
}
используйте команду маршруту еще # 
 get_default_gw() {
 # не -п должны дать --цифровой выход?
 # видимо не...
 # Избавиться от строк, содержащих адреса IPv6 (':')
 командой netstat-р-н с | у awk '/:/ { далее; } /^(по умолчанию|0\.0\.0\.0)/ { печати $2; }'
}

 set_vpngateway_route() {
 маршрут добавить -хозяин "$VPNGATEWAY" $route_syntax_gw "`get_default_gw`"
}

 del_vpngateway_route() {
 маршрут $route_syntax_del -хозяин "$VPNGATEWAY" $route_syntax_gw "`get_default_gw`"
}

 set_default_route() {
DEFAULTGW="`get_default_gw`"
 Эхо "$DEFAULTGW" > "$DEFAULT_ROUTE_FILE"
 маршрут $route_syntax_del по умолчанию $route_syntax_gw "$DEFAULTGW"
 добавление маршрута по умолчанию $route_syntax_gw "$INTERNAL_IP4_ADDRESS" $route_syntax_interface
}

 set_network_route() {
Сеть="$1"
Маска="$2"
NETMASKLEN="$3"
 del_network_route "$" сети "$маска" "$NETMASKLEN"
 маршрут добавить -сетка "$сети" $route_syntax_netmask "$маска" $route_syntax_gw "$INTERNAL_IP4_ADDRESS" $route_syntax_interface
}

 reset_default_route() {
 если [ -с "$DEFAULT_ROUTE_FILE" ]; затем
 маршрут $route_syntax_del по умолчанию $route_syntax_gw "`get_default_gw`" $route_syntax_interface
 добавление маршрута по умолчанию $route_syntax_gw кошка "$DEFAULT_ROUTE_FILE"`
 РМ -Ф -- "$DEFAULT_ROUTE_FILE"
интернет
}

 del_network_route() {
 дело "$ОС" в
 В Linux|исключена|Дарвин|в SunOS) # и, наверное, другие...
 # маршруты удаляются автоматически при завершении работы устройства 
вернуться
;;
эсок
Сеть="$1"
Маска="$2"
NETMASKLEN="$3"
 маршрут $route_syntax_del -Нэт "$сети" $route_syntax_netmask "$маска" $route_syntax_gw "$INTERNAL_IP4_ADDRESS"
}

 set_ipv6_default_route() {
 маршрут добавить -inet6 по умолчанию "$INTERNAL_IP6_ADDRESS" $route_syntax_interface
}

 set_ipv6_network_route() {
Сеть="$1"
Маска="$2"
 маршрут добавить -inet6 -Нэт "$сети/$маска" "$INTERNAL_IP6_ADDRESS" $route_syntax_interface
:
}

 reset_ipv6_default_route() {
 маршрут $route_syntax_del -inet6 по умолчанию "$INTERNAL_IP6_ADDRESS"
:
}

 del_ipv6_network_route() {
Сеть="$1"
Маска="$2"
 маршрут $route_syntax_del -inet6 "$сети/$маска" "$INTERNAL_IP6_ADDRESS"
:
}

интернет

# =========== файл resolv.обработка конф====================================

# =========== файл resolv.конф обработки для любой ОС =========================

modify_resolvconf_generic() {
 команда grep '^#@[email protected]' /и т. д./файл resolv.в conf > /dev/нуль 2>&1 || СР -- /и т. д./файл resolv.конф "$RESOLV_CONF_BACKUP"
 NEW_RESOLVCONF="#@[email protected] -- этот файл генерируется vpnc
# и будут заменены vpnc
# пока выше знак является неизменным"

 # Помните, первоначальная стоимость CISCO_DEF_DOMAIN нам понадобится позже
CISCO_DEF_DOMAIN_ORIG="$CISCO_DEF_DOMAIN"
 # Не наступать на значение INTERNAL_IP4_DNS, использовать временную переменную
INTERNAL_IP4_DNS_TEMP="$INTERNAL_IP4_DNS"
 старпома 6< "$RESOLV_CONF_BACKUP"
 в то время как line читать <&6 ; делать
 дело "$Line" в
имен*)
 если [ -н "$INTERNAL_IP4_DNS_TEMP" ]; затем
 читать INTERNAL_IP4_DNS_TEMP ONE_NAMESERVER <<-ВФ
$INTERNAL_IP4_DNS_TEMP
ВФ
 Строка="сервер ONE_NAMESERVER$"
еще
Строка=""
интернет
;;
поиск*)
 если [ -н "$CISCO_DEF_DOMAIN" ]; затем
 СТРОКА="$СТРОКА $CISCO_DEF_DOMAIN"
CISCO_DEF_DOMAIN=""
интернет
;;
домен*)
 если [ -н "$CISCO_DEF_DOMAIN" ]; затем
 Строка="домен $CISCO_DEF_DOMAIN"
CISCO_DEF_DOMAIN=""
интернет
;;
эсок
NEW_RESOLVCONF="$NEW_RESOLVCONF
$Линия"
сделано
 старпома 6<&-

 для меня в $INTERNAL_IP4_DNS_TEMP ; делать
NEW_RESOLVCONF="$NEW_RESOLVCONF
сервер имен $я"
сделано
 если [ -н "$CISCO_DEF_DOMAIN" ]; затем
NEW_RESOLVCONF="$NEW_RESOLVCONF
поиск $CISCO_DEF_DOMAIN"
интернет
 Эхо "$NEW_RESOLVCONF" > в /etc/файл resolv.конф

 если [ "$ОС" = "Дарвин" ]; затем
 uname-Р дело "``" в
 # Пропуск для предварительного 10.4 систем
4.*|5.*|6.*|7.*)
;;
 # 10.4 и позже требуют использования scutil для DNS, чтобы работать должным образом
*)
OVERRIDE_PRIMARY=""
 если [ -н "$CISCO_SPLIT_INC" ]; затем
 если [ $CISCO_SPLIT_INC -ЛТ 1 ]; тогда
 # Должен переопределить на правильный маршрут по умолчанию 
 # Нельзя использовать несколько DNS сопоставления в данном случае
 OVERRIDE_PRIMARY='д'.добавить OverridePrimary # 1'
интернет
интернет
 # Раскомментируйте следующие Если интернет пару использовать несколько
 ДНС # соответствуя при наличии. Когда несколько DNS сопоставления
 # присутствует, что-нибудь читая файл /etc/файл resolv.файл conf 
 # напрямую, вероятно, не будет работать как задумано.
 #если [ -з "$CISCO_DEF_DOMAIN_ORIG" ]; затем
 # Нельзя использовать несколько DNS без домена
 OVERRIDE_PRIMARY='д'.добавить OverridePrimary # 1'
#интернет
 scutil >/dev/нуль 2>&1 <<-ВФ
открыть
д.инит
 д.добавить ServerAddresses * $INTERNAL_IP4_DNS
 набор Состояние:/сети//$TUNDEV/ДНС
д.инит
 следующая строка # перекрывает шлюз по умолчанию и разрывы сплит маршрутизации
 # д. добавить маршрутизатор $INTERNAL_IP4_ADDRESS
 д.добавить адреса * $INTERNAL_IP4_ADDRESS
 д.добавить маски подсети * 255.255.255.255
 д.добавить Имя_интерфейса $TUNDEV
$OVERRIDE_PRIMARY
 набор Состояние:/сети//$TUNDEV/с IPv4
рядом
ВФ
 если [ -н "$CISCO_DEF_DOMAIN_ORIG" ]; затем
 scutil >/dev/нуль 2>&1 <<-ВФ
открыть
 получить:/сети//$TUNDEV/ДНС
 д.добавить имя_домена $CISCO_DEF_DOMAIN_ORIG
 д.добавить SearchDomains * $CISCO_DEF_DOMAIN_ORIG
 д.добавить SupplementalMatchDomains * $CISCO_DEF_DOMAIN_ORIG
 набор Состояние:/сети//$TUNDEV/ДНС
рядом
ВФ
интернет
;;
эсок
интернет
}

restore_resolvconf_generic() {
 если [ ! -Ф "$RESOLV_CONF_BACKUP" ]; затем
вернуться
интернет
 команда grep '^#@[email protected]' /и т. д./файл resolv.в conf > /dev/нуль 2>&1 && кот "$RESOLV_CONF_BACKUP" > в /etc/файл resolv.конф
 РМ -Ф -- "$RESOLV_CONF_BACKUP"

 если [ "$ОС" = "Дарвин" ]; затем
 uname-Р дело "``" в
 # Пропуск для предварительного 10.4 систем
4.*|5.*|6.*|7.*)
;;
 # 10.4 и позже требуют использования scutil для DNS, чтобы работать должным образом
*)
 scutil >/dev/нуль 2>&1 <<-ВФ
открыть
 удалить Состояние:/сети//$TUNDEV/с IPv4
 удалить Состояние:/сети//$TUNDEV/ДНС
рядом
ВФ
;;
эсок
интернет
}
# === файл resolv.конф обработки через /sbin/netconfig от имени (в SUSE 11.1) =====================

# В SUSE предоставляет скрипт, который изменяет файл resolv.конф. Использовать его, потому что он будет
# перезапуск/перезагрузка всех других служб, которые заботятся о нем (например, lwresd). [непонятно, если это все еще актуально, но, вероятно, - МЛК]

modify_resolvconf_suse_netconfig()
{
 на /sbin/netconfig от имени изменить -с vpnc -я "$TUNDEV" <<-ВФ
ИНТЕРФЕЙС='$TUNDEV'
$INTERNAL_IP4_DNS DNS-СЕРВЕРОВ=''
$DNSDOMAIN='CISCO_DEF_DOMAIN'
ВФ
}
# Восстановить файл resolv.conf для старого содержания на SUSE
restore_resolvconf_suse_netconfig()
{
 на /sbin/netconfig от имени удалить -с vpnc -я "$TUNDEV"
}

# === файл resolv.конф обработки через /sbin/modify_resolvconf (в SUSE) =====================

# В SUSE предоставляет скрипт, который изменяет файл resolv.конф. Использовать его, потому что он будет
# перезапуск/перезагрузка всех других служб, которые заботятся о нем (например, lwresd).

modify_resolvconf_suse()
{
 Более ранних версий-Ф FULL_SCRIPTNAME=`$0`
RESOLV_OPTS="
 испытаний N "$INTERNAL_IP4_DNS" && RESOLV_OPTS="-Н \"$INTERNAL_IP4_DNS\""
 испытаний N "$CISCO_DEF_DOMAIN" && RESOLV_OPTS="$RESOLV_OPTS -д $CISCO_DEF_DOMAIN"
 испытаний N "$RESOLV_OPTS" && ивал на /sbin/modify_resolvconf изменить -с vpnc -п $ИМЯ_СЦЕНАРИЯ -Ф $FULL_SCRIPTNAME -е $TUNDEV $RESOLV_OPTS -Т \"этот файл был создан на $ИМЯ_СЦЕНАРИЯ\"
}

# Восстановить файл resolv.conf для старого содержания на SUSE
restore_resolvconf_suse()
{
 Более ранних версий-Ф FULL_SCRIPTNAME=`$0`
 на /sbin/modify_resolvconf восстановления -с vpnc -п $ИМЯ_СЦЕНАРИЯ -Ф $FULL_SCRIPTNAME -е $TUNDEV
}

# === файл resolv.конф обработки через ЮСИ (маршрутизатор OpenWRT) =========

modify_resolvconf_openwrt() {
 add_dns $OPENWRT_INTERFACE $INTERNAL_IP4_DNS
}

restore_resolvconf_openwrt() {
 remove_dns $OPENWRT_INTERFACE
}
# === файл resolv.конф обработки через /sbin/resolvconf (Дебиан, Убунту, субантарктический)) =========

modify_resolvconf_manager() {
NEW_RESOLVCONF=""
 для меня в $INTERNAL_IP4_DNS; делать
NEW_RESOLVCONF="$NEW_RESOLVCONF
сервер имен $я"
сделано
 если [ -н "$CISCO_DEF_DOMAIN" ]; затем
NEW_RESOLVCONF="$NEW_RESOLVCONF
домен $CISCO_DEF_DOMAIN"
интернет
 Эхо "$NEW_RESOLVCONF" | с /sbin/resolvconf -в $TUNDEV
}

restore_resolvconf_manager() {
 на /sbin/resolvconf -д $TUNDEV
}

# ========= Топлевел Государственная транспортная обработка =======================================

kernel_is_2_6_or_above() {
 случае выполнения команды `uname -r` в
1.*|2.[012345]*)
 возвращение 1
;;
*)
 возвращает 0
;;
эсок
}

do_pre_init() {
 если [ "$ОС" = "Линукс" ]; затем
 если (ОТВ 6<> /Дев/сеть/Тун) > /dev/нуль 2>&1 ; затем
:
 еще # не может открыть /dev/сеть/Тун
 тест -е /труды/системы/ядра/команды modprobe && `кот /труды/системы/ядра/команды modprobe Тун 2>/Дев/нуль
 # исправление для разбитые в devfs в ядре 2.6.х
 если [ "`более ранних версий устройства /dev/объем/Тун`" = смешанная/сеть/Тун \
 -а ! -е с /dev/сеть/дополнительно/сеть/Тун -А-Е в /dev/смешанная/сеть/Тун ] ; тогда
 ЛН-СФ /разработка/смешанная/сеть/Тун /Дев/сеть/Тун
интернет
 # убедитесь, что устройство tun существует
 если [ ! -е с /dev/сеть/Тун ]; тогда
 команды mkdir -Р /Дев/нетто
 системный вызов mknod -м 0640 /Дев/нетто/Тун с 10 200
 [ -X в каталог /sbin команды restorecon ] & & на /sbin/команды restorecon /Дев/сеть/Тун
интернет
 # временное решение для возможной задержки в udev, спал Макс. 10С
 если kernel_is_2_6_or_above ; затем
 для X в последующие 100` ; сделать
 (ОТВ 6<> /Дев/сеть/Тун) > /dev/нуль 2>&1 && разрыв;
 спать 0.1
сделано
интернет
интернет
 Элиф [ "$ОС" = "FreeBSD в" ]; затем
 если [ ! -е с /dev/Тун ]; тогда
 kldload if_tun
интернет
 Элиф [ "$ОС" = "на GNU/kFreeBSD разрешено" ]; затем
 если [ ! -е с /dev/Тун ]; тогда
 kldload if_tun
интернет
 Элиф [ "$ОС" = "версий" ]; затем
:
 Элиф [ "$ОС" = "в OpenBSD" ]; затем
:
 Элиф [ "$ОС" = "управления" ]; затем
:
 Элиф [ "$ОС" = "Дарвин" ]; затем
:
интернет
}

do_connect() {
 если [ -н "$CISCO_BANNER" ]; затем
 Эхо "подключить баннер:"
 Эхо "$CISCO_BANNER" | в то время как line чтения ; делать Эхо "|" "$строка" ; сделано
Эхо
интернет

set_vpngateway_route
do_ifconfig
 если [ -н "$CISCO_SPLIT_INC" ]; затем
я=0
 в то время как [ $я -это $CISCO_SPLIT_INC ] ; делать
 сеть эвал="\${CISCO_SPLIT_INC_${я}_ADDR}"
 ивала маска="\${CISCO_SPLIT_INC_${я}_MASK}"
 ивала NETMASKLEN="\${CISCO_SPLIT_INC_${я}_MASKLEN}"
 если [ $Сети != "0.0.0.0" ]; затем
 set_network_route "$" сети "$маска" "$NETMASKLEN"
еще
set_default_route
интернет
 я=`выражение $я + 1`
сделано
 для меня в $INTERNAL_IP4_DNS ; делать
 Эхо "$я" | например : >/dev/нуль || \
 set_network_route "$я" "255.255.255.255" "32"
сделано
 Элиф [ -Н "$INTERNAL_IP4_ADDRESS" ]; затем
set_default_route
интернет
 если [ -н "$CISCO_IPV6_SPLIT_INC" ]; затем
я=0
 в то время как [ $я -это CISCO_IPV6_SPLIT_INC$] ; делать
 сеть эвал="\${CISCO_IPV6_SPLIT_INC_${я}_ADDR}"
 ивала NETMASKLEN="\${CISCO_IPV6_SPLIT_INC_${я}_MASKLEN}"
 если [ $NETMASKLEN -ЛТ 128 ]; тогда
 set_ipv6_network_route "$" сети "$NETMASKLEN"
еще
set_ipv6_default_route
интернет
 я=`выражение $я + 1`
сделано
 для меня в $INTERNAL_IP4_DNS ; делать
 если Эхо "$я" | например : >/dev/нуль; тогда
 set_ipv6_network_route "$я" "128"
интернет
сделано
 Элиф [ -Н "$INTERNAL_IP6_NETMASK" о-n "$INTERNAL_IP6_ADDRESS" ]; затем
set_ipv6_default_route
интернет

 если [ -н "$INTERNAL_IP4_DNS" ]; затем
$MODIFYRESOLVCONF
интернет
}

do_disconnect() {
 если [ -н "$CISCO_SPLIT_INC" ]; затем
я=0
 в то время как [ $я -это $CISCO_SPLIT_INC ] ; делать
 сеть эвал="\${CISCO_SPLIT_INC_${я}_ADDR}"
 ивала маска="\${CISCO_SPLIT_INC_${я}_MASK}"
 ивала NETMASKLEN="\${CISCO_SPLIT_INC_${я}_MASKLEN}"
 если [ $Сети != "0.0.0.0" ]; затем
 # FIXME: это не восстановить ранее перезаписаны
 маршруты#.
 del_network_route "$" сети "$маска" "$NETMASKLEN"
еще
reset_default_route
интернет
 я=`выражение $я + 1`
сделано
 для меня в $INTERNAL_IP4_DNS ; делать
 del_network_route "$я" "255.255.255.255" "32"
сделано
еще
reset_default_route
интернет
 если [ -н "$CISCO_IPV6_SPLIT_INC" ]; затем
я=0
 в то время как [ $я -это CISCO_IPV6_SPLIT_INC$] ; делать
 сеть эвал="\${CISCO_IPV6_SPLIT_INC_${я}_ADDR}"
 ивала NETMASKLEN="\${CISCO_IPV6_SPLIT_INC_${я}_MASKLEN}"
 если [ $NETMASKLEN -экв 0 ]; тогда
reset_ipv6_default_route
еще
 del_ipv6_network_route "$" сети "$NETMASKLEN"
интернет
 я=`выражение $я + 1`
сделано
 для меня в $INTERNAL_IP6_DNS ; делать
 del_ipv6_network_route "$я" "128"
сделано
 Элиф [ -Н "$INTERNAL_IP6_NETMASK" о-n "$INTERNAL_IP6_ADDRESS" ]; затем
reset_ipv6_default_route
интернет

del_vpngateway_route

 если [ -н "$INTERNAL_IP4_DNS" ]; затем
$RESTORERESOLVCONF
интернет
destroy_tun_device
}

#### Главная

если [ -з "$причина" ]; затем
 Эхо "этот скрипт должен вызываться из vpnc" 1>&2
 выход 1
интернет

случае "$причина" в
до инициализации)
 run_hooks до инициализации
do_pre_init
;;
подключении)
 run_hooks подключения
do_connect
 run_hooks после подключения
;;
отсоединить)
 run_hooks отсоединить
do_disconnect
 run_hooks после отключения
;;
переподключение)
 run_hooks переподключение
;;
*)
 Эхо "неизвестной причине '$причина. Может быть, vpnc-скрипт устарел" 1>&2
 выход 1
;;
эсок

выход 0
****************************************************************************************

сохраните и закройте vpnc-script файл.

Шаг 3: запустите vpnc сейчас, вы хотите получить сейчас ошибка ipid.

Примечание: Если вы замените файл vpnc-скрипт, как это сделано в примере выше вы получите ошибку, потому что это меняет флаг, установленный на файл. Таким образом, мы только должны изменить содержание vpnc-script файл.

Ура!!

-Simranjeet

+28
Cupcakefan15 1 сент. 2016 г., 2:47:10

Показать вопросы с тегом