Często edytuję plik za pomocą nano, próbuję zapisać i uzyskać błąd uprawnień, ponieważ zapomniałem uruchomić go jako sudo. Czy jest jakiś szybki sposób, aby stać się sudo bez konieczności ponownego otwierania i edytowania pliku?
command-line
sudo
nano
Kit Sunde
źródło
źródło
vim
. Zastanawiam się nad fuzją ... choć rozważam także fakt, że instrukcje specyficzne dla vima nie będą działaćnano
.nano
nie jestvim
... i nie zaprezentowały się żadnenano
rozwiązania podobne dovim
tych.Odpowiedzi:
Nie, nie możesz dać działającemu programowi uprawnień, których nie ma on podczas uruchamiania, byłby to dziura w zabezpieczeniach zwana „eskalacją uprawnień ”¹.
Dwie rzeczy, które możesz zrobić:
sudo cp $TMPFILE $FILE
. Należy pamiętać, że nie zaleca się korzystaniamv
z tego powodu ze względu na zmianę własności pliku i uprawnień, które może to spowodować, po prostu chcesz zastąpić zawartość pliku, a nie sam symbol zastępczy pliku.fg
aby wrócić do edytora i zapisać. Nie zapomnij naprawić uprawnień!¹ Niektórzy redaktorzy są w stanie to zrobić, uruchamiając nowy proces z różnymi uprawnieniami i przekazując dane do tego procesu w celu zapisania. Zobacz na przykład to powiązane pytanie dotyczące innych rozwiązań w zaawansowanych edytorach, które umożliwiają zapisanie bufora plików do potoku procesu. Nano nie ma możliwości uruchomienia nowego procesu ani przekazania danych innym procesom, więc nie ma go w tym zespole.
źródło
:w !sudo tee
Właśnie próbowałem
nano
i najbardziej zaskoczyło mnie to, że nawet nie ostrzega cię, że plik jest tylko do odczytu, gdy zaczynasz próbować edytować plik. ( AKTUALIZACJA: Najwyraźniej nano 2.2 ostrzega; 2.0 nie. )Oto (podstawowy) skrypt, który to robi.
Sprawdza, czy możesz edytować plik, a jeśli nie możesz, zamiast tego uruchamia „nano” jako root.
/ usr / local / bin / edit (lub ~ / bin / edit )
I polecenie, które zadzwoniłem
view
, aby uniknąć monitu, jeśli wiesz, że nie zamierzasz wprowadzać żadnych zmian./ usr / local / bin / view (lub ~ / bin / view )
Istnieje już program o nazwie
view
będący częścią Vi / Vim, więc możesz zaproponować lepszą nazwę.(Myślę jednak, że pełne wdrożenie tego programu spowodowałoby, że Vi stałaby się
view
zbędna).Pełne wersje
źródło
[ Read ... lines (Warning: No write permission) ]
jest to, co pojawia się tuż nad dwiema liniami pomocy dla skrótów (u dołu ekranu). Wersja Nano to 2.2.4.