EDLinux3---完整的mount过程

本文详细介绍了UUID在Linux系统中的唯一性及其如何用于硬盘分区标识。此外,还解析了Grub配置文件中如何利用UUID来指定内核位置及启动时要加载的分区。

 

 

 

Grub:

 

系统启动从grub开始,打开/boot/grub/grub.cfg,可以看到

 

 

第一行是一个引导菜单

第二行是在search the kernel of Linux

第三行是告诉计算机将/boot/vmlinuz-2.6.31-17-generic挂载,并读取那个UUID代表的分区的一些文件

最后一行只是从内核分离出的一部分,为了创建一个虚拟的根文件系统

以上就是grub的工作,至此,Linux内核就开始接管计算机

 

那么Linux就开始挂载分区,它(内核)将读取/etc/fstab中的内容,完成加载

 

加载完毕Linux就算创建完毕,可以使用了。

### 安装NS-3网络模拟器 #### 准备工作 为了确保顺利安装NS-3,在Ubuntu环境下需先更新系统并安装必要的依赖包。这一步骤至关重要,因为缺少某些库可能导致编译失败。 ```bash sudo apt update && sudo apt upgrade -y sudo apt install build-essential autoconf automake libxmu-dev g++ python3 python3-setuptools git-core cmake p7zip-full qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools gir1.2-goocanvas-2.0 python3-gi python3-gi-cairo python3-pip gdb valgrind wireshark uncrustify doxygen graphviz imagemagick texlive texinfo latexmk dvipng pylint python3-tk perl tcpdump sqlite3 ethtool nmap iperf lsof ssh openssh-server screen ccache curl wget rsync pbuilder debootstrap pkg-config cppcheck sloccount lcov bison flex ruby r-base gnuplot-nox octave libboost-all-dev openmpi-bin openmpi-common openmpi-doc libopenmpi-dev libc6-dev-i386 linux-libc-dev htop ncurses-term tcl8.6 tk8.6 tcl8.6-dev tk8.6-dev expect dpkg-dev dctrl-tools nano vim emacs ed diffutils lrzsz libxml2-utils dos2unix bridge-utils ebtables iptables arping telnet netcat-traditional socat tcptraceroute dnsutils bind9-host traceroute whois sipcalc mtr-tiny ntpdate augeas-lenses apparmor-profiles apport-symptoms apt-listchanges aspell aspell-en at bc blt bubblewrap bzr check chntpw cups-client dash db-util debhelper debian-keyring desktop-file-utils dh-autoreconf dh-strip-nondeterminism diffstat distro-info docbook-xml docbook-xsl dopewars dpkg dpkg-repack dvd+rw-tools eject exim4 exim4-daemon-light extlinux fakeroot fastjar fdisk file findutils finger fish fonts-dejavu-core fuse ftp gcc gettext ghc html2text httpie info initramfs-tools initscripts intltool-debian iproute2 iptstate jq kbd keychain krb5-locales less lintian live-build logrotate lsb-release lynx lzma lzop man-db mawk mc mercurial minicom mkbootimg mobile-broadband-provider-info modemmanager moreutils mount multiarch-support mutt mysql-client nano ncdu nfs-common nikto nload nmon npm nscd nss-mdns opam openssl passwd patch pciutils perlmagick pigz pinentry-curses pollinate povray procmail proftpd-basic psensor pv pyflakes python-is-python3 quilt radare2 reptyr rlwrap rpm rsync rsyslog sbuild scite screen scrub sed sensible-utils sgml-data shared-mime-info siege slurm-llnl snmp software-properties-common squashfs-tools strace subversion sysbench systemtap tar tasksel tcl-expect tcllib tcsh tcpflow tcpreplay tcpslice time tmux tofrodos toilet tree u-boot-tools ubuntu-minimal unzip usbmux util-linux uuid-runtime vagrant virt-manager wamerican wbritish wdiff whiptail wipe wolframscript wpasupplicant xauth xmlstarlet xorriso xvfb xxd xz-utils yasm zip zlibc zlib1g-dev ``` 上述命令涵盖了大部分官方文档所提及的依赖项[^1]。 #### 下载NS-3源码 通过`download.py`脚本可以方便地获取特定版本的NS-3源代码及其配套工具链。这里以ns-3.37为例: ```bash cd ~/ git clone https://github.com/nsnam/ns-3-allinone.git cd ns-3-allinone ./download.py --version=ns-3.37 ``` 此过程会自动完成所需资源的拉取操作[^4]。 #### 编译构建 进入解压后的目录执行如下指令启动编译流程: ```bash cd ~/ns-3-allinone/ns-3.37 ./waf configure --enable-examples --enable-tests ./waf build ``` 如果一切正常,则表示已经成功完成了NS-3环境搭建的工作。 #### 验证安装成果 最后可以通过运行内置测试案例验证当前部署情况是否良好: ```bash ./test.py ``` 当所有测试均能顺利完成时即证明整个安装环节无误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值