В дополнение к тому, что сказал Оли в этом сообщении, есть известные проблемы, если у вас есть встроенное устройство чтения карт памяти или если вы установили USB (флеш-память или вращающееся) хранилище во время запроса на приостановку. [!d0 ]
Добавьте скрипт /etc/pm/sleep.d/00_fixMounted.sh и сделайте его принадлежащим root и исполняемому файлу. Этот скрипт должен выполнять Oli на любой установленной медиа-карте и USB-накопителе.
Я сделал значительный прогресс, удалив модуль «usb_storage» после un-mount.
Существуют и другие известные проблемы с USB-устройства, такие как камеры и т. Д. Вышеупомянутые будут обрабатывать любые компоненты хранения этих устройств, но вам нужно будет деактивировать другие части как-то отдельно.
Шанс Bonne, ~~~ 0; -Dan
Команда read принимает имя переменной, поэтому удалите сигил:
read uid
Что вы делаете, это: отправка содержимого переменной uid в качестве имени переменной для чтения команда. Поскольку это значение в настоящее время пуст, у вас есть
echo "a prompt: "
read
. Это действительный код bash. Имя переменной по умолчанию для команды «bald» read REPLY
Учитывая ваш код, вот мягкая переписывающая:
function uid_Assoc {
local arg1=$1
echo "$arg1";
}
read -p "Please enter SUID: " uid
uid_Assoc "$uid"
Примечания:
[d6 ] вам не нужно как ключевое слово function, так и синтаксис (), выберите тот или другой (только мое мнение) локализовать переменные в функциях, чтобы ограничить их область использования, используя параметр -p для чтения всегда цитируемых переменных ( вы никогда не знаете, сколько пробелов будет вводить пользователь), если вы не знаете, почему вам нужно оставить переменную без кавычек.