CentOS7开发环境搭建(1)

文章目录

    • BIOS开启VT支持
    • U盘安装系统(2019-03-11)
    • CentOS DNS配置
    • CentOS网络配置
      • 配置静态IP
      • 克隆虚拟机网卡名称变更 CentOS6.5
    • 时间配置
    • 安装VMWare-tools
    • 用户管理 (2019-03-15 7.6.1810)
      • 给一般账号 root 权限
    • Samba服务配置
    • 安装必备软件
    • 获取本机公网ip
    • yum源和第三方库源管理
      • 配置本地源(2019-03-12)
      • 配置国内源
      • 使用第三方源
      • 多个gcc版本共存管理(2019-03-15)
      • 多版本系统资源
      • 常用工具安装
    • 单用户模式

系列文章

  • CentOS7开发环境搭建(1)
  • CentOS7开发环境搭建(2)

BIOS开启VT支持

  • 查询笔记本进入BIOS的按键,启动BIOS的虚拟化设置
  • 如果安装360卫士,那么请永久关闭Intel-VT核晶防护引擎
    这里写图片描述

U盘安装系统(2019-03-11)

  • 系统镜像:CentOS-7-x86_64-DVD-1810.iso
  • 制作工具:UltraISO

使用UltraISO制作安装U盘的步骤

  1. 【文件】【打开】选择系统镜像
  2. 【启动】【写入硬盘映像】【格式化】选择默认系统格式以及Label改成CENTOS7,快速格式化,完成后写入

常见问题:

  • 在INSTALLATION SOURCE中无法选择本地镜像
    可能安装U盘制作的问题,建议重新制作
  • Warning: /dev/root does not exist, could not boot
    此问题是由于无法找到U盘的问题,命令行下ls /dev/或者lsblk查看U盘对应的盘符,比如/dev/sda4. 启一下,上下键选择安装菜单,然后按下Tab键,编辑启动命令,将vmlinuz initrd=initrd.imginst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet 改为:vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 quite

CentOS DNS配置

Linux 下设置DNS位置有3处,其生效顺序如下:

  • /etc/hosts
  • 网卡配置文件DNS服务器地址
  • /etc/resolv.conf

通过设置主机表地址进行特定主机的解析,优先DNS服务器地址,/etc/hosts:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
123.125.114.144 www.baidu.com #手动指定百度的IP

在/etc/hosts配置www.baidu.com的网址后,可以用ping www.baidu.com命令来观看ping的地址是否是123.125.114.114

Linux中默认的DNS服务器地址配置文件为/etc/resolv.conf:

nameserver 114.114.114.114 #配置DNS服务器地址,可配置多个
nameserver 8.8.8.8

在网卡配置文件中添加DNS服务器地址, /etc/sysconfig/network-scripts/ifcfg-eno16777736:

DNS1=114.114.114.114
DNS2=8.8.8.8

解析域名的方法:

[root@localhost]# nslookup baidu.com
Server:		114.114.114.114
Address:	114.114.114.114#53Non-authoritative answer:
Name:	baidu.com
Address: 220.181.57.217
Name:	baidu.com
Address: 111.13.101.208
Name:	baidu.com
Address: 123.125.114.144
Name:	baidu.com
Address: 180.149.132.47[root@localhost]# host baidu.com
baidu.com has address 180.149.132.47
baidu.com has address 220.181.57.217
baidu.com has address 111.13.101.208
baidu.com has address 123.125.114.144
baidu.com mail is handled by 10 mx.n.shifen.com.
baidu.com mail is handled by 20 mx1.baidu.com.
baidu.com mail is handled by 20 jpmx.baidu.com.
baidu.com mail is handled by 20 mx50.baidu.com.
[root@localhost]# dig baidu.com; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33094
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0;; QUESTION SECTION:
;baidu.com.			IN	A;; ANSWER SECTION:
baidu.com.		202	IN	A	111.13.101.208
baidu.com.		202	IN	A	123.125.114.144
baidu.com.		202	IN	A	180.149.132.47
baidu.com.		202	IN	A	220.181.57.217;; Query time: 28 msec
;; SERVER: 114.114.114.114#53(114.114.114.114)
;; WHEN: Wed Nov 18 13:31:29 2015
;; MSG SIZE  rcvd: 91

CentOS网络配置

配置静态IP

根据centos7.0安装教程安装虚拟机。

su root切换到root用户,编辑配置文件vim /etc/sysconfig/network-scripts/ifcfg-eno16777736

HWADDR=00:0C:29:23:C4:B1 #ip link show查看
TYPE=Ethernet
#BOOTPROTO=dhcp
BOOTPROTO=static
IPADDR=192.168.0.122
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=114.114.114.114
DNS2=8.8.8.8
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NM_CONTROLLED=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
UUID=ebd7eace-f0b7-4d48-b4d6-fd6ee3f7e21d #nmcli con show
# ONBOOT=no
ONBOOT=yes

注意配置能够使用的DNS,否则无法解析域名,可参考常用公共DNS服务器地址

service network restart重启网络

ping baidu.com是否能够ping通百度

自动生成配置文件:nmcli con add con-name ens3f0 type ethernet ifname ens3f0

配置多个网卡
配置第二个时,需要自己创建配置文件,在重启网卡之前,停止NetworkManager
systemctl stop NetworkManager
systemctl disable NetworkManager

克隆虚拟机网卡名称变更 CentOS6.5

虚拟机克隆后发现网卡名称从eth0改成了eth1,如何改回呢:

  1. /etc/udev/rules.d/70-persistent-net.rules查看到两块网卡eth0与eth1,eth0为克隆系统的,eth1为重新生成,注释掉第一个eth0网卡信息。将eth1更改为eth0并记录下mac地址;
    # This file was automatically generated by the /lib/udev/write_net_rules
    # program, run by the persistent-net-generator.rules rules file.
    #
    # You can modify it, as long as you keep each rule on a single
    # line, and change only the value of the NAME= key.# PCI device 0x8086:0x100f (e1000)
    #SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:94:65:9c", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"# PCI device 0x8086:0x100f (e1000)
    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:aa:e3:ea", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"```
    
  2. /etc/sysconfig/network-scripts/ifcfg-eth0更改DEVICE与HWADDR
  3. 重启系统,此处重启网络不行

时间配置

配置本地时区:
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
同步网络时间:
yum install ntpdate
ntpdate pool.ntp.org
手动配置时间:

date –s '2016-12-09 15:50:59'clock -r //读CMOS日期
clock –w //将日期写入CMOShwclock --show                          //查看硬件时钟
hwclock --set --date="11/23/2016 22:16:59" //设置硬件时钟

或者使用RHEL7及CentOS7中新增的systemd的timedatectl命令,具体参考Linux(RHEL7及CentOS7)的时间设置篇(timedatectl,date,hwclock)-系统管理(2)

# timedatectlLocal time: Thu 2019-03-07 09:10:03 CSTUniversal time: Thu 2019-03-07 01:10:03 UTCRTC time: Thu 2019-03-07 01:10:03Time zone: Asia/Shanghai (CST, +0800)NTP enabled: no
NTP synchronized: noRTC in local TZ: noDST active: n/a
# timedatectl -h
timedatectl [OPTIONS...] COMMAND ...Query or change system time and date settings.-h --help                Show this help message--version             Show package version--no-pager            Do not pipe output into a pager--no-ask-password     Do not prompt for password-H --host=[USER@]HOST    Operate on remote host-M --machine=CONTAINER   Operate on local container--adjust-system-clock Adjust system clock when changing local RTC modeCommands:status                   Show current time settingsset-time TIME            Set system timeset-timezone ZONE        Set system time zonelist-timezones           Show known time zonesset-local-rtc BOOL       Control whether RTC is in local timeset-ntp BOOL             Control whether NTP is enabled

安装VMWare-tools

# 【虚拟机】-【安装VMWare-tools】
mount /dev/cdrom /mnt
cd /mnt
tar xvf /mnt/VMwareTools-9.9.0-2304977.tar.gz -C /tmp
cd /tmp/vmware-tools-distrib
./vmware-install.pl  # 一路回车即可

【问题1】安装过程中报错:vmhgfs-only/page.c:1625:23: 错误:提供给函数‘wait_on_bit’的实参太多

1、在解压后的 vmware-tools-distrib/ 目录中,进入到 lib/modules/source/,解压 vmhgfs.tar,得到 vmhgfs-only 目录。

2、修改文件 vmhgfs-only/page.c :把第1622行

#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 17, 0)改成#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0) 因为 CentOS 7 的内核版本是 3.10.0。

3、重新把 vmhgfs-only 目录打包为 vmhgfs.tar。

4、重新执行安装脚本 vmware-install.pl。

【问题2】vmvare安装后,共享的文件夹在/mnt/hgfs目录并没有显示出来

1、运行/usr/bin/vmware-config-tools.pl会出现错误
2、/usr/lib/vmware-tools/modules/source目录,同问题的解决步骤进行修改
3、在运行/usr/bin/vmware-config-tools.pl

用户管理 (2019-03-15 7.6.1810)

给一般账号 root 权限

默认情况下,一般账号是没有 root 权限的。为什么不直接用 root 账号,而是要给一般账号 root 权限呢?

  • 日常工作中使用 root 账号,是非常糟糕且危险的习惯!无论是服务器还是个人电脑都是如此。
  • 安装软件时需要 root 权限,只能 su 切换到 root 账户再安装。对于习惯使用 sudo 的人来说,还是有些麻烦。

假设账户名为 seisman,要授予他 root 权限,则要修改配置文件 /etc/sudoers :

$ su
# echo 'seisman ALL=(ALL) ALL'>> /etc/sudoers # 向配置文件中加入语句
# tail -1 /etc/sudoers  # 检查一下是否正确
seisman ALL=(ALL) ALL

其中 seisman 为当前用户名。

Samba服务配置

yum install samba samba-client samba-common安装相关软件

# rpm -qa | grep samba
samba-4.1.12-23.el7_1.x86_64
samba-libs-4.1.12-23.el7_1.x86_64
samba-common-4.1.12-23.el7_1.x86_64
samba-client-4.1.12-23.el7_1.x86_64

这里顺便说一下搭建samba服务器所需要的基本软件包:

  1. samba 这个软件包包含了主要的daemon文件(smbd和nmbd)
  2. samba-common 提供samba的主要配置文件(smb.conf)、smb.conf语法检测程序(testparm)等
  3. samba-client 当linux作为samba 客户端的时候,提供了一套所需的工具和指令。

备份配置文件cp /etc/samba/smb.conf /etc/samba/smb.conf.$(date +%F)
编辑vim /etc/samba/smb.conf

[global]workgroup = MYGROUPserver string = Samba Server Version %vlog file = /var/log/samba/log.%mmax log size = 50security = userpassdb backend = tdbsamload printers = yescups options = raw[samba]comment = my share dirpath = /home/userbrowseable = yesguest ok = yeswritable = yespublic = yes

添加用户smbpasswd -a samba_user,设置密码
重启服务
service smb restart
service nmb restart

关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0

安装iptables服务
yum install iptables-services

Linux下客户端测试
smbclient -L //192.168.0.122/samba -U samba_user

设置开机启动
systemctl enable smb.service

Win8下添加网络位置
进入我的电脑,【右击】-【添加网络位置】根据向导一直点击【下一步】,在Internet地址或网络位置下填写\\192.168.0.122\samba,【下一步】根据提示填写用户与密码。

安装必备软件

  • 安装gcc: yum -y install gcc
  • 安装g++: yum -y install gcc-c++
  • 安装gccgo: yum -y install gcc-go
  • 安装小工具:
  • yum -y install lrzsz screen
  • yum -y install socat nc nmap
  • yum -y install tree

获取本机公网ip

  • curl http://members.3322.org/dyndns/getip
  • curl ipinfo.io
{"ip": "36.110.42.197","hostname": "No Hostname","city": "Beijing","region": "Beijing Shi","country": "CN","loc": "39.9289,116.3883","org": "AS4847 China Networks Inter-Exchange"
}

yum源和第三方库源管理

安装完系统,我们常常意愿使用国内的yum源或本地源以提高下载速度,使用第三方库源来获取不在标准库中的资源。常用管理总结如下

yum工具配置文件/etc/yum.conf

[main]
cachedir=/var/cache/yum/$basearch/$releasever # basearch就是架构,如x86_64,releasever版本号,如7
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release#  This is the default, if you make this bigger yum won't see if the metadata
# is newer on the remote and so you'll "gain" the bandwidth of not having to
# download the new metadata and "pay" for it by yum not having correct
# information.
#  It is esp. important, to have correct metadata, for distributions like
# Fedora which don't keep old packages around. If you don't like this checking
# interupting your command line usage, it's much better to have something
# manually check the metadata once an hour (yum-updatesd will do this).
# metadata_expire=90m# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d

配置本地源(2019-03-12)

系统镜像:CentOS-7-x86_64-DVD-1810.iso

  • 【虚拟机】【设置】【硬件】【CD/DVD(IDE)】【设备状态】选择启动时连接,【连接】使用ISO镜像文件,选择ISO文件;或者在实体机中连接镜像光驱
  • 查看配置文件,系统安装后自带
    # cat /etc/yum.repos.d/CentOS-Media.repo 
    # CentOS-Media.repo
    #
    #  This repo can be used with mounted DVD media, verify the mount point for
    #  CentOS-7.  You can use this repo and yum to install items directly off the
    #  DVD ISO that we release.
    #
    # To use this repo, put in your DVD and use it with the other repos too:
    #  yum --enablerepo=c7-media [command]
    #  
    # or for ONLY the media repo, do this:
    #
    #  yum --disablerepo=\* --enablerepo=c7-media [command][c7-media]
    name=CentOS-$releasever - Media
    baseurl=file:///media/CentOS/file:///media/cdrom/file:///media/cdrecorder/
    gpgcheck=1
    enabled=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    
    baseurl中可以知道,会去/media/cdrom这项去找源
  • sudo mkdir /media/cdrom;sudo mount /dev/cdrom /media/cdrom 挂载ISO
  • yum repolist all查看源的状态
    c7-media          CentOS-7 - Media         disabled
    
  • yum-config-manager --enable c7-media

配置国内源

查看CentOS源的帮助,根据CentOS版本进行对应的操作

  • http://mirrors.aliyun.com
  • http://mirrors.163.com
  • https://mirrors.huaweicloud.com/
  • https://mirrors.tuna.tsinghua.edu.cn/

使用第三方源

CentOS7

yum localinstall http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
# ffmpeg 2.8.15yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm
# ffmpeg 3.4.7

CentOS6.7为例

  1. 安装yum优先级插件

yum install yum-priorities

  1. epel简介: https://fedoraproject.org/wiki/EPEL/zh-cn
rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

以上URL请按实际情况修改

  1. 查看是否安装成功

rpm -q epel-release

  1. 导入key:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

  1. 修改/etc/yum.repos.d/epel.repo文件

在[epel]最后添加一条属性 priority=11

vi /etc/yum.repos.d/epel.repo
意思是yum先去官方源查,官方没有再去epel的源找

  1. 重建缓存

yum makecache

多个gcc版本共存管理(2019-03-15)

在一些软件编译时,对编译器的版本有要求,比如gcc不低于某某或者不高于某某。

Centos7 gcc版本默认4.8.3,为了兼容CentOS6的包,提供了compat-gcc安装包

# yum search compat-gcc
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile* base: mirrors.163.com* extras: mirrors.163.com* updates: mirrors.163.com
====================================== N/S matched: compat-gcc ======================================
compat-gcc-44.x86_64 : Compatibility GNU Compiler Collection
compat-gcc-44-c++.x86_64 : C++ support for compatibility compiler
compat-gcc-44-gfortran.x86_64 : Fortran support for compatibility compiler

Red Hat 为了软件的稳定和版本支持,yum 上gcc版本也是4.8.3,所以无法使用yum进行软件更新。要升级更高版本的gcc,我们需要scl源

  • 安装scl源 yum install -y centos-release-scl
  • 要启用和运行 SCL 中的应用,你还需要安装下列包: yum install -y scl-utils-build
  • 安装高版本的gcc yum install -y devtoolset-8-toolchain
  • 查看scl安装的软件列表 scl --list
  • 使用devtoolset-4的环境 scl enable devtoolset-4 bash

参考: Centos7升级gcc版本方法之一使用scl软件集

多版本系统资源

http://vault.centos.org/

常用工具安装

  • yum install man-pages libstdc++-docs 安装开发手册, man手册中文版设置

单用户模式

虚拟机长时间不用,最可能发生的事情是忘记root密码

https://www.cnblogs.com/zhangjianghua/p/6094496.html

参考:

  • CentOS7下设置网卡名称以eth开头
  • CentOS虚拟机如何设置共享文件夹,并在Windows下映射网络驱动器?
  • CentOS IP、DNS配置
  • LINUX的DNS怎么设置?linux下如何修改DNS地址​
  • Linux学习之CentOS(三十三)–DNS基础及域名系统架构
  • CentOS—网络配置详解
  • CentOS6.5下添加epel源
  • CentOS yum 源的配置与使用
  • CentOS 7下编译安装Boost_1_57_0
  • 在 CentOS 7 下配置 Android 开发环境

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/508627.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ACM 欧拉公式

给出一个数X&#xff0c;求小于X的与X互质的数的个数&#xff0c;使用欧拉公式。 如果x1*x2*...*xnX,则个数nX*(1-1/x1)*(1-/x2)*... 使用这个的题目&#xff0c;超典型 相遇周期(HDOJ)

HDU 1495 非常可乐(BFS)

思路 最难在于想到这道题是BFS&#xff0c;想到之后只有六种情况就很好理解了。 代码 #include<stdio.h> #include<string.h> #include<math.h> #include<queue> using namespace std; int a,b,s; struct shui {int count;int ha,hb,hs; }t,t1; int m…

NBU计算机专业期末考试记录

考试科目&#xff1a;操作系统 软件工程 数据库 计算机网络 JAVA高级应用 汇编 计算机算法设计 操作系统&#xff1a;题目比较简单&#xff0c;这学期的大题有写读写互斥的代码、求平均磁道数、银行家算法、页面调度算法的缺页次数计算。期中考试有参考价值&#xff0c;要看懂…

蚁群算法的若干记录

1、蚁群算法的特点&#xff1a; ① 结合了分布式算法、正反馈机制、贪婪式搜索的算法&#xff1a;正反馈可以快速发现较优解、分布式算法避免早熟收敛、贪婪式搜索有助于早期找出可解决方案&#xff1b; ② 蚁群算法具有很强的并行性&#xff1b; ③ 个体之间通过信息素合作…

蚁群算法之二

1、蚂蚁系统模型的建立 给定G(V,A)&#xff0c;其中V为定点集&#xff0c;A为各顶点互相连接组成的边集,已知各顶点之间的连接距离&#xff0c;要求确定一条长度最短的回路&#xff0c;仅遍历一次所有顶点的回路。引入记号&#xff1a; m&#xff1a;蚁群中蚂蚁的数量&#x…

ns2相关学习——tcl脚本编写(1)

新建一个仿真实例&#xff1a; set ns [new Simulator]为了让nam文件和trace文件有地方可以依托&#xff0c;我们要打开.nam文件进行写入&#xff0c;并且使用句柄nf set nf [open out.nam w] $ns namtrace-all $nf设置拓扑图 1、设置节点的脚本语言&#xff1a;建了两个节点&…

ns2相关学习——TCL脚本编写(2)

下面来学习更加复杂一点的TCL脚本的编写 简述&#xff1a;建立有4个节点的拓扑&#xff0c;其中一个节点作为路由器&#xff0c;用来将两个节点发出的数据包转发到第四个节点上面。 在这里将解释将两个节点的数据流区分开来的方法&#xff0c;展示如何去检测一个队列是否是满…

ns2相关学习——TCL脚本编写(3)

在这里我们将学习动态网络的建立 1、建立拓扑 当节点很多的时候&#xff0c;我们可以使用循环的方式来建立拓扑。 for {set i 0} {$i < 7} {incr i} {set n($i) [$ns node] }这里的数组不需要事先声明。 2、建立链接 这里我们要把7个节点链成一个环儿&#xff0c;同样使用…

NS2相关学习——完成一个新的协议(1)

接下来要进入对我来说老大难的环节了&#xff0c;从表面的TCL慢慢进入到后端的C&#xff0c;一起加油学习吧~ 在本节学习中&#xff0c;将给出一个在ns中实现新的协议的例子。但是可以想见的是&#xff0c;如果由我们自己来完成这个工作&#xff0c;势必要对NS2十分的熟悉并且要…

NS2相关学习——完成一个新协议(2)

在上节中&#xff0c;我们把教程要求的3.1-3.3过了一遍&#xff0c;这一次回到正途上来。看看到底是怎么完成一个新的协议的。 本节中的代码实现了一些简单的“ping”协议&#xff08;灵感来自“ns注释和文档”&#xff08;现在更名为ns手册&#xff09;的第9.6章中的“ping请…

NS2相关学习——完成一个新协议(3)

在前面已经基本学习了怎么完成一个新协议&#xff08;一个神奇的ping协议&#xff0c;然鹅还是有点懵。。。&#xff09; 接下来继续学习相关知识 接着上一部分从1开始 1、必要的修改 如果想要添加添加新的代理程序&#xff0c;就需要修改NS源文件中的内容&#xff0c;特别…

NS2相关学习——创建Xgraph的输出文件

经过前面学习代码的编写&#xff0c;这一部分&#xff0c;我们要学会如何进行分析&#xff0c;一个很直观的方式就是将结果图形化表示出来。 ns-allinone包的一部分是“xgraph”&#xff0c;一个绘图程序&#xff0c;可用于创建模拟结果的图形表示。 在本节中&#xff0c;将向…

NS2相关学习——在ns中模拟无线场景

之前学习的都是有线场景下的NS2相关应用&#xff0c;现在开始&#xff0c;终于要学习无线啦&#xff01;无线是我研究的重点&#xff0c;要好好学习呀&#xff01;在本节中&#xff0c;我们将学习使用ns中提供的移动无线仿真模型。 该部分由两部分组成。 在第一小节中&#xff…

An Energy-Efficient Ant-Based Routing Algorithm for Wireless Sensor Networks (无线传感网中一种基于蚁群算法的能量有效路由)

牙说&#xff1a;这篇论文是研究蚁群算法在能量有效路由协议的过程中必读的一篇文章&#xff0c;原是全英文&#xff0c;在这里按照自己的理解大致翻译成中文&#xff0c;好好学习&#xff0c;与君共勉。 论文题目&#xff1a;An Energy-Efficient Ant-Based Routing Algorith…

活在幻梦中的你我

其实仔细想想,人类和地球上的其它物种有什么不同呢?可能仅有的不同是,人类会去相信那本来并不存在的事情. 并且会为了那种虚幻的东西为止拼搏、努力。比如科技的发展&#xff0c;不就是人类在实现自己想象中的事物么&#xff0c;飞机、轮船、家电、计算机等等&#xff0c;无一…

An Energy-Efficient Ant-Based Routing Algorithm for Wireless Sensor Networks (无线传感网中基于蚁群算法的能量有效路由)2

牙说&#xff1a;接着上一篇继续写。论文标题&#xff1a;An Energy-Efficient Ant-Based Routing Algorithm forWireless Sensor Networks作者&#xff1a;Tiago Camilo, Carlos Carreto, Jorge S Silva, Fernando Boavida正文&#xff1a; 2、相关工作可以考虑无线传感器网络…

NS2仿真分析无线网络的攻击防御(1)

这个学期有个选题是NS2仿真分析无线网络的攻击防御&#xff0c;比较有意思的样子&#xff0c;现在来慢慢学一下这个是什么东西。 首先&#xff0c;还是一篇文章&#xff08;老长老长了&#xff09;&#xff0c;还是全英文的&#xff0c;还是先来分析一下它到底在说什么&#x…

NS2仿真分析无线网络的攻击防御(2)

牙说&#xff1a;继续上一篇博文进行翻译。 4. NS和我们的工作 我们试图评估黑洞攻击在无线Ad-hoc网络中的影响。 为了实现这一点&#xff0c;我们已经使用NS 网络模拟 [14]程序模拟了一个含有黑洞节点的无线自组网络场景。为了模拟无线自组织网络中的黑洞节点&#xff0c;我…

Java集合之HashMap源码分析

以下源码均为jdk1.7 HashMap概述 HashMap是基于哈希表的Map接口的非同步实现. 提供所有可选的映射操作, 并允许使用null值和null健. 此类不保证映射的顺序. 需要注意的是: HashMap不是同步的. 哈希表 哈希表定义: 哈希表是一种根据关键码去寻找值的数据映射结构, 该结构通…

NS2相关学习——可靠的MANET应用程序的Gossip协议分析

好久不写&#xff0c;应该努力啦&#xff01;老师把这篇论文给了我&#xff0c;现在还不知道它在讲什么&#xff0c;来边翻译边学习吧&#xff01; 文章链接&#xff1a;https://www.researchgate.net/publication/316844643_Analyzing_Gossip_Protocols_for_Reliable_MANET_Ap…