Давно не писал про Ubuntu — не было повода, но недавно он появился. Мне не удалось скопировать на флешку файлы, о чем система радостно сообщала — «Файловая система доступна только для чтения».
Попытка выставить нужные права на файлы и каталоги не дала результатов и я пошел искать решение в интернете. Проблема оказалась распространенной и не раз обсуждалась. Несмотря на это, нужную команду я нашел не сразу.
sudo fsck.vfat -a /dev/sdb1
Команду необходимо выполнить в терминале, вызвать который можно одновременным нажатием трёх клавиш — «Alt+Ctrl+T». Недоступность файловой системы была вызвана сбоем при копировании на флешку в прошлый раз. Возникли битые сектора, исправив которые, файловая система снова стала доступна для записи.
«sdb1» — идентификатор usb-накопителя в системе. Если у Вас два жестких диска, то он может отличаться от указанного. Выяснить его идентификатор можно командой:
fdisk -l | grep 'Disk /dev/sd'
Эта команда выведет список подключенных дисков.
- Печать
Страницы: [1] Вниз
Тема: Не могу скопировать файл // could not paste files (Прочитано 1008 раз)
0 Пользователей и 1 Гость просматривают эту тему.

reversed
Из-под рута не копируются файлы в смежную с виндой файловую часть диска
ls -l из директории, в которую пытаюсь копировать.
twsomt@dev1:/media/twsomt/165C0B7E5C0B583F/Media/wallpapers$ ls -l
total 9144
-rwxrwxrwx 1 twsomt twsomt 503711 сен 29 19:20 1612268761_7-p-krasivii-fon-fioletovii-kosmos-10.jpg
-rwxrwxrwx 1 twsomt twsomt 448967 сен 29 00:23 20613.jpg
-rwxrwxrwx 1 twsomt twsomt 225334 июл 11 22:01 TFK.jpg
-rwxrwxrwx 1 twsomt twsomt 220375 июл 11 21:53 tfk_original.jpg
-rwxrwxrwx 1 twsomt twsomt 5776377 июл 11 22:01 TFK.psd
-rwxrwxrwx 1 twsomt twsomt 535949 мая 29 18:24 'весна 22.jpg'
-rwxrwxrwx 1 twsomt twsomt 598914 июн 5 19:48 'лето 22_1.jpg'
-rwxrwxrwx 1 twsomt twsomt 436648 июл 11 22:03 'лето 22_2.jpg'
-rwxrwxrwx 1 twsomt twsomt 558664 июн 5 14:52 'лето 22.jpg'
-rwxrwxrwx 1 twsomt twsomt 37451 июн 5 14:50 'лето 22.psd'
twsomt@dev1:/media/twsomt/165C0B7E5C0B583F/Media/wallpapers$
Пользователь добавил сообщение 02 Октября 2022, 14:18:17:
Также прикладываю pdf со скриншотами дисков, ошибки, проверкой доступа и разбивкой дисков. 157гб и 250гб это диски винды. Медийный раздел это тот котоырй на 250гб. Ubuntu расположена на том разделе где 105гб.
Пользователь добавил сообщение 02 Октября 2022, 14:20:21:
Памагити :'(
« Последнее редактирование: 21 Октября 2022, 01:16:21 от reversed »

andytux
Ни в чем не разобравшись, своими действиями активно вредишь.
права доступа к этой папке через гуй, и увидел что я ее владелец
Этой… А выше?
chmod: changing permissions of ‘/media/twsomt/165C0B7E5C0B583F/Media/wallpapers’: Read-only file system
Написано, файловая система в режиме только чтение. Будь ты хоть сам черт.
Перезашел в винду, выключил из-под нее комп…
…вот как-раз в этом случае она «не выключается», а уходит в гибернацию.
А проблема весьма похоже в этом. Поищи на форуме «выключить виндовс» — одна из самых популярных проблем.
Для одного раза, выходи из виндовс через «перезагрузить». В этом случае она «выключается».

reversed
Ваш совет помог, спасибо. Занятно, в гуе было написано что гибернация отключена, но проблема сохранялась. После выполнения
powercfg /h off — заработало

AnrDaemon
Надо-то было всего лишь ПЕРЕЗАГРУЗИТЬ компьютер из винды.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.
Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

reversed
Надо-то было всего лишь ПЕРЕЗАГРУЗИТЬ компьютер из винды.
Просто перезагрузить из винды — попробовал перед тем как перейти к настройкам гибернации, не помогло.
- Печать
Страницы: [1] Вверх
Время на прочтение
3 мин
Количество просмотров 165K
В этой статье будут раскрыты некоторые неочевидные вещи связанные с использованием wildcards при копировании, неоднозначное поведение команды cp при копировании, а также способы позволяющие корректно копировать огромное количество файлов без пропусков и вылетов.
Допустим нам нужно скопировать всё из папки /source в папку /target.
Первое, что приходит на ум это:
cp /source/* /target
Сразу исправим эту команду на:
cp -a /source/* /target
Ключ -a добавит копирование всех аттрибутов, прав и добавит рекурсию. Когда не требуется точное воспроизведение прав достаточно ключа -r.
После копирования мы обнаружим, что скопировались не все файлы — были проигнорированы файлы начинающиеся с точки типа:
.profile
.local
.mc
и тому подобные.
Почему же так произошло?
Потому что wildcards обрабатывает shell (bash в типовом случае). По умолчанию bash проигнорирует все файлы начинающиеся с точек, так как трактует их как скрытые. Чтобы избежать такого поведения нам придётся изменить поведение bash с помощью команды:
shopt -s dotglob
Чтобы это изменение поведения сохранилось после перезагрузки, можно сделать файл wildcard.sh c этой командой в папке /etc/profile.d (возможно в вашем дистрибутиве иная папка).
А если в директории-источнике нет файлов, то shell не сможет ничего подставить вместо звёздочки, и также копирование завершится с ошибкой. Против подобной ситуации есть опции failglob и nullglob. Нам потребуется выставить failglob, которая не даст команде выполниться. nullglob не подойдёт, так как она строку с wildcards не нашедшими совпадения преобразует в пустую строку (нулевой длины), что для cp вызовет ошибку.
Однако, если в папке тысячи файлов и больше, то от подхода с использованием wildcards стоит отказаться вовсе. Дело в том, что bash разворачивает wildcards в очень длинную командную строку наподобие:
cp -a /souce/a /source/b /source/c …… /target
На длину командной строки есть ограничение, которое мы можем узнать используя команду:
getconf ARG_MAX
Получим максимальную длину командной строки в байтах:
2097152
Или:
xargs --show-limits
Получим что-то типа:
….
Maximum length of command we could actually use: 2089314
….
Итак, давайте будем обходиться вовсе без wildcards.
Давайте просто напишем
cp -a /source /target
И тут мы столкнёмся с неоднозначностью поведения cp. Если папки /target не существует, то мы получим то, что нам нужно.
Однако, если папка target существует, то файлы будут скопированы в папку /target/source.
Не всегда мы можем удалить заранее папку /target, так как в ней могут быть нужные нам файлы и наша цель, допустим, дополнить файлы в /target файлами из /source.
Если бы папки источника и приёмника назывались одинаково, например, мы копировали бы из /source в /home/source, то можно было бы использовать команду:
cp -a /source /home
И после копирования файлы в /home/source оказались бы дополненными файлами из /source.
Такая вот логическая задачка: мы можем дополнить файлы в директории-приёмнике, если папки называются одинаково, но если они отличаются, то папка-исходник будет помещена внутрь приёмника. Как скопировать файлы из /source в /target с помощью cp без wildcards?
Чтобы обойти это вредное ограничение мы используем неочевидное решение:
cp -a /source/. /target
Те кто хорошо знаком с DOS и Linux уже всё поняли: внутри каждой папки есть 2 невидимые папки «.» и «..», являющиеся псевдопапками-ссылками на текущую и вышестоящие директории.
- При копировании
cpпроверяет существование и пытается создать /target/. - Такая директория существует и это есть /target
- Файлы из /source скопированы в /target корректно.
Итак, вешаем в жирную рамочку в своей памяти или на стене:
cp -a /source/. /target
Поведение этой команды однозначно. Всё отработает без ошибок вне зависимости от того миллион у вас файлов или их нет вовсе.
Выводы
Если нужно скопировать все файлы из одной папки в другую, не используем wildcards, вместо них лучше использовать cp в сочетании с точкой в конце папки-источника. Это скопирует все файлы, включая скрытые и не завалится при миллионах файлов или полном отсутствии файлов.
Послесловие
vmspike предложил аналогичный по результату вариант команды:
cp -a -T /source /target
Oz_Alex
cp -aT /source /target
ВНИМАНИЕ: регистр буквы T имеет значение. Если перепутать, то получите полную белиберду: направление копирования поменяется.
Благодарности:
- Компании RUVDS.COM за поддержку и возможность публикации в своем блоге на Хабре.
- За изображение TripletConcept. Картинка очень большая и детальная, можно открыть в отдельном окне.
P.S. Замеченные ошибки направляйте в личку. Повышаю за это карму.
Ответ на:
комментарий
от Extraterrestrial 08.05.14 15:53:21 MSK
Ответ на:
комментарий
от Extraterrestrial 08.05.14 15:53:21 MSK
Ошибка при получении информации о файле «/home/alex/Рабочий стол/Создать файл
»: Нет такого файла или каталога
Kofler
(08.05.14 16:06:14 MSK)
- Показать ответы
- Ссылка
Ответ на:
комментарий
от Kofler 08.05.14 16:06:14 MSK
Ответ на:
комментарий
от Kofler 08.05.14 15:53:58 MSK
Для тех кто в танке: система писала и о правах, что их не достаточно.
Kofler
(08.05.14 16:10:10 MSK)
- Ссылка
Ответ на:
комментарий
от anonymous 08.05.14 16:11:44 MSK
Ответ на:
комментарий
от Kofler 08.05.14 16:22:14 MSK
Ответ на:
комментарий
от anonymous 08.05.14 16:26:06 MSK
Да, никого из «левых» 
drwxr-xr-x 41 alex alex 4096 Май 8 17:03 alex
Kofler
(08.05.14 16:30:53 MSK)
- Ссылка
Ответ на:
комментарий
от Kofler 08.05.14 16:06:14 MSK
Ответ на:
комментарий
от Kofler 08.05.14 16:06:14 MSK
Ну ясно написано что нет такого файла. Кстати рпбочий стол может называться desktop.
w1nner ★★★★★
(08.05.14 20:04:07 MSK)
- Показать ответ
- Ссылка
Ответ на:
комментарий
от w1nner 08.05.14 20:04:07 MSK
Ответ на:
комментарий
от Kofler 08.05.14 20:52:03 MSK
Не пробовал по нормальным невиндовским традициям сначалаоткрыть прогу, которая нужна, а оттуда сохранить? А по созданию на рабочем столе — нормальные люди на рабочем столе ничего никогда не держат.
★★★★★
(08.05.14 21:13:26 MSK)
- Показать ответ
- Ссылка
Ответ на:
комментарий
от DeadEye 08.05.14 21:13:26 MSK
Нормальные ОСи работают в любом положении, хоть лежа хоть к верх ногами. Сохранять на рабочем столе файл концепция nix* запрещает?
Kofler
(08.05.14 21:41:51 MSK)
- Ссылка
Ответ на:
комментарий
от TuxR 08.05.14 21:14:06 MSK
Да, место есть. Заметил одну особенность. Если сохранять файл через — Рабочий стол — Домашний каталог — то сохраняется. А если зайти через — Контроль свободного места на диске — то нет, пишет ошибку. Хотя всегда я сохранял (когда было нужно) через контроль* и все было ok а тут косяк получился. Что-то внезапно заглючило. Да, и еще, после последнего обновления системы, слете в грабе загрузчик винды.
Kofler
(08.05.14 21:45:44 MSK)
- Ссылка
Юзай консоль.
★★
(08.05.14 23:13:48 MSK)
- Ссылка
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
This is really weird. I can’t copy anything from the terminal. The Ctrl+Shift+C command and Edit->Copy does nothing, no matter how much or little text I have selected. What ever was on my clipboard before the command is still there after.
Why can’t I copy text from the Terminal?
Pasting into the terminal works just fine
asked Jun 15, 2012 at 12:57
HubroHubro
1,2736 gold badges18 silver badges34 bronze badges
5
you can, But you have to go into the settings.
Edit -> Keyboard shortcuts -> find copy and past commands -> Click to alter and enter new combo «ctrl+x, v, c, etc…»
answered Jun 15, 2012 at 13:02
TardisGuyTardisGuy
3596 silver badges22 bronze badges
1
In most Windows environments (not sure for others), you will have to highlight the text and then hit Enter to copy the text. You can then simply Ctrl + v (paste) it e everywhere. Maybe that works on your (specific?) Ubuntu terminal as well.
answered Nov 30, 2014 at 14:14
kaiserkaiser
1076 bronze badges
I do a >copy.txt to output my screen result.
Like aplay -l > text.txt give me a text.txt where I can open up in gedit by clicking on the file everything is formatted nicely. Here you can Ctrl-C then Ctrl-V just like Windows.
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 0: ALC888 Analog [ALC888 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 1: ALC888 Digital [ALC888 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
answered Nov 11, 2015 at 17:04








