понедельник, 7 июля 2014 г.
Новый диск в Убунту
Вот здесь рассказано как разбить и примаунтить новый диск в Убунту. Все эти fdisk, mkfs, и /etc/fstab очень кратко и с примерами.
понедельник, 12 августа 2013 г.
Мыло на Ubuntu Server: Postfix
Я тут бодался-бодался с sendmail, а потом устал. Ну не форвардит он, то что сыплется в почтовый ящик root на мой gmail, хоть тресни. Взял и поставил postfix, теперь можно отправлять что угодно куда угодно. Вот тут все описано.
Я скопирую только команды, от себя добавлю только минимальные комментарии:
Ставим mailutils, он же поставит и postfix:
sudo apt-get install mailutils
Postfix спросит, что использовать для отправки. Выбрать Internet Site. Остальное- по умолчанию.
Правим конфиг:
sudo vim /etc/postfix/main.cf
Добавляем вот такие строки. Внимательнее с последней (tls, а не tlsd):
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes
Также можно закрутить гайки:
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
authorized_submit_users = root
Правим файл и именем и паролем с гугля:
sudo vim /etc/postfix/sasl_passwd
Добавляем:
[smtp.gmail.com]:587 USERNAME@gmail.com:PASSWORD
Устанавливаем права доступа на файл с именем и паролем:
sudo chmod 400 /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd
Копируем сертификат:
cat /etc/ssl/certs/Thawte_Premium_Server_CA.pem | sudo tee -a /etc/postfix/cacert.pem
Загружаем новый конфиг postfix:
sudo /etc/init.d/postfix reload
Тестируем:
echo "Test mail from postfix" | mail -s "Test Postfix" you@example.com
Я скопирую только команды, от себя добавлю только минимальные комментарии:
Ставим mailutils, он же поставит и postfix:
sudo apt-get install mailutils
Postfix спросит, что использовать для отправки. Выбрать Internet Site. Остальное- по умолчанию.
Правим конфиг:
sudo vim /etc/postfix/main.cf
Добавляем вот такие строки. Внимательнее с последней (tls, а не tlsd):
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes
Также можно закрутить гайки:
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
authorized_submit_users = root
Правим файл и именем и паролем с гугля:
sudo vim /etc/postfix/sasl_passwd
Добавляем:
[smtp.gmail.com]:587 USERNAME@gmail.com:PASSWORD
Устанавливаем права доступа на файл с именем и паролем:
sudo chmod 400 /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd
Копируем сертификат:
cat /etc/ssl/certs/Thawte_Premium_Server_CA.pem | sudo tee -a /etc/postfix/cacert.pem
Загружаем новый конфиг postfix:
sudo /etc/init.d/postfix reload
Тестируем:
echo "Test mail from postfix" | mail -s "Test Postfix" you@example.com
суббота, 10 августа 2013 г.
Back-UPS APC на сервере Ubuntu
Вот тут хороший рецепт настройки демона для упсов APC, вплоть до отправки уведомлений на мыло. Мне нужно для дома, так что мыло не настроил. UPD: Все-таки настроил, см. ниже.
Автор оригинального поста использовал для Back-UPS RS 800, а я- для Back-UPS RS 700G.
Устанавливаем apcupsd:
$ sudo apt-get install apcupsd
Правим конфиг:
$ sudo vim /etc/apcupsd/apcupsd.conf
Указываем в нем имя, кабель и тип соединения, комментируем DEVICE:
UPSNAME MyAwesomeUPS
UPSCABLE usb
UPSTYPE usb
#DEVICE
Указываем, что настройку закончили. Для этого правим:
$ sudo vim /etc/default/apcupsd
ISCONFIGURED=yes
Автор оригинального поста использовал для Back-UPS RS 800, а я- для Back-UPS RS 700G.
Устанавливаем apcupsd:
$ sudo apt-get install apcupsd
Правим конфиг:
$ sudo vim /etc/apcupsd/apcupsd.conf
Указываем в нем имя, кабель и тип соединения, комментируем DEVICE:
UPSNAME MyAwesomeUPS
UPSCABLE usb
UPSTYPE usb
#DEVICE
Указываем, что настройку закончили. Для этого правим:
$ sudo vim /etc/default/apcupsd
ISCONFIGURED=yes
Перезапускаем:
$ sudo service apcupsd restart
Проверяем:
$ apcaccess
Среди всякой разной инфы (типа сколько раз переключался на батарейку) должен написать рабочий диапазон напряжений. Я пока не понял, как его поменять, не трогая сам упс.
Теперь по поводу отправки сообщений типа "питание вырубилось" на мыло.
Автор оригинального поста использовал SendEmail- эдакий легкий клиент поверх SMTP. А же решил, что поставлю Postfix. В нем все очень просто с использованием gmail для отправки. Про это отдельный пост.
А для того, чтобы сервер отправлял сообщения упс на gmail, надо совсем ничего.
Перебираемся в директорию /etc/apcupsd:
cd /etc/apcupsd
Правим скрипты changeme, commfailure, commok, offbattery и onbattery. В них надо SYSADMIN поменять с root на myaccount@gmail.com:
SYSADMIN=myaccount@gmail.com
И все. Понятно, postfix должен работать.
Среди всякой разной инфы (типа сколько раз переключался на батарейку) должен написать рабочий диапазон напряжений. Я пока не понял, как его поменять, не трогая сам упс.
Теперь по поводу отправки сообщений типа "питание вырубилось" на мыло.
Автор оригинального поста использовал SendEmail- эдакий легкий клиент поверх SMTP. А же решил, что поставлю Postfix. В нем все очень просто с использованием gmail для отправки. Про это отдельный пост.
А для того, чтобы сервер отправлял сообщения упс на gmail, надо совсем ничего.
Перебираемся в директорию /etc/apcupsd:
cd /etc/apcupsd
Правим скрипты changeme, commfailure, commok, offbattery и onbattery. В них надо SYSADMIN поменять с root на myaccount@gmail.com:
SYSADMIN=myaccount@gmail.com
И все. Понятно, postfix должен работать.
среда, 27 февраля 2013 г.
Клиент Wake On LAN
Понадобилось мне тут (опять) включать Ubuntu сервер удаленно. Причем как из Windows, так и из Mac. Под Ubuntu был wakeonlan, я о нем уже писал. Вот что обнаружилось под OS Windows и OS X.
Windows
Мне понравилась WOL- Magic Packet Sender. Очень простая и с удобным интерфейсом. Вот официальный скриншот:
OS X
Можно установить macports и запускать с ним wakeonlan. Но я сделал по-другому. Используем простенькую программку на Java. Там если вниз чуть-чуть прокрутить, будет ссылка на код. Он занимает одну страничку. Копируем его в файл WakeOnLan.java, в терминале говорим
javac WakeOnLan.java
Когда скомпилится, говорим (пример из Magic Packet Sender сверху):
java WakeOnLan 255.255.255.255 00-15-c5-42-61-c2
И все! Ну и, понятно, работает это не только в OS X.
Windows
Мне понравилась WOL- Magic Packet Sender. Очень простая и с удобным интерфейсом. Вот официальный скриншот:
OS X
Можно установить macports и запускать с ним wakeonlan. Но я сделал по-другому. Используем простенькую программку на Java. Там если вниз чуть-чуть прокрутить, будет ссылка на код. Он занимает одну страничку. Копируем его в файл WakeOnLan.java, в терминале говорим
javac WakeOnLan.java
Когда скомпилится, говорим (пример из Magic Packet Sender сверху):
java WakeOnLan 255.255.255.255 00-15-c5-42-61-c2
И все! Ну и, понятно, работает это не только в OS X.
среда, 23 ноября 2011 г.
FTP на домашнем сервере
Вот никогда не думал, что потребуется FTP дома, а тут прога в телефоне хочет именно этот протокол. Пришлось поднять FTP. Далее кратко описано как и что.
FTP серверов под линукс есть несколько. После быстрого гугления я остановился на ProFTPD. Вот тут есть пример толкового конфига с внятными пояснениями. Есть и рекоммендаци на случай, если надо открыть доступ "снаружи". Я как раз этим конфигом и воспользовался- мне и надо-то, что анонимный доступ на чтение в одну директорию и только из локалки.
Вот что получилось.
Устанавливаем сервер
На вопрос, как запускать, я ответил- через initd, НЕ standalone. Много клиентов у этого сервера не будет.
sudo apt-get install proftpd
Правим /etc/shells
sudo vim /etc/shells
Туда добавляем:
/bin/false
Создаем директорию для обмена
sudo mkdir /home/FTP-shared
Создаем юзера
sudo useradd userftp -p password -d /home/FTP-shared -s /bin/false
Пароль password надо заменить на реальный.
Создаем директории для скачки/закачки
sudo mkdir /home/FTP-shared/public
sudo mkdir /home/FTP-shared/upload
Назначаем права
sudo chmod 755 /home/FTP-shared
sudo chmod 755 /home/FTP-shared/public
sudo chmod 777 /home/FTP-shared/upload
Правим конфиг
sudo mv /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf.old
sudo vim /etc/proftpd/proftpd.conf
Туда добавляем (перед секцией Global):
Правим /etc/fstab
sudo vim /etc/fstab
Туда добавляем путь, который будет доступен по FTP:
/stuff/books /home/FTP-shared/public none bind 0 0
Итоги
После рестарта сервера (не FTP, а компьютера), анонимному пользователю (и пользователю userftp) будет доступно содержимое директории /stuff/books- только на чтение из /home/FTP-shared/public. Также, пользователь userftp сможет создавать директории и файлы в /home/FTP-shared/upload.
Проверено с помощью Total Commander и проги в телефоне.
FTP серверов под линукс есть несколько. После быстрого гугления я остановился на ProFTPD. Вот тут есть пример толкового конфига с внятными пояснениями. Есть и рекоммендаци на случай, если надо открыть доступ "снаружи". Я как раз этим конфигом и воспользовался- мне и надо-то, что анонимный доступ на чтение в одну директорию и только из локалки.
Вот что получилось.
Устанавливаем сервер
На вопрос, как запускать, я ответил- через initd, НЕ standalone. Много клиентов у этого сервера не будет.
sudo apt-get install proftpd
Правим /etc/shells
sudo vim /etc/shells
Туда добавляем:
/bin/false
Создаем директорию для обмена
sudo mkdir /home/FTP-shared
Создаем юзера
sudo useradd userftp -p password -d /home/FTP-shared -s /bin/false
Пароль password надо заменить на реальный.
Создаем директории для скачки/закачки
sudo mkdir /home/FTP-shared/public
sudo mkdir /home/FTP-shared/upload
Назначаем права
sudo chmod 755 /home/FTP-shared
sudo chmod 755 /home/FTP-shared/public
sudo chmod 777 /home/FTP-shared/upload
Правим конфиг
sudo mv /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf.old
sudo vim /etc/proftpd/proftpd.conf
Туда добавляем (перед секцией Global):
<Limit LOGIN> AllowUser userftp DenyALL </Limit> <Directory /home/FTP-shared> Umask 022 022 AllowOverwrite off <Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD> DenyAll </Limit> </Directory> <Directory /home/FTP-shared/public/*> Umask 022 022 AllowOverwrite off <Limit MKD STOR DELE XMKD RNEF RNTO RMD XRMD> DenyAll </Limit> </Directory> <Directory> /home/FTP-shared/upload/> Umask 022 022 AllowOverwrite on <Limit READ RMD DELE> DenyAll </Limit> <Limit STOR CWD MKD> AllowAll </Limit> </Directory> <Anonymous /home/FTP-shared> User userftp Group nogroup UserAlias anonymous userftp MaxClients 8 "Max number of clients reached (%m)" DisplayChdir .message <Directory *> <Limit WRITE> DenyAll </Limit> </Directory> </Anonymous>
Правим /etc/fstab
sudo vim /etc/fstab
Туда добавляем путь, который будет доступен по FTP:
/stuff/books /home/FTP-shared/public none bind 0 0
Итоги
После рестарта сервера (не FTP, а компьютера), анонимному пользователю (и пользователю userftp) будет доступно содержимое директории /stuff/books- только на чтение из /home/FTP-shared/public. Также, пользователь userftp сможет создавать директории и файлы в /home/FTP-shared/upload.
Проверено с помощью Total Commander и проги в телефоне.
воскресенье, 5 сентября 2010 г.
Монтируем NTFS раздел
Сначала надо создать директорию, куда будем монтировать и указать права, чтобы все могли читать и писать:
sudo mkdir /media/ntfs
sudo chmod 777 /media/ntfs
Надо узнать, что это за раздел (sdaX или UUID). Выполняем команду
sudo blkid
/dev/sda1: UUID="32BC7A86BC7A447F" TYPE="ntfs"
/dev/sda3: LABEL="DISK_D" UUID="183CA8473CA8222C" TYPE="ntfs"
/dev/sda5: UUID="684620ab-0bec-45b2-8aa7-d874a1c0867e" TYPE="ext4"
/dev/sda6: UUID="417c722d-aba4-4f58-a847-91d1eb9e5019" TYPE="swap"
Монтировать можно временно:
sudo mount -t ntfs-3g /dev/sda3 /media/ntfs
... или постоянно:
sudo vim /etc/fstab
В конец файла добавляем:
# ntfs partition
UUID=183CA8473CA8222C /media/ntfs ntfs-3g defaults,users 0 3
И перемонтируем все разделы:
sudo mount -a
суббота, 27 февраля 2010 г.
Установка ICC 11.1 на клиенте Ubuntu 9.10
Интеловский компилятор становится все более и более популярным среди линуксоидов, и, мол, хорошо оптимизирует для родных процов. Вот и я решил посмотреть, что это за зверь, поскольку процессоры AMD не юзаю, использую только Intel.
Установка на Ubuntu- это вам не кнопки нажимать. Никаких "sudo apt-get install icc". Интел постарался усложнить жизнь по максимуму, хотя пересобирать из исходников ничего не придется. Вот тут расписано (по-английски) что и как надо сделать для установки на 32- и 64-х битные Ubuntu 9.10 и на старые версии ОС. Также, указано, какую Java скачать/установить для графического дебаггера IDB. Я тут кратко изложу про 32-х битную Ubuntu 9.10 только в плане компилятора, до дебаггера пока руки не дошли.
Во-первых, надо установить вот что (занятно, для установки готового компилятора нужен GCC):
- gcc
- build-essential
- g++
- rpm
Потом надо установить старую библиотеку The GNU Standard C++ Library V3 из репов Lenny. На открывшейся странице скачиваем deb-пакет с libstc++5 для i386 и устанавливаем с помощью GDebi.
Затем надо скачать собственно ICC 11.1, для чего надо его сначала найти, вот ссылка. После подтверждения лицензии, откроется страница для скачивания, надо только кликнуть на нужный компилятор, и зарегистрироваться. Золотой ключик переписывать с экрана не обязательно, он должен прийти по мылу, как и адрес, где можно наконец-то скачать вожделенный компилятор (700 Mb с хвостиком).
Далее, скаченный архив надо распаковать. Затем, в консоли перейти в поддиректорию с файлами компилятора и запустить install.sh. В процессе надо будет выбрать, как устанавливать- для всех пользователей или только для текущего, еще раз принять лицензионное соглашение, затем указать, куда ставить.
После того, как компилятор установился, надо запустить скрипт для установки переменных среды. В моем случае это
$ source ~/intel/Compiler/11.1/069/bin/iccvars.sh ia32
Проверяем, что компилятор установлен:
$ icc --version
Да, для компиляции C++ надо вызывать icpc. icc- это для С.
HTML документация:
~/intel/Compiler/11.1/069/Documentation/en_US/documentation_c.html
Подписаться на:
Сообщения (Atom)