Linux root permissions denied

unixforum.org

Форум для пользователей UNIX-подобных систем

  • Темы без ответов
  • Активные темы
  • Поиск
  • Статус форума

Решено: Permission denied под root’ом (очень непонятно)

Решено: Permission denied под root’ом

Сообщение routlaw » 16.06.2009 10:32

собсна, сабж.
захожу под рутом (без загрузки иксов ибо ставлю новые дрова от NVIDIA), запускаю файл с новыми дровами, а он мне Permission denied!!
самое интересное что в этой же папке запускаю файл со старыми дровами — и установка начинается!

убунту 904 гном. х86. ext4.

прошу помощи плиз.

Re: Решено: Permission denied под root’ом

Сообщение blackdevil » 16.06.2009 10:35

Как заходите? Куда заходите? Точно под рутом или через sudo? Как запускаете? Какие права на файл? Где точный вывод того что выводится в терминал?

В общем информации ноль. а ответ наверное надеетесь получить.

Re: Решено: Permission denied под root’ом

Сообщение Pravednik » 16.06.2009 10:35

собсна, сабж.
захожу под рутом (без загрузки иксов ибо ставлю новые дрова от NVIDIA), запускаю файл с новыми дровами, а он мне Permission denied!!
самое интересное что в этой же папке запускаю файл со старыми дровами — и установка начинается!

убунту 904 гном. х86. ext4.

прошу помощи плиз.

Файл нужно сделать исполняемым. Либо галочку в свойствах файла поставьте, либо chmod

Источник

глюк или что ? permission denied и root

Перемещено JB из talks

Тот факт, что не видны все метаданные наводит на странные мысли. А что если попробовать

Ну и да, что такое fuse_test? Может быть просто криво реализовано?

то есть, знаки вопроса в тех местах тебя не напрягают?

Пробовал сначала chown -R root:root fuse_test

А что говорит lsattr fuse_test ?

Я игрался с fuse-sshfs.
Но сейчас ничего не примантировано.

lsattr: Permission denied while trying to stat fuse_test

это уже на завтра оставлю. устал очень, да и на тестовом всё это. не очень страшно.

я даже думал над тем, что бы создать пользователя «?» и из под него попробовать.

я даже думал над тем, что бы создать пользователя «?»

вот и выросло поколение, блин.

может, ты для начала посмотришь, что с фьюз демоном, который обеспечивал монтирование этого ресурса, потом ты посмотришь на состояние фс, чтобы знать наверняка, что она не сломалась итп, м?!

Читайте также:  Unity linux что это такое

Зачем думать, трясти надо же! 🙂

Это нормально, оно всегда так, когда удалённый ресурс отваливается. Я даже топик на похожую тему создавал тут как-то.

А как исправить ?

fusermount -u и man fusermount.

А вообще прикрыть руту права как нефиг делать. Этим занимаются, например, selinux, apparmor.

Это нормально, оно всегда так, когда удалённый ресурс отваливается.

+1. Пробовал примоунтить фтп, и оно зависло. Я правда каких только команд туда на вводил — убил как-то всётаки каким-то комбо.

я этим в самом начале размонтировал. потом так стало.

Если моя дырявая память мне не изменяет, то только живителным SIGKILL’ом в адрес то ли sshfs.

Этим занимается lids, потому что там нету аналога sentenforce без ребута. Или можно все-таки?

не понял, что требуется сделать?

ещё раз сделай fusermount -u.

fsck в обязательном порядке.
Эт у тебя дерево походу порушилось, сталкивался с таким.

Ы. каменты не читай@сразу отвечай.

Ну если это фусе нагадил, то надо прибить отвечающий процесс процесс.
ищи с помощью htop/top/ps/ ssh и убей его.
будет выглядеть наподобие такого
ssh -x -a -oClearAllForwardings=yes -2 user@host -s sftp
а ещё будет
sshfs user@host:/remote/point local/mount/point

Источник

Ошибка bash permission denied

Многие новички пытаются выполнить запись определенных значений в системные файлы с помощью операторов перенаправления ввода и вывода и получают ошибку bash permission denied. Эта ошибка выводится, даже если вы использовали sudo.

Казалось бы, sudo есть, значит права суперпользователя получены и все должно работать но тут все не так просто. В этой статье мы рассмотрим почему возникает ошибка bash permission denied и как ее обойти.

Ошибка bash permission denied

Допустим, вы выполняете команду:

sudo echo «nameserver 8.8.8.8» >> /etc/resolv.conf

А в результате вместо записи строчки в /etc/resolv.conf получаете ошибку:

bash: /etc/resolv.conf permission denied

В русской локализации это будет отказано в доступе bash linux. Так происходит потому что вы запускаете с правами суперпользователя утилиту echo и она честно выводит вашу строку в стандартный вывод bash с правами суперпользователя. Но bash запущен от обычного пользователя, и когда интерпретатор bash пытается записать полученную строчку в системный файл, естественно, что вы получите ошибку.

Но существует несколько способов обойти это ограничение, вы можете, например, использовать команду tee, которая записывает стандартный вывод в файл или запустить саму оболочку от имени суперпользователя. Рассмотрим сначала вариант с tee:

echo ‘текст’ | sudo tee -a /путь/к/файлу

echo ‘nameserver 8.8.8.8’ | sudo tee -a /etc/resolv.conf

Это очень простое решение, но, кроме того, вы можете запустить оболочку bash с правами суперпользователя, чтобы дать ей доступ на запись:

Читайте также:  Подключить принтер по bluetooth windows 10

sudo sh -c ‘echo текст >> /путь/к/файлу’
sudo bash -c ‘echo текст >> /путь/к/файлу’

sudo bash -c ‘echo nameserver 8.8.8.8 >> /etc/resolv.conf

Еще одно решение, призванное, упростить эту команду, добавить такой код в

sudoe() <
[[ «$#» -ne 2 ]] && echo «Usage: sudoe

» && return 1
echo «$1» | sudo tee —append «$2» > /dev/null
>

Дальше для вывода строки в файл выполняйте:

sudoe ‘текст’ >> /путь/к/файлу

sudoe «nameserver 8.8.8.8» > /etc/resolv.conf

Теперь все будет работать, как и ожидалось, и ошибка bash отказано в доступе не появится. Еще можно поменять права на файл, а потом уже выводить в него строку. Но это очень неправильное решение. И даже не потому, что это небезопасно, а больше потому что там намного больше действий.

Выводы

В этой небольшой статье мы разобрали почему возникает ошибка bash permission denied при использовании команды echo для системных файлов, а также несколько путей ее решения. Как видите, все достаточно просто. Надеюсь, эта информация была полезной для вас.

Источник

‘Permission Denied’ even while running as root

I have a simple bash shell script:

when I run this script with sudo ./’script_name’ , I get a permission denied error on the line where I attempt to access /etc/passwd. What am I doing wrong here?

2 Answers 2

user_exists=$(cat /etc/passwd | grep ‘GNU Mailman’)

getent passwd username

To understand why, you have to look at the line the way that bash looks at the line:

According to bash, you are (temporarily) setting the environment variable user_exists to have the value cat . With that value set, then the program /etc/passwd is executed and its output sent to grep ‘GNU Mailman’ . Since /etc/passwd does not have execute permission, this command fails for lack of permission.

The solution is to use the proper format for process substitution as outlined by Vladimir Kolesnikov:

Not the answer you’re looking for? Browse other questions tagged linux bash or ask your own question.

Hot Network Questions

Subscribe to RSS

To subscribe to this RSS feed, copy and paste this URL into your RSS reader.

site design / logo © 2021 Stack Exchange Inc; user contributions licensed under cc by-sa. rev 2021.10.8.40416

By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.

Источник

permission denied for root@localhost for ssh connection

I just installed Ubuntu 14.04 and LAMP on that. Then, I wanted to configure my server, so tried out This tutorial.

When I give the command:

I get : Permission denied, please try again. I have logged in as root user through the command :

I also tried the same, by logging in through:

Читайте также:  Драйвер для принтера hp laserjet 1505 для windows 10

I use the same password as that I used to log in as user, but still am getting the same error message.

Could someone help me out here?

PS: I looked into This question but didn’t seem to work for me.

6 Answers 6

By default, the SSH server denies password-based login for root. In /etc/ssh/sshd_config , if the following line exists, possibly commented out (with a # in front):

Then change it to the following, uncommenting if needed (remove the # in front):

And restart SSH:

Or, you can use SSH keys. If you don’t have one, create one using ssh-keygen (stick to the default for the key, and skip the password if you feel like it). Then do sudo -s (or whatever your preferred method of becoming root is), and add an SSH key to /root/.ssh/authorized_keys :

In some cases, after change,

must check this config:

and to enable login must change to:

If u have not given password for root and you are trying to fire command on spark or haddop like ./sbin/stop-all.sh or./sbin/start-all.sh . If you don’t have a root password, you can setup one using

and fire commands.

I had a similar problem to this. I needed two PCs, one on Ubuntu and another on Arch, to sync files through Unison but ran into the same permission denied error. Just for the sake of those who are having the same problem as I was, here’s what I did:

First: Installed the same version of Unison on both PCs. This was a bit challenging as the one available on the software center was behind to what was readily available for Arch. So, I couldn’t find a higher version for Ubuntu, so I replaced the one on Arch with a lower one instead. Found one here: http://zdia.de/downloads/unison-2.40.102-linux-x86_64. The same version is in the software center for Ubuntu.

I ran into a problem in step 3 as I tried to ssh-copy. But it was resolved by changing «id_dsa.pub» into «id_rsa.pub» in the «ssh-copy-id -i $HOME/.ssh/id_dsa.pub root@192.168.0.101» line. Probably my fault, as I think I forgot to add «-t dsa». Anyway, try the original command first. IF you get an error, then change to rsa.

After following the steps above, I found I still couldn’t get Unison to connect to the other server, neither can I log in (without Unison) through ssh to the other server. Finally,after hours of google searching, I was led to this page, and the answer given my Muru sealed the deal.

After applying it, I could now login via SSH to server 2.

So I ran Unison, and corrected the profile settings, and viola!

Источник

Оцените статью