CentOS 7de Tavşan Kümesini Kümeleme
RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir
GDB, C, C ++, Objective-C, Pascal, Fortran, Go, D, OpenCL C, Ada ve Modula-2 için bir hata ayıklayıcıdır.
CentOS, RHEL'e (Red Hat Enterprise Linux) dayanmaktadır. RHEL'in ana hedeflerinden biri, kararlı bir sunucu işletim sistemi olmaktır, yani yazılım paketlerinin daha yeni sürümleri her zaman mevcut değildir.
Yazma sırasında, CentOS 6 GDB v7.2'yi sunar. Ancak GDB ekibi yakın zamanda v7.91 için kod yayınladı.
GDB'nin daha yeni bir sürümünü kullanmak için resmi olarak farklı bir Linux dağıtımı yapılması önerilmektedir. Bu her zaman ideal değildir. Neyse ki, daha yeni GDB sürümlerini CentOS 6'ya yüklemek mümkündür. GDB bir sistem çekirdeği bileşeni yerine bir hata ayıklayıcı olduğundan, daha yeni bir sürümü kullanmak oldukça güvenlidir.
Bu makalede, CentOS 6'ya GDB'nin hem desteklenen hem de desteklenmeyen sürümlerinin nasıl yükleneceği açıklanmaktadır.
Ayrıca, C ++ Standart Kitaplığı (dize gibi) ve Standart Şablon Kitaplığı'nı (vektör gibi) kullanırken size daha kolay okunabilen hata ayıklama bilgileri vermek için GDB'nin nasıl ayarlanacağını açıklayacağım. Bu özelliğe güzel baskı denir.
VPS'nize giriş yapın. Bu, Vultr kontrol panelindeki "Konsolu Görüntüle" seçeneğine veya bir SSH istemcisine tıklanarak yapılabilir.
(a) Kök olarak oturum açın.
(b) Kendi kullanıcı hesabınızı oluşturun. Parolayı ayarlayın.
adduser <username>
passwd <username>
(c) Kullanıcıya sudo erişimi verin.
visudo
After the line "root ALL=(ALL) ALL"
Add the line "<username> ALL=(ALL) ALL"
--- If you aren't familiar with vi, go to the line "root ALL=(ALL) ALL".
--- Hit "o" to create a new line after that line and enter insert mode.
--- Type "<username> ALL=(ALL) ALL".
--- Hit ESC.
--- Type "ZZ" to save.
(d) Kök olarak oturumu kapatın, ardından kullanıcı hesabınızla tekrar oturum açın. Asla root olarak giriş yapmak çok daha güvenlidir. Sudo kullanmak daha iyi bir uygulamadır.
GDB'yi yükleyin.
sudo yum install gdb
Yüklü sürümü kontrol edin ve konumunu görün.
gdb --version
May say: GNU gdb (GDB) Red Hat Enterprise Linux (7.2-75.el6)
which gdb
/usr/bin/gdb
GCC gibi bir C derleyicisi kurun. GDB'yi kaynaktan oluşturmak için bir C ++ derleyicisi gerekli değildir, ancak GDB'nin güzel yazdırma özelliğini göstermek için gereklidir. CentCC 6'da GCC'yi Yükleme makalesinde belirtilen adımları uygulayarak GCC'nin daha yeni bir sürümünü kaynaktan oluşturabilirsiniz . Veya GCC'nin CentOS 6 resmi olarak desteklenen sürümünü aşağıdakileri çalıştırarak yükleyebilirsiniz:
sudo yum install gcc gcc-c++
Ek olarak gerekli paketleri kurun.
sudo yum install wget tar gzip ncurses-devel texinfo svn python-devel
Hangi GDB sürümünü kaynağından oluşturmak istediğinize karar verin. İndirilebilecek sürümleri görmek için GDB FTP sitesini ziyaret edin .
İstediğiniz GDB sürümünün kaynağını alın. Bu makalenin geri kalanı v7.9.1 için yazılmıştır ve kaynakları içine indirir ~/sourceInstallations/gdb-7.9.1/
- daha yeni sürümler için uygun sürüm numarasını değiştirmeniz gerekir.
mkdir ~/sourceInstallations
cd ~/sourceInstallations
wget ftp://ftp.gnu.org/gnu/gdb/gdb-7.9.1.tar.gz .
tar -zxvf gdb-7.9.1.tar.gz
GDB oluşturun. Bu doğru şekilde tamamlanırsa, göreceğiniz son satırda "başarı" yazacaktır. Bazı hata görünümlü mesajların hızla kaydırıldığını görmek normaldir. Bunları görmezden gelmek güvenlidir.
mkdir gdb-7.9.1.build
cd gdb-7.9.1.build
../gdb-7.9.1/configure --with-python=yes && make && sudo make install && echo success
--- If your VPS has multiple cores, you can speed up the build by changing the middle part
--- of this line from "&& make &&" to "&& make -j <number of cores> &&".
--- You can see the number of cores your VPS has by running "nproc"
--- The parameter "--with-python=yes" is necessary for the pretty printing feature
C ++ güzel baskı yükleyin.
cd ~/
svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python gdb_printers
Create a file ~/.gdbinit of:
python
import sys
sys.path.insert(0, '/home/<yourUserName>/gdb_printers/')
from libstdcxx.v6.printers import register_libstdcxx_printers
end
--- One way to create this file is to run "vi ~/.gdbinit", hitting "i" to enter insert mode,
--- typing the above file, hitting ESC, and hitting "ZZ" to save.
Yüklü sürümü ve konumunu kontrol edin.
gdb --version
May say: GNU gdb (GDB) 7.9.1
which gdb
/usr/local/bin/gdb
İsteğe bağlı olarak GDB'yi çalıştırın ve güzel yazdırmaya bakın.
mkdir ~/gdbExample
cd ~/gdbExample
Create a file gdbExample.cpp of:
#include <string>
#include <vector>
using namespace std;
int main() {
string foo = "bar";
vector<string> vec;
vec.push_back("foo");
vec.push_back("bar");
vec.push_back("foobar");
}
--- One way to create this file is to run "vi gdbExample.cpp", hitting "i" to enter insert mode,
--- typing the above file, hitting ESC, and hitting "ZZ" to save.
g++ -ggdb gdbExample.cpp -o gdbExample
Start GDB traditionally, by running "gdb ./gdbExample". Or, start GDB by using its terminal user interface (basically a text mode GUI), by running "gdb --tui ./gdbExample".
Enter "break main" to set a breakpoint at the beginning of function main() -- and it will say:
Breakpoint 1 at 0x<someAddress>: file gdbExample.cpp, line 6.
Enter "run" to start the program, which will immediately hit the breakpoint you just set -- and it will say:
Starting program: /home/<yourUserName>/gdbExample/gdbExample
Breakpoint 1, main () at gdbExample.cpp:6
6 string foo = "bar";
Enter "next" and hit enter four times, and gdb will move up to just before executing:
10 vec.push_back("foobar");
Enter "print foo" and gdb will show:
$1 = "bar"
Enter "print vec" and gdb will show:
$2 = std::vector of length 2, capacity 2 = {"foo", "bar"}
--- Remember, line 10 hasn't executed yet to add "foobar" to the vector
Enter "quit" and "y" to quit anyway.
İsteğe bağlı olarak sabit sürücü alanını geri kazanın. Kişisel ~/sourceInstallations
dizin 386MB etrafında alacak. İleride bir noktada kullanmanız gerekebilecek isteğe bağlı yapılandırma seçenekleri olduğu için muhtemelen dizinleri saklamak akıllıca olacaktır ve zaten çok şey yapmak daha hızlı olacaktır. Ayrıca, derleme işlemi daha sonra bir şeyler ters giderse kontrol edip çalışabileceğiniz günlükler oluşturur. Ancak, sudo make install
daha önce çalıştıktan sonra , yüklü GDB'niz bu dizindeki herhangi bir şeye bağlı değildir ve alan premium olabilir, bu nedenle bu adımı yapabilir ve 386MB'yi geri alabilirsiniz. ÖNEMLİ:~/gdb_printers/
dizini silmeyin ! GDB'yi her çalıştırışınızda bu dizinin içeriği yüklenir. GDB'nin kendisine DEĞİL derlenmişlerdir.
cd ~/
rm -rf sourceInstallations
--- Again, if you can spare the space, you may someday be happy to have left it there.
RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir
Farklı Bir Sistem mi Kullanıyorsunuz? Pagekit PHP ile yazılmış açık kaynaklı bir CMSdir. Pagekit kaynak kodu GitHubda herkese açık olarak barındırılıyor. Bu kılavuz size
Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak
Belirli durumlarda, Sistem Yöneticisinin bir kullanıcı hesabı oluşturması ve yalnızca kendi dosyalarını sFTP yoluyla yönetmek için erişimini kısıtlaması gerekebilir, ancak b
Bu makalede, ModSecurity tarafından korunan bir LEMP yığını oluşturmayı açıklayacağım. ModSecurity faydalı bir açık kaynaklı web uygulaması güvenlik duvarıdır.
Giriş LAMP, Linux, Apache, MySQL ve PHPnin kısaltmasıdır. Bu yazılım yığını, kurulum için en popüler açık kaynaklı çözümdür.
Farklı Bir Sistem mi Kullanıyorsunuz? Chamilo, çevrimiçi eğitim ve takım işbirliği için yaygın olarak kullanılan ücretsiz ve açık kaynaklı bir öğrenme yönetim sistemidir (LMS).
Eskiden OpenERP olarak bilinen Odoo, iyi bilinen bir açık kaynaklı ERP iş platformudur. Her büyüklükteki işletme, bol miktarda lis sayesinde Odoodan yararlanabilir
Icinga2 güçlü bir izleme sistemidir ve bir ana istemci modelinde kullanıldığında, NRPE tabanlı izleme kontrollerine olan ihtiyacın yerini alabilir. Master-Clien
Farklı Bir Sistem mi Kullanıyorsunuz? Couch CMS, web tasarımcılarının tasarlamalarını sağlayan basit ve esnek, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)
Farklı Bir Sistem mi Kullanıyorsunuz? Netdata, gerçek zamanlı sistem ölçümleri izleme alanında yükselen bir yıldızdır. Aynı türdeki diğer araçlarla karşılaştırıldığında, Netdata:
Farklı Bir Sistem mi Kullanıyorsunuz? ERP veya Kurumsal Kaynak Planlaması, temel iş süreçlerini yönetmek için kullanılan bir kurumsal uygulama paketidir. ERPNext ücretsizdir
Başka bir Vultr eğitimine hoş geldiniz. Burada, bir SAMP sunucusunun nasıl kurulacağını ve çalıştırılacağını öğreneceksiniz. Bu kılavuz CentOS 6 için yazılmıştır. Önkoşullar
Genel Bakış Bu makale, bir Kubernetes kümesini hemen kurup kubeadm ile çalıştırmanıza yardımcı olmak içindir. Bu kılavuz iki sunucuyu
Farklı Bir Sistem mi Kullanıyorsunuz? Giriş Sails.js, Ruby on Railse benzer şekilde Node.js için bir MVC çerçevesidir. Modern uygulamalar geliştirmek için yapar
Bu eğitimde, CentOS 6 Sistemine Half Life 2 oyun sunucusu kurma süreci ele alınacaktır. 1. Adım: Önkoşulları kurma
PrestaShop popüler bir açık kaynaklı e-ticaret çözümüdür. Kendi çevrimiçi mağazanızı ücretsiz oluşturmak için kullanabilirsiniz. Bu eğitimde, size
Farklı Bir Sistem mi Kullanıyorsunuz? MODX Revolution hızlı, esnek, ölçeklenebilir, ücretsiz ve açık kaynaklı, kurumsal düzeyde bir İçerik Yönetim Sistemi (CMS)
Giriş Linux sistemleri, süreçleri ve disk alanını izlemeye yardımcı olan varsayılan olarak top, df ve du gibi izleme araçlarıyla birlikte gelir. Çoğu zaman, onlar ar
Farklı Bir Sistem mi Kullanıyorsunuz? Kolab Groupware, ücretsiz ve açık kaynaklı bir web tabanlı grup yazılımı uygulamasıdır. Özellikleri e-posta iletişiminden, olaylardan oluşur
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.
Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!
Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.
Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun