Почему вы думаете, что раз он старый, то это не то, что вам нужно? NBD существует уже давно, но до сих пор активно поддерживается.
В теории (на самом деле я ничего из этого не тестировал), поскольку NBD работает на уровне блоков, ядро должно иметь возможность кэшировать больше, что должно позволить ему работать быстрее. Однако недостатком является невозможность доступа к одному и тому же устройству с нескольких клиентских машин; в отличие от этого, в FUSE нет ничего, что имело бы те же ограничения. На практике, так ли это, зависит от фактического способа реализации.
(отказ от ответственности: я один из тех, кто помогает поддерживать NBD)
Утилита useradd
использует ряд значений по умолчанию при создании нового пользователя. Одним из таких значений по умолчанию является каркасный каталог, который используется в качестве основы для домашних каталогов пользователя.
Скелетный каталог настраивается внутри/etc/default/useradd
:
SKEL=/etc/skel
Вы можете добавить файл config.sh
в этот каталог, чтобы он автоматически добавлялся для всех новых пользователей как часть их домашнего каталога.
Пример :Создадим простой файл сценария с именемconfig.sh
:
[root@testvm ~]# cat config.sh
#!/bin/bash
echo "Hello World!"
Дадим скрипту права на выполнение:
[root@testvm ~]# chmod +x config.sh
Затем мы копируем скрипт в каталог скелета, /etc/skel
.
[root@testvm ~]# cp -a ~/config.sh /etc/skel/
Теперь добавим нового пользователя*:
[root@testvm ~]# useradd -c "New User" -md /home/NU -e 2018-12-20 -s /bin/bash -u 2000 newuser
Наконец, мы переключимся на нового пользователя и убедимся, что файл был помещен в домашний каталог пользователя:
[root@testvm ~]# su - newuser
[newuser@testvm ~]$ ls -l
total 4
-rwxr-xr-x. 1 newuser newuser 32 Dec 1 22:08 config.sh
[newuser@testvm ~]$./config.sh
Hello World!
*Я изменил команду useradd
из вопроса. Имя пользователя должно быть указано последним после всех опций, а дата истечения срока действия должна быть указана в формате ГГГГ -ММ -ДД.