Linux 1
来源:互联网 发布:java ssh 编辑:程序博客网 时间:2024/06/01 09:25
1 Linux相关介绍
1.1 Linux简介
Linux是一个开源、免费的操作系统,其稳定性、安全性、处理多并发已经得到业界的认可,目前很多中大型,甚至巨型项目都在使用linux。很多软件公司考虑到开发成本,都选用linux,在中国软件公司得到广泛的使用。
linux运行内存最小需要4MB。---->嵌入式开发
缺点:操作相对困难
linux和unix的区别:http://blog.csdn.net/xiaojianpitt/article/details/6377419
1.2 Linux学习流程
第一阶段:linux平台上的开发,包括vi,gcc,gdb,make,jdk,Tomcat,mysql。。。和Linux基本操作
第二阶段:加厚c语言功底《c专家编程》或是java语言
第三阶段:学习unix环境高级编程《unix环境高级编程》
第四阶段:linux应用系统开发/Linux嵌入式开发
1.3 相关阶段
2 命令初探
2.1 关机命令
shutdown -h now立刻进行关机shutdown -r now现在重新启动计算机reboot现在重新启动计算机注销命令:logout
2.1.1 进入--->退出图形用户界面
在命令行进入后,使用startx命令,可以进入图形用户界面;注销即可退出图形用户界面。
2.2 使用vi/vim编辑器,开发一个简单的java程序hello.java,并在linux下运行成功
【cat hello.java】(cat命令只能查看,不能修改)
开发步骤:
①vim hello.java
②按i【进入编辑模式】
③按Esc【退出编辑模式,进入命令模式】
④输入:wq【表示退出保存】 或 :q!【表示退出不保存】
⑤编译hello.java
javac hello.java
⑥运行
java hello
2.2.1 编译运行cpp文件
② 如果编译cpp文件,用g++ hello.cpp, 运行直接./a.out
或使用 g++ -o myobj.o hello.cpp 会生成 myobj.o文件,运行 ./myobj.o即可
2.2.2 vim编辑器常用命令
2.2.3 显示当前文件夹下的所有文件
ls 或 ls -l 【格式化显示】
2.3.4 显示当前在哪个目录下
pwd
3 linux文件系统、文件目录介绍
3.1 root下各文件夹功能
3.1.0 系统安装时,分区的必要性
3.1.1 /root---存放root用户的相关文件
这是系统管理员(root user)的目录。对于系统来说,系统管理员就好比是上帝,它能对系统做任何事情,甚至包括删除你的文件。因此,请小心使用root帐号。
3.1.2 /home----存放普通用户的相关文件
这里主要存放你的个人数据。具体每个用户的设置文件,用户的桌面文件夹,还有用户的数据都放在这里。每个用户都有自己的用户目录,位置为:/home/用户名。当然,root用户除外。
3.1.3 /bin----存放常用命令的目录
这里存放了标准的(或者说是缺省的)linux的工具,比如像“ls”、“vi”还有“more”等等。通常来说,这个目录已经包含在你的“path”系 统变量里面了。什么意思呢?就是:当你在终端里输入ls,系统就会去/bin目录下面查找是不是有ls这个程序。3.1.4 /sbin----要具有一定权限,才能使用的命令
大多是涉及系统管理的命令的存放,是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令,这个目录和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目录是相似的;我们记住就行了,凡是目录sbin中包含的都是root权限才能执行的。
3.1.5 /mnt -------默认挂载光驱和软驱的目录
这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom 等目录。可以参看/etc/fstab的定义。有时我们可以把让系统开机自动挂载文件系统,把挂载点放在这里也是可以的。主要看/etc/fstab中怎 么定义了;比如光驱可以挂载到/mnt/cdrom 。
3.1.6 /boot-----存放系统引导相关的文件
Linux的内核及引导系统程序所需要的文件目录,比如 vmlinuz initrd.img 文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录。
3.1.7 /etc----存放配置相关文件
这里主要存放了系统配置方面的文件。举个例子:你安装了samba这个套件,当你想要修改samba配置文件的时候,你会发现它们(配置文件)就在/etc/samba目录下。3.1.8 /var ----存放经常变化的文件
这个目录的内容是经常变动的,看名字就知道,我们可以理解为vary的缩写,/var下有/var/log 这是用来存放系统日志的目录。/var/www目录是定义Apache服务器站点存放目录;/var/lib 用来存放一些库文件,比如MySQL的,以及MySQL数据库的的存放地;
3.1.9 /usr---文件默认安装的文件夹(类似win下program)
这个是系统存放程序的目录,比如命令、帮助文件等。这个目录下有很多的文件和目录。当我们安装一个Linux发行版官方提供的软件包时,大多安装在这里。 如果有涉及服务器配置文件的,会把配置文件安装在/etc目录中。/usr目录下包括涉及字体目录/usr/share/fonts ,帮助目录 /usr/share/man或/usr/share/doc,普通用户可执行文件目录/usr/bin 或/usr/local/bin 或/usr/X11R6/bin ,超级权限用户root的可执行命令存放目录,比如 /usr/sbin 或/usr/X11R6/sbin 或/usr/local/sbin 等;还有程序的头文件存放目录/usr/include。
4 linux的用户管理
4.1 添加用户
4.2 设置密码、修改密码
passwd xiaoming
4.3 删除用户(保留其文件夹)
userdel xiaoming
4.4 删除用户以及用户主目录
userdel -r xiaoming
5 linux常用命令
5.1 指定运行级别【共7个级别】
命令:init [0123456]
0 关机1单用户2多用户状态,没有网络服务3多用户状态,有网络服务4系统未使用的级别号保留给用户5图形界面6系统重启常用运行级别是3和5,要修改默认的运行级别,可改文件/etc/inittab的id:5:initdefault:这一行中的数字5.2 修改为6后,每次启动后立即重新启动的解决
①在这个位置(开始读秒),按下e
② 来到下边这个位置,接着按下e
③ 再次按下e,选择如图所示选项
④ 进入后,在最后,输入1,表示以单用户模式进入系统(其他模式不好使),然后回车,会重新进入③所示的界面,接着输入b即可
⑤ 这样就可以进入我们的系统,然后将文件再次修改为3或5,然后reboot重启一下,以后就可以正常进入我们熟悉的界面了
5.3 linux常用命令
pwd显示当前工作目录cd改变目录ls列出文件和目录ls -a显示所有文件包,括隐藏文件ls -l长列表格式显示 也可以ls -al 两个命令同时使用
mkdir建立目录rmdir删除空目录
touch建立空文件
cp a.out /home/xiaoming复制命令cp(将a.out复制到/home/xiaoming目录下)cp -r dir1 dir2递归复制命令(复制子目录信息)
mv移动文件和改文件名rm删除文件和目录rm a.outrm -rf *删除所有内容(包括目录和文件) r递归 f强制
ln建立符号链接ln -s 源 目标 ln -s /etc/inittab inittabinittab指向实际文件/etc/inittab
more显示文件内容,带分页less显示文件内容带分页grep在文本中查询内容
grep “http” aaa.txt 查看aaa.txt中是否有http
grep -n “http” aaa.txt 可以显示行数|管道命令(把上一个命令的结果交给|后面的命令处理)
可以多个管道
ls -l /etc/ | more这样就可以分页显示目录下的内容
man帮助命令 相当于dos下的help
5.3.1 find命令,搜索文件及目录
find搜索文件及目录在Linux中,因为文件系统是以级别式的结构来组成的,所以要在整个系统中找到特定的文件和目录并不是件容易的事。而“find”命令可以解决上述问题。①在特定的目录下搜索,并显示指定名称的文件和目录
find / -name man : 意思是说从根目录开始搜索名称为man的文件或目录
②搜索一段时间内被存取/变更的文件或目录
find /home -amin -10 : 十分钟内存取的文件或目录
find /home -atime -10 : 十小时内存取的文件或目录
find /home -cmin -10 : 十分钟内更改过的文件或目录
find /home -ctime +10 : 十小时前更改过的文件或目录
③搜索指定大小的文件
find /home -size +10k : 查找/home目录下大小为10k的文件
5.3.2 重定向命令(将结果定向输出到文件等)
ls -l > a.txt 列表的内容写入到文件a.txt中(覆盖写)
ls -al >> aa.txt 列表的内容追加到文件aa.txt的末尾
database_program < database_data 从文件中输入信息
6 文件所有者、所在组和其他组及权限
linux中的每个用户必须属于一个组,不能独立于组外。
在linux中每个文件有所有者、所在组、其他组的概念。
6.1 文件
用【ls -ahl】命令可以查看文件的所有者。
通过【chown 用户名 文件名】来修改文件所有者。
通过【chgrp 组名 文件名】来修改文件所在的组。
6.2 用户
在添加用户时,可以指定将该用户添加到哪个组中
【useradd -g 组名或组号 用户名】
同样使用root管理权限也可以改变某个用户所在的组:
【usermod -g 组名 用户名】
还可以使用:
【usermod -d 目录名 用户名】 改变该用户登录的初始目录
查看当前登录用户:
【who am i】
6.3 组
【groupadd 组名】添加组
6.3.1 查看当前有哪些组和用户
vim 或 cat命令
① 查看有哪些组
【cat /etc/group | more】
policeman:x:501: 查询结果为:组名:加密相关的符号:组号:
②查看linux下所有用户信息
【cat /etc/passwd】
xiaohong:x:503:502::/home/xiaohong:/bin/bash 查询结果为:用户名:加密符号(密码):用户号:组号::所在目录:shell解析器
6.4 权限
6.4.1 登录到xiaoli用户下,创建hello.java并【ls -l】显示文件
-rw-r--r--. 1 xiaoli polic 时间 hello.java
-rw-r--r--:
第一个【-】代表文件类型
【rw-】代表文件所有者对该文件的权限
【r--】文件所在组对该文件的权限
【r--】其他组的用户对该文件的权限
6.4.2 登录到xiaohong用户下,【ls -l】查看文件
【d】:表示该文件为文件夹
【rwx】:为文件所有者对文件的权限
【---】:表示所在组或其他组对该文件没有权限
6.4.3 修改权限(在当前用户下,修改自己的权限)
【chmod 777 xiaohong】 三个【7】分别是对所有者、所在组、其他组权限的修改。
注: 7 是 r w x 三个权限的和
此时,组内成员可以进入到xiaohong的目录,但是对其中文件的权限并没有变。
- [Linux] Linux shell (1)
- 【linux-1】linux基础
- Linux远程桌面(1)-Linux to Linux(转)
- linux(1)
- linux-1
- linux-1
- Linux 1
- linux 1
- linux(1)
- Linux【1】
- linux(1)
- linux 1
- Linux 1
- linux(1)
- Linux-1
- Linux-1
- LINUX(1)
- Linux-(18)Linux文件系统<1>
- 复杂jstl取值的方式
- VBS实现发送邮件
- 梯度和Sobel导数
- grunt构建&文件合并&压缩
- 【插件动态加载方案】
- Linux 1
- 深入理解C#中的委托
- eclipse Javaee 版本正常引入servlet类 并且开发web项目
- java.util.Arrays类
- LeedCode 之 AddBinary
- 机器学习中模型优化不得不思考的几个问题
- centos6.5 rpm 安装mysql5.6
- Linux 安装 utf8mb4格式的mysql
- Toast工具,强大的吐司,能够连续弹的吐司。