# solution /use it with root/:
semanage fcontext -a -s system_u -t usr_t /opt/google/chrome/chrome-sandbox
restorecon -v /opt/google/chrome/chrome-sandbox
Каждое устройство имеет свою собственную компиляцию BusyBox с различными наборами функций, таким образом, я не могу быть уверен что Ваша поддержки. Если я понимаю правильно, у Вас есть каталоги как /lost+found/#123456
, и каждый файл в том каталоге принадлежит тому же пользователю. Вот непротестированный сценарий, который диспетчеризирует эти каталоги в дом пользователя. Я предполагаю, что Ваши имена пользователей не содержат пробелы, и что корневые каталоги пользователей повинуются /home/$username
конвенция.
cd /lost+found
[ -d /root/recovered ] || mkdir /root/recovered
for d in *; do
username=$(ls -l "$d" | sed -e 's/^[^ ] *[0-9][0-9]* */' -e 's/ .*//' -e q)
if [ -d "/home/$username" ]; then
dest=/home/$username/recovered
else
homedir=/root/recovered/$username
fi
[ -d "$dest" ] || mkdir "$dest"
cp -Rp "$x" "$dest"
done
Это почти, что Вы отправили, за исключением того, что Ваша команда awk печатает владельца файлов многократно. Можно использовать awk '1 {print $3}'
или sed как выше. Если Вы берете неправильное владение, любой, что Вы записали ls -ld
в команде Вы на самом деле работали, или Ваше описание situtation (“все недостающие файлы в рамках этих каталогов, каждый с исходной датой и информацией о владельце”) является неправильным. Я также сделал сценарий более устойчивым, в особенности файлы, принадлежавшие пользователям системы, будут скопированы под /root/recovered
.
Если это не работает на Вас, несомненно, ясно объяснят что случилось. Вставка копии любое сообщение об ошибке или ls
вывод.