Почему Linux не позволяет мне играть с / dev / dsp?

Я работаю через учебник Linux, и он рассказывает мне об устройствах. В нем говорится, что если я отправлю соответствующий вывод в /dev/dsp , он будет воспроизводить звук. Например, cat file.wav > /dev/dsp , где file.wav – это любой файл .wav.

Когда я это делаю, я получаю разрешение. Если я запустил это с помощью sudo, я все равно получаю разрешение. Если я впервые, звук не воспроизводится.

Почему я разрешаю разрешение с sudo ? Почему звук не звучит даже с su ?

  • Синхронизация пакетов программного обеспечения между различными дистрибутивами Linux
  • Как выбрать адекватный дистрибутив Linux для данного оборудования?
  • Проблема в конфигурации мыши
  • Как сделать сеансы gksudo или gksu более длительными в Linux
  • Как сделать загрузочный USB из командной строки?
  • Как отключить системный звуковой сигнал LMDE?
  • Как запустить автозапуск службы (apache2) с помощью Linux Mint
  • Ctrl + F2 больше не открывает панель запуска приложений в Gnome 2
  • 3 Solutions collect form web for “Почему Linux не позволяет мне играть с / dev / dsp?”

    /dev/dsp является частью OSS, который не был частью ядра Linux в … очень долгое время. Он уже давно вытесняется ALSA, который использует разные устройства, разные программы и другой API.

    Однако есть модуль уровня эмуляции. Если он доступен, загрузка модуля snd-pcm-oss позволит вам использовать устройства PCM для OSS, такие как /dev/dsp .

    Или просто придерживайтесь данных о трубопроводах в aplay или paplay .

    Если я запустил это с помощью sudo, я все равно получаю разрешение.

    По этому утверждению это звучит так, будто вы пытаетесь выполнить команду вроде:

     sudo cat file.wav > /dev/dsp 

    Причина, по которой вы продолжаете получать «отказ в доступе», заключается в том, что ваша оболочка сначала пытается открыть устройство /dev/dsp для вывода, прежде чем запускать команду (которая является sudo ). Чтобы оболочка открыла перенаправление с правами root, вам нужно было бы сделать что-то вроде:

     sudo sh -c 'cat file.wav > /dev/dsp' 

    Как отмечалось, устаревшая книга.
    Итак, чтобы примеры работали с более современным Linux, где говорится что-то вроде

     cat music.wav > /dev/dsp 

    измените его на:

     cat music.wav | aplay 

    И вы только что сделали свой первый портирование кода! Выиграть! Не стесняйтесь отправлять авторские патчи. 🙂

    Interesting Posts

    Прокрутка отключена внезапно в терминале

    Как представить команду в нескольких строках для мгновенного копирования / вставки?

    Двойная установка загрузки не имеет эффекта (без GRUB), Boot-Repair не помогает

    фильтровать и подсчитывать с помощью grep за один проход?

    Как я могу добавить четыре пробела перед каждой строкой кода программы в терминале

    Как удалить ненужные файлы с помощью тильды с помощью команды linux?

    удалить все пустые каталоги, начиная с

    Включить шифрование 3DES для openssl 1.0.1t на Debian 7

    Как установить переменные среды для программы, выполненной с помощью `nohup`?

    Застрял в отказоустойчивой сессии xterm

    Расширение корневого раздела CentOS 6 С помощью fdisk

    Почему изменяется значение inode теневого файла?

    Когда и почему унылы?

    Какой коммутатор командной строки lspci ограничит вывод только для устройств Ethernet?

    Почему файлы конфигурации X-сервера переместились из / etc / Xorg в / usr / share / Xorg?

    Linux и Unix - лучшая ОС в мире.