Премини към съдържанието
  • Добре дошли!

    Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

    Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

     

Конзолни решения


tux

Препоръчан отговор

Permission denied (publickey) Как мога да променя собствеността на ключовете? И трябва ли да премахна стария ключ от другия пс?

Както за всеки файл:

за да видиш чии са и какви права имат:

ls -la

за да промениш:

chown user keyfilechmod flags keyfile

Правата трябва да са като на стария комп. Потребителя трябва да е този на новата машина, в неговата <home>/.ssh папка се слагат ключовете,

Какво значи стария ключ, нали са едни и същи. Ако питаш за файловете, не виждам защо трябва да ги махаш, освен ако не искаш изрично от там да има достъп.

За какво ги ползваш тези ключове? Чист ssh? Или някаква програма отгоре ползва ssh, примерно git? Ако е второто пробвай само с ssh да се вържеш да видим дали проблема е в ssh-то или програмата си търси ключ/потребител другаде.

също пробвай да използваш ssh-agent - има ръководство нагоре в темата.

Линк към коментара
Сподели в други сайтове

  • Отговори 438
  • Създадено
  • Последен отговор

Потребители с най-много отговори

Казвам стария, защото няма да ползвам пс-то, което в момента е с ключа. Иначе е за ssh достъп до пс-та с мрежов тунел, който правим.

Ето какво ми казва за правата:

 

-rw-r--r-- 1 root root 136156 юни 30 00:34 moduli-rw-r--r-- 1 root root 1669 юни 30 00:34 ssh_config 

Линк към коментара
Сподели в други сайтове

Казвам стария, защото няма да ползвам пс-то, което в момента е с ключа. Иначе е за ssh достъп до пс-та с мрежов тунел, който правим.

Ето какво ми казва за правата:

 

-rw-r--r-- 1 root root 136156 юни 30 00:34 moduli-rw-r--r-- 1 root root 1669 юни 30 00:34 ssh_config 

Е ти със руут акаунт ли работиш? И ако не, смени им собствеността и виж да не си ги копирал в home папката на root-a?

Линк към коментара
Сподели в други сайтове

Преди няколко дни намерих, едно интересно като идея скриптче за RedHat/CentOS, което ъпдейтва HOSTNAME на сървера.  Скрипта не е мой, аз само добавих няколко линии в него.

 

Скрипта:

Забележка:  Запазете скипта, и после стартирайте като Root:

#!/usr/bin/env bash# Script to update hostname on Rhel/CentOS server.# Based on script from <https://www.centosblog.com/script-update-centos-linux-servers-hostname>if [ -z "$( egrep "CentOS|Redhat" /etc/issue)" ]; then    echo 'Only for Redhat or CentOS'    exitfiOLD_HOSTNAME="$( hostname )"NEW_HOSTNAME="$1"if [ -z "$NEW_HOSTNAME" ]; then    echo -n "Please enter new hostname: "    read NEW_HOSTNAME < /dev/ttyfiif [ -z "$NEW_HOSTNAME" ]; then    echo "Error: no hostname entered. Exiting."    exit 1fiecho "Changing hostname from $OLD_HOSTNAME to $NEW_HOSTNAME..."hostname "$NEW_HOSTNAME"sed -i "s/HOSTNAME=.*/HOSTNAME=$NEW_HOSTNAME/g" /etc/sysconfig/networkif [ -n "$( grep "$OLD_HOSTNAME" /etc/hosts )" ]; then    sed -i "s/$OLD_HOSTNAME/$NEW_HOSTNAME/g" /etc/hostselse    echo -e "$( hostname -I | awk '{ print $1 }' )t$NEW_HOSTNAME" >> /etc/hostsfiread -p "Do you want to restart networking on your server to make sure that changes will be persistent on reboot? [yn]" answerif [[ $answer = y ]] ; then    service network restartfiecho "[Done] Your hostname has been set to $NEW_HOSTNAME"
Редактирано от ivoarch (преглед на промените)
Линк към коментара
Сподели в други сайтове

Последната газария която научих :D

 

Преглед на съдържанието в директория, без да използваме ls ,командата.

 

Екшън:

(~)% pwd																 /home/ivo(~)% echo *															   bin/ Build/ Desktop/ Documents/ Downloads/ Dropbox/ Music/ Pictures/ Public/ Templates/ Videos/(~)% echo Desktop/*														  ;)Desktop/gnome-terminal.desktop

Яко нали :)

 

Ако има други варианти, шарнете ги ;)

Линк към коментара
Сподели в други сайтове

 

:)

 find -L -maxdepth 1 -type d -name '*' ! -name '.*' -printf '%fn' | column

Да става, готино но много сложно :)

 

Открих едно по лесно решение , става въпрос за командата  print във ZSH шела, което мен ме устройва.

Командата е, много подобна на echo, с различката че има повече и по сложни опции. повече за това тук [1] http://zsh.sourceforge.net/Guide/zshguide03.html

 

Екшън

(~)% pwd																			   /home/ivo(~)% print -c *																	    bin/	    Desktop/    Downloads/  Music/	  Public/	 Videos/Build/	  Documents/  Dropbox/    Pictures/   Templates/(~)% print -c Desktop/*										    Desktop/gnome-terminal.desktop

Забравих да кажа, че ще трябва тази опция в ~/.zshrc файла.

setopt extended_glob
Редактирано от ivoarch (преглед на промените)
Линк към коментара
Сподели в други сайтове

 

Да става, готино но много сложно Публикувано изображение

 

Открих едно по лесно решение , става въпрос за командата  print във ZSH шела, което мен ме устройва.

Командата е, много подобна на echo, с различката че има повече и по сложни опции. повече за това тук [1] http://zsh.sourceforge.net/Guide/zshguide03.html

 

Екшън

(~)% pwd																			   /home/ivo(~)% print -c *																	    bin/	    Desktop/    Downloads/  Music/	  Public/	 Videos/Build/	  Documents/  Dropbox/    Pictures/   Templates/(~)% print -c Desktop/*										    Desktop/gnome-terminal.desktop

Забравих да кажа, че ще трябва тази опция в ~/.zshrc файла.

setopt extended_glob

А нужно ли е въобще да е принт?

echo *.bash_history .bash_profile .ssh .viminfo aaa Desktop LauncherFolder mail2zimbr.sh mail2zimbr2.sh mail2zimbr3.sh MyDocuments

 

Линк към коментара
Сподели в други сайтове

 

А нужно ли е въобще да е принт?

Не но нали казахме, че търсим алтернативи на echo.

 

И print е,добра такава ако ползваш zsh-де :)

Линк към коментара
Сподели в други сайтове

Не но нали казахме, че търсим алтернативи на echo.

 

И print е,добра такава ако ползваш zsh-де Публикувано изображение

Ааа, аз не съм видял по-горе :)

Линк към коментара
Сподели в други сайтове

 

Когато ползвате няколко конзолни приложения едновременно, понякога не е удобно да пуснете всяко в отделна конзола. В този случай, може да изпълнявате няколко задачи в една конзола и да си превключвате между тях:

Ще дам пример с превключване между 4 приложения (2x vim, python и top), но това работи аналогично с произволен (в рамките на разумното) брой приложения, които имат конзолен интерфейс.

Примерно пускаме си Vim:

$ vim somefile.txt

Сега ако натиснем Ctrl-z, линукс ще спре временно Vim и ще го прехвърли на заден план, връщайки ни в конзолата:

[1]+ Stopped vim somefile.txt

Сега вече може да си изпълняваме други команди, както обикновено. Когато решим да се върнем към Vim ползваме командата fg:

$ fg

което ни връща във vim, както сме го оставили. Нека отново да го спрем с Ctrl-z и да пуснем нещо друго примерно python

$ python

Пак Ctrl-z:

[2]+ Stopped python

Сега ползвайки само fg и ctrl-z ще можем да превключваме между конзолата и python. А какво стана с vim?

Командата fg - ни връща към задачата, която сме спрели предпоследно: 

$ fg -

Така редувайки ctrl-z и fg - може да превключвате между две задачи.

Нека сега да пускнем top: 

$ top

Пак Ctrl-z: 

[3]+ Stopped top

И последно още един vim (за да покажем, че може да се превключва между еднакви приложения и че има възможност да ги различите. 

$ vim

Пак Ctrl-z: 

[4]+ Stopped vim

Командата jobs ни показва спрените задачи: 

$ jobs[1]  Stopped vim somefile.txt[2]  Stopped python[3]- Stopped top[4]+ Stopped vim

Може да изберем към коя задача да се върнем, като подадем номера ѝ на fg: 

$ fg 1

Редакция: Това се установи че е специфично за шел-а, който употребявате. Написаното е пробвано с bash, при zsh например е:

$ fg %1

Забележете минусчето и плюсчето. С минус винаги е маркирана задачата, която сте спрели предпоследна, позволявайки да го използвате за превключване между последните две задачи. Плюсчето маркира последната спряна задача, но според мен е излишно, защото извиквайки fg без аргумент ви връща именно в нея.

Ще забележите че за всяка задача са отбелязани и параметрите. Това може да ви помогне да различите няколко инстанции на едно и също приложение. Като последно ще добавя, че дори и да излезете от някои от тези приложения, номерата на останалите се запазват, което ви гарантира, че в нашия случай

$ fg 3

винаги ще ви върне в top, дори да сте излезли вече от първия vim и python например:

$ jobs[3]- Stopped top[4]+ Stopped vim

Нещо подобно, но паузира и такива които не са стартирани от терминала,  като графичните приложения например.

 

Линукс на пауза!!

 

Ето как става трика, с две команди в терминала:

 

(Пример със firefox)

 

1. Намери PID-а на, приложението което искаме да паузираме, в случая това е firefox.

$> pgrep firefox1600

Така, от командата разбираме че PID-а на firefox е, 1600

 

2. Часът на истината, или "Stop the Show", сега паузираме firefox-а.

 

kill -19 PID

$> kill -19 1600

друг начин е, да използвате killall командата, като с нея може да направо да пишете вместо PID, името на приложението.

пример:

$> killall -19 firefox

А, да забравих "The show must go on", че трябва да подновим/от паузираме firefox. :)

 

kill -18 PID

$> kill -18 1600

Не съм 100% сигорен, но такава функция която да паузира приложения се поевява в OS X, чак с Mavericks 10.бла версията.

Редактирано от ivoarch (преглед на промените)
Линк към коментара
Сподели в други сайтове

Нещо подобно, но паузира и такива които не са стартирани от терминала,  като графичните приложения например.

Малко се губи смисъла, ама. Готиното на графичните приложения е именно възможността да се превключва лесно. Да минеш да ги управляваш през конзола не е логично.

Линк към коментара
Сподели в други сайтове

    #!/bin/bash    # Автор: Росен Александров (и благодарности към gat3way)    # За мен: [email protected] , [email protected], Скайп ROKO__2    # Важно за да работи правилно скрипта трябва да го поставите в /usr/local/bin както и да имате инсталиран пакет "pv", поне в AltLinux се казва така.         if [ `id -u` -ne 0 ] ;    then    exec notify-send -t 10000 "Нямате администраторски права! Стартирайте скрипта като администратор или със sudo dd-flash" ; exit 1    fi         echo "За да можете да създадете Жив флаш диск трябва да го поставите в USB порта на компютъра, като флаш диска не трябва да е монтиран!"    echo    echo "Пълен път до ISO (Пример /home/user/Загрузки/iso.iso)"    read iso         while ! [ -s $iso ]; do    printf "Избрания файл не съществува. Моля изберете съществуващ.  ->  "    read iso    done    echo    while ! fdisk -s $flash &>/dev/null; do       printf "Въведете съществуващ флаш диск. Пример /dev/sdc  ->  "    read flash    done    echo    echo "Операцията ще унищожи информацията на вашия флаш диск!"    echo "Сигурни ли сте че искате да продължите?"    select yn in "Да" "Не"; do    case $yn in    # Разкоменирайте този ред ако искате по-кратка информация за трансфера Да ) dd if=$iso | pv -ptr -N $iso | dd of=$flash ;;    Да ) dd if=$iso | pv -ptrs `du -csh $iso 2>/dev/null|tail -n1|awk '{print $1}'` | dd of=$flash ; exit 1 ;;    Не ) exit;;    esac    done

Едно мое произведение от преди 3 - 4 години, за записване на буутващи флашки.

Линк към коментара
Сподели в други сайтове

Малко се губи смисъла, ама. Готиното на графичните приложения е именно възможността да се превключва лесно. Да минеш да ги управляваш през конзола не е логично.

Е немога да ви кажа, какъв точно е смисъла, можеби при лаптопите ще пестите енергия, по този начин, незнам.

Просто сърфирах в нета, и видех тва чудо на технологията OS.X и как то паузирало приложения, та се разрових да вида за линукс как става трика, сетих се за Rule 34 и знам че неможе да няма такова нещо и за Линукс.

Линк към коментара
Сподели в други сайтове

  • 3 седмици по-късно...

Генериране на 10 MB-ови файлове с ASCII числа от /dev/urandom. Единици и нули:

< /dev/urandom tr -dc 01 | head -c 10000000 > 10mb.txt
От 0 до 9:
< /dev/urandom tr -dc '[:digit:]' | head -c 10000000 > 10mb.txt
В моя случай ми трябваше за да си правя random bitmap-и за визуализация на бял шум със spectra, та тъй като сорса на въпросният туул е буквално един C файл, който използва GD библиотеката за да чертае изображения, и автора го е домързяло да добави някой и друг ред код, че да може да чете директно бинарни данни, а не да умира, ако input-а не е ASCII число. Държа да отбележа, че по този начин реално от /dev/urandom ще се прочете доста по-голямо количество данни от 10 MB (някъде около 1 GB, и отнема време), тъй като с tr просто филтрираме това, което ни трябва от останалото, а random flow-а на /dev/urandom далеч не е само 1 и 0 или числа от 0 до 9... Редактирано от programings (преглед на промените)
Линк към коментара
Сподели в други сайтове

...

'

Идейно. Аз обаче бих моднал spectra-та - не съм запознат със сорса, ама не мисля че ще е голяма промяна. А разликата в скоростта на изпълнение сигурно ще е брутална.

П.П. Обаче 1 път на няколко милиона години може да се случи тази работа да продължи повече от човешки живот Публикувано изображение

Редактирано от flare (преглед на промените)
Линк към коментара
Сподели в други сайтове

Генериране на 10 MB-ови файлове с ASCII числа от /dev/urandom.Единици и нули: 

< /dev/urandom tr -dc 01 | head -c 10000000 > 10mb.txt
...

 

Хубаво е да се провери дали следното няма да работи по-бързо:

dd if=/dev/urandom bs=10000000 count=1|tr -dc 01
Линк към коментара
Сподели в други сайтове

...

Оф, много съм старомоден явно, та само мен ме притеснява да разчитам на (пък било и псевдо-) случайни числа да ми свършат работата...П.П. Тва няма да работи капитане, щото няма да излязат достатъчно символи.Ако все пак искате да го правите с шел инструменти, какво ще кажете за това:dd if=/dev/urandom bs=10000000 count=1 | tr "000-177" "0" |tr "200 - 377" "1" Редактирано от flare (преглед на промените)
Линк към коментара
Сподели в други сайтове

Оф, много съм старомоден явно, та само мен ме притеснява да разчитам на (пък било и псевдо-) случайни числа да ми свършат работата...П.П. Тва няма да работи капитане, щото няма да излязат достатъчно символи.Ако все пак искате да го правите с шел инструменти, какво ще кажете за това:dd if=/dev/urandom bs=10000000 count=1 | tr "000-177" "0" |tr "200 - 377" "1"

Aaa, това е добро :)

Линк към коментара
Сподели в други сайтове

Aaa, това е добро Публикувано изображение

Ми откривате топлата вода. Тия работи се правят с look-up таблици, не да разчитате, че може би, евентуално, в някакъв момент от бъдещето, на генератора на псевдо-произволни числа ще му е кеф да ви подаде символите, които чакате от него.

Линк към коментара
Сподели в други сайтове

Ми откривате топлата вода. Тия работи се правят с look-up таблици, не да разчитате, че може би, евентуално, в някакъв момент от бъдещето, на генератора на псевдо-произволни числа ще му е кеф да ви подаде символите, които чакате от него.

Аз в такъв случай не си играя с шел, директно нещо на С ще стане по-бързо и лесно :)

Линк към коментара
Сподели в други сайтове

Аз в такъв случай не си играя с шел, директно нещо на С ще стане по-бързо и лесно Публикувано изображение

Аз с това почнах. Би трябвало да е до 10-20 реда в програмата да вади от рандом низ, да го конвертира в къвто си иска рейндж и толкова. И няма да обяснявам ква скорост ще е.

Линк към коментара
Сподели в други сайтове

Аз с това почнах. Би трябвало да е до 10-20 реда в програмата да вади от рандом низ, да го конвертира в къвто си иска рейндж и толкова. И няма да обяснявам ква скорост ще е.

И ако е за 0 и 1 ще взимам просто битовете на всяко число :) И ще направя 10М/8 обръщения към генератора :)

Линк към коментара
Сподели в други сайтове

...dd if=/dev/urandom bs=10000000 count=1 | tr "000-177" "0" |tr "200 - 377" "1"

Хм, при мен това връща бинарни данни? Редактирано от programings (преглед на промените)
Линк към коментара
Сподели в други сайтове

Добавете отговор

Можете да публикувате отговор сега и да се регистрирате по-късно. Ако имате регистрация, влезте в профила си за да публикувате от него.

Гост
Напишете отговор в тази тема...

×   Вмъкнахте текст, който съдържа форматиране.   Премахни форматирането на текста

  Разрешени са само 75 емотикони.

×   Съдържанието от линка беше вградено автоматично.   Премахни съдържанието и покажи само линк

×   Съдържанието, което сте написали преди беше възстановено..   Изтрий всичко

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Добави ново...

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите Условия за ползване