Лист помощи (шпаргалка)
Раздел, в основном, для меня. Здесь я просто записываю всякие полезности для случаев, когда вроде как помню, как решить проблему, но “вот бы вспомнить, на каком сайт это видел”, “вот бы мне тот файл, куда я это все записал” чтобы всегда были под рукой нужные команды, ссылки, куски кода.
В общем, одним словом, шпаргалка.
Не удивляйтесь тому, что многое из перечисленного кажется слишком простым, элементарным: у меня есть талант забывать и такое…
Навигация:
- Куски кода
- Команды
- Ссылки
Куски кода
Переменное значение _delay_ms()
Кто в теме, знают, что _delay_ms() принимает только константы, а на переменные ругается. У меня был случай, когда значение этой функции нужно было задавать из вне. В общем в этом плане ничего не стоит заставить микроконтроллер считать по одной милисекунде в цикле:
int delay_ms(uint16_t timing){
for(; timing; timing--){
_delay_ms(1);
}
}
Команды
Программное восстановление флэшки
Вариант для тех, кто угробил файловую систему флэшки и не может ее перезаписать, доформатировать и т.д. А также для тех, кому уже не жалко на ней данных.
Посмотрим, что есть флэшка, ориентируясь по размеру или даже типу файловой системы, и запомним название (/dev/sdc например):
fdisk -l
или можно так
lsblk -f
Далее берем и затираем ее нулями:
dd if=/dev/zero of=/dev/sdc
Может занять некоторое время. Обязательно обращаем внимание на количество записанных (скопированных) байт. Пусть это будет 31440060416 байт.
Следующий шаг - проверить, есть ли смысл восстанавливать флэшку дальше или последствия были необратимы. Сравним результаты выполнения 2-х команд:
head -c 31440060416 /dev/sdc |md5sum
и
head -c 31440060416 /dev/zero |md5sum
Если контрольные суммы совпали, значит флэшка исправна и можно работать дальше, если нет, то неисправность скорее всего необратимая, хотя сделать запись нулей повторно все же стоит.
Далее заходим в fdisk
fdisk /dev/sdс
жмем p, далее 1, далее со всем соглашаемся и далее смотрим на результат, нажав p.
Видим, что появился раздел /dev/sdс1, но линуксоидный.
Форматируем этот раздел в FAT32:
mkfs.fat -F32 /dev/sdc1
Или можно в NTFS, вариантов хватает:
mkfs.ntfs /dev/sdc1
Автоматическое монтирование диска
Создаем каталог, куда будет монтироваться диск, например:
mkdir /mnt/disk1tb
Открываем /etc/fstab в любом текстовом редакторе:
gedit /etc/fstab
Вставляем следующее:
/dev/sda1 /mnt/disk1tb ext4 rw,relatime 0 0
Свободно/занято места на дисках
df -h
Просто список “дисков” с доп. информацией:
sudo fdisk -l
Записать образ на диск
sudo dd if=~/путь/к/образу/диска.iso of=/dev/sdb bs=2048
Монтирование образов qcow2
modprobe nbd max_part=8
qemu-nbd -c /dev/nbd0 название_образа.qcow2
mkdir /mnt/qemu
mount /dev/nbd0p1 /mnt/qemu
Размонтировать:
umount /mnt/qemu
rm -R /mnt/qemu
qemu-nbd -d /dev/nbd0
modprobe -r nbd
Удалить папку со всем его содержимым
rm -rf testdir/
Добавить все изменения в репозиторий
git add .
git commit -m "change intro"
git push -u origin master
Основные комманды для kivy
Запуск для проверки приложения
Просто через питон коммандой
python3 main.py
Компиляция в apk
Создаем файл buildozer.spec
:
buildozer init
Компилируем:
buildozer android debug
Ссылки
Файл подкачки в линукс
https://losst.ru/fajl-podkachki-linux
В основном полезно для одноплатников.
PL-2303 (любой). Драйвер без ошибки 10
https://www.ifamilysoftware.com/Prolific_PL-2303_Code_10_Fix.html
Скрипт полной установки kivy
https://github.com/…/install-kivy-buildozer-dependencies.sh
Фреймворк, облегчающий разработку андройд приложений (ибо приложения пишутся на python).
Очень легкий и быстрый конструктор андройд приложений
Конструктор, что помог мне построить андройд приложение для старого планшета, превратив его в полезный пульт управления в то время, как андройд студио либо не мог компилировать приложения под старые андройды, либо скомпилированное не могло установиться на старый планшет.
Готовые полезные списки
Книга секретных знаний
https://github.com/trimstray/the-book-of-secret-knowledge
Это набор различных материалов, инструментов, вдохновляющих списков, руководств, шпаргалок, блогов, хаков, однострочников, инструментов cli/web и многого другого.
Awesome Selfhosting (СПО)
https://github.com/awesome-selfhosted/awesome-selfhosted
Это очень крутой список сетевых служб и веб-приложений Свободного программного обеспечения, которые могут быть размещены локально.
Awesome Tunneling
https://github.com/anderspitman/awesome-tunneling
Пожалуй самый полезный для меня набор вариантов туннелирования во внешний интернет как своего проекта, запущенного в локальной сети, так и различные tcp соединения для доступа к компу по ssh например.
JavaScript не нужон
https://github.com/you-dont-need/You-Dont-Need-JavaScript
Сборник различных демонстраций, анимаций, веб интерфейсов и технических решений реализованных на 100% CSS.
Для этого сайта:
Добавить иконки
Классы иконок этого сайта
https://my77thblog.pp.ua/…/demo.html