Tags: linux

Как всегда, загадочные грабельки. Нынче в Линуксе

Почему-то в ноутбуке ping перестал работать:

$ ping 192.168.1.15
ping: socket: Operation not permitted

Хотя от root’а и просто через sudo вполне работал. И с другой машины в этой сети вполне работал из моего account’а, не только от root. И даже со смартфона, зайдя в его консоль через JuiceSSH, тоже вполне работало.

Погуглил, нашёл вот такую команду, и после её выполнения (от root’а), ping стал нормально работать и от меня:

# setcap cap_net_raw=ep /bin/ping

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Как обычно, загадочные грабельки, нынче в Debian’е на моём ноутбуке

Имеется линукс совершенно одинаковой версии (Debian 9.8) на внутреннем диске ноутбука, и на внешнем USB-диске.
Так с внутреннего диска vlc продолжал успешно проигрывать фильмы формата .ts, записанные со спутникового телевидения, а с внешнего пару дней назад почему-то перестал..
Хотя на обоих дисках я периодически обновляю все установленные пакеты, запуская “apt-get update; apt-get dist-upgrade”, и сейчас ещё раз это сделал, и хотя версии всех установленных пакетов были одинаковые, но на внутреннем диске vlc продолжал работать, а на внешнем продолжал не работать..

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

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Сегодня случились грабельки с SSL-сертификатом на моём веб-сайте

Утром посмотрел на свой предыдущий пост в LJ, опубликованный вчера, а там почему-то картинка пропала. Зашёл в Edit, там url картинки не поменялся. А когда попробовал посмотреть саму эту картинку, firefox сказал, что небезопасно.. Оказалось, что SSLный сертификат на моём веб-сайте сегодня рано утром закончился.

Хотя у меня там в cron приделана команда “certbot-auto renew” для обновления сертификата, выданного Let’s Encrypt, и раньше она успешно работала, а сегодня почему-то нет.
Попробовал запустить эту команду вручную, но она ругнулась на ошибочный код возврата команды “python -m pip –version”, и до обновления сертификата так и не дошла.
Типа, питон не может запустить модуль pip, потому оно и не работает.
Скачал этот скрипт certbot-auto заново с certbot.eff.org, но он точно такой же, ничего не менялось.

Погуглил, оказалось, в нём стОит заменить “python -m pip –version” на “pip –version”, и далее “python -m pip install –no-index –no-deps -U” заменить на “pip install –no-index –no-deps -U”.
Заменил, и тогда “certbot-auto renew” сработал, успешно обновив сертификат на очередные 3 месяца.

Но отчего такое могло случиться – не понимаю, раньше же этот скрипт успешно обновлял сертификат. А в старом Debian 7 (wheezy) уже давно ничего не обновляется, так что и питон не мог поменяться.

Потом ещё посмотрел на свой домашний сервер, где всё ещё использую тот же Debian 7, и оказалось, что и там сертификат не обновляется из-за такой же ошибки. Подправил и там certbot-auto точно так же, и он тоже стал работать.

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Как всегда, загадочные грабельки. В линуксе

На работе меня попросили установить свежую версию astyle на несколько виртуальных машин.
Они все с CentOS, но готового пакета для них не нашёл, поэтому скачал исходники и попробовал скомпилировать вручную. На одной машине, где был CentOS 7, этот astyle вполне нормально скомпилировался и поставился.
А на остальных, где были разные версии CentOS 5 и 6, и уже были установлены старые версии astyle, свежая версия не скомпилировалось. Какие-то идиотские ошибки вылезали – типа, неправильный код во многих заголовочных файлах..

Ну, решил, что, может, имеет смысл скопировать уже готовый astyle с той CentOS7. Скопировал, но он не запускался. ldd показал неподходящие библиотеки. В частности, /lib64/libc.so.6 . Посмотрел, оказалось, что это не сама библиотека, а просто ссылка на libc-2.12.so . А на той машине, где astyle работал, это была ссылка на libc-2.17.so .

Решил приделать этот libc-2.17.so. Скопировал и эту библиотеку, но при попытке переделать ссылку на неё, наступил на основательные грабли:
удалил libc.so.6, чтобы приделать его ссылкой на новую библиотеку, но тут ln перестал работать.. А также и ls, и куча других программ тоже. Оказалось, что им всем нужен тот /lib64/libc.so.6 .

Да как же можно приделать обратно ссылку, если ж сам ln не работает??
Хорошо, что я не отключился от той машины, а то ведь туда и ssh перестал работать, потому что для sshd тоже нужен этот же libc.so.6 .

Погуглил, оказалось, что вот так можно запустить ln:

LD_PRELOAD=/lib64/libc-2.12.so ln -s libc-2.12.so libc.so.6

Это действительно сработало, так вот и удалось обойти эти грабельки..

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Опять загадочные грабельки

Сегодня попробовал записать audio-CD с древними песнями немецкой группы Чингисхан. В прежней машине у меня был такой же диск, записанный мной вручную, но я отдал его вместе с той машиной продавцу компании, в которой купил новую машину, потому и решил записать новый.

Записал этот CD из wav-файлов wodim’ом на ноутбуке, используя внешний USBшный DVD-привод, поскольку встроенного нету. Вроде успешно записался, но проверить совершенно не удалось – почему-то никакие стандартные программы этот диск проигрывать не смогли: mplayer писал “No medium found”, vlc – “cdda stream error: no audio tracks found”. Несколько раз переподключал этот DVD-привод, но ничего не поменялось.

В конце концов засунул этот CD в проигрыватель в машине, и там он уже нормально проигрывался.

Почему диск может записаться, но не может прочитаться в том же самом приводе, совершенно не понимаю..

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Идиотский сервер mariadb в свежем Debian’е

В Debian’е 9.6 попробовал установить mysql, но вместо него поставилась mariadb.

Сервер автоматически запустился, но зайти в него от меня самого не получалось:

$ mysql -u root
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

А с “-p” запрашивался пароль, но я его не знал – при установке сервера пароль ввести не просили.

Погуглил, запустил от рута mysql_secure_installation, ввёл там пароль, но клиентскую программу всё равно не пускали:

$ mysql -u root -p
Enter password: 
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

А вот когда попробовал запустить mysql от рута, он успешно подключился к серверу вообще без пароля:

# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 1
Server version: 10.1.37-MariaDB-0+deb9u1 Debian 9.6

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

Посмотрел в таблицу mysql.user, там вполне был root@localhost с паролем и полными привилегиями, как обычно.

Ещё погуглил, и запустил там

GRANT ALL PRIVILEGES on *.* to 'root'@'localhost' IDENTIFIED BY 'ТОТжеСАМЫЙпароль';
FLUSH PRIVELEGES;

и хотя в mysql.user вроде ничего не поменялось, но “mysql -u root -p” стал работать от моего эккаунта.
А от рута просто так работать перестал:

# mysql 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Только с -p, и с тем же паролем работает, как обычно в mysql’е.

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Вопросы для сисадминов

Этот список вопросов был составлен моим прежним начальником – афроадминистратором (в смысле, он был из Южной Африки).
Эти вопросы вполне приемлемы для новых системных администраторов в нашей компании. Хотя их уже давно не принимали, и даже не искали, если только не считать моего нового начальника, который заменил прежнего.
И для меня сейчас эти вопросы оказались полезны, а то я слова забываю, но вот отсюда их вполне вспомнил. Ну и ответы в целом вполне знаю.
Если кому интересно, смотрите все эти вопросы под катом:

Collapse )

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Как обычно, загадочные грабельки. Нынче в линуксе

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

Я залогинился на тот сервер, посмотрел в shadow, а там ихних паролей вовсе нету. Оказалось, что они туда раньше заходили вообще без паролей, а просто с ssh’ными ключами.
А вот maximum password age, который в линуксе обычно устанавливается на 99999 дней (:0:99999:7:::), там почему-то был всего на 90 дней с предупреждениями за 7 дней до конца. Видимо, потому система и стала их просить поменять пароли, но их там не было, потому и не удавалось:
user_login:!!:17742:1:90:7:90::

Ну, я там всё подправил, но отчего там у всех поменялись эти настройки – не понимаю..

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Уродский зашифрованный zip из винды

При попытке распаковать его в линуксе unzip’ом создались только директории, но в них ни одного файла.
unzip вовсе не спрашивал пароля, а про все файлы ругался: “unsupported compression method 99″.

При попытке указать пароль вручную:

unzip -P password file.zip

ничего не изменилось – директории создались, а файлы нет.

И только погуглив, я узнал, что такой файл можно распаковать 7zip’ом:

7z x -ppassword file.zip

Вот оставлю себе на память эту команду, если опять встретится такой уродский файл.

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)

Как всегда, загадочные грабельки, нынче в телефоне и в ноутбуке

В телефоне с андроидом иногда запускаемые (или уже ранее запущенные) программы мгновенно отваливаются. То есть, на экране появляется их первоначальная картинка, но быстро пропадает. При многократных попытках заново запустить эти программы происходит то же самое – вроде слегка запускаются, а потом отваливаются. Хотя при этом обычно удаётся зайти в Settings/Advanced settings/Memory & storage, и там видно, что оперативная память, которой в этом телефоне довольно много – 3.6GB, вовсе не забита: обычно порядка 1 – 2GB ещё свободно.
Проблема успешно решается перезагрузкой телефона, после чего все нужные программы удаётся запустить, не отключая никакие автоматически запущенные.
Но потом опять случается такая же фигня, даже не при запуске новых программ, а при попытке зайти в некоторые ранее запущенные. И потому приходится опять перезагружать телефон.

Аналогичная проблема недавно появилась и в линуксе на ноутбуке: нажатие кнопок на клавиатуре (включая Alt-Tab для переключения в другую программу, Ctrl-Alt-F1/F2 для перехода из графического режима в текстовую консоль, и даже набирание символов в терминале), и тыканье мышкой в кнопочки на экране (даже для закрытия окон виднеющихся программ) вроде бы не работает. На самом деле работает, только с существенными задержками – порядка минут. Не понимаю, отчего такое может быть.
Перезагрузка операционной систему тоже вполне помогает, но это очень нескоро – мышкой добраться до кнопки Restart и дождаться результата нажатия на неё, или в терминале набрать reboot – очень долго..

Оригинал этой записи в личном блоге.

(comment count unavailable | Комментировать в Dreamwidth)