O LINUX

полезные команды Scientific Linux 7.9 ( Fedora 34) CentOS 8
Автор
Сообщение
marsdmitri
#42473 2021-05-22 02:14 GMT

Текстовые браузеры.

https://losst.ru/luchshie-konsolnye-brauzery-dlya-linux

используя его можно быстрее смотреть новости на известном сайте.

Или скачивайте файл веб страницы как текст, отключайтесь от интернета и смотрите его.

Я использую Links.
Запустите ее, нажав меню мышкой.

Кликнув мышкой верхнюю белую полоску окна браузера настройте его.Например изменив цвет фона экрана.


отредактировал(а) marsdmitri: 2021-05-22 23:00 GMT
marsdmitri
#42671 2021-06-07 11:04 GMT

Линукс Федора 33, 34 Scientific Linux 7.9 ненадежно работает с дисками выше 4 Терабайт и с моей видеокартой (несовместимость оборудования. Скорость копирования на диск падает с 12 магабайт/сек до килобайта.Нет драйверов.). Поэтому пришлось установить CentOS 8.2. Есть версия 8.4

Иностранцы работают в университетах только на Дебиане. Он на 3 дисках ДВД и там есть все необходимые программы. Не имея интернета, можно  поставить все нужные программы. Это очень удобно. Для СentOS програмы приходится искать в интернете. Он на 1 ДВД диске 8,5Гб.Но там ничего почти нет.

Некоторые программы на него не установить. Например, Ocular — программа для чтения djvu файлов. Я установил программу Калибр одной командой bash, unrar и через интернет преобразую файлы из djvu в pdf, epub формат. Программа Evince  в Сentos 8.2 не работает с djvu файлами.

Можно установить плагин для браузера djvu4.( djview-4.12.tar.gz ) Но к нему нужен еще один пакет установить.Я не буду этим заниматься.Буду читать книги на Scientific Linux 7.9 где всe отлично устанавливается с репозиториев.

Нашел японскую программу DJV2-2.0.8-1.x86_64.rpm для проигрывания мультимедийных файлов (браузер Vivaldi не может проигрывать mkl файлы) и просмотра разных картинок вместо проигрывателя VLС.

Затем я столкнулся со странностью. Есть репозитории в интернете. Для  Scientific Linux 7.9 они установлены при инсталляции операционки и ничего практически не нужно простому пользователю.Никакие другие репозитории. Через протокол https скачиваете из репозитория программы и устанавливаете.

Для CentOS 8.2 попытка поключить другие репозитории, например Epel приводит к вымогательству. Устанавливается программа от компаниии Red Hat. Они изменяют репо файлы и стирает там пути по которым скачиваю другие программы из репозитория. И устанавливают свою рекламную программу для подписки к их сервису. И требуют от меня подписку платную, чтобы я у них зарегистрировался. Они же разработали эту операционку. Но зачем они мне нужны? Они и так используют нас как подопытных кроликов. Hе несут никакой ответственности. И мы на свой страх и риск используем эту операционку вместо надежного Добиана.

Т.е я вручную должен сам искать пути и сам скачивать и устанавливать мультимедийную программу VLC и другие. yum (dnf) не работает.

Я копирую каждый день все свои команды из терминала. Их видно командой history. И список устанавливаемых пакетов rpm командой

rpm -qa > listrpm.txt

И сразу увидел. Оказывается файлы репо, создаваемые при установке операционной системы СentOS 8, созданы из  програмы, хранящиеся в базовом первом архиве.

Програма не centos-linux-repos-8-2.el8.noarch.rpm. Она находится на ДВД диске в диpектории CentOS-8-4-2105-x86_64-dvd/BaseOS/Packages/

И не centos-gpg-keys-8-2.el8.noarch.rpm с ключами, хэшами, по которым проверяется подлинность скачиваемых пакетов. Чтобы они не повредились.

Если вы ищите пакет, связанный с каким то директорием, принадлежащем ему.

Задайте команду rpm -qf /etc/yum.repos.d

вывод elrepo-release-8.2-1.el8.elrepo.noarch

Когда установил операц. систему, обновил  файлы (1500 пакетов) и теперь там стоит версия 8.4 новее, чем на моем ДВД Диске с 8.2 версией и версией 8.4.

Теперь я должен восстановить свои репо файлы. Они хранятся в каталоге /etc/yum.repos.d/

Теперь там измененные файлы с не работающими путями.

Программу рекламную RedHat  удалил.

А файлы repo c неработающими путями удалил 

Cодержание файла репо изменил на

1.Для основного Centos-Base.repo

[base]
name=CentOS-$releasever — Base
metadata_expire=-1
gpgcheck=1
enabled=1
baseurl=https://centos.ca-west.mirror.fullhost.io/centos/8.4.2105/BaseOS/x86_64/os/
baseurl=https://mirror.esecuredata.com/centos/8.4.2105/BaseOS/x86_64/os/
baseurl=https://mirror.csclub.uwaterloo.ca/centos/8.4.2105/BaseOS/x86_64/os/
baseurl=https://mirror.netflash.net/centos/8.4.2105/BaseOS/x86_64/os/
baseurl=https://mirror.dst.ca/centos/8.4.2105/BaseOS/x86_64/os/
baseurl=https://mirror2.evolution-host.com/centos/8.4.2105/BaseOS/x86_64/os/

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-8

вместо

[baseos]
name=CentOS Linux $releasever — BaseOS
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra
baseurl=http://mirror.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/

Здесь дан список зеркал, но половина из них не работает в Канаде.Другие работают через опасный протокол передачи данных http. Изменил их на https.

Rеd Hat без спроса меняют пути скачивания файлов операционной системы.

Нужно копировать и хранить копии файлов папки  /etc/yum.repos.d/ перед подключением других репо.

Поэтому я все repo уничтоженные копирую в папку и удаляю.И заново составляю свои.

Затем смотрю, работает ли программа dnf и более медленная yum лоя скачивания архивов, обновлений.

Что еще меня поразило. Вместо протокола передачи даных https, который всегда используется для передачи пакетов репо тут нахально поставлен не секретный http.

Что за… Они в RED HAT не думают о нашей безопасности.

2. репо CentOS-Linux-AppStream.repo

Внутри поставил

# CentOS-Linux-AppStream.repo
#
# The mirrorlist system uses the connecting IP address of the client and the
# update status of each mirror to pick current mirrors that are geographically
# close to the client.  You should use this for CentOS updates unless you are
# manually picking other mirrors.
#
# If the mirrorlist does not work for you, you can try the commented out
# baseurl line instead.

[appstream]
name=CentOS Linux $releasever — AppStream

baseurl=https://centos.ca-west.mirror.fullhost.io/centos/8.4.2105/AppStream/x86_64/os/
baseurl=https://mirror.esecuredata.com/centos/8.4.2105/AppStream/x86_64/os/
baseurl=https://mirror.csclub.uwaterloo.ca/centos/8.4.2105/AppStream/x86_64/os/
baseurl=https://mirror.netflash.net/centos/8.4.2105/AppStream/x86_64/os/
baseurl=https://mirror.dst.ca/centos/8.4.2105/AppStream/x86_64/os/
baseurl=https://mirror2.evolution-host.com/centos/8.4.2105/AppStream/x86_64/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

3.Затем репо elrepo.repo. Внутри этого файла поставил.

### Name: ELRepo.org Community Enterprise Linux Repository for el8
### URL: https://elrepo.org/

[elrepo]
name=ELRepo.org Community Enterprise Linux Repository — el8
baseurl=https://elrepo.org/linux/elrepo/el8/$basearch/
    https://mirrors.coreix.net/elrepo/elrepo/el8/$basearch/
    https://mirror.rackspace.com/elrepo/elrepo/el8/$basearch/
    https://linux-mirrors.fnal.gov/linux/elrepo/elrepo/el8/$basearch/

enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org

[elrepo-testing]
name=ELRepo.org Community Enterprise Linux Testing Repository — el8
baseurl=https://elrepo.org/linux/testing/el8/$basearch/
    https://mirrors.coreix.net/elrepo/testing/el8/$basearch/
    https://mirror.rackspace.com/elrepo/testing/el8/$basearch/
    https://linux-mirrors.fnal.gov/linux/elrepo/testing/el8/$basearch/

enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org

[elrepo-kernel]
name=ELRepo.org Community Enterprise Linux Kernel Repository — el8
baseurl=https://elrepo.org/linux/kernel/el8/$basearch/
    https://mirrors.coreix.net/elrepo/kernel/el8/$basearch/
    https://mirror.rackspace.com/elrepo/kernel/el8/$basearch/
    https://linux-mirrors.fnal.gov/linux/elrepo/kernel/el8/$basearch/
( эту строку убрал mirrorlist=https://mirrors.elrepo.org/mirrors-elrepo-kernel.el8

тк он публикует список репо, котрые работают по опасному протоколу http.

Это означает, что вы будете скачивать якобы обновления только из западной Украины)
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org

[elrepo-extras]
name=ELRepo.org Community Enterprise Linux Extras Repository — el8
baseurl=https://elrepo.org/linux/extras/el8/$basearch/
    https://mirrors.coreix.net/elrepo/extras/el8/$basearch/
    https://mirror.rackspace.com/elrepo/extras/el8/$basearch/
    https://linux-mirrors.fnal.gov/linux/elrepo/extras/el8/$basearch/

enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org

4.Репозиторий GetPageSpeed.com extras repository нужно убрать. На нем есть какие-то опасные программы хакеров.

5.Репо для браузера Vivaldu

[vivaldi]
name=vivaldi
baseurl=https://repo.vivaldi.com/archive/rpm/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.vivaldi.com/archive/linux_signing_key.pub

Сделал копии всех  этих файлов репо.

Затем даю команды.

yum clean all
yum makecache
yum repolist

Изменения в файле репо можно делать командой sudo nano /etc/yum.repos.d

Cохранение Contrl+o Ввод, выход Сntrl+x.

Затем нужно поставить запрет на доступ к каждому файлу. Только root может его редактировать

 chmod 644 /etc/yum.repos.d/CentOS-Linux-AppStream.repo

chmod 644 /etc/yum.repos.d/Vivaldi.repo

и т.д.

Команды для установки двд, video проигрывателя vlc.

Те что даны здесь https://www.videolan.org/vlc/download-redhat.html

su
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
dnf install vlc
dnf yum install vlc-core (for minimal headless/server install)
dnf yum install python-vlc (optionals)
dnf install rpmfusion-free-release-tainted
dnf install libdvdcss

у меня не работали, поэтому пришлось вручную доустановить некоторые пакеты.

rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org
yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
yum install yum-plugin-fastestmirror
yum install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
wget https://download-ib01.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/f/fluidsynth-2.1.8-3.el8.x86_64.rpm
rpm -i fluidsynth-libs-2.1.8-3.el8.x86_64.rpm
rpm -Uvh epel-release*rpm
dnf install srt-libs-1.4.1-3.el8.x86_64.rpm
dnf install libmicrodns-0.1.2-1.el8.x86_64.rpm
dnf install libspatialaudio-3.1-1.20200406gitd926a2e.el8.x86_64.rpm
dnf install libmicrodns-devel-0.1.2-1.el8.x86_64.rpm
rpm -e live555-libs-2020.07.09-1.el8.x86_64
rpm -i live555-2020.07.31-1.el8.x86_64.rpm
dnf install vlc

dnf install rpmfusion-free-release-tainted
dnf install libdvdcss

Здесь нет одного репо, поэтому при установке программы vls нужно было скачать 4 файла, устанвить их, затем скачать файл пакета vlc и установить его.

Книжка по безопасности для Centos 7

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/pdf/security_guide/Red_Hat_Enterprise_Linux-7-Security_Guide-en-US.pdf

хорошая программа по математике Scilab  https://ru.wikipedia.org/wiki/Scilab


отредактировал(а) marsdmitri: 2021-06-20 07:52 GMT
marsdmitri
#42921 2021-06-26 04:38 GMT

Если вы хотите поработать с языком с++, и успешно компилируете программу на с командой.

gcc hello.c

и другие из книжки Кернигана, Ритчи.

https://www.r-5.org/files/books/computers/languages/c/kr/Brian_Kernighan_Dennis_Ritchie-The_C_Programming_Language-RU.pdf

eсли вы получаете сообщение при компилляции:

gcc hello.cpp

gcc: fatal error: cannot execute ‘cc1plus’: execvp: No such file or directory compilation terminated.gcc: fatal error: cannot execute ‘cc1plus’: execvp: No such file or directory compilation terminated.

Значит, у вас нет компилятора с++ в операционной системе.

На виндоуз введя   gcc -Wall -O3 -o message.o -c message.c

получите gcc: fatal error: cannot execute ‘cc1’: spawn: No such file or directory compilation terminated.

Программа gcc не может найти cc1 программу.

Задавая команду

which gcc

увидим директорий gcc, который компиллирует программы на с.
/usr/bin/gcc   
На виндоуз это    /mingw64/bin/gcc

Задавая команду

# gcc -v

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/11/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-11.1.1-20210531/obj-x86_64-redhat-linux/isl-install --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.1.1 20210531 (Red Hat 11.1.1-3) (GCC)

Использовался gcc-11.1.1-3.fc34.x86_64.rpm

Ищем директории

# gcc -print-search-dirs
install: /usr/lib/gcc/x86_64-redhat-linux/11/
programs: =/usr/libexec/gcc/x86_64-redhat-linux/11/:/usr/libexec/gcc/x86_64-redhat-linux/11/:/usr/libexec/gcc/x86_64-redhat-linux/:/usr/lib/gcc/x86_64-redhat-linux/11/:/usr/lib/gcc/x86_64-redhat-linux/:/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/bin/x86_64-redhat-linux/11/:/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/bin/
libraries: =/usr/lib/gcc/x86_64-redhat-linux/11/:/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/lib/x86_64-redhat-linux/11/:/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/lib/../lib64/:/usr/lib/gcc/x86_64-redhat-linux/11/../../../x86_64-redhat-linux/11/:/usr/lib/gcc/x86_64-redhat-linux/11/../../../../lib64/:/lib/x86_64-redhat-linux/11/:/lib/../lib64/:/usr/lib/x86_64-redhat-linux/11/:/usr/lib/../lib64/:/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/lib/:/usr/lib/gcc/x86_64-redhat-linux/11/../../../:/lib/:/usr/lib/
#

Для установки kомпилятора с++ в Линуксе (CentOS, Fedora 33, 34) задайте команду

yum install -y gcc gcc-c++ autoconf automake

Вы увидите

Fedora 34 openh264 (From Cisco) — x86_64                                                     1.6 kB/s | 2.5 kB     00:01    
Fedora Modular 34 — x86_64                                                                   2.7 MB/s | 4.9 MB     00:01    
Fedora Modular 34 — x86_64 — Updates                                                         2.6 MB/s | 4.2 MB     00:01    
Fedora 34 — x86_64 — Updates                                                                 4.3 MB/s |  17 MB     00:03    
Fedora 34 — x86_64                                                                           4.9 MB/s |  74 MB     00:15    
Intel® oneAPI repository                                                                   3.9 MB/s | 8.5 MB     00:02    
Package gcc-11.1.1-3.fc34.x86_64 is already installed.
Package autoconf-2.69-36.fc34.noarch is already installed.
Package automake-1.16.2-4.fc34.noarch is already installed.
Dependencies resolved.
===============================================================================
 Package                           Architecture             Version                          Repository                 Size
===============================================================================
Installing:
 gcc-c++                           x86_64                   11.1.1-3.fc34                    updates                    12 M
Upgrading:
 libstdc++                         x86_64                   11.1.1-3.fc34                    updates                   694 k
 libstdc++-devel                x86_64                   11.1.1-3.fc34                    updates                   2.2 M

Transaction Summary
===============================================================================
Install  1 Package
Upgrade  2 Packages

Total download size: 15 M
Downloading Packages:
(1/3): libstdc++-11.1.1-3.fc34.x86_64.rpm                                                    1.3 MB/s | 694 kB     00:00    
(2/3): libstdc++-devel-11.1.1-3.fc34.x86_64.rpm                                              1.9 MB/s | 2.2 MB     00:01    
(3/3): gcc-c++-11.1.1-3.fc34.x86_64.rpm                                                      4.0 MB/s |  12 MB     00:02    
-----------------------------------------------------------------------------------------------------------------------------
Total                                                                                        4.7 MB/s |  15 MB     00:03     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                     1/1
  Upgrading       : libstdc++-11.1.1-3.fc34.x86_64                                                                      1/5
  Upgrading       : libstdc++-devel-11.1.1-3.fc34.x86_64                                                                2/5
  Installing        : gcc-c++-11.1.1-3.fc34.x86_64                                                                        3/5
  Running scriptlet: gcc-c++-11.1.1-3.fc34.x86_64                                                                        3/5
  Cleanup         : libstdc++-devel-11.0.1-0.3.fc34.x86_64                                                              4/5
  Cleanup         : libstdc++-11.0.1-0.3.fc34.x86_64                                                                    5/5
  Running scriptlet: libstdc++-11.0.1-0.3.fc34.x86_64                                                                    5/5
  Verifying       : gcc-c++-11.1.1-3.fc34.x86_64                                                                        1/5
  Verifying       : libstdc++-11.1.1-3.fc34.x86_64                                                                      2/5
  Verifying       : libstdc++-11.0.1-0.3.fc34.x86_64                                                                    3/5
  Verifying       : libstdc++-devel-11.1.1-3.fc34.x86_64                                                                4/5
  Verifying       : libstdc++-devel-11.0.1-0.3.fc34.x86_64                                                              5/5

Upgraded:
  libstdc++-11.1.1-3.fc34.x86_64                             libstdc++-devel-11.1.1-3.fc34.x86_64                            
Installed:
  gcc-c++-11.1.1-3.fc34.x86_64                                                                                               

Complete!

Инсталляция компиллятора на liveDVD fedora 34, подразумевает, что вы установите файл

sudo yum install gcc-c++*fc34*

Так нельзя устанавливать. При этой команде он хочет установить множество ненужных файлов.
Last metadata expiration check: 1:48:01 ago on Fri 25 Jun 2021 05:29:08 PM EDT.
Package gcc-c++-x86_64-linux-gnu-10.2.1-3.fc34.2.x86_64 is already installed.
Dependencies resolved.(зависимости решены)
==========================================================
 Package              Arch   Version         Repo    Size
==========================================================
Installing:
 gcc-c++              x86_64 11.1.1-3.fc34   updates    12 M
 gcc-c++-aarch64-linux-gnu     x86_64 10.2.1-3.fc34.2 fedora 8.7 M
 gcc-c++-alpha-linux-gnu          x86_64 10.2.1-3.fc34.2 fedora 7.0 M
 gcc-c++-arc-linux-gnu               x86_64 10.2.1-3.fc34.2 fedora 7.1 M
 gcc-c++-arm-linux-gnu             x86_64 10.2.1-3.fc34.2 fedora 8.4 M
 gcc-c++-avr32-linux-gnu          x86_64 10.2.1-3.fc34.2 fedora 6.9 M
 gcc-c++-bfin-linux-gnu              x86_64 10.2.1-3.fc34.2 fedora 6.9 M
 gcc-c++-c6x-linux-gnu               x86_64 10.2.1-3.fc34.2 fedora 9.4 M
 gcc-c++-cris-linux-gnu               x86_64 10.2.1-3.fc34.2 fedora 6.8 M
 gcc-c++-frv-linux-gnu                  x86_64 10.2.1-3.fc34.2 fedora 7.0 M
 gcc-c++-h8300-linux-gnu           x86_64 10.2.1-3.fc34.2 fedora 6.8 M
 gcc-c++-hppa-linux-gnu              x86_64 10.2.1-3.fc34.2 fedora  14 M
 gcc-c++-hppa64-linux-gnu         x86_64 10.2.1-3.fc34.2 fedora 7.0 M
 gcc-c++-ia64-linux-gnu               x86_64 10.2.1-3.fc34.2 fedora 7.1 M
 gcc-c++-m32r-linux-gnu              x86_64 10.2.1-3.fc34.2 fedora 6.9 M
 gcc-c++-m68k-linux-gnu              x86_64 10.2.1-3.fc34.2 fedora 7.0 M
 gcc-c++-microblaze-linux-gnu    x86_64 10.2.1-3.fc34.2 fedora 7.0 M
 gcc-c++-mips64-linux-gnu           x86_64 10.2.1-3.fc34.2 fedora 7.9 M
 gcc-c++-mn10300-linux-gnu       x86_64 10.2.1-3.fc34.2 fedora 6.9 M
 gcc-c++-nios2-linux-gnu               x86_64 10.2.1-3.fc34.2 fedora 6.9 M
 gcc-c++-powerpc64-linux-gnu    x86_64 10.2.1-3.fc34.2 fedora  16 M
 gcc-c++-powerpc64le-linux-gnu   x86_64 10.2.1-3.fc34.2 fedora 8.2 M
 gcc-c++-ppc64-linux-gnu                x86_64 10.2.1-3.fc34.2 fedora 8.8 k
 gcc-c++-ppc64le-linux-gnu             x86_64 10.2.1-3.fc34.2 fedora 8.8 k
 gcc-c++-riscv64-linux-gnu               x86_64 10.2.1-3.fc34.2 fedora 7.0 M
 gcc-c++-s390x-linux-gnu                 x86_64 10.2.1-3.fc34.2 fedora 7.4 M
 gcc-c++-sh-linux-gnu x86_64 10.2.1-3.fc34.2 fedora 7.2 M
 gcc-c++-sparc64-linux-gnu            x86_64 10.2.1-3.fc34.2 fedora 7.1 M
 gcc-c++-tile-linux-gnu                    x86_64 10.2.1-3.fc34.2 fedora 7.0 M
 gcc-c++-xtensa-linux-gnu              x86_64 10.2.1-3.fc34.2 fedora 6.9 M
Upgrading:  libstdc++            x86_64 11.1.1-3.fc34   updates        694 k
 libstdc++-devel      x86_64 11.1.1-3.fc34   updates                     2.2 M
Installing dependencies:
 binutils-aarch64-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 3.0 M
 binutils-alpha-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.9 M
 binutils-arc-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.9 M
 binutils-arm-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 2.8 M
 binutils-avr32-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.7 M
 binutils-bfin-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-c6x-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-cris-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-frv-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-h8300-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-hppa-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-hppa64-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-ia64-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 2.5 M
 binutils-m32r-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.7 M
 binutils-m68k-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-microblaze-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.6 M
 binutils-mips64-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 2.3 M
 binutils-mn10300-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.7 M
 binutils-nios2-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-powerpc64-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 2.4 M
 binutils-powerpc64le-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 2.4 M
 binutils-riscv64-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 2.5 M
 binutils-s390x-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.9 M
 binutils-sh-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-sparc64-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.9 M
 binutils-tile-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 1.8 M
 binutils-xtensa-linux-gnu                      x86_64 2.35.1-5.fc34   fedora 2.3 M
 gcc-aarch64-linux-gnu       x86_64 10.2.1-3.fc34.2 fedora  25 M
 gcc-alpha-linux-gnu  x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-arc-linux-gnu    x86_64 10.2.1-3.fc34.2 fedora  21 M
 gcc-arm-linux-gnu    x86_64 10.2.1-3.fc34.2 fedora  24 M
 gcc-avr32-linux-gnu  x86_64 10.2.1-3.fc34.2 fedora  23 M
 gcc-bfin-linux-gnu   x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-c6x-linux-gnu    x86_64 10.2.1-3.fc34.2 fedora  27 M
 gcc-cris-linux-gnu   x86_64 10.2.1-3.fc34.2 fedora  19 M
 gcc-frv-linux-gnu    x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-h8300-linux-gnu  x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-hppa-linux-gnu   x86_64 10.2.1-3.fc34.2 fedora  32 M
 gcc-hppa64-linux-gnu x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-ia64-linux-gnu   x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-m32r-linux-gnu   x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-m68k-linux-gnu   x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-microblaze-linux-gnu                      x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-mips64-linux-gnu x86_64 10.2.1-3.fc34.2 fedora  24 M
 gcc-mn10300-linux-gnu                      x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-nios2-linux-gnu  x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-powerpc64-linux-gnu                      x86_64 10.2.1-3.fc34.2 fedora  39 M
 gcc-powerpc64le-linux-gnu                      x86_64 10.2.1-3.fc34.2 fedora  24 M
 gcc-ppc64-linux-gnu  x86_64 10.2.1-3.fc34.2 fedora  10 k
 gcc-ppc64le-linux-gnu                      x86_64 10.2.1-3.fc34.2 fedora  10 k
 gcc-riscv64-linux-gnu                      x86_64 10.2.1-3.fc34.2 fedora  21 M
 gcc-s390x-linux-gnu  x86_64 10.2.1-3.fc34.2 fedora  21 M
 gcc-sh-linux-gnu     x86_64 10.2.1-3.fc34.2 fedora  21 M
 gcc-sparc64-linux-gnu                      x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-tile-linux-gnu   x86_64 10.2.1-3.fc34.2 fedora  20 M
 gcc-xtensa-linux-gnu x86_64 10.2.1-3.fc34.2 fedora  20 M

Transaction Summary
==========================================================
Install  86 Packages
Upgrade   2 Packages

Total download size: 884 M
Is this ok [y/N]: y
Downloading Packages:
(1/88): binutils-alpha-li 1.4 MB/s | 1.9 MB     00:01    
.............................. 
(88/88): gcc-tile-linux-g 1.7 MB/s |  20 MB     00:11    
----------------------------------------------------------
Total                     5.2 MB/s | 884 MB     02:50     
Running transaction check
Transaction check succeeded.
Running transaction test
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'yum clean packages'.
Error: Transaction test error:
  installing package gcc-sparc64-linux-gnu-10.2.1-3.fc34.2.x86_64 needs 59MB more space on the / filesystem
 ........................
  installing package gcc-c++-11.1.1-3.fc34.x86_64 needs 2960MB more space on the / filesystem

Error Summary
-------------
Disk Requirements:
   At least 2960MB more space needed on the / filesystem.

2. Затем нужно устанавливать оболочку. среду разработки 56 мегабайт. Это пакет Code::Blocks IDE ver.20 для работы с с++ через опцию Developer Tools (в программе Software). Или на сайте https://www.codeblocks.org/downloads

Code::Blocks не будет работать без компиллятора с++.

Кроме CentOS 8  существует установочный диск от компании Оракл для серверов полный ISO.

https://yum.oracle.com/oracle-linux-isos.html Но там ничего нет из программ как и CentOS, поэтому он не нужен.

3. Как запустить простейшую консольную програму на с++ на CodeBlocks.

Открывайте пpограмму, выбираете консольный проект.

Вводите ему имя, например ydali2. Образуется папка с этим именем. Я сделал ее в директории

/home/xb/Documents/ 

Указываете путь папки проекта, какой тип релиза Release или для отладки (Debug) и язык программирования с++. 

Вам откроется окно проекта. Вы слева найдете квадратик, кликните по нему мышкой и в нем есть файл main.cpp.

Он пустой. Вы в него вложите текст вашей программы. И сохраните.

Затем нажмете кнопку с колесиком построить проект (Build). Затем нажмите кнопку зеленый треуголник запустить (Run).

Появится окно диалоговое слева.

Если у вас будут ошибки, то их можно увидеть в  окне Log. (открывается нажатием F2)

— Build: Release in ydali2 (compiler: GNU GCC Compiler)---------------

g++ -Wall -fexceptions -O2  -c /home/xb/Documents/ydali2/main.cpp -o obj/Release/main.o
g++  -o bin/Release/ydali2 obj/Release/main.o  -s  
Output file is bin/Release/ydali2 with size 20.96 KB
Process terminated with status 0 (0 minute(s), 2 second(s))
0 error(s), 0 warning(s) (0 minute(s), 2 second(s))
— Run: Release in ydali2 (compiler: GNU GCC Compiler)---------------

Checking for existence: /home/xb/Documents/ydali2/bin/Release/ydali2
Set variable: LD_LIBRARY_PATH=.:
Executing: xterm -T ydali2 -e /usr/bin/cb_console_runner LD_LIBRARY_PATH=:. /home/cxbv/Documents/ydali2/bin/Release/ydali2  (in /home/cxbv/Documents/ydali2/.)

Потренироватся можно с начала с программами на языке с. Синтансис с проще с++.

вопросы и ответы https://progtips.ru/instrumenty-programmista/codeblocks-v-voprosax-i-otvetax.html

3.Затем у вас появляется возмоюность работать с таким инструментом как CMAKE.

Нужно установить его

yum install cmake

Он позволяет собирать проект из множества файлов.Затем вы новый файл проекта вставляете вместо старого  и этим инструментом пересобираете проект и строите выполяемый файл без программы CodeBlocks.

4.Затем у вас появляется возможность создавать многопоточные приложения на c++

с помощью библиотеки  Intel Threading Building Blocks.

Есть книжка с примерами James Reinders, Intel Threading Building Blocks.

https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tbb-ch01-for-promo-138954.pdf

https://rutracker.org/forum/viewtopic.php?t=1390529

https://www.pdfdrive.com/intel-threading-building-blocks-outfitting-c-for-multi-core-processor-parallelism-d158437532.html

Все это бесплатно.

Для CentOS подсказки

https://i-notes.org/category/linux/centos/

Они работают и на многих других версиях Линукса — Fedora 33, Scientific Linux 7.9

copyright, 2021 


отредактировал(а) marsdmitri: 2021-06-26 07:03 GMT
marsdmitri
#42975 2021-07-03 08:11 GMT

Cуществует вики учебник по программе cmake

https://neerc.ifmo.ru/wiki/index.php?title=CMake_Tutorial

Например в Линуксе в Fedora 34, задав команду: '''sudo yum install -y cmake'''
вы автoматически установите все необходимые файлы размером около 34 Мбт:
cmake-filesystem-3.20.5-1.fc34.x86_64.rpm,
cmake-rpm-macros-3.20.5-1.fc34.noarch.rpm,
vim-filesystem-.2.3070-1.fc34.noarch.rpm,
cmake-data-3.20.5-1.fc34.noarch.rpm,
jsoncpp-1.9.4-3.fc34.x86_64.rpm,cmake-3.20.5-1.fc34.x86_64.rpm,                                  
rhash-1.4.0-3.fc34.x86_64.rpm.
Можно использовать команду '''sudo dnf install -y cmake'''.
Это удобнее, чем если вы идете на сайт производителя https://cmake.org/download/, скачивайе арxив https://github.com/Kitware/CMake/releases/download/v3.20.5/cmake-3.20.5.tar.gz
и скрипт
https://github.com/Kitware/CMake/releases/download/v3.20.5/cmake-3.20.5-linux-x86_64.sh
Затем запускаете этот скрипт командой
./cmake-3.20.5-linux-x86_64.sh
 в папке, где находится скаченный вами архив.Архив распаковывается и в папке /bin. В той же папке, где находится скаченный архив находится программа сmake.

Пример вызова cmake команды, если файлы проекта находятся в папке
/home/user/Downloads/myproject/
программа сmake в папке
/home/user1/Downloads/bin/:

$/home/user1/Downloads/bin/cmake /home/user/Downloads/myproject/ CMakeLists.txt

Cуществует дополнительный сайт по теме

https://admins.su/znakomstvo-s-cmake-2/

Но там вместо скрипта используется набор команд для старой версии сmake.

 

marsdmitri
#43095 2021-07-15 11:41 GMT

Установка Оpera

sudo rpm --import https://rpm.opera.com/rpmrepo.key

sudo dnf install https://rpm.opera.com/rpm/opera_stable-77.0.4054.254-linux-release-x64-signed.rpm

---------

marsdmitri
#43096 2021-07-15 11:54 GMT

Tем кто интересуется tbb технологией, если у вас есть gnu c++ компилятор.

[[email protected]]# c++ -v


Используются внутренние спецификации.
COLLECT_GCC=c++
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Целевая архитектура: x86_64-redhat-linux
Параметры конфигурации: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --disable-libmpx --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Модель многопоточности: posix
gcc версия 8.4.1 20200928 (Red Hat 8.4.1-1) (GCC)

Тогда нужно

1.Установите sudo yum install cmake

2. Скачайте tbb файлы и распакуйте архив в папку tbbmy. В ней будут примеры парограмм.Ее всегда можно удалить.

3. Запустите две команды

sudo cmake CMakeLists.txt (или я запускал и sudo cmake .) После буквы e пробел и точка!

sudo make

Примеры  создадутся в новой папке. Размер примеров более 2 гигабайт!

4. Исправьте несколько символов в CmakeLists.txt в папке tbbmy

Было

option(TBB_TEST «Enable testing» ON)
option(TBB_EXAMPLES «Enable examples» OFF)

стало

option(TBB_TEST «Enable testing» OFF)
option(TBB_EXAMPLES «Enable examples» ON)

cохраните исправленный CmakeLists.txt и повторите эти же две операции компиляции и сборки.

Во втором случае вы получите программу Fibonacci, seism и некторые другие из других папок.

Но графика не работает, надо будет или ключи использовать при компиляциии или еще каких-то библиотек Mesa не хватает.

Для рисования графики и копиляции все примеров нужно установить библиотеку компании Интел Intel® Math Kernel Library (Intel® MKL)

https://software.intel.com/content/www/us/en/develop/tools/oneapi/hpc-toolkit/download.html

Bы устанавливайте  компилятор фортрана  или с++ Интел.В них также входит эта библиотека

Она есть в пакете Intel oneAPI Base Toolkit.

https://docs.oneapi.io/versions/latest/index.html

можно ее бесплатно скачать 3,2 Гигабайт, но установка пакета займет 24 Гигабайта.Поэтому устанавливайте только его часть.

https://software.intel.com/content/www/us/en/develop/tools/oneapi/all-toolkits.html#base-kit

 


отредактировал(а) marsdmitri: 2021-07-23 23:31 GMT
marsdmitri
#43105 2021-07-18 11:05 GMT

Разработчики операционных систем создали такие системы, в которых пользователи не могут устанавливать программы и ими пользоваться. И OC не используют множество

параметров оборудования. Например без дополнительного пакета с CUDA (и многими другими) ваша программа не работает.

Поэтому появилась новая технология под названием контейнеpы и Doker. Это более простой и быстрый аналог виртуальной машины.

 Вы устанавливаете программу Doker. Затем не устанавливаете программу (например сервер Апач), а только настройки от нее.

В результате исчезают проблем с переносимостью для ряда программ. С этими настройками ваша программа работает, словно она установлена на виртуальной машине у вас на компьютере,

 отдельно. Поэтому некоторые новые программы появляются только совместо с Doker. 

Описание команд для этого

https://habr.com/ru/post/310460/

https://docker-curriculum.com

Т.е.  программа на с++ работает на CentOS8, но она же скопированная в директорий на флешку не работает на  CentOS 7.

Для программ на Яве возможно это не всегда так.

 

marsdmitri
#43224 2021-08-06 18:25 GMT

После установки https://baks.dev/article/centos/how-to-install-visual-studio-code-on-centos-7

При запуске программы  Visual Studio code версия 1.59 на Scientific Linux 7.9 (это как Centos 7)  она сразу зависает.

Проблема решилась удалением этой версии программы и установкой версии 1.53.

Скачиваете rpm тут

https://code.visualstudio.com/updates/v1_53

Вроде бы все работает.

Это программа позволяет запускать,  компилировать, отлаживать, редактировать  программы на множестве языков.

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


отредактировал(а) marsdmitri: 2021-08-06 18:50 GMT
marsdmitri
#43252 2021-08-14 14:40 GMT

Преобразование файлов dvi в pdf в Линуксе

dvipdfmx myfile.dvi
результат myfile.pdf
или
dvips dokazat.dvi   получи файл dokazatestvo.ps
ps2pdf dokazat.ps
результат  dokazat.pdf

Эти два способа применяются там где в файле много графиков и картинок. Нужно их не исказить, не сместить.

Размер файла dvi наименьший, но качество не самое хорошее. У ps наибольший.

При всех способах преобразования размер страницы тот же самый, какой и был первоначально. Т.е. А4

Для простых файлов без картинок
dvipdfm myfile.dvi
результат  myfile.pdf

Преобразование pdf в ps.

pdf2ps [options] input.pdf [output.ps]

pdftops. Она работает не со всеми файлами pdf.

pdftops [options] input.pdf [output.ps]

 

Удаление одной страницы из djvu файла:

# Delete page 170 from f.djvu
djvm -d f.djvu 170
# Delete pages 170-174 from f.djvu
for ( $i = 0; $i -lt 5; $i++ ) { djvm -d f.djvu 170 }

 

 


отредактировал(а) marsdmitri: 2021-08-23 20:57 GMT
marsdmitri
#43639 2021-10-17 11:08 GMT

команда для определения максимального размера видеопамяти видеокарты

$grep kB /var/log/Xorg.0.log

вывод

[25.045] (--) NVIDIA(0): Memory: 2097152 kBytes

или

grep -i memory /var/log/Xorg.0.log

вывод

[    25.045] (--) NVIDIA(0): Memory: 2097152 kBytes
[    25.106] (II) NVIDIA: Using 6144.00 MB of virtual memory for indirect memory
[    25.235] (==) NVIDIA(0): Disabling shared memory pixmaps


У видеокарты 2 Гигабайта видеопамяти максимальная.

Задав команды

 lshw -C video

Найдя строчку, типа этой

04:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 630] (rev a1)

Вводите

lspci -v -s 04:00.0

вывод для этого драйвера

04:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 630] (rev a1) (prog-if 00 [VGA controller])
    Subsystem: ZOTAC International (MCO) Ltd. Device 6199
    Flags: bus master, fast devsel, latency 0, IRQ 43
    Memory at fa000000 (32-bit, non-prefetchable) [size=16M]
   Memory at f0000000 (64-bit, prefetchable) [size=128M]
    Memory at f8000000 (64-bit, prefetchable) [size=32M]
    I/O ports at e000 [size=128]
    [virtual] Expansion ROM at fb000000 [disabled] [size=512K]
    Capabilities: <access denied>
    Kernel driver in use: nvidia
    Kernel modules: nouveau, nvidia_drm, nvidia

Или введя команду

LC_ALL=C lspci -v | grep -EA10 «3D|VGA» | grep 'prefetchable'

вывод
    Memory at fa000000 (32-bit, non-prefetchable) [size=16M]
    Memory at f0000000 (64-bit, prefetchable) [size=128M]
    Memory at f8000000 (64-bit, prefetchable) [size=32M]

Это динамическая видеопамять, которая меняется.