linux工做笔记

1. Linux基础 1.1. Unix 1965年,AT&T贝尔电话实验室、通用电气公司、麻省理工学院MAC课题组一块儿联合开发一个称为Multics的新操做系统。该项目目的是让大型主机能够同时提供300台以上的终端机链接使用。其被设计运行在GE-645大型主机上。 贝尔实验室认为该项目不可能成功以后,便退出了该项目,其中一位开发者──肯•汤普逊则继续为GE-645开发软件,并最终编写了一个太空旅行游戏“Space Travel”。发现游戏速度很慢并且耗费昂贵。正好有一部闲置的PDP-7。使用尼斯•里奇的帮助下,汤普逊用PDP-7的汇编语言重写了这个游戏,并使其在DEC PDP-7上运行起来。 汤普逊的File Server System。此次经历加上Multics项目的经验,促使汤普逊开始了一个DEC PDP-7上的新操做系统项目。汤普逊和里奇领导一组开发者,开发了一个新的多任务操做系统。在1970年时,那部PDP-7却只能支持两个使用者,当时,实验室的人就开玩笑地戏称他们的系统实际上是:“UNiplexed Information and Computing System”,缩写为“UNICS”。后来,你们取其谐音这个名字被改成UNIX。 最初的Unix是用汇编语言编写的,一些叫作B语言的解释型语言和汇编语言混合编写的。B语言在进行系统编程时不够强大,因此汤普逊和里奇对其进行了改造,并于1971年共同发明了C语言。1973年汤普逊和里奇用C语言重写了Unix。在当时,为了实现最高效率,系统程序都是由汇编语言编写,因此汤普逊和里奇此举是极具大胆创新和革命意义的。用C语言编写的Unix代码简洁紧凑、易移植、易读、易修改,为此后Unix的发展奠基了坚实基础。 注意:1979年贝尔实验室出于商业考虑,收回了版权而且规定“不可对学生提供源码”。 Ken Thompson肯·汤普逊 C语言之父Dennis Ritchie 丹尼斯·里奇 2000年12月时,汤普逊退休, 在2011年10月12日,他在长期患病后逝世, 离开贝尔实验室,成为了一名飞行员。 享年70岁。 1.2. MINIX 荷兰阿姆斯特丹的Vrije大学计算机科学系的Andrew S. Tanenbaum(谭宁帮)教授为了可以教导学生学习UNIX,本身动手写了一个Minix,是一个Mini的UNIX系统。MINIX是一个廉价的小型类Unix操做系统,是为在计算机科学用做教学而设计的,能够在80286的Intel芯片上运行。 安德鲁·斯图尔特·塔能鲍姆 Andrew S. Tanenbaum Linus Torvalds 林纳斯·托瓦兹 1.3. Torvalds的linux 1991年,芬兰人林纳斯•托瓦兹在赫尔辛基大学上学,对操做系统很好奇,而且对MINIX只容许在教育上使用很不满(其不容许任何商业使用),因而开始写他本身的操做系统,这就是后来的Linux内核。 1991年9月Linux的第一个版本0.0.1版本发布,Linux只具备操做系统内核的勉强的雏形,甚至不能运行,你必须在有Minix的机器上编译之后才能玩,时仅有10000行程序码,仍必须执行于Minix操做系统之上。10月份第二个版本(0.02版)发布了94年初,Linux 1.0诞生 。Linux 1.0已是一个功能完备的操做系统,并且内核写得紧凑高效,能够充分发挥硬件的性能,在4M内存的80386机器上也表现得很是好Linux的发展历程上还有一件重要的事 Linux加入GNU并遵循公共版权许可证 (GPL)。 Linux吉祥物 理查德•斯托曼 GNU计划形象照 1.4. GNU项目 目标在于创建一个彻底相容于UNIX的自由软件环境。发展GNU系统的计划,最先由理查德•斯托曼在1983 年启动,它是自由软件基金会最先致力的目标。最近一个GNU系统版本,是于2011年4月1日释出的GNU 0.401,采用GNU Hurd做为操做系统内核。其余的内核,最著名的是Linux kernel,也被应用在GNU系统中。GNU是“GNU's Not Unix”的递归缩写。这个项目的目的是建立一个自由的开放的操做系统。 Linux 1.4.1. GPL GNU的通用公共许可证GPL为了不GNU开发的软件被其余人利用成为专利软件,推出了通用公共许可证GPL(General Public License)并称之为Copyleft(专利软件是Copyright)就是用户得到GNU 软件后能够自由使用和修改,可是用户在散布GNU软件时,必须让下一个用户有得到源代 码的权利而且必须告知他这一点。这一条看似古怪的规定是为了防止有些别有用心的人或 公司将GNU软件稍加修改就去申请版权,说成是本身的产品。其目的就是要让GNU永远 是免费和公开的。 http://www.gnu.org/ 1.5. Linux Linux是一种自由和开放源码的类UNIX操做系统,使用Linux内核。目前存在着许多不一样的Linux发行版,可安装在各类各样的电脑硬件设备,从手机、平板电脑、路由器和影音游戏控制台,到桌上型电脑,大型电脑和超级电脑。 Linux是一个领先的操做系统,世界上运算最快的10台超级电脑运行的都是Linux操做系统。 Linux操做系统也是自由软件和开放源代码发展中最著名的例子。只要遵循GNU通用公共许可证,任何人和机构均可以自由地使用Linux的全部底层源代码,也能够自由地修改和再发布。严格来说,Linux这个词自己只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,而且使用GNU 工程各类工具和数据库的操做系统(也被称为GNU/ Linux)。一般状况下,Linux被打包成供桌上型电脑和服务器使用的Linux发行版本。一些流行的主流Linux发行版本,包括Debian(及其衍生版本Ubuntu),Fedora和openSUSE等。Kernel+Softwares+Tools 就是linux distribution 著名linux 发行版 Red Hat、Fedora Mandriva Novell SuSE Debian Slackware Gentoo Ubuntu CentOS 1.5.1. Linux特色 开放性,多用户,多任务,丰富的网络功能,可靠的系统安全,良好的可移植性,具备标准兼容性,良好的用户界面(命令界面,图形界面等),出色的速度性能。 1.5.2. Linux的组成 一、内核:是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。 二、Shell:是系统的用户界面,提供了用户和内核进行交互操做的一种接口。它接收用户输入的命令并把它送入内核去执行,是一个命令解释器。但它不只是命令解释器,并且仍是高级编程语言,shell编程。 三、文件系统:文件系统是文件存放在磁盘等存储设备上的组织方法,Linux支持多种文件系统,如ext3,ext2,NFS,SMB,iso9660等。 四、应用程序:标准的Linux操做系统都会有一套应用程序例如X-Window,Open Office等。 1.5.3. Linux版本 一、内核:Linux内核Kernel目前最新稳定版 3.4 http://www.kernel.org/ 二、发行版本:是一些厂商将Linux系统内核与应用软件和文档包装起来,并提供一些安装界面和系统设定管理工具的一个软件包的集合,例如RedHat Linux,Debian,Ubuntu, Novell/SuSE Linux等。 三、ubuntu Ubuntu版本号由该次发布的年份和月份组成,并未反映其实际版本.首次发行 是在2004年10月,所以该版本为4.10。于2009年4月23日发布,所以版本号为9.04。 最新的版本为Ubuntu 12.04。 1.5.4. Linux发展与将来 如今有不少公司都在使用Linux操做系统,Linux操做系统从桌面到服务器,从操做系统到嵌入式系统,从零散的应用到整个产业都初见雏形 。Linux服务器操做系统在整个服务器操做系统市场格局中占据了愈来愈多的市场份额,而且造成了大规模的应用局面。 1.5.5. android Android是一种以Linux为基础的开放源代码操做系统 2. Ubuntu的安装 2.1. vaware 虚拟机 (Virtual Machine)指经过软件模拟的具备完整硬件系统功能的、运行在一个彻底隔离环境中的完整计算机系统。先安装vmware虚拟机。 2.2. vmware虚拟机中安装ubuntu。 参看Ubuntu安装过程.doc 3. linux目录结构 3.1. linux 基本目录结构 bin 存放二进制可执行文件(ls,cat,mkdir等) boot 存放用于系统引导时使用的各类文件 dev 用于存放设备文件 etc 存放系统配置文件 home 存放全部用户文件的根目录 lib 存放跟文件系统中的程序运行所须要的共享库及内核模块 mnt 系统管理员安装临时文件系统的安装点 opt 额外安装的可选应用程序包所放置的位置 proc 虚拟文件系统,存放当前内存的映射 root 超级用户目录 sbin 存放二进制可执行文件,只有root才能访问 tmp 用于存放各类临时文件 usr 用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录 var 用于存放运行时须要改变数据的文件 4. linux经常使用指令介绍 4.1. 文件目录操做命令 ls 显示文件和目录列表   -l 列出文件的详细信息 -a 列出当前目录全部文件,包含隐藏文件 mkdir 建立目录   -p 父目录不存在状况下先生成父目录 cd 切换目录 touch 生成一个空文件 echo 生成一个带内容文件 echo abcd>a.txt cat、tac 显示文本文件内容 cp 复制文件或目录 rm 删除文件 -r 同时删除该目录下的全部文件 -f 强制删除文件或目录 删除文件夹 rmdir 文件夹不能为空 删除文件夹 rm -rf 目录名字-r 就是向下递归,无论有多少级目录,一并删除-f 就是直接强行删除,不做任何提示的意思 mv 移动文件或目录、文件 mv aaa bbb 将aaa更名为bbb find 在文件系统中查找指定的文件 -name 文件名 wc 统计文本文档的行数,字数,字符数 grep 在指定的文本文件中查找指定的字符串 rmdir 删除空目录 tree 显示目录目录更名树 pwd 显示当前工做目录 ln 创建连接文件 more、less 分页显示文本文件内容 head,tail分别显示文件开头和结尾内容 4.1.1. Linux 通道 简单地说,一个通道接受一个工具软件的输出,而后把那个输出输入到其它工具软件。使用UNIX/Linux的词汇,这个通道接受了一个过程的标准输出,并把这个标准的输出做为另外一个过程的标准输入。若是你没有从新定向这个输出,这个输出就在屏幕上显示出来。使用一个通道,你能够从新定向这个输出,这样它就变成了另外一个工具软件的标准的输入。 例如:grep best /home/* | more grep 命令在指定文件查找指定字符串 在home目录全部文件下查找best字符 此时的结果可能特别多,要分页。那么使用more能够分页查看 4.2. 系统管理命令 stat 显示指定文件的相关信息,比ls命令显示内容更多 who 显示在线登陆用户 hostname 显示主机名称 uname显示系统信息 d top 显示当前系统中耗费资源最多的进程 ps 显示瞬间的进程状态 du 显示指定的文件(目录)已使用的磁盘空间的总量 df 显示文件系统磁盘空间的使用状况 free 显示当前内存和交换空间的使用状况 ifconfig 显示网络接口信息 ping 测试网络的连通性 netstat 显示网络状态信息 man 命令帮助信息查询 clear 清屏 kill 杀死一个进程 4.3. 关机/重启命令 shutdown系统关机 shutdown 命令能够安全的关闭Linux系统,shutdown命令必须有超级用户才能执行。Shutdown命令执行后会以广播的形式通知正在系统中工做的全部用户, - r 关机后重启 - h 关机后不从新启动 - now 当即关机 - 12:30 指定关机时间 halt 关机后关闭电源 reboot 从新启动 4.4. 备份压缩命令 gzip 压缩(解压)文件或目录,压缩文件后缀为gz bzip2 压缩(解压)文件或目录,压缩文件后缀为bz2 tar 文件、目录打(解)包 4.4.1. gzip命令 命令格式: gzip [选项] 压缩(解压缩)的文件名 参数: -d 将压缩文件解压。 -l 对每一个压缩文件,显示压缩文件的大小,未压缩文件的大小,压缩比,未压缩文件的名字 -v 对每个压缩和解压的文件,显示文件名和压缩比。 -num 用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6 4.4.2. bzip2命令 命令格式: bzip2 [-cdz] 档名 参数: -d :解压缩的参数 -z :压缩的参数 -num 用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6 4.4.3. tar命令 命令格式: tar [-cxzjvf] 压缩打包文档的名称 欲打包目录 参数: -c :创建一个归档文件的参数指令 -x :解开一个归档文件的参数指令! -z :是否须要用 gzip 压缩? -j :是否须要用 bzip2 压缩? -v :压缩的过程当中显示文件 -f :使用档名,在 f 以后要当即接档名 -tf :查看归档文件里面的文件 tar -xvzf linux-software-1.3.1.tar.gz 5. dpkg软件包管理工具 Ubuntu是由Debian发展而来的,因此也采用了Debin的软件包管理机制。 5.1. dpkg软件包管理 要想驾轻就熟管理Ubuntu软件包,就必须熟悉其中最重要的软件包管理程序dpkg工具是Ubuntu软件包管理工具的基础。使用dpkg工具能够实现软件包的安装、卸载、查询、编译、打包等功能。 dpkg(Debian Package)管理工具 ,Ubuntu 相关的软件包文件使用 .deb 后缀,就是由于Ubuntu 与 Debian GNU/Linux 发行版有着紧密的关系。要安装 .deb 文件 能够打开一个终端并输入: sudo dpkg -i package_file.deb 来安装 .deb 文件。 如需卸载 .deb 文件输入: sudo dpkg -r package_name dpkg命令参数 -i 安装软件包。 -r 卸载软件包,可是不删除软件包的配置文件。 -P 彻底删除软件包,包括相关配置文件。 -l 查看当前系统中已安装软件包信息。 -L 查看当前系统中指定软件包的所安装的相关文件。 -s 查询已安装指定软件包的相关信息。 -S 查询系统中摸个文件所属的软件包。 案例 查看软件包所包含的内容 sudo dpkg -c tree_1.5.3-1_i386.deb 查看软件包详细信息 dpkg -I tree_1.5.3-1_i386.deb 安装软件包 sudo dpkg -i tree_1.5.3-1_i386.deb 删除软件包 sudo dpkg -r tree 6. APT软件包管理 APT (Advanced Packaging Tool高级软件包工具) 是一个强大的包管理系统,而那些图形化程序如 添加/删除 应用程序 都是创建 在它的基础之上的。有了dpkg后,Debian再次开发了apt,它能自动处理依赖文件并维护已有的配置文件,快速,实用,高效 6.1. APT 使用的一些经常使用命令 安装软件包: sudo apt-get install packagename 删除软件包: sudo apt-get remove packagename 获取新的软件包列表: sudo apt-get update 升级有可用更新的系统: sudo apt-get upgrade 列出更多命令和选项: apt-get help 经过apt能够直接经过网络安装。 经常使用的APT命令参数 apt-cache search package 搜索包 apt-cache show package 获取包的相关信息,如说明、大小、版本等 sudo apt-get install package 安装包 例如: sudo apt-get install eclipse sudo apt-get install sun-java6-jdk 下载安装程序到你的/var/cache/apt文件夹里面而后进行安装。 sudo apt-get install package - - reinstall 从新安装包 sudo apt-get -f install 修复安装"-f = ――fix-missing" sudo apt-get remove package 删除包 sudo apt-get remove package - - purge 删除包,包括删除配置文件等 sudo apt-get update 更新源 sudo apt-get upgrade 更新已安装的包 sudo apt-get dist-upgrade 升级系统 sudo apt-get dselect-upgrade 使用 dselect 升级 apt-cache depends package 了解使用依赖 apt-cache rdepends package 是查看该包被哪些包依赖 sudo apt-get build-dep package 安装相关的编译环境 apt-get source package 下载该包的源代码 sudo apt-get clean && sudo apt-get autoclean 清理无用的包 sudo apt-get check 检查是否有损坏的依赖 /var/cache/apt/archives. 7. VIM编辑器的使用 VIM的运行模式 编辑模式:等待编辑命令输入 插入模式:编辑模式下,输入 i 进入插入模式,插入文本信息 命令模式:在编辑模式下,输入 “:” 进行命令模式 7.1. VIM 使用的命令 :q 直接退出vi :wq 保存后退出vi ,并能够新建文件 :q! 强制退出 :w file 将当前内容保存成某个文件 :set number 在编辑文件显示行号 :set nonumber 在编辑文件不显示行号 8. 用户和组帐户管理 linux操做系统是一个多用户操做系统,它容许多用户同时登陆到系统上并使用资源。系统会根据帐户来区分每一个用户的文件,进程,任务和工做环境,使得每一个用户工做都不受干扰。 8.1. 用户帐户 A.普通用户帐户:普通用户在系统上的任务是进行普通操做 B.超级用户帐户:管理员在系统上的任务是对普通用户和整个系统进行管理。对系统具备绝对的控制权,可以对系统进行一切操做。 一、超级管理员 用root表示,root用户在系统中拥有最高权限,默认下Ubuntu用户的root用户是不能登陆的若是想要root登陆,能够执行sudo passwd root 二、安装时建立的系统用户 此用户建立时被添加到admin组中,在Ubuntu中,admin组中的用户默认是可使用sudo命令来执行只有管理员才能执行的命令的。若是不使用sudo就是一个普通用户。 三、普通用户 8.2. 组帐户 A. 私有组:当建立一个用户时没有指定属于哪一个组,Linux就会创建一个与用户同名的私有组,此私有组只含有该用户。 B.标准组:当建立一个用户时能够选定一个标准组,若是一个用户同时属于多个组时,登陆后所属的组为主组,其余的为附加组。 8.3. 帐户系统文件 A./etc/passwd 每一行表明一个帐号,众多帐号是系统正常运行所必须的,例如bin,nobody 每行定义一个用户帐户,此文件对全部用户可读。每行帐户包含以下信息: 用户名:口令:用户标示号(UID):组标示号(GID):注释:宿主目录(主 文件夹):命令解释器(shell) root:x:0:0:root:/root:/bin/bash 一、 用户名: 就是帐号。用来对应UID。root UID是0口令。 二、 口令: 密码,早期UNIX系统密码存在此字段,因为此文件全部用户均可以读取,密码容易泄露,后来这个字段数据就存放到/etc/shadow中,这里只能看到X。 三、 用户标识号(UID): 系统内惟一,root用户的UID为0,普通用户从1000开始,1-999是系统的标准帐户,500-65536是可登录帐号。 四、 组标识号(GID): 与 /etc/group 相关用来规定组名和GID相对应。 五、注释: 注释帐号 六、宿主目录: 用户登陆系统后所进入的目录root 在/root itcast在:/home/itcast 七、命令解释器: 指定该用户使用的shell ,默认的是/bin/bash B./etc/shadow 为了增长系统的安全性,用户口令一般用shadow passwords保护。只有root可读。每行包含以下信息: 用户名:口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志 root:$6$E3SMKoCF$U.A3zuKnBTCzZS5i.ZzHfzq2R5mk6m0iKtWr0B8QdA1VphZcQPaSqKKQWDA.mkptemLBIKPAw/.kik2287ZiM1:15504:0:99999:7::: itcast:$1$ktRolYMY$Fb0kTjAcNUEceLWMzbj2M/:15470:0:99999:7::: 一、帐号名称: 须要和/ etc/passwd 一致。 二、密码: 通过加密,虽然加密,但不表示不会被破解该文件默认权限以下 -rw-r----- 1 root shadow 1196 2012-06-13 05:40 shadow 只有root能都读写。 三、最近修改密码日期: 最后一次修改时间:从1970-1-1起,到用户最后一次更改口令的天数 四、密码最小时间间隔: 最小时间间隔:从1970-1-1起,到用户能够更改口令的天数 五、密码最大时间间隔: 最大时间间隔:从1970-1-1起,必须更改的口令天数 六、密码到期警告时间: 警告时间:在口令过时以前几天通知 七、密码到期后帐号宽限时间 八、密码到期禁用帐户时间: 不活动时间:在用户口令过时后到禁用帐户的天数 九、保留 C./etc/group 用户组的配置文件 root:x:0: 一、 用户组名称 二、 用户组密码 给用户组管理员使用一般不用。 三、 GID 用户组的ID 四、 此用户支持的帐号名称 一个帐号能够加入多个用户组,例如想要itcast 加入root 这个用户组,将该帐号填入该字段便可,root:x:0:root,icast 将用户进行分组是 Linux对用户进行管理及控制访问权限的一种手段。一个 中能够有多个用户,一个用户能够同时属于多个组。该文件对全部用户可读。 D./etc/gshadow 该文件用户定义用户组口令,组管理员等信息只有root用户可读。 root:::root 一、 用户组名 二、 密码列 三、 用户组管理员的帐号 四、 用户组所属帐号 8.4. 使用命令行工具管理帐户 useradd 用户名 useradd –u(UID号) useradd –p(口令) useradd –g(分组) useradd –s(SHELL) useradd –d(用户目录) 使用usermod修改用户信息 usermod –u(新UID) usermod –d(用户目录) usermod –g(组名) usermod –s(SHELL) usermod –p(新口令) usermod –l(新登陆名) usermod –L (锁定用户帐号密码) usermod –U (解锁用户帐号) userdel 用户名 (删除用户帐号) userdel –r 删除帐号时同时删除目录 sudo usermod –u 1007 –g group2 –G root thinkpad 将thinkpad用户uid修改成1007,默认组改成系统中已经存在的group2,而且加入到系统管理员(GID 0)组。 组帐户维护命令 groupadd 组帐户名 (建立新组) groupadd –g 指定组GID groupmod –g 更改组的GID groupmod –n 更改组帐户名 groupdel 组帐户名 (删除指定组帐户) 口令维护命令 passwd 用户帐户名 (设置用户口令) passwd –l 用户帐户名 (锁定用户帐户) passwd –u 用户帐户名 (解锁用户帐户) passwd –d 用户帐户名 (删除帐户口令) gpasswd –a 用户帐户名 组帐户名 (将指定用户添加到指定组) gpasswd –d 用户帐户名 组帐户名 (将用户从指定组中删除) gpasswd –A 用户帐户名 组帐户名 (将用户指定为组的管理员) 8.5. 用户和组状态命令 su 用户名 切换用户帐户 su root su – root su 须要了解新切换的用户密码。 id 用户名 显示用户的UID,GID whoami 显示当前用户名称 groups 显示用户所属组 sudo cat /etc/sudoers sudo只须要知道本身的密码,sudo并非每个用户均可以执行仅有/ect/sudoers内的用户才可以执行sudo命令。 sudo是容许系统管理员让普通用户执行一些或者所有的root命令的一个工具,如halt,reboot,su等等。这样不只减小了root用户的登录和管理时间,一样也提升了安全性。sudo不是对shell的一个代替,它是面向每一个命令的。它的特性主要有这样几点: sudo可以限制用户只在某台主机上运行某些命令。 sudo提供了丰富的日志,详细地记录了每一个用户干了什么。它可以将日志传到中心主机或者日志服务器。 sudo使用时间戳文件来执行相似的“检票”系统。当用户调用sudo而且输入它的密码时,用户得到了一张存活期为5分钟的票(这个值能够在编译的时候改变)。 sudo的配置文件是sudoers文件,它容许系统管理员集中的管理用户的使用权限和使用的主机。它所存放的位置默认是在/etc/sudoers,属性必须为0411。 使用root 经过visudo 编辑sudoers 案例: 新增用户: 8.5. 文件权限管理 文件权限是指对文件的访问权限,包括多文件的读、写、删除和执行。在linux下每一个用户都有不一样的权限,普通用户只能在本身的主目录下进行写操做,在主目录以外,普通用户只能进行查找,读取操做。 三种基本权限 R 读权限 W 写权限 X 执行权限 8.1. 查看文件和目录的权限 ls –al 使用ls不带参数只显示文件名称,经过ls –al能够显示文件或者目录的权限信息。 ls –l 文件名 显示信息包含:文件类型(d 目录,- 普通文件,l 连接文件),文件权限,文件的属主,文件的所属组,文件的大小,文件的建立时间,文件的名称 -rw-r--r-- 1 itcast users 2254 2006-05-20 13:47 tt.htm 从第二个字符起rw-是说用户itcast有读、写权,没有运行权,接着的r--表示用户组users只有读权限,没有运行权,最后的r--指其余人(others)只有读权限,没有写权和运行权。 drwxr-xr-x 2 itcast itcast 4096 2014-06-12 01:10 software drwxr-xr-x 2 itcast itcast 4096 2014-06-12 01:10 software 文档类型及权限 链接数 文档所属用户和用户组 文档大小 文档最后被修改日期 文档名称 一、第一列 第一列显示文档类型与执行权限,分为4部分 每一个所表明的含义 d rwx r-x r—x 文档类型 文档全部者权限(user) 文档所属用户组权限(group) 其余用户权限(other) (1)文档类型: d 表示目录 ,l 表示软链接 – 表示文件,c表示串行端口字符设备文件,b表示可供存储的块设备文件。余下的字符3个字符为一组。r 只读,w 可写,x可执行,- 表示无此权限为空。 (2)User 文档全部者user权限的设定, rwx表示用户对sofeware 目录有读写执行的权限。 (3)Goup 文档所属组权限的设定,r-x 表示用户组对software有读和运行的权限可是没有写的权限。 (4)Other 文档拥有者以外的其余用户权限的设定,r-x表示其余用户或者用户组对software只有读和运行的权限,没有写的权限。 文档的操做权限是能够指定和更改的,经过chmod命令。 二、文档链接数 第二列显示的是文档链接数,是指硬连接,多少个文件指向同一个索引节点。 三、第3列显示文档所属的用户和组,就是文档属于哪一个用户和用户组。文件所属用户和组是能够更改的,经过chown 四、第4列显示的是文档的大小,默认是bytes 5.第5列显示文档最后一次修改日期,一般以月日年时分方式显示 六、显示文档名称,Linux下以 .开头的文件时隐藏文件,一样以 . 开头的目录是隐藏目录。必须以ls –a才能显示。 8.2. 更改操做权限 一、chown 改变用户和组 chown 是change owner的意思,主要做用就是改变文件或者目录全部者,全部者包含用户和用户组 chown [ -R] 用户名称 文件或者目录 chown [-R] 用户名称:用户组名称 文件或目录 -R :进行递归式的权限更改,将目录下的全部文件、子目录更新为指定用户组权限。 注意:执行操做确保指定的用户及用户组在系统中是存在的。 二、chmod 改变访问权限 chmod字符设置法 chmod [who] [+ | - | =] [mode] 文件名 (1)who : 表示操做对象能够是如下字母的一个或者组合 u 表示 用户 user ,g表示用户组group,o表示其余用户,a表示全部用户是系统默认的。 (2)操做符号: + 表示添加某个权限 - 表示取消某个权限 = 赋予给定的权限,取消文档之前的全部权限。 (3)mode 表示可执行的权限,能够是 r、w、x 4)文件名 文件名可使空格分开的文件列表。 chmod 【u 属主 g 所属组用户 o 其余用户 a 全部用户】 【+ 加权限 – 减权限 =加权限同时将原有权限删除】 【rwx】 文件或目录名 -R 下面的子目录作相同权限操做 itcast@ubuntu://home/itcast$ ls -al itcast -rw-r--r-- 1 itcast itcast 16 2012-06-13 01:44 itcast itcast@ubuntu://home/itcast$ chmod u=rwx,g+r,o+r itcast itcast@ubuntu://home/itcast$ ls -al itcast -rwxr--r-- 1 itcast itcast 16 2012-06-13 01:44 itcast itcast@ubuntu://home/itcast$ su thinkpad Password: $ ls abc Downloads itcast Public Test.class workspace Desktop examples.desktop Music software Test.java Documents home Pictures Templates Videos $ cat itcast this is testing $ rm itcast rm: remove write-protected regular file `itcast'? y rm: cannot remove `itcast': Permission denied chmod 数字设定法 数字设定法中数字表示的含义,0表示没有任何权限,1表示有可执行=x,2表示有可执行权限=w,4表示有可读权限=r。 也能够用数字来表示权限如 chmod 755 file_name r w x r – x r - x 4 2 1 4 - 1 4 - 1 user group others chmod 755 file_name r 4 w 2 x 1 若要rwx属性则4+2+1=7; 若要rw-属性则4+2=6; 若要r-x属性则4+1=5; itcast@ubuntu://home/itcast$ echo "this is test">itcast.txt itcast@ubuntu://home/itcast$ ls abc Downloads itcast.txt Public Test.class workspace Desktop examples.desktop Music software Test.java Documents home Pictures Templates Videos itcast@ubuntu://home/itcast$ cat itcast.txt this is test itcast@ubuntu://home/itcast$ ls -al itcast.txt -rw-r--r-- 1 itcast itcast 13 2012-06-13 02:05 itcast.txt itcast@ubuntu://home/itcast$ chmod 700 itcast.txt itcast@ubuntu://home/itcast$ ls -al itcast.txt -rwx------ 1 itcast itcast 13 2012-06-13 02:05 itcast.txt itcast@ubuntu://home/itcast$ su thinkpad Password: $ ls abc Downloads itcast.txt Public Test.class workspace Desktop examples.desktop Music software Test.java Documents home Pictures Templates Videos $ cat itcast.txt cat: itcast.txt: Permission denied 9.5. jdk+tomcat+eclipse安装 10.5. 远程管理控制ssh 传统的网络服务程序,FTP、POP、telnet 本质上都是不安全的,由于它们在网络上经过明文传送口令和数据,这些数据很是容易被截获。SSH叫作Secure Shell。经过SSH,能够把传输数据进行加密,预防攻击,传输的数据进行了压缩,能够加快传输速度。 10.1. OpenSSH简介 SSH是芬兰一家公司开发。可是受到版权和加密算法限制,如今不少人都使用OpenSSH。OpenSSH是SSH的替代软件,免费。 OpenSSH由客户端和服务端组成。 OpenSSH提供两种级别的验证方式。 (1)基于口令的安全验证:知道服务器的账号密码便可远程登陆,口令和数据在传输过程当中都会被加密。 (2)基于密钥的安全验证:此时须要在建立一对密钥,把公有密钥放到远程服务器上本身的宿主目录中,而私有密钥则由本身保存。 2.软件安装 sudo apt-cache policy openssh-client openssh-server检查软件是否安装 服务端:sudo apt-get install openssh-server 客户端:sudo apt-get install openssh-client(ubuntu10.10以安装) OpenSSH服务器的主要配置文件为/etc/ssh/sshd_config,几乎全部的配置信息都在此文件中。 注意:遇到以下以下错误: Package vim is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source 执行:sudo apt-get update 而后继续 sudo apt-get install openssh-server 10.2. Windows 下的SSH客户端 在平常Linux系统管理中,会使用SSH工具链接服务器,之因此SSH链接主要是为了安全,传统的telnet链接方式是以明文传输,很不安全,网络中若是又热窃听抓包,密码将要泄露。在众多SSH链接中,Putty功能强大,配置简单。 Putty正常显示中文,使用putty链接服务器没法显示中文,也不能输入中文字符,显示乱码。此时须要设置环境变量 export LC_ALL=itcast_CN.UTF-8。将当前所有字符集设置为中文,修改putty显示设置 Change Setting – Translation UTF-8 使用WinSCP Putty作远程管理,上传下载,可使用WinSCP比较方便。 打开WinSCP程序,直接输入地址、用户名、密码就能够登陆Linux系统, 最后: 关于su命令:刚装完linux要用到超级用户模式的时候出现这个错误。 su: Authentication failure $ su - root Password: su: Authentication failure Sorry. 这时候输入 $ sudo passwd root Enter new UNIX password: Retype new UNIX password: passwd: password updated successfullyjava

相关文章
相关标签/搜索