Incoming/HOWTO
< Incoming
Решения конкретных задач, связанных с Incoming. Впрочем, вместо решения проблем с incoming лучше использовать сборку через git.alt.
На этой странице подразумевается настройка SSH, приведённая здесь.
Проверка настроенности Incoming
$ ssh incoming Connection to devel.altlinux.org closed. $ rsync incoming:/incoming/ drwxr-x--x 4096 2007/10/30 20:28:31 . drwxrws--T 4096 2008/08/12 04:31:05 Daedalus drwxrwx--T 28672 2008/08/15 02:32:09 Sisyphus drwxr-s--- 4096 2007/04/25 06:12:42 backports drwxrws--T 4096 2008/08/05 10:30:00 join drwxr-x--x 4096 2006/06/11 01:09:37 notes drwxr-s--- 4096 2008/05/30 22:20:47 updates $
Полезные ключи rsync
- -v
- выдавать больше информации в процессе
- -a
- рекурсивное копирование с сохранением симлинков, прав, mtime, владельца и группы файлов
- --stats
- выдавать статистику передачи
- -P
- сохранять частично переданные файлы при обрыве, показывать прогресс операции
Просмотр содержимого Incoming
$ rsync incoming:/incoming/Sisyphus/ drwxrwx--T 28672 2008/08/15 02:32:09 . -rw-r--r-- 15049105 2008/07/03 19:34:28 FirebirdCS-2.0.3-alt1.src.rpm ... -rw-r--r-- 1472330 2008/07/28 21:01:29 zebra-0.95a-alt1.src.rpm $
Скачивание к себе файла из Incoming
$ rsync incoming:/incoming/Sisyphus/zebra-0.95a-alt1.src.rpm . $
Удаление всех своих файлов из определённой директории
$ rsync -r --delete /var/empty/ incoming:/incoming/Sisyphus/ rsync: delete_file: unlink(zebra-0.95a-alt1.src.rpm) failed: Operation not permitted (1) ... rsync: delete_file: unlink(FirebirdCS-2.0.3-alt1.src.rpm) failed: Operation not permitted (1) $
Для чужих файлов (разумеется) выдаётся permission denied. Чтобы удалить только часть своих файлов, нужно вместо /var/empty/ подсунуть директорию, где находятся файлы, которые удалять не нужно.
Пересборка пакета
Если в incoming лежит пакет, который не пересобрался из-за проблем со сборочной средой, то его можно заставить пересобраться ещё раз. Для этого необходимо сделать touch локальному файлу и синхронизировать его с копией, лежащей в incoming.
$ ls myfile.src.rpm myfile.src.rpm $ touch myfile.src.rpm $ rsync myfile.src.rpm incoming:/incoming/Sisyphus/myfile.src.rpm $