[devel] /usr/bin/bash и объединение /usr/bin и /bin

Vitaly Lipatov lav на altlinux.ru
Пт Авг 20 23:29:35 MSK 2021


Ivan A. Melnikov писал 20.8.21 16:24:
> On Fri, Aug 20, 2021 at 01:28:33PM +0300, Vitaly Lipatov wrote:
>> Некоторые скрипты из апстримов используют /usr/bin/bash.
>> Может быть, мы можем сделать (под)пакет, предоставляющий симлинк
>> /usr/bin/bash?
>> Есть ли какие-то возражения?
> 
> Если начать такое делать, будет сложно остановиться.
Всё время на пустом месте хвастаться несовместимостью с остальным миром 
тоже довольно бессмысленный путь.

lav на ubuntu64:~$ which bash
/usr/bin/bash

lav на ubuntu64:~$ ls -ld /bin
lrwxrwxrwx 1 root root 7 Jul 31  2020 /bin -> usr/bin


[lav на fedora64 ~]$ which bash
/usr/bin/bash
[lav на fedora64 ~]$ ls /bin -ld
lrwxrwxrwx. 1 root root 7 янв 26  2021 /bin -> usr/bin

Я не против, если все за то, чтобы объединить /bin и /usr/bin, это решит 
проблему.

Но более простым мне представляется вопрос, чем bash хуже, чем
/bin/zsh <- /usr/bin/zsh
или даже
/bin/cat <- /usr/bin/cat

(см. списки в конце письма)

За что боремся?


Vladimir D. Seleznev писал 20.8.21 16:21:
> On Fri, Aug 20, 2021 at 01:28:33PM +0300, Vitaly Lipatov wrote:
>> Некоторые скрипты из апстримов используют /usr/bin/bash.
> 
> А мы не можем исправлять скрипты?
Можем. Но если это делают вендоры, то они начинают громоздить лапшу с 
проверкой версии дистрибутива, разными вариантами скриптов и пр.

Что говорить, СБИС поставляет свой glibc, чтобы на ALT работала их 
программа :)

А если это делаем мы, то это непростой труд, и хотелось бы понимать, 
ради чего он.


У нас обнаруживается как минимум три ссылки в /bin на бинарники в 
/usr/bin
$ for i in $(find /bin -type l) ; do echo "$(readlink -f $i) <- $i" ; 
done | grep ^/usr/bin
/usr/bin/tracepath <- /bin/tracepath
/usr/bin/tracepath <- /bin/tracepath6
/usr/bin/rpm <- /bin/rpm

И гораздо больше в обратную сторону:
$ for i in $(find /usr/bin -type l) ; do echo "$(readlink -f $i) <- $i" 
; done | grep ^/bin
/bin/tput <- /usr/bin/tput
/bin/unicode_start <- /usr/bin/unicode_start
/bin/sort <- /usr/bin/sort
/bin/setfont <- /usr/bin/setfont
/bin/bzip2recover <- /usr/bin/bzip2recover
/bin/mail <- /usr/bin/mailx
/bin/monit <- /usr/bin/monit
/bin/getopt <- /usr/bin/getopt
/bin/head <- /usr/bin/head
/bin/tail <- /usr/bin/tail
/bin/install <- /usr/bin/install
/bin/unicode_stop <- /usr/bin/unicode_stop
/bin/gawk <- /usr/bin/pgawk
/bin/install <- /usr/bin/ginstall
/bin/dbus-send <- /usr/bin/dbus-send
/bin/systemctl <- /usr/bin/systemctl
/bin/fgconsole <- /usr/bin/fgconsole
/bin/wc <- /usr/bin/wc
/bin/deallocvt <- /usr/bin/deallocvt
/bin/taskset <- /usr/bin/taskset
/bin/gawk <- /usr/bin/awk
/bin/zsh <- /usr/bin/zsh
/bin/du <- /usr/bin/du
/bin/cat <- /usr/bin/cat
/bin/dbus-launch <- /usr/bin/dbus-launch
/bin/kill <- /usr/bin/kill
/bin/find <- /usr/bin/find
/bin/mail <- /usr/bin/Mail
/bin/kbd_mode <- /usr/bin/kbd_mode
/bin/dumpkeys <- /usr/bin/dumpkeys
/bin/mkfifo <- /usr/bin/mkfifo
/bin/cut <- /usr/bin/cut
/bin/gawk <- /usr/bin/gawk
/bin/chvt <- /usr/bin/chvt
/bin/raw <- /usr/bin/raw
/bin/xargs <- /usr/bin/xargs
/bin/gawk <- /usr/bin/dgawk
/bin/openvt <- /usr/bin/openvt


-- 
С уважением,
Виталий Липатов,
ALT Linux Team


Подробная информация о списке рассылки Devel