哪些是Linux?
维基百科上解释说:Linux是一种自由和开放源代码的类UNIX操作系统。只要遵守GNU通用公共许可证,任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地更改和再发布。大多数Linux系统还包括了像提供GUI界面的XWindow之类的程序。
Linux与UNIX的区别
Linux和UNIX的最大的区别是,后者是开发源代码的自由软件,而前者是对源代码推行知识产权保护的传统商业软件。Linux的思想始于UNIX。Linux核心是免费的,核心代码是开放的,UNIX的核心并不公开。
Linux与Windows比较
浅显的语言是,Linux比较开放,适宜程序员,由于你可以了解到Linux的每位细节。
哪些是Linux发布版?
严格来讲,术语Linux只表示操作系统内核本身,但一般采用Linux内核来抒发该意思。Linux则常拿来指基于Linux内核的完整操作系统,包括GUI组件和许多其他实用工具。有些组织、公司和个人将这种整合发布,比较著名的Linux发布版有Ubuntu、RedHat、CentOS、Suse等。
一个典型的Linux发布版包括:Linux内核,一些GNU库和工具,命令行shell,图形界面的X窗口系统和相应的桌面环境,如KDE或GNOME普通人linux系统,并包含数千种从办公包red hat linux下载,编译器,文本编辑器,小游戏,儿童教育软件,到科学工具的应用软件。
诸多的Linux发行版令人眼花缭乱,菜鸟推荐使用Ubuntu,好上手,稳定性比较好的发行版推荐Debian。
Linux分支图
Linux应用领域
总的来说Linux应用领域广泛,不适宜普通用户,由于Linux在桌面领域做的不好,更多的还是须要在终端下操作。不过近来几年有了改善,我觉得比Windows做的要漂亮,而且稳定性和易用性还是不如Windows,桌面环境似乎还是要不断改善的。Ubuntu下会有好多的比较炫的桌面特效。
Linux平台工作的是在高档服务器领域。因为Linux内核具有稳定性、开放源代码等特性,使用者毋须支付大笔的使用费用,例如Windows,所以Linux获得了好多世界知名服务器厂商的支持。在Linux发行套件的公司中,像Redhat公司以提供服务的形式收费,你可以选购她们提供的技术支持,或则免费使用CentOS操作系统。不过国外的操作系统环境你们都懂得。目前,常用的服务器操作系统有UNIX、Linux和Windows。按照调查普通人linux系统,Linux操作系统在服务器市场上的占有率已超过50%。
在嵌入式领域中,Linux内核可以依据具体应用场景进行订制和剪裁,还能为专用硬件提供驱动程序,并在此基础上进行开发。
Linux版本的选择
菜鸟最好从Ubuntu入手,也是多数用户的选择,界面做的很不错,软件种类丰富,安装也便捷。追求稳定的话建议用Debian,须要自己去配置调整系统设置,安装或更新自己须要的程序,对于基本的了解的Linux系统操作有很大帮助。也可以选择Fedora,是红帽企业Linux的个人桌面分支,其中有好多Linux最前沿的技术,和debian、Ubuntu不是一个分支。假如想要了解Linux系统细节,形成更深刻的理解可以选择ArchLinux,从零开始的工程,在安装的过程中须要静下心来去研究,通过配置系统设置,优化系统性能的配置,去更深的了解Linux系统。
如何学习Linux?
这个问题虽然不难回答,而且好多人没有坚持下去。首先你确认你真的很想学和有必要学Linux,这么好,假若之前没根本没有用过Linux,那你可以先在虚拟机中安装一个Linux发行版,这儿推荐Ubuntu,注意不要认为Ubuntu不纯正,从这儿入门没有错。之后找一本Linux的基础教程,像***从入门到精通、30天学会Linux系统......这一类的书籍,坚持看下去,不要间断,学了前面的忘了上面的也没有关系,只要达到遇见一个问题记得你以前学并且忘了这样的疗效就可以了,之后在化学机上装上你的Ubuntu,换一本书籍再去学习,这时要多实践,遇见问题不要想着重装系统,而是去想办法解决它,这样就能提升自己。另外记得做笔记,这个不多说,推荐为知笔记,由于有Linux、Windows和网页版本。记得多用,不要一天打鱼三天晒网。这种就够了,才能让你入门了,至于入门过后的结果看你有哪些需求了,基本上就是开发或则运维吧,不然我是不会想到用Linux的,对了,再有就是显摆,不过我认为这个真的没有哪些意义,变得你颜值很高吗,泡沫最终会破的。
Linux系统配置
yum和apt-get源:
yum是一个基于rpm包的软件安装管理器,一般用于redhat、fedora、centos、SUSE等发行版linux中。才能从指定的服务器手动下载rpm包而且安装,能够手动处理解决依赖关系。才能便捷的添加、删除、更新软件包,同时配置多个软件资源库,配置文件在/etc/yum.conf。
CentOS163软件源:
首先备份/etc/yum.repos.d/CentOS-Base.repo
mv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backup
下载对应版本repo文件,装入/etc/yum.repos.d/(操作前请做好相应备份)
CentOS5
CentOS6
运行
yumcleanall
yummakecache
生成缓存
apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于手动从互联网的软件库房中搜索、安装、升级、卸载软件或操作系统。是debian、Ubuntu发行版的包管理工具,与yum工具类似。
debian7163源
debwheezymainnon-freecontrib
debwheezy-proposed-updatesmaincontribnon-free
deb-srcwheezymainnon-freecontrib
deb-srcwheezy-proposed-updatesmaincontribnon-free
debwheezy/updatesmaincontribnon-free
deb-srcwheezy/updatesmaincontribnon-free
Kali交大软件源
vim/etc/apt/sources.list
下边的粘帖进去。
debkalimainnon-freecontrib
deb-srckalimainnon-freecontrib
debkali/updatesmaincontribnon-free
之后
apt-getupdate就可以了。
通过包管理器安装与源代码形式安装的区别
包管理器安装的话便捷、快捷,能很轻松就用上,源码的话须要自动编译,会碰到好多问题,例如包依赖问题。
包管理器安装的软件版本比较旧,编译参数不适宜自己的业务,而源码安装相对灵活,可以指定版本、模块、路径等。
假如是菜鸟还是推荐通过包管理器安装,能很快上手,只须要了解相关的管理命令就可以了。假如做开发的话入门学习也是合适的,假如开发相对中级的话可能就须要源代码形式安装了。
最终的目标还是要选择好的解决方案。
Linux常用命令
man:任何时侯你认为对一个命令行不是很确定,都可以通过输入“man+命令”来了解这个命令能准确是做哪些的。
ls:列举目录内容。
pwd:在终端中显示当前工作目录的全路径。
cd:要变更你当前所在的目录。
mkdir:创建一个新的目录。
cp:复制文件/重命名文件。
mv:联通文件。
find和locate:搜索文件。
kill:快速关掉一个进程。
passwd:修改密码。-9表示逼迫进程立刻停止
md5sum:估算和检验MD5信息签名
history:查询历史记录命令。
sudo:(superuserdo)命令准许授权用户执行超级用户或则其它用户的命令。
touch:创建一个新文件,或则将文件的访问和更改时间更新为当前时间。
chmod:更改文件的访问权限。
chown:改变文件拥有者和所在用户组。
apt:APT是一个为Debian系列系统(Ubuntu,Kubuntu等等)开发的中级包管理器,在Gnu/Linux系统上,它会为包手动智能地搜索、安装、升级以及解决依赖问题。
find:查找文件或文件夹命令:find/-namefilename
chkconfig:chkconfig--list|grepvsftpd显示默认在那个级别上启动
chkconfigvsftpdon
chkconfig--list|grepvsftpd
ps-aux|grepfiefox显示所有进程状态-ef查看进程信息
netstat-tp#查看网路联接命令
service--status-all#查看系统服务状态
目前就先总结那么多吧。
包依赖性问题
不论是Linux菜鸟还是老鸟,在安装和编译软件包的过程中或多或少的就会碰到包依赖性的问题。依赖性问题是因为程序依赖程序代码共享库,没有共享库,程序员每次开发新的程序,都要从头开始重画这种基本的系统操作。当编译程序时,程序员将他的代码链接到这种库。假如链接是静态的,编译后的共享库对象代码就添加到程序执行文件中;假如是动态的,编译后的共享库对象代码只在运行时须要它时由程序员加载。动态可执行文件依赖于正确的共享库或共享对象来进行操作。rpm依赖性尝试在安装时强制施行动态可执行文件的共享对象需求,便于在之后当程序运行时不会有与动态链接过程有关的任何问题。
也就是说在通过包管理器安装的过程中,会手动解决依赖性问题,安装程序的同时安装依赖程序。假如是源码安装就须要自己去解决依赖性问题。
Linux储存系统
在Linux中普通文件和目录文件保存在称为块化学设备的c盘或则磁带上。一套Linux系统支持若干化学盘,每位化学盘可定义一个或则多个文件系统。Linux的文件系统主要是ext4、ext3和Windows的fat32、ntfs是不一样的。
linux、unix这类操作系统将系统中的一切都作为文件来管理。在Windows中我们常见的硬件设备、磁盘分区等,在linux、unix中都被视作文件,对设备、分区的访问就是读写对应的文件。
挂载点实际上就是linux中的c盘文件系统的入口目录,类似于Windows中的拿来访问不同分区的C:、D:、E:等c盘。虽然winxp也支持将一个c盘分区挂在一个文件夹下边,只是我们C:、D:这样的c盘操作用惯了,通常没有将分区挂到文件夹。挂载点
在Windows操作系统中,是先将化学地址分开,再在分区上构建目录.在Windows操作系统中,所有路径都是从c盘开始,如C://programfile。
Linux刚好相反,是先有目录,再将化学地址映射到目录中。在Linux操作系统中,所有路径都是从根目录开始。Linux默认可分为3个分区马哥linux,分别是boot分区、swap分区和根分区。
未完待续欢迎点赞:目录