Как я могу получить мой диск монтируется через fstab снова?

Если я правильно понимаю, у вас есть файл с именем errordatefile20140228.csv , и вам нужно создать новый файл с именем corrective_date20140228.csv ? Предполагая, что оболочка bash :

$ ls *.csv
wrongdatefile20140228.csv

Назначьте имя файла переменной $ fn и используйте Расширение параметра

$ fn=wrongdatefile20140228.csv
$ awk '...' "$fn" > "${fn/#wrongdatefile/correct_date}"

Результат:

$ ls *.csv
correct_date20140228.csv    wrongdatefile20140228.csv

Чтобы автоматизировать это для всех файлов errordatefile * .csv в текущем каталоге, пропуская ранее обработанные файлы:

for fn in wrongdatefile*.csv; do 
    newfn="${fn/#wrongdatefile/correct_date}"
    [ -e "$newfn" ] || awk '...' "$fn" > "$newfn"
done

0
08.03.2019, 03:21
1 ответ

В лучшем случае :система просто пытается запустить восстановление журнала и/или проверку файловой системы в файловой системе Hex, и это занимает более 1 минуты 30 секунд, поскольку файловая система очень велика. В этом случае может быть лучше запустить проверку файловой системы вручную после того, как остальная часть системы заработает, см. инструкции ниже.

В худшем случае :диск может выйти из строя на аппаратном уровне.

Если вы видите какие-то файлы и папки в /media/Hex, а их строка закомментирована в /etc/fstabи вы не монтировали их вручную, то какая-то программа могла записать в пустой каталог, который должен быть просто точка монтирования для Hex, в то время как фактическая файловая система Hexбыла размонтирована. Это не имеет ничего общего с состоянием файлов в реальной файловой системе Hex, но может быть немного сложно вернуться к реальной Hexпосле того, как текущая проблема с файловой системой будет устранена.

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

Предполагая, что устройство, содержащее файловую систему Hex, называется примерно так /dev/sdX1(, где X — неизвестная мне буква -, вы должны выяснить это сами ), затем отбросить номер раздела, чтобы узнать соответствующее целое -дисковое устройство, то есть просто /dev/sdX. Также возможно инициализировать весь диск для файловой системы вообще без использования какой-либо таблицы разделов -, в этом случае blkidсообщит, что файловая система существует непосредственно на всем -дисковом устройстве /dev/sdX.

Хорошим первым шагом будет запуск sudo smartctl -H -a -f brief -l error /dev/sdX:, который должен сообщать об общем состоянии диска, атрибутах SMART и любых аппаратных -ошибках уровня, которые мог зарегистрировать сам диск. Если это указывает на то, что диск в порядке на аппаратном уровне, вы можете продолжить. (Если вы не знаете, как интерпретировать результат, отредактируйте исходный вопрос и добавьте к нему вывод.)

Если диск указывает на аппаратный сбой, вам необходимо принять решение. :Если неисправный диск содержит важные данные, возможно, лучше прекратить попытки исправить это самостоятельно и отправить диск специалисту по восстановлению данных.. Профессиональное восстановление может стоить чего-то, но имеет самые высокие шансы на успешное восстановление данных. Если вы решите сделать это, ничего не делайте с диском самостоятельно :, если диск физически выходит из строя, оставление включенным диска может усугубить проблему и затруднить восстановление.

Если диск в порядке на аппаратном уровне или данные на нем «не стоят денег на профессиональное восстановление, но было бы неплохо вернуть их», следующим шагом будет понимание ситуации с разделами. Поскольку вы сказали, что это диск емкостью 6 ТБ, вероятно, он использует разметку GPT. Любая из этих команд должна отображать макет раздела :

.
sudo parted /dev/sdX print
sudo gdisk -l /dev/sdX
sudo fdisk -l /dev/sdX

(Я думаю, что fdiskв Ubuntu 18.04 достаточно нов, чтобы понять GPT-разделы,но если он сообщает что-то вроде раздела размером 1,8 ТБ, в то время как другие команды показывают полные 6 ТБ, это может не быть реальной проблемой.)

Пожалуйста, отредактируйте исходный вопрос, чтобы добавить эту информацию о разбиении. Дальнейшие действия будут зависеть от результатов этих проверок.

Если диск имеет индикацию сбоя SMART, следующим шагом будет покупка нового диска такого же или большего размера и попытка как можно скорее скопировать все содержимое на новый диск, возможно, с помощью ddrescueили аналогичный инструмент. Как только это будет сделано, ваши данные должны быть защищены от дальнейшего ухудшения.

Если диагностика SMART диска в порядке и файловая система может быть распознана, может быть хорошей идеей сначала клонировать диск на новый, прежде чем продолжить, на всякий случай. Затем вы можете попробовать запустить проверку файловой системы на устройстве, которое, как сообщается, содержит файловую систему :что-то вроде sudo fsck.ext4 -f -C0 /dev/sdX1. На большом диске это может занять довольно много времени. :Опция -C0указывает средству проверки файловой системы предоставить процент выполнения во время его работы.

Если проверка файловой системы прошла успешно, следующим шагом будет попытка смонтировать ее вручную :, например, sudo mount /dev/sdX1 /media/Hex. Если он говорит, что /media/Hexиспользуется, вы должны остановить все службы, которые могут использовать точку монтирования /media/Hex, пока вы выполняете монтирование.

Если после монтирования /media/Hexвыглядит нормально, вы можете вздохнуть с облегчением, размонтируйте его вручную (sudo umount /media/Hex), раскомментируйте его строку в /etc/fstabи перезагрузите систему :, теперь она снова должна загружаться нормально, как файловая система была проверена и полностью размонтирована.

Чтобы очистить все файлы, оставшиеся в каталоге точки монтирования (, которые теперь скрыты «под» реальной Hexфайловой системой )после того, как настоящая Hexфайловая система смонтирована, вы можете сделать это:

sudo mkdir /mnt/Hex_oops
sudo mount --bind / /mnt/Hex_oops
cd /mnt/Hex_oops/media/Hex

... а затем посмотрите, имеют ли какое-либо значение файлы и каталоги в /mnt/Hex_oops/media/Hex. Если они,теперь вы можете переместить их в правильное место в реальной Hexфайловой системе; если это просто пустые каталоги, созданные автоматически каким-либо приложением, вы можете удалить их (, так как они бесполезно занимают место в вашей корневой файловой системе ). Затем удалите это временное устройство:

cd /
sudo umount /mnt/Hex_oops
sudo rmdir /mnt/Hex_oops
0
28.01.2020, 02:40

Теги

Похожие вопросы