Samba - набор программ для обмена файлами по локальной сети совместимый с технологиями передачи файлов в windows. Установили вы Samba, настроили все как нужно, но только решили передать по сети большой файл размером больше 1 гигабайта, как сервер рушиться, соединение отваливается или скорость передачи совсем никакая, сталкивались с такой проблемой? Я тоже. По умолчанию samba не всегда корректно настроена для работы с большими файлами. Решение в конфигурационном файле /etc/samba/smb.conf.
Довольно часто может понадобиться подключиться к удаленному компьютеру. Если это сервер, то можно подключиться по ssh. Но если это домашний компьютер, то намного удобнее использовать графическую оболочку. Во многих случаях это позволяет намного быстрее выполнить привычные обычному пользователю действия. Есть несколько способов и несколько протоколов, с помощью которых можно получить удаленный доступ к графическому интерфейсу, но самый популярный и самый используемый из них - VNC.
В этой небольшой статье будет рассмотрена настройка x11vnc на Ubuntu. Мы погорим о том как установить VNC в Ubuntu, а также как добавить его в автозагрузку с помощьюs systemd. А теперь перейдем непосредственно к инструкции. Читать далее Настройка x11vnc в Ubuntu→
Иногда возникает необходимость выполнить свой скрипт во время загрузки системы или при входе пользователя в систему. Например, чтобы запустить определенную программу, поменять настройки разрешения экрана, запустить программу удалённого управления и так далее.
Сделать это можно несколькими способами. С помощью графической оболочки или с помощью системы инициализации Systemd, которая используется сейчас практически во всех дистрибутивах.
Создание скрипта для автозагрузки
Скорее всего, у вас уже есть скрипт, который вы хотите запускать. Но если нет, или же вы хотите попрактиковаться с другим скриптом, то создайте скрипт в папке /usr/local/bin. Эта папка обычно используется для хранения пользовательских бинарных файлов. Дальше в этой статье я буду использовать путь к скрипту /usr/local/kovalets-script.sh:
sudo vi /usr/local/kovalets-script.sh
#!/bin/bash
echo "Hello world" > ~/file
Этот скрипт просто выводит строчку "Hello world" в файл в домашней папке текущего пользователя. Более подробно о создании скриптов читайте в статье написание скриптов на Bash. Когда скрипт будет готов, сделайте его исполняемым:
sudo chmod ugo+x /usr/local/kovalets-script.sh
Вы можете запустить скрипт и убедится что он работает. А теперь давайте рассмотрим как добавить скрипт в автозагрузку Ubuntu.
Автозагрузка скрипта при старте системы
В Systemd нет способа запускать все пользовательские скрипты в одном месте. Но вы можете создать юнит файл, который будет запускать ваш скрипт. Для этого используйте следующую команду:
sudo systemctl edit --force --full script.service
Команда откроет текстовый редактор, добавьте в него такое содержимое:
[Unit]
Description=My Script Service
After=multi-user.target
[Service]
Type=idle
ExecStart=/usr/local/kovalets-script.sh
[Install]
WantedBy=multi-user.target
В строчке ExecStart можно прописать либо путь к скрипту, который надо выполнить, либо саму команду. Кроме того, здесь используется тип сервиса Idle, который означает что процесс не будет разветвляться.
Теперь добавьте этот скрипт в автозагрузку:
sudo systemctl enable script
Если Systemd не видит такого сервиса, обновите информацию о юнитах с помощью команды:
sudo systemctl daemon-reload
После этого скрипт запустится во время инициализации системы. Вы можете убедится что всё работает, перезагрузив систему и посмотрев в папку /root. Там должен появится файл с текстом Hello world.
Если вам больше нравится старый способ загрузки скриптов, с помощью rc.local, вы можете создать файл /etc/rc.local, сделать его исполняемым и прописать путь к нему в строке ExecStart юнит-файла, после чего сможете им пользоваться как это было до появления Systemd.
Автозагрузка скрипта при входе пользователя
Такой тип автозагрузки может быть полезным для запуска приложений пользователя или программ удалённого управления, например x11vnc.
1. Автозагрузка Gnome в GUI
Запустите утилиту Автоматически запускаемые приложения или Startup Applications в главном меню системы. Эту же утилиту можно запустить из терминала выполнив команду:
gnome-session-properties
Нажмите кнопку Добавить (Add) и в открывшемся окне, в поле Команда (Command) введите полный путь к файлу вашего скрипта или выберите его с помощью кнопки Обзор(Browse), затем нажмите Добавить(Add) внизу окна:
Скрипт будет выполнен после загрузки графической оболочки Ubuntu. Вы можете перезагрузить систему и убедится, что в домашней папке вашего пользователя появился файл file, с содержимым "Hello world".
2. Автозагрузка Gnome вручную
Всё описанное в предыдущем пункте можно сделать и вручную, без утилиты Startup Applications. Ярлыки приложений для автозагрузки могут находится в двух расположениях:
/etc/xdg/autostart/ - для всех пользователей;
~/.config/autostart/ - для текущего пользователя.
Для создания ярлыка, который будет запускать ваш скрипт, создайте файл с расширением .desktop в одной из папок со следующим содержимым:
Здесь в поле Exec необходимо прописать путь к скрипту, который надо выполнить, а в поле Name имя ярлыка. После этого ваш скрипт будет запускаться автоматически при входе пользователя в графическую оболочку. Утилита Startup Applications будет видеть этот ярлык и вы можете управлять им там тоже.
3. Автозагрузка в Systemd
Система инициализации Systemd позволяет запускать отдельный набор сервисов для каждого пользователя. Для управления такими сервисами нужно использовать опцию --user. Используйте такую команду для того чтобы создать файл скрипта:
[Unit]
Description=My Script Service
After=default.target
[Service]
Type=idle
ExecStart=/usr/local/kovalets-script.sh
[Install]
WantedBy=default.target
Юнит файл будет создан только для текущего пользователя. В данном случае это будет файл /home/sergiy/.config/systemd/user/script.service. Обратите внимание, что цель multi-user.target здесь недоступна, поэтому следует использовать default.target. Теперь осталось только добавить этот юнит в автозагрузку:
systemctl enable --user script.service
Поле этого можно перезагрузить систему и убедится что всё работает.
Выводы
Теперь вы знаете как добавить скрипт в автозагрузку Linux несколькими способами. Это может быть немного сложно для начинающих, но вы можете ознакомиться ещё со статьей про Автозагрузку сервисов, а также Управление службами для того чтобы лучше понимать как всё работает.
Многих новых пользователей Linux интересует, как посмотреть список установленных программ в Ubuntu. Не важно зачем: может вам нужно удалить ту или иную программу, или просто посмотреть, сколько программ в системе установлено. Или же вам необходимо экспортировать список всех программ, чтобы потом быстро установить их в другой системе. Сделать это можно несколькими способами.
Начнём с более простого способа - с помощью главного меню. Откройте меню, затем перейдите в категорию Приложения, в разделе все вы можете увидеть ярлыки установленных программ:
Правда программы здесь далеко не все, а только те, для которых есть ярлыки и которые можно запустить в графическом интерфейсе.
Второй способ — с помощью центра приложений. Откройте менеджер приложений, щелкнув по его значку на боковой панели:
Выберите вкладку Установлено:
И снова здесь не все приложения, а только установленные через центр приложений или snap-пакеты. Каждую программу можно удалить или посмотреть дополнительную информацию:
Способ третий — более сложный и потребует установки дополнительного программного обеспечения — менеджера пакетов. Запустите терминал (Ctrl + Alt + T) и наберите:
sudo apt install synaptic
Установка пакетов — действие от суперпользователя, поэтому система спросит пароль. Когда процесс закончится, найдите программу в главном меню и откройте её. Затем перейдите в Состояния → Установленные:
В списке будут отображены все пакеты, установленные через пакетный менеджер apt, в том числе библиотеки и сервисы. Но тут нет пакетов, установленных через snap. Здесь также можно удалять и устанавливать приложения. Сначала их надо выбрать, а потом нажать кнопку Применить.
Способ четвёртый — с помощью консольной утилиты dpkg. Будет выведена аналогичная информация, что и в synaptic, только в терминале. Откройте терминал и наберите:
dpkg -l
Утилита выведет список всех установленных пакетов с указанием версии, архитектуры и краткого описания:
Чтобы посмотреть список пакетов Ubuntu, установленных через пакетный менеджер snap, используйте такую команду в терминале:
snap list
Как видите, посмотреть список абсолютно всех программ в одном месте нельзя. Самый полный список показывают утилиты dpkg и synaptic. Есть и другие способы, но этого, я думаю, будет вполне достаточно. Удачи вам в экспериментах, и не удалите ничего нужного!
Хоть Linux и стабильная операционная система, но иногда и тут бывают казусы, в виде зависшего приложения, либо зависания всей системы в целом. К примеру у меня бывают такие случаи после запуска windows-приложения, либо родной программы. Система отказывается реагировать на нажатие клавиш, мыши и т.д. Как правило вы должны сами понять, после чего это произошло, последняя запущенная программа, игра и т.д. Если операционная система Ubuntu «висит» наглухо, то с вероятностью в 99.99% вам поможет следующее. На клавиатуре нажимаем: Ctrl — Alt — F1, (вместо F1 можно нажать любую системную клавишу от F1 до F6) После этого вы попадете в виртуальную консоль. Перед вами появится черный экран. Нужно ввести ваш логин (ник) и пароль. Далее запускаем программу-мониторинг процессов Top
top
Если вдруг программа не запустится, то установите ее:
sudo apt-get install top
Теперь после запуска top вы увидите все запущенные процессы и приложения. Находим в списке подозреваемую программу, из-за которой и могло быть вызвано зависание системы, и запоминаем или записываем ее PID. Это число из самой левой колонки. Как правило оно состоит из 4 или 5 цифр. Далее нажимаем K, потом вводим цифру PID программы и жмем Enter 2 раза. После этого выбранная программа должна пропасть из списка запущенных. Далее нажимаем Ctrl — Alt — F7 и попадаем на нашу рабочую Ubuntu. После этого все должно работать.
Расскажу-ка я вам как установить драйвера для принтеров Canon, марок PIXUS, MX, MP, IP и MG в Ubuntu 14.04/13.10/13.04/12.10/12.04, а также Linux Mint 16/15/14/13. Думаю в остальных дистрибутивах на ядре Linux всё будет работать так же 🙂
Samba — программа, которая позволяет обращаться к сетевым дискам на различных операционных системах по протоколу SMB/CIFS. Имеет клиентскую и серверную части.
Samba предоставляет службы файлов и печати для различных клиентов Microsoft Windows и может интегрироваться с операционной системой Windows Server, либо как основной контроллер домена (PDC), либо как член домена. Она также может быть частью домена Active Directory.
1) Устанавливаем самбу на Debian/Ubuntu
sudo apt-get install libcups2 samba samba-common
Затем указываем в какой рабочей группе работают компьютеры в сети. (данный вопрос выплывает не всегда, по умолчанию может использоваться группа WORKGROUP)
2) Добавим пользователя и создадим нужные каталоги.
Добавим пользователя user10 в систему *вместо user10 впишите свое.
sudo adduser user10
и вводим пароль для него.
Добавим пользователя в Samba
sudo smbpasswd -a user10
и вводим пароль для пользователя user10
Создаем каталоги, создадим два каталога, первый будет доступен только пользователю, второй будет общей шарой.
[share] comment = All users upload and download path = /home/share/share create mode = 0777 directory mask = 0777 available = yes browsable = yes public = yes writable = yes
и перезапускаем Samba server
sudo /etc/init.d/samba restart
4) После чего в сетевом окружении Windows появится ПК с хостнеймом сервера, что бы зайти на него нужно ввести имя и пароль пользователя которого Вы создали в шаге 2.
Здесь я расскажу как на Debian или Ubuntu поднять DHCP сервер для раздачи IP адресов компьютерам в локальной сети.
Установка достаточно простая, приступим:
1) Устанавливаем пакет dhcp-server
# apt-get install isc-dhcp-server
2) После чего, нужно отредактировать конфиг, но сначала нужно уточнить какой сетевой интерфейс смотрит в локальную сеть(если на сервере несколько интерфейсов i-net and lan interfaces)
# ifconfig
как видим на скриншоте на сервере только один интерфейс eth0 смотрит в локальную сеть. Настроим этот интерфейс для раздачи ip адресов.
*default-lease-time 32400; Время на которое выдается IP адрес в секундах. *subnet 192.168.0.0 netmask 255.255.255.0 = сеть и маска сети. *range 192.168.0.2 192.168.0.254 = пул выдаваемых ip адресов от 2 до 254. *option routers 192.168.0.1 = шлюз по умолчанию.
3) Если нужно назначить статическую раздачу IP адресов компьютерам в сети. Добавляем в конец конфига /etc/dhcp/dhcpd.conf