Linux не видит файлы
В настоящее время многие дружественные к пользователю дистрибутивы уже настроены на загрузку файлов на телефон Android с Linux и для скачивания фотографий и любых других файлов с телефона на Linux. Поэтому достаточно подключить телефон к компьютеру по USB кабелю, затем в телефоне разрешить обмен данными по USB и в Linux вы увидите содержимое телефона, а также его карты памяти прямо в файловом менеджере (проводнике).
Тем не менее эта функциональность присутствует не на всех версиях Linux, либо вы можете столкнуться с проблемами, что что-то не работает. Эта инструкция поможет вам настроить с нуля обмен файлами между Android и Linux, а также разобраться в возможных проблемах, почему Linux не видит телефон.
Linux не видит Android телефон
Если вы подключили Android телефон к Linux, но ничего не происходит и, в особенности, телефон не спрашивает разрешение на передачу данных, то начните с самого простого — попробуйте использовать другой USB провод. Некоторые кабели просто не способны передавать данные, так как там отсутствуют необходимые для этого контакты. Также выполните такие простые действия как перезагрузка компьютера и перезагрузка телефона.
Если там будет показано что-то вроде:
То есть если будет строка «No raw devices found.», значит нужно обратить внимание на кабель.
В Arch Linux и производных:
Передача файлов с/на телефон без провода
Прежде всего, отметим, что вам не нужен USB для передачи файлов с телефона и на телефон. Вы можете передавать файлы с/на Android устройства используя Wi-Fi сеть вашего устройства — то есть вам не нужно настраивать роутер или что-то ещё. Просто установите приложение Airdroid на ваше устройство Android. Затем активируйте Мобильную точку доступа Wi-Fi на вашем устройстве и откройте программу Airdroid.
Теперь с вашего компьютера подключитесь к точке доступа, которую создал ваш телефон. На компьютере в любом веб-браузере откройте URL адрес, которую вам даст Airdroid. Будут запрошены разрешения, нажмите Подключить.
Вот и всё! Работает на любом операционной системе, у которой есть веб-браузер, то есть везде.
Настройка автоматического подключения телефона
В настоящее время окружения рабочего стола сами монтируют телефон при его подключению к Linux. Если этого не происходит, значит не хватает каких-то необходимых пакетов.
В Debain и производные (Ubuntu, Linux Mint, Kali Linux) проверьте и, в случае отсутствия, устаовите:
- libmtp9
- fuse
- gvfs
- gvfs-fuse
- gvfs-backends
В Arch Linux и производных установите:
Обратите внимание, что в репозиториях Arch Linux также присутствует пакет fuse3 — можете попробовать установить его вместо fuse2.
Подключите телефон к компьютеру и на телефоне разрешить обмен данными:
Если установка пакетов не помогла, попробуйте перезагрузить компьютер, также проверьте файл fuse.conf:
Настройка автоматического монтирования флешек телефона
Если вы отключили автоматическое монтирование устройств на уровне системы, то вы можете настроить автоматическое монтирования телефона с помощью правил udev.
В выводе команды mtp-detect найдите значение idVendor и idProduct.
Можно использовать следующие команды для ускорения процесса
Создайте файл с udev правилом:
в нём разместите следующее содержимое:
К примеру, мои данные:
Тогда моё правило выглядит так:
Чтобы это правило вступило в силу без перезагрузки компьютера выполните:
Отредактируйте файл fuse.conf:
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
Я переименовывал его, одно и то же, в упор не вижу каких-то непечатных символов Я переименовывал его, одно и то же, в упор не вижу каких-то непечатных символова если попросить оболочку дополнить имя
набрать:
./us а потом набрать нажать TAB
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
набрал ./us потом TAB автоматом имя дополнилось, но не исполняется, опять жеpal@pal-laptop:
$ ./usb_modeswitch
bash: ./usb_modeswitch: No such file or directory
pal@pal-laptop:
pal@pal-laptop:
$ ./usb_modeswitch
bash: ./usb_modeswitch: No such file or directory
pal@pal-laptop:
а скажите
file usb_modeswitch
Что выведет?
Если это скрипт, то возможно проблема внутри скрипта.
PS
а так сработает:
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
$ file usb_modeswitch
usb_modeswitch: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), stripped
pal@pal-laptop:
вот ещ вывод где находится этот файл
pal@pal-laptop:
$ ls us* | od -c
0000000 u s b _ m o d e s w i t c h \n
0000017
pal@pal-laptop:
/usb_modeswitch
bash: /home/pal/usb_modeswitch: No such file or directory
pal@pal-laptop:
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
$ ./us*
bash: ./usb_modeswitch: No such file or directory
pal@pal-laptop:
Отсутствует не файл usb_modeswitch, а библиотека, на которую он повязан.
То есть не запустится он просто на вашем дистре.
Хотя не уверен, но правдоподобно.
в домашней директории его видно, когда в терминале ввожу
$usb_modeswitch
или
$./usb_modeswitch
ничего не видит, это что глюк какой-то?
Я только установил свежую Ubuntu 8.10, может в этом проблема?
Собственно он у меня запускается на другой Ubuntu 8.10, она установленна на другом винчестере, но там полностью со всеми обновленными пакетами, а на этой свежеустановленной никак.
Как бы теперь узнать что надо поставить, чтоб он запускался?
вот вывод:
pal@pal-laptop:
/usb_modeswitch
not a dynamic executable
pal@pal-laptop:
не забудьте вывод приложить в теге [ codebox ] или отдельным файлом, если он слишком велик.
/usb_modeswitch execve("/home/pal/usb_modeswitch", ["/home/pal/usb_modeswitch"], [/* 37 vars */]) = -1 ENOENT (No such file or directory) dup(2) = 3 fcntl(3, F_GETFL) = 0x8002 (flags O_RDWR|O_LARGEFILE) fstat(3, ) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fd9e4e17000 lseek(3, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek) write(3, "strace: exec: No such file or di". 40strace: exec: No such file or directory ) = 40 close(3) = 0 munmap(0x7fd9e4e17000, 4096) = 0 exit_group(1) = ? Process 8451 detached pal@pal-laptop:
Перенес файл composer в /usr/local/bin. Этот путь есть в $PATH.
Сам файл доступен теперь везде, но вот так вот почему-то не работает:
ls: cannot access 'composer': No such file or directory Может этот путь надо в другую переменную окружения перенести?
Восстановление данных с флешки, программы не видят файлы
Попросили восстановить данные с флешки, со слов хозяина флешки "Вставила в ноутбук, пошла с.
Обход всех путей из PATH
Помогите, пожалуйста, как можно обойти все папки из PATH?
Примеры абсолютных/относительных путей (Path)
Здравствуйте, можете привести примеры: абсолютных и относительных путей "path"?
Список несуществующих путей из значения переменной PATH
Проанализировать значение системной переменной PATH и вывести на экран список несуществующих путей.
Решение
Потому что в PATH ищутся только имена программ. Относительные пути файлов отсчитываются от текущей директории. В частности, команда ls -l composer пытается найти файл composer в текущей директории.
Можно найти абсолютный путь к файлу программы с помощью which:
Найти директории path/dir, рядом с которыми есть файлы path/dir.jpg
Добрый день. Появилась задача следующего вида. На диске есть директории (назовём полные пути к.
Сокращение пути к файлу, x:\path\path\. \path
Помогите с решением такой задачи, желательно до четверга)): Строка длиной не более 1000 символов.
не находит файлы со списка путей к ним
Логика: Файл1 - список файлов с полными путями к ним. Срр открывает Файл1, читает строку.
Как копировать файлы с указанием путей?
А именно: 1) Как изменить строку команды копирования, чтобы ОС помешала копированию файла в уже.
В Linux как и в Windows есть скрытые файлы, правда работают они здесь немного по-другому. В файловых системах Linux нет никакого атрибута скрытности, просто разработчики договорились, что файлы с точкой перед названием будут считаться скрытыми.
Это, как правило, различные файлы настроек, файлы кэша, и временные данные приложений. Как вы поняли, в этой инструкции мы рассмотрим как посмотреть скрытые файлы в Linux, а именно в файловых менеджерах Dolphin и Nautilus а также в терминале.
Показ скрытых файлов в Dolphin
В стандартном файловом менеджере KDE скрытые файлы можно посмотреть отметив флажок показать скрытые файлы в меню управление:
Вот они будут выглядеть немного светлее обычных:
Того же эффекта можно добиться нажав сочетание клавиш Alt+. (Alt + точка) Чтобы вернуть все как было нажмите эти же клавиши еще раз или снимите флажок в меню.
Скрытые файлы в Nautilus
В Nautilus все почти так же. Откройте меню Вид и установите галочку Показать скрытые файлы:
Выглядят они здесь так же как и все, только с точкой в имени:
И здесь тоже есть горячие клавиши Ctrl+H, H означает Hidden, что переводиться как скрытый.
Просмотр скрытых файлов в терминале
В терминале для просмотра списка файлов в директории используется утилита ls. Передав в ей опцию -a мы увидим все файлы, в том числе скрытые. Например, для домашней папки текущего пользователя:
Чтобы просматривать скрытые файлы было удобнее можно добавить опцию -l:
Теперь вы знаете как включается просмотр скрытых файлов и папок в Linux. Как видите, это очень просто. Намного проще чем в Windows, так как вам не надо заходить ни в какие настройки и можно сделать всё прямо в файловом менеджере. Что примечательно, файловый менеджер запоминает какая настройка выбрана между перезагрузками, поэтому вам не придется менять настройки каждый раз.
Читайте также: