Вернуться на предыдущую страницу

В этой статье я собрал для себя много чего полезного для Linux Manjaro. А именно, Вы увидите много команд, ссылок, информации, которая поможет найти быстрые ответы при возникновении различных ситуаций с OS Linux Manjaro (и не только, а для всех семейств Unix System)... Данный материал может понадобиться, как новичку, так и профессионалу web-разработки, а также системным администраторам Linux.

chown -R user:group /home/user/dir/

где user ­— имя пользователя;
-R — значит рекурсивное выполнение команды (на все внутренние файлы и подпапки);
group — группа пользователя.

Пример:

chown -R user:user /home/user/dir/

$USER:$USER — также пользователь и его группа:

sudo chown -R $USER:$USER /etc/transmission-daemon/settings.json

Изменить права директории или файла:

chmod 744 /home/user/localhost/

Поиск файла:

find / -name 545_Multik.UseMind.ORG_kot-*

Записать список файлов папки в текстовый файл:

переходим в нужную папку:

cd /home/user/_ALL/Video/PINK_P/

вызываем команду записи названий всех файлов в текстовый файл:

ls > filenames.txt

Создать tar.gz архив со сжатием, включая все вложенные папки:

tar -zcvf 2020-06-12_ALL_W_DEV4.tar.gz /var/www/site.pro

При этом архив будет находится в папке /root

Распаковать архив в определенную папку:

tar -xvzf archive.tar.gz -C /path/to/my/folder

Поменять путь диска (disk path) в Linux с корявых таких штук [ссылка на оригинал вопроса | или такая ссылка на ArchWiki]:

/run/media/user/67b1220f-e04e-4d71-a6af-d5d5g4dfg0

на что-то человекопоняное:

/run/media/user/my-hdd

Возможно, перед тем, как выполнить эти команды, Вам придётся размонтировать раздел такой командой:

sudo umount /dev/sdc2

такой командой (если файловая система ext2/ext3/ext4):

sudo e2label /dev/sda3 my-hdd

если файловая система btrfs

btrfs filesystem label /dev/XXX <label>

for reiserfs:

reiserfstune -l <label> /dev/XXX

for jfs:

jfs_tune -L <label> /dev/XXX

for xfs:

xfs_admin -L <label> /dev/XXX

for fat/vfat (using dosfstools):

fatlabel /dev/XXX <label> 

OR (using mtools):

mlabel -i /dev/XXX ::<label>

for exfat (you might need to install exfat-utils first):

exfatlabel /dev/XXX <label>

for ntfs:

ntfslabel /dev/XXX <label>

for swap (first you need to swapoff):

swaplabel -L <label> /dev/XXX

перед этим можно узнать какой именно диск у Вас тот самый, который примонтирован хешем:

df -h

вывод такой приблизительно:

Файловая система Размер Использовано  Дост Использовано% Cмонтировано в 
dev                2,9G            0  2,9G            0% /dev
run                2,9G         1,4M  2,9G            1% /run
/dev/dm-0          111G          35G   74G           32% /
tmpfs              2,9G         105M  2,8G            4% /dev/shm
/dev/loop0          44M          44M     0          100% /var/lib/snapd/snap/snapd/15177
/dev/loop4          44M          44M     0          100% /var/lib/snapd/snap/snapd/14978
/dev/loop1         100M         100M     0          100% /var/lib/snapd/snap/snowflake/2
/dev/loop3          56M          56M     0          100% /var/lib/snapd/snap/core18/2344
/dev/loop2          56M          56M     0          100% /var/lib/snapd/snap/core18/2284
tmpfs              2,9G          57M  2,9G            2% /tmp
/dev/dm-0          111G          35G   74G           32% /home
/dev/dm-0          111G          35G   74G           32% /var/cache
/dev/dm-0          111G          35G   74G           32% /var/log
tmpfs              594M          76K  594M            1% /run/user/1000
/dev/sda1           96G          53G   39G           58% /run/media/user/67b1220f-e04e-4d71-adfgert4502c0
/dev/sda3          7,2T         2,7T  4,1T           40% /run/media/user/hdd
/dev/sdc2          466G         392G   75G           85% /run/media/user/03845rfgrgfAD66A

МОНТИРОВАНИЕ РАЗДЕЛОВ LINUX

ссылка на информацию (en)

Какой диск сначала можно узнать (/dev/sdc1, напр.) lsblk

mount -o defaults /dev/sdc1 /var/www/html/site.ex/4

mount -a

/var/www/html/site.ex/4 — это путь, куда монтировать

mount -a — это, вроде, монтировать автоматически (при перезагрузке системы)

https://fsen.ru/linux/gpt-mbr

https://losst.ru/smotrim-spisok-diskov-linux

Как в manjaro вызвать строку поиска программ?

Alt+Space

Узнать версию программы:

nginx -v

или

ffmpeg -version

rmdir /my_folder

Пример:

rmdiv /home/use/folder

Другая команда, которую можно применить - это rm. Она предназначена для удаления файлов Linux, но может использоваться и для папок если ей передать опцию рекурсивного удаления -r:
Рекурсивное удаление: удалит также все подпапки и файлы внутри:

rm -R моя_папка

Пример:

rm -R /home/use/folder

Узнать, где хранятся бинарные файлы ffmpeg

which ffmpeg

rsync -avr -e ssh --progress /var/www/slagor/data/www/ slagor@91.234.35.81:/var/www/slagor/data/www

Эту команду нужно запустить по ssh на исходящем сервере (с которого мы копируем данные).
При этом утилита должна быть установлена на обеих серверах - если на каком-то она не установлена - установить ее можно командой apt-get install rsync либо yum install rsync

Так вот эта команда скопирует содержимое папки /var/www/slagor/data/www/
в папку /www пользователя slagor на сервер 91.234.35.81

Еще инфа по rsync:

Для того, чтобы синхронизировать два сервера, необходимо выполнить следующую команду в rsync НА СТАРОМ СЕРВЕРЕ (откуда все будет копироваться):

rsync -avr -e ssh --progress /vps/var/www/ root@11.22.33.44:/var/www/html

где, по порядку:

/vps/var/www/ – Это папка сервера ОТКУДА все будет копироваться (на нем и выполняется эта команда для rsync)
root@11.22.33.44:/var/www/html – root - имя пользователя для доступа на сервер КУДА копировать файлы
11.22.33.44 – IP адрес сервера КУДА копировать
:/var/www/html — папка на сервере КУДА БУДЕМ копировать.

После выполнения команды, необходимо будет ввести пароль от сервера НА КОТОРЫЙ копировать (11.22.33.44)

Внимание! На обоих серверах должен быть установлен rsync (команда для debian, введите свою команду для установки для нужного дистрибутива Linux):
apt-get install -y rsync

rsync с прогрессом:

rsync -avr -e ssh --progress /var/www/html root@1.2.3.4:/var/www/


passwd root

далее ввести НОВЫЙ пароль


apt install torbrowser-launcher -t buster-backports
apt install gnome-tweak-tool
apt install synaptic

df -h

curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -
wget --output-document=/dev/null http://speedtest.wdc01.softlayer.com/downloads/test500.zip

cbm — утилита позволяет увидеть сетевой трафик в реальном времени:

apt-get install cbm

Увидим данные об объеме приема и передачи в секунду:

Interface Receive Transmit Total
lo 10.07 MB/s 10.07 MB/s 20.13 MB/s
eth0 73.15 kB/s 2.44 MB/s


старт:

sudo systemctl start nginx

перезапуск:

sudo systemctl restart nginx

стоп:

sudo systemctl stop nginx

тоже в Debian:

service php7.4-fpm restart
service php7.4-fpm stop
service php7.4-fpm start

жестко перезагрузить nginx, при этом разорвутся все соединения с освободится оперативная память:

service nginx restart

мягко перезагрузить nginx, при этом все открытые соединения останутся открытыми, подгрузится только обновленная конфигурация, если Вы вносили изменения; оперативная память при этом НЕ освободится:

service nginx reload

торрент-клиент для загрузки и отдачи файлов на Linux:

service transmission-daemon reload
service transmission-daemon stop
service transmission-daemon start


sysctl -w net.ipv4.icmp_echo_ignore_all=1

Узнать версию Linux

lsb_release -a

С помощью данной утилиты, Вы сможете узнать:

  • загрузку CPU;
  • загрузку RAM (оперативная память);
  • нагрузку на HDD/SSD;
  • увидеть скорость передачи данных по LAN портам (интернета прием и отдача);
  • список запущенных процессов и используемые ими ресурсы...

Покажет нагрузку из журнала, ведущегося самой утилитой:

atop -r 20130826 -b 02:00

Если просто ввести:

atop

, то информация будет выводится каждые 5 секунд, что не очень удобно. Если Вы хотите ускорить процесс:

atop 1

где 1 — это обновление информации каждую 1 секунду.

Чтобы выйти из режима просмотра нагрузки в режиме реального времени, нажмите клавишу Q (на En раскладке клавиатуры).

Скрин:


смотрите также статью о https, dhparam.. в nginx

openssl dhparam -out /etc/nginx/crt/dhparam.pem 4096

при этом Вы должны указать путь к папке, где лежат файлы сертификатов certificate.crt (в нем должна быть цепочка сертификатов [сам сертификат и цепочка сертификатов]), private.key.

Цепочка сертификата должна идти сразу после самого сертификата:


echo | openssl s_client -alpn h2 -connect your-host:443 | grep ALPN

Информация о пакетном менеджере Linux Mangaro на русском

Узнать список всех установленных пакетов, без зависимостей:

pacman -Qe

Базовые операции:

Команды Arch Red Hat
Fedora
Debian
Ubuntu
SLES
openSUSE
Gentoo
Установить пакет по имени pacman -S dnf install apt install zypper install or zypper in emerge [-a]
Удалить пакет по имени pacman -Rs dnf remove apt remove zypper remove or zypper rm emerge -vc
Поиск пакета(-ов), выполнив поиск по названию, описанию, короткому описанию. Какие именно поля ищутся по умолчанию, зависит от каждого инструмента pacman -Ss dnf search apt search zypper search or zypper se [-s] emerge -S
Пакеты обновления - установите пакеты, в которых уже установлена более старая версия pacman -Syu dnf upgrade apt update and then apt upgrade zypper update or zypper up emerge -uDN @world
Пакеты обновления - еще одна форма команды обновления, которая может выполнять более сложные обновления, такие как обновления дистрибутива. Когда обычная команда update пропускает обновления пакетов, которые включают изменения в зависимостях, эта команда может выполнять эти обновления pacman -Syu dnf distro-sync apt update and then apt dist-upgrade zypper dup emerge -uDN @world
Очистить все локальные кэши. Параметры могут ограничивать то, что на самом деле очищается. autoclean удаляет только ненужную устаревшую информацию pacman -Sc or pacman -Scc dnf clean all apt autoclean or apt clean zypper clean eclean distfiles
Удаляет зависимости, которые больше не нужны, потому что, например, пакет, который нуждался в зависимостях, был удален pacman -Qdtq | pacman -Rs - dnf autoremove apt autoremove zypper rm -u emerge --depclean
Удалить пакеты, больше не включенные ни в какие репозитории pacman -Qmq | pacman -Rs - dnf repoquery --extras aptitude purge '~o'    
Отметить пакет, ранее установленный как зависимость, как явное требование pacman -D --asexplicit dnf mark install apt-mark manual   emerge --select
Установить пакет (-ы) как зависимость / без специальной пометки «требуется» (required) pacman -S --asdeps dnf install and then dnf mark remove apt-mark auto   emerge -1
Загружает только данный пакет (ы), не распаковывая и не устанавливая их pacman -Sw dnf download apt install --download-only (into the package cache) or apt download (bypass the package cache) zypper --download-only emerge --fetchonly
Запустите оболочку для ввода нескольких команд за один сеанс     apt-config shell zypper shell  
Показать журнал действий, предпринятых руководством программного обеспечения. read /var/log/pacman.log dnf history read /var/log/dpkg.log read /var/log/zypp/history read /var/log/portage
Получите дамп всей системной информации - Prints, Saves или подробное текущее состояние системы управления пакетами. Предпочтительным выводом является текст или XML. (Примечание: почему - или здесь? Ни один инструмент не предлагает возможность выбрать выходной формат.) see /var/lib/pacman/local see /var/lib/rpm/Packages apt-cache stats   emerge --info
электронная почта доставки пакетов изменений     apt install apt-listchanges    

Запрос конкретных пакетов

Команды Arch Red Hat
Fedora
Debian
Ubuntu
SLES
openSUSE
Gentoo
Показать всю или большую информацию о пакете. Детальность инструментов для команды по умолчанию варьируется. Но с опциями инструменты находятся на одном уровне друг с другом. pacman -Si or pacman -Qi dnf list or dnf info apt show or apt-cache policy zypper info or zypper if emerge -S, emerge -pv or eix
Отображение информации о локальном пакете: имя, версия, описание и т.д. pacman -Qi rpm -qi / dnf info installed dpkg -s or aptitude show zypper info or rpm -qi emerge -pv or emerge -S
Показать информацию об удаленном пакете: имя, версия, описание и т.д. pacman -Si dnf info apt-cache show or aptitude show zypper info emerge -pv and emerge -S or equery meta
Показать файлы, предоставленные локальным пакетом pacman -Ql rpm -ql dpkg -L rpm -ql equery files or qlist
Показать файлы, предоставленные удаленным пакетом pacman -Fl dnf repoquery -l or repoquery -l (from package yum-utils) apt-file list   pfl
Запросить пакет, который предоставляет ФАЙЛ pacman -Qo rpm -qf (installed only) or dnf provides (everything) or repoquery -f (from package yum-utils) dpkg -S or dlocate zypper search -f equery belongs or qfile
Перечислите файлы, которые содержит пакет. Опять же, эта функциональность может быть имитирована другими более сложными командами pacman -Ql or pacman -Fl dnf repoquery -l dpkg-query -L rpm -ql equery files or qlist
Отображает пакеты. В основном это ярлык для поиска определенного поля. Другие инструменты могут предлагать эту функцию через команду поиска pacman -F dnf provides apt-file search zypper what-provides or zypper wp equery belongs (only installed packages) or pfl
Поиск по всем пакетам. auto-apt использует эту функцию pacman -F dnf provides apt-file search zypper search -f equery belongs or qfile
Показать список изменений пакета pacman -Qc rpm -q --changelog apt-get changelog rpm -q --changelog equery changes -f

Обновление системы и пакетов Debian:

обновление списка доступных пакетов:

apt update

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

apt upgrade

обновление дистрибутива

apt dist-upgrade

Список файлов директории папки [windows] вывести в текстовый файл:

cd /d D:\folder && dir /b /s > D:\folder\filelist.txt

где cd /d — переместиться в каталог | D:\folder - путь к каталогу | && — заодно выполнить следующую команду: /b /s > куда сохранить файл (путь D:\folder\название файла.txt)

Список файлов директории Linux:

cd /run/media/user/D/downloads/555_Elena-printsessa-avalora && ls -R > all_files.txt

где cd — переход в необходимую директорию, && ls -R > название_файла.txt — создание файла с нужным названием


Создать символическую ссылку:

ln -s /etc/nginx/sites-available/site.org.conf /etc/nginx/sites-enabled/

Manjaro:

конфигурация Wine:

winecfg

Напрочь удалить все следы пакета (программы):

sudo pacman -Rs название пакета && sudo pacman -Scc && sudo pacman -Rsn $(pacman -Qtdq)

Посмотреть системный журнал:

journalctl -xe

Обновление ключей

pacman-key --refresh-keys

Посмотреть список пакетов

pacman -Qdt

Получить информацию о пакете

pacman -Qi название_пакета

Обновить ключи

sudo pacman-key --init
sudo pacman-key --populate archlinux
sudo pacman-key --refresh-key
sudo pacman -Syy

Аккуратно удалить пакеты, без проверки и удаления всех зависимостей:

pacman -Rdd название_пакета

Убрать программу из автозапуска:

autostart pulseaudio-alsa

Проверить статус:

systemctl --user status название_пакета

Остановить:

systemctl --user stop название_пакета
systemctl --user stop название_пакета.socket

Отключить:

systemctl --user disable название_пакета
systemctl --user disable название_пакета.socket

Смотреть как установить PHP 7.4 на Debian 10.


MySQL (MariaDB).

MySQL удалить полностью папку, так как при удалении она может не удалиться:

rm -rf /var/lib/mysql/*

Сначала войти через SSH под root или Вашим пользователем, затем войти в MySQL (MariaDB):

mysql

Далее команды выполняются ИСКЛЮЧИТЕЛЬНО в среде исполнения команд MySQL (MariaDB)!

Удалить базу данных:

DROP {DATABASE | SCHEMA} [IF EXISTS] db-name

Сохранить резервную копию базы данных на диск:

mysql -u user_name -p db_name < /usr/local/file.sql;

Узнать какой пользователь сейчас активен:

SELECT CURRENT_USER();

Результат:

+----------------+
| CURRENT_USER() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.016 sec)

Создать базу данных MySQL (или MariaDB аналогично):

CREATE DATABASE db_name;

Добавить пользователя:

CREATE USER 'user_name'@'localhost' IDENTIFIED BY 'tap_user_password';

Дать ему привилегии:

GRANT ALL ON db_name.* TO 'user_name'@'localhost' IDENTIFIED BY 'tap_user_password' WITH GRANT OPTION;

Сохранить привилегии:

FLUSH PRIVILEGES;

Изменить пароль для конкретного пользователя MySQL (MariaDB) [выполнить после "mysql"]:

SET PASSWORD FOR 'USER'@'localhost' = PASSWORD('NEW_PASSWORD');

Например:

SET PASSWORD FOR 'user0001'@'localhost' = PASSWORD('zxc098sdf45');


Чтобы выйти из управления MySQL (MariaDB), введите:

exit;
Linux: Manjaro, Debian — различные команды с примерами и справка