Запускать скрипт автоматически от имени пользователя root при создании нового пользователя - PullRequest
0 голосов
/ 30 октября 2019

Когда новый пользователь подключается к моему Linux-серверу и создается новый домашний каталог, я хочу сделать запись в /etc/fstab и затем смонтировать эту запись так, чтобы, когда пользователь входит в свою общую папку, уже был смонтирован * 1002. *

На данный момент у меня есть скрипт в /etc/profile.d/, который распознает, входит ли пользователь в первый раз или нет. Когда пользователь входит в систему, запись должна быть создана. Теперь у меня есть несколько проблем с разрешениями, например: `` mount -a` может быть запущен только от имени пользователя root, а также есть проблема с правами доступа при попытке редактировать /etc/fstab.

#!/bin/bash

if [ -e $HOME/yourflag ]
then
    echo "no actions required"
else
    realhome=${HOME##*/}
    mkdir /home/SHAREDTCS/$realhome/PersonalTransfer/
    uid=`id -u`
    gid=`id -g`
    echo "//192.168.128.27/PersonalTransfer/$realhome.SHAREDTCS /home/SHAREDTCS/$realhome/PersonalTransfer/ cifs user=$realhome,$uid,$gid" >> /etc/fstab
    mount -a
    touch $HOME/yourflag
fi

Это скрипткоторый распознает, если пользователь входит в систему в первый раз, и если он входит в систему в первый раз, запись должна быть сделана в /etc/fstab.

Фактический результат: bash: /etc/fstab: No Permission mount: only root can use "--all" option

Ожидаемый результат должен заключаться в том, что в / etc / fstab была сделана запись, а общий ресурс смонтирован в домашнем каталоге пользователей. Существует также другая проблема, связанная с тем, что пользователю необходимо ввести свой пароль для монтирования общего ресурса, поэтому я действительно не знаю, возможно ли то, что я пытаюсь сделать.

...