Excellent knowledge in UNIX and relational database systems
-----------Linux-----------
学习笔记:转自:http://wenku.baidu.com/view/f8c379cb050876323112127c.html
第一天
一、开山
1、Linux操作系统是开源而且免费的用于开发的操作系统。
稳定性、安全性、处理多并发
2、软件公司迫切需要熟练掌握linux的程序员。
工作方向:
Ø Linux系统管理员
Ø Linux软件程序员:工程师(PC)和linux嵌入式开发(单片机,芯片)
3、学习流程
第一阶段:vi,gcc,gdb,make,jdk,tomcat,myaql等linux基本操作
第二阶段:加厚C语言功底
第三阶段:学习unix环境高级编程《unix环境高级编程》
第四阶段:linux应用系统开发/嵌入式开发
4、推荐书籍:
Linux操作命令的查询
5、内容介绍
Ø 基础部分:基础知识,常用命令,linux分区
Ø 实用部分:Samba安装与配置,linux网络环境配置,crontab使用,Shell初步介绍
书籍:《鸟哥的Linux私房菜》、《Linux编程从入门到精通》、《linux内核完全剖析》
二、基础介绍
Linux初步介绍
1、吉祥物:
创始人来自芬兰
2、linux特点
免费的/开源
支持多线程./多用户的
安全性好
对内存和文件管理优越
缺点:
操作相对简单
Linux最小只需要4M内存——>嵌入式开发
3、支持linux的公司:IBM、Oracle、Sun、NEC
4、linux历史:
火星计划:Ken tompson(C语言设计者)
+Denis完成Unix:开源、源码内核共享
Unix:aix(IBM),solaris(SUN),hp unix(HP),bsd(伯克利分校)
Minix——》linux(Linus 芬兰读书)
5、第一次接触
虚拟机vm
Startx 进入图形界面
Shutdown -h now 立即关机命令
Shutdown -r now 现在重启计算机 =reboot
Reboot 现在重启计算机
尽量少使用管理员用户root账号登陆,先利用普通用户登陆,登陆后再用su -命令切换成管理员身份
Logout 注销
6、Vi编辑器的使用
开发java文件步骤: 1、vi hello.java
2、i 【进入插入模式】
3、输入esc键【进入命令模式】
4、输入一个“:”+" wq/q!"【wq表示退出保持 q!退出不保存】
5、Ls【显示文件保存情况】 Ls -l【显示保存更明确】
6、编译Javac hello.java
7、运行 java hello
开发C程序步骤:
1、编译 gcc hello.c 或者gcc -o my1 hello.c
2、运行 ./a.out 或者./my1
三、Linux文件目录
目录:root , home, bin, sbin, mnt, etc, var
root:存放root用户的相关文件
home:存放普通用户的相关文件
bin:存放常用命令----------cd:切换
sbin:存放要具有一定权限才可以使用的命令
mnt:默认挂载光驱和软驱的目录
boot:存放引导相关的文件(误删!)
etc:存放配置相关的文件
var:存放经常变化的文件
usr :软件默认安装文件夹
显示当前在哪个路径下:pwd
显示内容:Dir 、ls
添加用户:useradd xiaoming(只有root用户能添加新用户)
给新用户设密码:Passwd xiaoming
删除用户:userdel xiaoming
删除用户及用户主目录:userdel -r xiaoming
四、常用命令(1)
1、命令init【0123456】
运行级别 0:关机
1:单用户
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用,保留给用户
5: 图形界面
6:系统重启
2、运行级别设置:/etc/inittab的id:5initdefault
vi /etc/inittab 修改id
(配置也只能在root用户下修改)
3、修改错误配置的方法:
进入grub引导界面时,请输入e
在选中第二行,输入e
最后一行输入 1【单用户界面】
按b进入单用户模式,从而改过配置
此方法可以找回密码
五、常用命令(2)
1、Ls -al 既显示隐藏文件有显示长列表格式
2、Mkdir-----------make
Rmdir ---------remove
3、Tab键能够补全名称
4、More 可以分页显示,按空格键翻页
5、管道命令 | :
把上一个命令的结果交给| 的后面的命令处理
ls -l /etc/ | more 分页显示etc中的内容
6、grep“要查找的内容”文件名
例:grep "shunping" aaa.java (查找aaa.java中是否有shunping字符串)
grep -n"shunping" aaa.java (显示在哪一行查找到)
7、Men ***;帮助命令
Find 查找文件
Find / -name aaa.java
Find /root -name aaa.java
grep -n"shunping" aaa.java > kkk.bak
把前面的结果写入后面的文件中。
六、文件
1、文件所有者:文件创建者
2、文件所在组:当一个用户创建一个文件,这个文件的所在组就是该用户所在的组
3、其他组:
改变用户所在组:
4、在linux中添加组:groupadd police
5、查看linux中所有组的信息:vi /etc/group
Cat /etc/group 【cat命令只能查看不能编辑】
police : x:503 【503是组号】
6、创建用户,并同时指定该用户分配到哪个组: useradd -g组名用户名
7、查看linux中所有用户:vi /etc/passwd 或者cat /etc/passwd
用户名:密码:用户ID:所在组ID:注释:用户主目录:该用户使用的SHELL解析器
8、SHELL解析器功能
9、分配密码:passwd panpan
10、用户文件解释:
1表示along是一个文件,如果是文件夹的话,就显示该文件夹下面有多少个文件
-rw-r--r--
- 文件类型 -表示普通文件
rw- 文件的所有者对该文件的权限
R可用4表示;w可用2表示;x可用1表示
r--表示文件所在组对该文件的权限
r-- 表示其他组的用户对该文件的权限
11、修改文件夹权限命令:chmod 777 along
注:只能在along或root用户下修改权限命令
777表示:对所有者权限修改,对所有者所在组进行修改,对其他用户访问权限修改
12、修改对文件的权限:chmod 664 mytest1.java
13、把用户移植到另外一个组中:usermod-g police ashuai(即:把ashuai从tufei组转移到police组)
可以通过查看 cat /etc/passwd 来确定ashuai是否移植成功
注:在root用户下移植
14、修改文件所有者:chown
15、修改文件所在组:chgrp