Автор Тема: Запуск .exe по двойному клику в Thunar на NTFS  (Прочитано 344 раз)

Оффлайн owl5053

  • Участник
  • *
  • Сообщений: 27
EXE-файлы на NTFS разделе не открываются двойным кликом в Thunar (XFCE), выводится ошибка: "не удаётся запустить бинарный файл". При этом через xdg-open и gio open всё работает корректно.

Данные:
wine --version
wine-10.18 (Staging)


Что пробовал:
1. Настройка MIME-типов:
# Создание wine.desktop
cat > ~/.local/share/applications/wine.desktop << 'EOF'
[Desktop Entry]
Name=Wine
Exec=/usr/bin/wine %f
Icon=wine
Type=Application
MimeType=application/vnd.microsoft.portable-executable;application/x-ms-dos-executable;
EOF

# Настройка mimeapps.list
echo '[Default Applications]
application/vnd.microsoft.portable-executable=wine.desktop' > ~/.config/mimeapps.list

update-desktop-database ~/.local/share/applications
update-mime-database ~/.local/share/mime
2. Проверка ассоциаций:
xdg-mime query filetype file.exe  # показывает: application/vnd.microsoft.portable-executable
xdg-mime query default application/vnd.microsoft.portable-executable  # показывает: wine.desktop
3. Попытки исправить Thunar:
# Очистка кэша
rm -rf ~/.cache/Thunar ~/.cache/thumbnails/*
thunar -q

# Настройка helpers.rc
echo 'Wine=/usr/bin/wine' >> ~/.config/xfce4/helpers.rc

# Пользовательские действия (UCA)
cat > ~/.config/Thunar/uca.xml << 'EOF'
<action>
    <command>/usr/bin/wine %f</command>
    <patterns>*.exe</patterns>
</action>
EOF
4. Работа с binfmt_misc:
# Отключение
echo 0 | sudo tee /proc/sys/fs/binfmt_misc/status
ls -la /proc/sys/fs/binfmt_misc/  # пусто
5. Проверки
# Через xdg-open - РАБОТАЕТ
xdg-open file.exe

# Через gio - РАБОТАЕТ 
gio open file.exe

# Прямой запуск - РАБОТАЕТ
wine file.exe

# Двойной клик в Thunar - НЕ РАБОТАЕТ, ошибка "не удаётся запустить бинарный файл"

Подскажите, может кто сталкивался

Оффлайн Letmein

  • Участник
  • *
  • Сообщений: 338
Видимо, проблема в том, что Thunar воспринимает их как приложения, о чём говорит тот факт, что первым пунктом в контекстном меню у них идёт Выполнить. Поэтому он пытается их запустить как программы, что на Линуксе невозможно. Если файл лежит не на NTFS, то можно в его свойствах снять галочку "Разрешить запуск этого файла как приложения" и тогда первый пункт изменится на "Открыть в wine" и будет запуск по двойному щелчку. Но на NTFS она не снимается. В общем, думаю, всё бы заработало, если бы как-то убедить Thunar, что это не приложения.


Оффлайн owl5053

  • Участник
  • *
  • Сообщений: 27
Видимо, проблема в том, что Thunar воспринимает их как приложения, о чём говорит тот факт, что первым пунктом в контекстном меню у них идёт Выполнить. Поэтому он пытается их запустить как программы, что на Линуксе невозможно. Если файл лежит не на NTFS, то можно в его свойствах снять галочку "Разрешить запуск этого файла как приложения" и тогда первый пункт изменится на "Открыть в wine" и будет запуск по двойному щелчку. Но на NTFS она не снимается. В общем, думаю, всё бы заработало, если бы как-то убедить Thunar, что это не приложения.

абсолютно верно.
И неужели никто так и не смог его побороть и осуществить запуск .exe с NTFS разделов...

Оффлайн gosts 87

  • Участник
  • *
  • Сообщений: 3 816
  • Дмитрий/Dmitry/德米特里/दिमित्री
И неужели никто так и не смог его побороть и осуществить запуск .exe с NTFS разделов...
В Линукс разграничение прав в NTFS и, конкретно, того о чём Вы говорите, не поддерживается...

Оффлайн owl5053

  • Участник
  • *
  • Сообщений: 27
И неужели никто так и не смог его побороть и осуществить запуск .exe с NTFS разделов...
В Линукс разграничение прав в NTFS и, конкретно, того о чём Вы говорите, не поддерживается...

когда-то в молодые годы)) ставил какой то линукс  и .exe запускались с раздела NTFS... значит как-то "заставить" можно. Может конечно для этого кто-то пересобрал Thunar или это был Nautilus, не помню уже.. а может есть лайфхак.

Тестировал так:
# 1. Останавливаем службы
sudo systemctl stop proc-sys-fs-binfmt_misc.automount
sudo systemctl disable proc-sys-fs-binfmt_misc.automount
sudo systemctl mask proc-sys-fs-binfmt_misc.automount

sudo systemctl stop systemd-binfmt.service
sudo systemctl disable systemd-binfmt.service
sudo systemctl mask systemd-binfmt.service

# 2. Размонтируем вручную если mounted
sudo umount /proc/sys/fs/binfmt_misc 2>/dev/null

# 3. Выключаем binfmt_misc полностью
echo 0 | sudo tee /proc/sys/fs/binfmt_misc/status

# 4. Удаляем все регистрации если есть
for f in /proc/sys/fs/binfmt_misc/*; do
    [ -f "$f" ] && echo -1 | sudo tee "$f" 2>/dev/null
done
и не помогло.
Наверное, как итог, надо переходить на Nautilus
« Последнее редактирование: 18.12.2025 15:33:17 от owl5053 »

Оффлайн Letmein

  • Участник
  • *
  • Сообщений: 338
а может есть лайфхак.
А почему вы убрали упоминание systemd-binfmt.service? У меня с ней получилось. Создал файл /etc/binfmt.d/wine.conf с таким содержимым:
# Start WINE on Windows executables
:DOSWin:M::MZ::/usr/bin/wine:
Потом дал команду:
# systemctl start systemd-binfmt.service
Теперь запускаются двойным щелчком.

Оффлайн owl5053

  • Участник
  • *
  • Сообщений: 27
а может есть лайфхак.
А почему вы убрали упоминание systemd-binfmt.service? У меня с ней получилось. Создал файл /etc/binfmt.d/wine.conf с таким содержимым:
# Start WINE on Windows executables
:DOSWin:M::MZ::/usr/bin/wine:
Потом дал команду:
# systemctl start systemd-binfmt.service
Теперь запускаются двойным щелчком.

Я уже и отключал эту службу и что только не делал, а тут вон оно что!
Действительно помогло!
Спасибо огромное!!