Linux не видит файлы

Обновлено: 04.07.2024

В настоящее время многие дружественные к пользователю дистрибутивы уже настроены на загрузку файлов на телефон 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:

набрал ./us потом TAB автоматом имя дополнилось, но не исполняется, опять же
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 модема в режим модема, с накопителя. Выполняю ls -al
в домашней директории его видно, когда в терминале ввожу
$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 -l composer
ls: cannot access 'composer': No such file or directory Может этот путь надо в другую переменную окружения перенести?

Восстановление данных с флешки, программы не видят файлы
Попросили восстановить данные с флешки, со слов хозяина флешки "Вставила в ноутбук, пошла с.


Обход всех путей из PATH
Помогите, пожалуйста, как можно обойти все папки из PATH?


Примеры абсолютных/относительных путей (Path)
Здравствуйте, можете привести примеры: абсолютных и относительных путей "path"?

Список несуществующих путей из значения переменной PATH
Проанализировать значение системной переменной PATH и вывести на экран список несуществующих путей.

Решение

Потому что в PATH ищутся только имена программ. Относительные пути файлов отсчитываются от текущей директории. В частности, команда ls -l composer пытается найти файл composer в текущей директории.

Можно найти абсолютный путь к файлу программы с помощью which:

вероятно, напишет вам /usr/local/bin/composer. Это значение можно подставить в ls:


Найти директории path/dir, рядом с которыми есть файлы path/dir.jpg
Добрый день. Появилась задача следующего вида. На диске есть директории (назовём полные пути к.

Сокращение пути к файлу, x:\path\path\. \path
Помогите с решением такой задачи, желательно до четверга)): Строка длиной не более 1000 символов.

не находит файлы со списка путей к ним
Логика: Файл1 - список файлов с полными путями к ним. Срр открывает Файл1, читает строку.

Как копировать файлы с указанием путей?
А именно: 1) Как изменить строку команды копирования, чтобы ОС помешала копированию файла в уже.

В Linux как и в Windows есть скрытые файлы, правда работают они здесь немного по-другому. В файловых системах Linux нет никакого атрибута скрытности, просто разработчики договорились, что файлы с точкой перед названием будут считаться скрытыми.

Это, как правило, различные файлы настроек, файлы кэша, и временные данные приложений. Как вы поняли, в этой инструкции мы рассмотрим как посмотреть скрытые файлы в Linux, а именно в файловых менеджерах Dolphin и Nautilus а также в терминале.

Показ скрытых файлов в Dolphin

В стандартном файловом менеджере KDE скрытые файлы можно посмотреть отметив флажок показать скрытые файлы в меню управление:

hidden0

Вот они будут выглядеть немного светлее обычных:

hidden1

Того же эффекта можно добиться нажав сочетание клавиш Alt+. (Alt + точка) Чтобы вернуть все как было нажмите эти же клавиши еще раз или снимите флажок в меню.

Скрытые файлы в Nautilus

В Nautilus все почти так же. Откройте меню Вид и установите галочку Показать скрытые файлы:

hidden4

Выглядят они здесь так же как и все, только с точкой в имени:

hidden5

И здесь тоже есть горячие клавиши Ctrl+H, H означает Hidden, что переводиться как скрытый.

Просмотр скрытых файлов в терминале

В терминале для просмотра списка файлов в директории используется утилита ls. Передав в ей опцию -a мы увидим все файлы, в том числе скрытые. Например, для домашней папки текущего пользователя:

Чтобы просматривать скрытые файлы было удобнее можно добавить опцию -l:

Теперь вы знаете как включается просмотр скрытых файлов и папок в Linux. Как видите, это очень просто. Намного проще чем в Windows, так как вам не надо заходить ни в какие настройки и можно сделать всё прямо в файловом менеджере. Что примечательно, файловый менеджер запоминает какая настройка выбрана между перезагрузками, поэтому вам не придется менять настройки каждый раз.

Читайте также: