Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2016-03-13 19:56:33

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Zmiana shella z zsh na bash

Cześć,
(aktualnie mam Debiana Jessie z GNOME.) Kilka dni temu próbowałem zmienić shella na zsh. Po krótkim czasie zrezygnowałem z tego pomysłu, ale wycofałem się w bardzo nieelegancki sposób, stosując aptitude purge zsh i nie zmieniając niczego w ustawieniach. Problem leży w tym, że nie mogę zalogować się na roota - po wpisaniu hasła po su w terminalu zwraca komunikat "Nie można uruchomić /usr/bin/zsh: Nie ma takiego pliku ani katalogu".


-> W tym momencie echo $SHELL zwraca "/bin/zsh".
-> chsh -s /bin/bash zwraca "You may not change the shell for 'user'."
Znalazłem informację, że nie mogę zmienić shella dla użytkownika jeśli shell aktualnie przez niego używany nie znajduje się w /etc/shells, który obecnie wygląda tak:
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
i jest dostępny tylko do odczytu.
-> w /etc/passwd domyślnym shellem dla roota jest zsh: "root:x:0:0:root:/root:/usr/bin/zsh"

Czy ktoś ma może pomysł jak to naprawić?

Offline

 

#2  2016-03-13 19:59:10

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Zmiana shella z zsh na bash

2840

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:37:12)

Offline

 

#3  2016-03-13 20:08:11

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

mount -t /dev/sda1?
Wolę spytać, bo właśnie zrobiłem exec /bin/bash i terminal wygląda tak: https://imgur.com/aZ4MFQL

Offline

 

#4  2016-03-13 20:10:47

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Zmiana shella z zsh na bash

2841

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:37:13)

Offline

 

#5  2016-03-13 20:12:25

  pink - Użytkownik

pink
Użytkownik
Skąd: P17PY93
Zarejestrowany: 2005-09-16
Serwis

Re: Zmiana shella z zsh na bash

ln -s /bin/sh /bin/zsh
apt-get install --reinstall zsh

jak nie zadziala to pozostaje live-cd

Ostatnio edytowany przez pink (2016-03-13 20:13:20)


T430 think-box 4.9-custom x86_64 Intel(R) Core(TM) i5-3230M CPU @ 2.60GHz GenuineIntel GNU/Linux
"Doktor plama i maharadża są pod złotym leszczem." "Człowieka od zwierzęcia odróżnia ciekawość świata. Patrze słucham i wyciągam wnioski."
http://przemyslawmamon.com/
https://www.behance.net/przemyslawmamon

Offline

 

#6  2016-03-13 20:44:45

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

@pink, nie mogłem niczego zainstalować.

Edytowałem fstab, zamontowałem tamtą partycję; jak dostać się do plików na niej, żeby je edytować?

Offline

 

#7  2016-03-13 20:46:12

  mati75 - Psuj

mati75
Psuj
Skąd: default city
Zarejestrowany: 2010-03-14
Serwis

Re: Zmiana shella z zsh na bash

Zamontuj ją z dowolnego live, żebyś miał tylko dostęp do plików. Zmień w /etc/passwd powłokę. Jak to Debian to można się jeszcze na roota zalogować i zmienić powłokę. Chyba że tam też jest zmieniona.


[img]https://l0calh0st.pl/obrazki/userbar.png[/img]

Offline

 

#8  2016-03-13 20:53:01

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Zmiana shella z zsh na bash

2842

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:37:14)

Offline

 

#9  2016-03-13 21:04:40

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

Może to bardzo głupie pytanie, ale bash zwraca: mnt: command not found

Offline

 

#10  2016-03-13 21:05:55

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Zmiana shella z zsh na bash

2843

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:37:15)

Offline

 

#11  2016-03-13 21:19:24

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

Ok, udało się wszystko. Dziękuję.
Ale dalej jak wchodzę w terminal pokazuje się puste okno z migającym kursorem, jak na załączonym screenie powyżej. Co tam się mogło pomieszać?

Offline

 

#12  2016-03-13 21:23:39

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Zmiana shella z zsh na bash

2844

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:37:17)

Offline

 

#13  2016-03-13 21:33:51

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

Nie wiem jak to sprawdzić; kiedy loguję się do terminala roota wywala to:
http://imgur.com/D5qh1Jc

a jak przez Ctrl-Alt f1 wchodzę do konsoli to po wpisaniu hasła znowu każe wpisać login i tak w kółko.

Offline

 

#14  2016-03-13 21:42:54

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Zmiana shella z zsh na bash

2845

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:37:18)

Offline

 

#15  2016-03-13 21:46:24

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

Wiem, ale nie mogę w zasadzie tej komendy wydać. Wpisuję rzeczy w terminal, ale nic się nie dzieje. Sakura wygląda tak: http://imgur.com/DUJxCyd czyli generalnie to samo.
W passwd zmieniłem tylko zsh na basha, na pewno nic więcej. To coś stało się przed edycją /etc/passwd, po wklepaniu exec /bin/bash.

Offline

 

#16  2016-03-14 02:04:04

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: Zmiana shella z zsh na bash

Po co te gimnastyki.

Nie trzeba nawet chroota.

przy starcie wchodzisz w tryb edycji polecenia grupa, (w starym grubie to była literka e),
tam w ścieżce poleceń kernela zmieniasz polecenie [b]init=...[/b], w takiej formie, jak tam jest, na:

Kod:

init=/bin/bash

Potem bootujesz, i od razu jesteś w konsoli roota.
Wtedy trzeba przemontować partycję root na rw:

Kod:

mount -o remount,rw /
usermod root -s /bin/bash
egrep ^root /etc/passwd
poweroff

To jest elegancka i poprawna metoda, jak boisz się używać [b]usermod[/b], to możesz zrobić zamiast tego tak:

Kod:

mount -o remount,rw /
ln -s /bin/bash /usr/bin/zsh
zsh

Za ręczną edycje pliku [b]/etc/passwd[/b] lepiej się nie bierz, bo potencjalne skutki jakiejś literówki mogą być trudne do przewidzenia a mogą być dosyć tragiczne.

Ostatnio edytowany przez Jacekalex (2016-03-14 02:05:41)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#17  2016-03-14 07:31:04

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

Czy to pomoże z pustym terminalem?

Offline

 

#18  2016-03-14 10:05:19

  pink - Użytkownik

pink
Użytkownik
Skąd: P17PY93
Zarejestrowany: 2005-09-16
Serwis

Re: Zmiana shella z zsh na bash

man chsh 

przedewszystkim


T430 think-box 4.9-custom x86_64 Intel(R) Core(TM) i5-3230M CPU @ 2.60GHz GenuineIntel GNU/Linux
"Doktor plama i maharadża są pod złotym leszczem." "Człowieka od zwierzęcia odróżnia ciekawość świata. Patrze słucham i wyciągam wnioski."
http://przemyslawmamon.com/
https://www.behance.net/przemyslawmamon

Offline

 

#19  2016-03-14 10:49:27

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

No tak, ale nie mam gdzie tego wpisać, terminal nie odpowiada, a konsola w pętli.

Offline

 

#20  2016-03-14 12:08:58

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Zmiana shella z zsh na bash

czytam ja sobie i się zastanawiam: czy na samym początku nie można było dać czegoś w stylu:

Kod:

 su - root -s /bin/bash

zamiast się bawić w livecd czy lewe inity?
niestety dopiero teraz wlazłem na forum :(


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
[i]Zespół Adwokacki Dyskrecja[/i]

Offline

 

#21  2016-03-14 12:54:13

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

Nie mogłem użyć su, bo po wpisaniu hasła zwracało komunikat, że nie odnaleziono /usr/bin/zsh* (całe zsh wyczyściłem, ale w /etc/passwd shellem dla roota było wciąż zsh) - jeśli dobrze rozumiem o co chodzi.

* i nie logowało

Ostatnio edytowany przez knotek (2016-03-14 12:54:42)

Offline

 

#22  2016-03-14 13:22:26

  pink - Użytkownik

pink
Użytkownik
Skąd: P17PY93
Zarejestrowany: 2005-09-16
Serwis

Re: Zmiana shella z zsh na bash

a do którego etapu system sie uruchamia??, bo juz sam nie wiem jakis single user mode nie dziala, poza tym jest jeszcze rescue mode z cd debian-a

bez shella sie wogule nie powinien uruchomić, wiec cos tam musisz miec /sh albo /bash


T430 think-box 4.9-custom x86_64 Intel(R) Core(TM) i5-3230M CPU @ 2.60GHz GenuineIntel GNU/Linux
"Doktor plama i maharadża są pod złotym leszczem." "Człowieka od zwierzęcia odróżnia ciekawość świata. Patrze słucham i wyciągam wnioski."
http://przemyslawmamon.com/
https://www.behance.net/przemyslawmamon

Offline

 

#23  2016-03-14 13:33:32

  knotek - Użytkownik

knotek
Użytkownik
Zarejestrowany: 2016-03-13

Re: Zmiana shella z zsh na bash

Uruchamia się wszystko poprawnie. Wtedy zsh teoretycznie wywaliłem przez aptitude purge zsh.
W /etc/passwd shellem dla roota było /usr/bin/zsh
W /etc/shells zsh w ogóle nie występowało
echo $SHELL zwracało /bin/zsh
Przy su po wpisaniu hasła zwracało, że /usr/bin/zsh nie istnieje i nie logowało
Nie mogłem użyć chsh ("you may not change the shell for 'user')

Po wpisaniu exec /bin/bash terminal się zwiesił, a potem, aż do teraz przy włączaniu go nie pojawia się nic, tam powyżej jest screen. Mogę wpisaywać tekst, ale nic się nie wykonuje. (W sakurze nie mogę nawet wpisać nic)
Kiedy przez Ctrl-alt f[x] wchodzę do konsoli i próbuję się zalogować, po wpisaniu hasła ponownie chce login. I tak w kółko.

(Później w /etc/passwd zamiast zsh przez livecd dodałem basha dla roota, a do /etc/shells dodałem zsh - bo gdzieś wyczytałem, że jeśli nie występuje w shells to nie będę mógł go zmienić)

Ostatnio edytowany przez knotek (2016-03-14 13:35:50)

Offline

 

#24  2016-03-14 16:17:02

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Zmiana shella z zsh na bash

@knotek: nie rozumiesz.
parametr -s przy su/sudo uruchamia podany program zamiast domyślnego shella - czyli w tym przypadku basha z uprawnieniami roota. sam korzystam z tego czasem, gdy muszę zrobić su na usera który ma ustawionego shella /bin/false (albo coś podobnego).


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
[i]Zespół Adwokacki Dyskrecja[/i]

Offline

 

#25  2016-03-14 16:31:10

  pink - Użytkownik

pink
Użytkownik
Skąd: P17PY93
Zarejestrowany: 2005-09-16
Serwis

Re: Zmiana shella z zsh na bash

to znaczy sie ze jakis shell jest w systemie wiec wystartuj system w single user mode albo z parametrem init=/bin/bash albo init=/bin/sh
i tam naprawiaj

z poziomu x-window raczej takich problemow nie rozwiązuje sie.

ps. nie dokonca rozumiem co sie tutaj dzieje

a z terminali to:
https://wiki.archlinux.org/index.php/rxvt-unicode

Ostatnio edytowany przez pink (2016-03-14 23:35:15)


T430 think-box 4.9-custom x86_64 Intel(R) Core(TM) i5-3230M CPU @ 2.60GHz GenuineIntel GNU/Linux
"Doktor plama i maharadża są pod złotym leszczem." "Człowieka od zwierzęcia odróżnia ciekawość świata. Patrze słucham i wyciągam wnioski."
http://przemyslawmamon.com/
https://www.behance.net/przemyslawmamon

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)

[ Generated in 0.011 seconds, 11 queries executed ]

Informacje debugowania

Time (s) Query
0.00010 SET CHARSET latin2
0.00005 SET NAMES latin2
0.00103 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.145.89.89' WHERE u.id=1
0.00162 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.145.89.89', 1732831874)
0.00047 SELECT * FROM punbb_online WHERE logged<1732831574
0.00071 SELECT topic_id FROM punbb_posts WHERE id=299204
0.00106 SELECT id FROM punbb_posts WHERE topic_id=28393 ORDER BY posted
0.00056 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=28393 AND t.moved_to IS NULL
0.00005 SELECT search_for, replace_with FROM punbb_censoring
0.00142 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=28393 ORDER BY p.id LIMIT 0,25
0.00085 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=28393
Total query time: 0.00792 s