CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin
CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.
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.
CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.
Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.
OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.
Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.
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?