зеркало из
				https://github.com/iharh/notes.git
				synced 2025-10-30 21:26:09 +02:00 
			
		
		
		
	m
Этот коммит содержится в:
		
							родитель
							
								
									9393973884
								
							
						
					
					
						Коммит
						86bddfad07
					
				
							
								
								
									
										2
									
								
								net/proxy/reverse/pangolin.txt
									
									
									
									
									
										Обычный файл
									
								
							
							
						
						
									
										2
									
								
								net/proxy/reverse/pangolin.txt
									
									
									
									
									
										Обычный файл
									
								
							| @ -0,0 +1,2 @@ | ||||
| https://digpangolin.com/ | ||||
| https://github.com/fosrl/pangolin | ||||
| @ -1,2 +1,52 @@ | ||||
| sudo - | ||||
|     ??? | ||||
| 
 | ||||
| su  «substitute user» — заменить пользователя | ||||
| sudo  «substitute user and do» — подменить пользователя и выполнить | ||||
| 
 | ||||
| su требует пароль целевой учетной записи, на кого переключаемся.  | ||||
| sudo требует пароль текущего пользователя и запускает от его имени команды, которым требуются права суперюзера. | ||||
| 
 | ||||
| Например, мы сидим под пользователем user и хотим войти под  John: | ||||
| 
 | ||||
| user@dev:/$ su john | ||||
| Будет запрошен пароль, нужно ввести пароль именно от учетной записи john, а не от user. | ||||
| 
 | ||||
| А вот пример с sudo: | ||||
| 
 | ||||
| user@dev:/$ sudo -u john whoami | ||||
| А здесь нужно ввести пароль от учетной записи user, а не от John или рута. Но для этого случая сперва необходимо добавить пермишены для пользователя user в файл /etc/sudoers. | ||||
| 
 | ||||
| user ALL=(ALL:ALL) ALL | ||||
| Редактировать этот файл можно по средствам команды visudo. А свалидировать конфиг можно командой visudo -c. Редактирование этого файла через visodu хорошо тем, что если вы допустите ошибку, то при сохранении, оно сообщит о ней. | ||||
| А для чего нужен дефис после su? | ||||
| 
 | ||||
| Для очистки переменных и чтобы пользоваться чистой оболочкой при переключении на другого пользователя. | ||||
| 
 | ||||
| Авторизуемся под пользователем user и экспортируем переменную: | ||||
| 
 | ||||
| ssh user@pc | ||||
| export a="test" | ||||
| Теперь у пользователя user есть переменная "a" которая = test. | ||||
| 
 | ||||
| Переключаемся на пользователя John и смотрим переменную "a" | ||||
| 
 | ||||
| su john | ||||
| echo $a | ||||
| Вывелась строчка test. То есть все что мы задали под user, перекочевало в оболочку john. А теперь добавим дефис: | ||||
| 
 | ||||
| su - john | ||||
| echo $a | ||||
| Переменная $a больше не выводится. Чистая оболочка. Кстати с этим дефисом часто косячат и потом долго не могут понять в чем причина. Переменные вроде были заданы, а потом куда-то пропали.  | ||||
| 
 | ||||
| su (с дефисом) — сначала переключается пользователь, а затем запускается shell, зачищаются все переменные. | ||||
| su (без дефиса) — переключает пользователя, оставляя переменные окружения старого пользователя. | ||||
| У sudo есть подобные ключи -s -i | ||||
| 
 | ||||
| user@pc:/$ sudo -s | ||||
| Запустится оболочка с правами root | ||||
| 
 | ||||
| user@pc:/$ sudo -i | ||||
| Запустится оболочка, но уже с чтением файлов root/.profile/.bashrc и т.п. Можно попробовать добавить экспорт переменной в .profile, сделать sudo -s/-i и увидеть что с ключом -i переменная выведется на экран. | ||||
| 
 | ||||
| По сути sudo -i = команде sudo su -. Но обычно за sudo su - в приличных местах можно получить по шапке. Это плохая практика! Так как это порождает дополнительный процесс и больше гемора с набором самой команды. | ||||
|  | ||||
							
								
								
									
										7
									
								
								science/ai/code-assist/dyad.txt
									
									
									
									
									
										Обычный файл
									
								
							
							
						
						
									
										7
									
								
								science/ai/code-assist/dyad.txt
									
									
									
									
									
										Обычный файл
									
								
							| @ -0,0 +1,7 @@ | ||||
| https://www.dyad.sh/ | ||||
| https://github.com/dyad-sh/dyad | ||||
| 
 | ||||
| https://www.dyad.sh/docs | ||||
| https://www.dyad.sh/blog | ||||
| 
 | ||||
| https://academy.dyad.sh/ | ||||
							
								
								
									
										1
									
								
								science/ai/code-assist/source-to-llm.txt
									
									
									
									
									
										Обычный файл
									
								
							
							
						
						
									
										1
									
								
								science/ai/code-assist/source-to-llm.txt
									
									
									
									
									
										Обычный файл
									
								
							| @ -0,0 +1 @@ | ||||
| github.com/ai-belov/source-to-llm | ||||
		Загрузка…
	
	
			
			x
			
			
		
	
		Ссылка в новой задаче
	
	Block a user
	 Ihar Hancharenka
						Ihar Hancharenka