ubuntu介绍以及使用

  Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的开源GNU/Linux操作系统,Ubuntu 是基于Debian GNU/Linux,支持x86、amd64(即x64)和ppc架构,由全球化的专业开发团队(Canonical Ltd)打造的。其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,类似儒家“仁爱”的思想,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观。

  Ubuntu基于Debian发行版和GNOME桌面环境,而从11.04版起,Ubuntu发行版放弃了Gnome桌面环境,改为Unity,与Debian的不同在于它每6个月会发布一个新版本。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。Ubuntu对GNU/Linux的普及特别是桌面普及作出了巨大贡献,由此使更多人共享开源的成果与精彩。
  2013年1月3日,Ubuntu正式发布面向智能手机的移动操作系统。
  ubuntu基于linux的免费开源桌面PC操作系统,十分契合英特尔的超极本定位,支持x86、64位和ppc架构。
  2014年2月20日,Canonical公司于北京中关村皇冠假日酒店召开了Ubuntu智能手机发布会,正式宣布Ubuntu与国产手机厂商魅族合作推出Ubuntu版MX3。魅族副总裁李楠到场出席。

  Ubuntu的开发者与Debian和GNOME开源社区合作密切,其各个正式版本的桌面环境均采用GNOME的最新版本,通常会紧随GNOME项目的进展而及时更新(同时,也提供基于KDE、XFCE等桌面环境的派生版本)。GNOME是一套运行在操作系统上,提供图形桌面环境的计算机软件。Ubuntu的每个新版本均会包含当时最新的GNOME桌面环境,通常在GNOME发布新版本后一个月内发布。
  Ubuntu建基于Debian的不稳定分支:不论其软件格式(deb)还是软件管理与安装系统(Debian Apt)。Ubuntu的开发者会把对软件的修改实时反馈给Debian社区,而不是在发布新版时才宣布这些修改。事实上,很多Ubuntu的开发者同时也是Debian主要软件的维护者。不过,Debian与Ubuntu的软件并不一定完全兼容,也就是说,将Debian的包安装在Ubuntu上可能会出现兼容性问题,反之亦然。Ubuntu与Debian使用相同的deb软件包格式,可以安装绝大多数为Debian编译的软件包,虽然不能保证完全兼容,但大多数情况是通用的。
  Ubuntu所有系统相关的任务均需使用Sudo指令是它的一大特色,这种方式比传统的以系统管理员账号进行管理工作的方式更为安全,此为Linux、Unix系统的基本思维之一。Windows 在较新的版本内也引入了类似的 UAC 机制,但用户数量不多。它与其它基于Debian的Linux发布版,如MEPIS、Xandros、Linspire、Progeny和Libranet等相比,Ubuntu更接近Debian的开发理念,它主要使用自由、开源的软件,而其它发布版往往会附带很多闭源的软件。

Ubuntu历史版本
与Debian稳健的升级策略不同,Ubuntu每六个月便会发布一个新版,以便人们实时地获取和使用新软件。Ubuntu共有五个长期支持版本(Long Term Support,LTS):Ubuntu 6.06、8.04、10.04、12.04、14.04、16.04。Ubuntu 12.04和14.04桌面版与服务器版都有5年支持周期。而之前的长期支持版本为桌面版3年,服务器版5年。每个Ubuntu的版本代号都是按照“形容词+动物”的格式命名的,一开始并不是按照字母顺序,从6.06的Drapper DRAKE才开始如此。而数字号则是表示发布的“年+月”,如12.04是在2012年4月发布。

运行ubuntu

  这里我们在运行虚拟机的时候,选择的软件为vmware。

  在正式解压镜像之前,先新建一个虚拟机,选项基本为系统初始为你设置好的选项,但要注意的一点是网络连接的三种模式,这里对于是采用路由器连接网络的朋友,采用第一种,第二种则是在你的电脑里设置一个虚拟网卡,分配IP,与宿机使用同一网络。一般只需要用到前面两种,在建立虚拟机完成后,开始运行我们预选下载完成的linux镜像,这里与正常windows启动相同,在进入系统之后,会提示你安装,选择语言等一系列初始操作之后,将虚拟机重启,这样系统就初步安装完成了。下面介绍一下linux的目录结构:

  linux的目录结构

  

/

  • root --- 启动Linux时使用的一些核心文件。如操作系统内核、引导程序Grub等。
  • home --- 存储普通用户的个人文件
    • ftp --- 用户所有服务
    • httpd
    • samba
    • user1
    • user2
  • bin --- 系统启动时需要的执行文件(二进制)
  • sbin --- 可执行程序的目录,但大多存放涉及系统管理的命令。只有root权限才能执行
  • proc --- 虚拟,存在linux内核镜像;保存所有内核参数以及系统配置信息
    • 1 --- 进程编号
  • usr --- 用户目录,存放用户级的文件
    • bin --- 几乎所有用户所用命令,另外存在与/bin,/usr/local/bin
    • sbin --- 系统管理员命令,与用户相关,例如,大部分服务器程序
    • include ---  存放C/C++头文件的目录
    • lib --- 固定的程序数据
    • local --- 本地安装软件保存位置
    • man --- 手工生成的目录
    • info --- 信息文档
    • doc --- 不同包文档信息
    • tmp
    • X11R6 ---  该目录用于保存运行X-Window所需的所有文件。该目录中还包含用于运行GUI要的配置文件和二进制文件。
    • X386 --- 功能同X11R6,X11 发行版5 的系统文件
  • boot --- 引导加载器所需文件,系统所需图片保存于此
  • lib --- 根文件系统目录下程序和核心模块的公共库
    • modules --- 可加载模块,系统崩溃后重启所需模块
  • dev --- 设备文件目录
  • etc --- 配置文件
    • skel --- home目录建立,该目录初始化
    • sysconfig --- 网络,时间,键盘等配置目录
  • var
    • file
    • lib --- 该目录下的文件在系统运行时,会改变
    • local --- 安装在/usr/local的程序数据,变化的
    • lock --- 文件使用特定外设或文件,为其上锁,其他文件暂时不能访问
    • log --- 记录日志
    • run --- 系统运行合法信息
    • spool --- 打印机、邮件、代理服务器等假脱机目录
    • tmp
    • catman --- 缓存目录
  • mnt --- 临时用于挂载文件系统的地方。一般情况下这个目录是空的,而在我们将要挂载分区时在这个目录下建立目录,再将我们将要访问的设备挂载在这个目录上,这样我们就可访问文件了。
  • tmp --- 临时文件目录,系统启动后的临时文件存放在/var/tmp
  • lost+found --- 在文件系统修复时恢复的文件

 

/:根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中

/bin:/usr/bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。

/boot:放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文件,以及/boot/gurb。建议单独分区,分区大小100M即可

/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount /dev/cdrom /mnt。

/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前记得备份。

注:/etc/X11存放与x windows有关的设置。

/home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。建议单独分区,并设置较大的磁盘空间,方便用户存放数据

/lib:/usr/lib:/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/modules。

/lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。如加载硬盘于/disk 中,此目录下就会自动产生目录/disk/lost+found

/mnt:/media:光盘默认挂载点,通常光盘挂载于/mnt/cdrom下,也不一定,可以选择任意位置进行挂载。

/opt:给主机额外安装软件所摆放的目录。如:FC4使用的Fedora 社群开发软件,如果想要自行安装新的KDE 桌面软件,可以将该软件安装在该目录下。以前的 Linux 系统中,习惯放置在 /usr/local 目录下

/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/*等

/root:系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。

/sbin:/usr/sbin:/usr/local/sbin:放置系统管理员使用的可执行命令,如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能"查看"而不能设置和使用。

/tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下

/srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内

/usr:应用程序存放目录,/usr/bin存放应用程序,/usr/share存放共享数据,/usr/lib存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local:存放软件升级包。/usr/share/doc:系统说明文件存放目录。/usr/share/man: 程序说明文件存放目录,使用 man ls时会查询/usr/share/man/man1/ls.1.gz的内容建议单独分区,设置较大的磁盘空间

/var:放置系统执行过程中经常变化的文件,如随时更改的日志文件/var/log,/var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动后,其PID存放在该目录下。建议单独分区,设置较大的磁盘空间

下面是linux的一些常用指令,这些在日常生产环境之中需要自己不断使用才能达成记忆的效果:

常用指令

ls          显示文件或目录

     -l           列出文件详细信息l(list)

     -a          列出当前目录下所有文件及目录,包括隐藏的a(all)

mkdir         创建目录

     -p           创建目录,若无父目录,则创建p(parent)

cd               切换目录

touch          创建空文件

echo            创建带有内容的文件。

cat              查看文件内容

cp                拷贝

mv               移动或重命名

rm               删除文件

     -r            递归删除,可删除子目录及文件

     -f            强制删除

find              在文件系统中搜索某文件

wc                统计文本中行数、字数、字符数

grep             在文本文件中查找某个字符串

rmdir           删除空目录

tree             树形结构显示目录,需要安装tree包

pwd              显示当前目录

ln                  创建链接文件

more、less  分页显示文本文件内容

head、tail    显示文件头、尾内容

ctrl+alt+F1  命令行全屏模式

 

系统管理命令

stat              显示指定文件的详细信息,比ls更详细

who               显示在线登陆用户

whoami          显示当前操作用户

hostname      显示主机名

uname           显示系统信息

top                动态显示当前耗费资源最多进程信息

ps                  显示瞬间进程状态 ps -aux

du                  查看目录大小 du -h /home带有单位显示目录信息

df                  查看磁盘大小 df -h 带有单位显示磁盘信息

ifconfig          查看网络情况

ping                测试网络连通

netstat          显示网络状态信息

man                命令不会用了,找男人  如:man ls

clear              清屏

alias               对命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit

kill                 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。

 

打包压缩相关命令

gzip:

bzip2:

tar:                打包压缩

     -c              归档文件

     -x              压缩文件

     -z              gzip压缩文件

     -j              bzip2压缩文件

     -v              显示压缩或解压缩过程 v(view)

     -f              使用档名

例:

tar -cvf /home/abc.tar /home/abc              只打包,不压缩

tar -zcvf /home/abc.tar.gz /home/abc        打包,并用gzip压缩

tar -jcvf /home/abc.tar.bz2 /home/abc      打包,并用bzip2压缩

当然,如果想解压缩,就直接替换上面的命令  tar -cvf  / tar -zcvf  / tar -jcvf 中的“c” 换成“x” 就可以了。

 

关机/重启机器

shutdown

     -r             关机重启

     -h             关机不重启

     now          立刻关机

halt               关机

reboot          重启

 

Linux管道

将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。

例:grep -r "close" /home/* | more       在home目录下所有文件中查找,包括close的文件,并分页输出。

 

Linux软件包管理

dpkg (Debian Package)管理工具,软件包名以.deb后缀。这种方法适合系统不能联网的情况下。

比如安装tree命令的安装包,先将tree.deb传到Linux系统中。再使用如下命令安装。

sudo dpkg -i tree_1.5.3-1_i386.deb         安装软件

sudo dpkg -r tree                                     卸载软件

 

注:将tree.deb传到Linux系统中,有多种方式。VMwareTool,使用挂载方式;使用winSCP工具等;

APT(Advanced Packaging Tool)高级软件工具。这种方法适合系统能够连接互联网的情况。

依然以tree为例

sudo apt-get install tree                         安装tree

sudo apt-get remove tree                       卸载tree

sudo apt-get update                                 更新软件

sudo apt-get upgrade        

 

将.rpm文件转为.deb文件

.rpm为RedHat使用的软件格式。在Ubuntu下不能直接使用,所以需要转换一下。

sudo alien abc.rpm

 

vim使用

vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。

命令模式下:

:q                      退出

:q!                     强制退出

:wq                   保存并退出

:set number     显示行号

:set nonumber  隐藏行号

/apache            在文档中查找apache 按n跳到下一个,shift+n上一个

yyp                   复制光标所在行,并粘贴

h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)

 

用户及用户组管理

/etc/passwd    存储用户账号

/etc/group       存储组账号

/etc/shadow    存储用户账号的密码

/etc/gshadow  存储用户组账号的密码

useradd 用户名

userdel 用户名

adduser 用户名

groupadd 组名

groupdel 组名

passwd root     给root设置密码

su root

su - root 

/etc/profile     系统环境变量

bash_profile     用户环境变量

.bashrc              用户环境变量

su user              切换用户,加载配置文件.bashrc

su - user            切换用户,加载配置文件/etc/profile ,加载bash_profile

更改文件的用户及用户组

sudo chown [-R] owner[:group] {File|Directory}

例如:还以jdk-7u21-linux-i586.tar.gz为例。属于用户hadoop,组hadoop

要想切换此文件所属的用户及组。可以使用命令。

sudo chown root:root jdk-7u21-linux-i586.tar.gz

 

文件权限管理

三种基本权限

R           读         数值表示为4

W          写         数值表示为2

X           可执行  数值表示为1

如图所示,jdk-7u21-linux-i586.tar.gz文件的权限为-rw-rw-r--

-rw-rw-r--一共十个字符,分成四段。

第一个字符“-”表示普通文件;这个位置还可能会出现“l”链接;“d”表示目录

第二三四个字符“rw-”表示当前所属用户的权限。   所以用数值表示为4+2=6

第五六七个字符“rw-”表示当前所属组的权限。      所以用数值表示为4+2=6

第八九十个字符“r--”表示其他用户权限。              所以用数值表示为2

所以操作此文件的权限用数值表示为662 

更改权限

sudo chmod [u所属用户  g所属组  o其他用户  a所有用户]  [+增加权限  -减少权限]  [r  w  x]   目录名 

例如:有一个文件filename,权限为“-rw-r----x” ,将权限值改为"-rwxrw-r-x",用数值表示为765

sudo chmod u+x g+w o+r  filename

上面的例子可以用数值表示

sudo chmod 765 filename

 

References

1. Linux Directory Structure

2. Linux's directory structure

3. Linux目录结构

转自:http://www.cnblogs.com/Bob-FD/archive/2012/07/12/2588233.html

      http://www.daniubiji.cn/archives/25

posted @ 2017-11-14 09:35  龙岳麓  阅读(892)  评论(0编辑  收藏  举报