- 浏览: 122939 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (131)
- J2EE (5)
- 系统配置 (2)
- eclipse (3)
- MySQL (3)
- 数据库 (1)
- log4j (2)
- hibernate (5)
- JBOSS (3)
- https (2)
- Struts2 (7)
- javascript (2)
- CSS (4)
- HTTP (2)
- J2SE (1)
- apache (6)
- XML (1)
- android (3)
- session (3)
- Spring (3)
- 前端优化 (2)
- Drools (2)
- java笔试题 (8)
- SVN (2)
- linux (19)
- linux命令 (3)
- memcache (1)
- Servlet (2)
- Java RMI (1)
- 领域模型 (1)
- LVS (4)
- Linux shell (2)
- WEB (1)
- F5 (2)
- WinRAR (1)
- TCP (1)
- MQ (2)
- weblogic (1)
- winxp安装FTP (1)
- WebLogic和Tomcat (1)
- 虚拟机 (1)
- nexus-maven (1)
- jstl (1)
- jvm (1)
- Redis (2)
- mongodb (3)
- JAVA (2)
- mybatis (1)
- SQLserver (1)
- GC (1)
- zabbix (1)
- node (1)
最新评论
-
huosange:
简单明了,通俗易懂
JAVA为什么只允许单继承
selinux:
传统权限:以人为单位,chmod,chown;对用户做授权。
selinux权限:以对象为单位,(服务,文件,人),安全性更加细,到
达文件级别;至今还没有一套很好的管理工具。
ls -Z 查看文件或目录的selinux的信息。
ps -Z
ps -ef -Z 查看进程的selinux的信息。
getenforce 查看selinux的状态。
状态:
enforcing:强制,主动进行权限审核。
permissive:被动的进行权限审核。会记录权限的信息。
disabled:关闭。
设置selinux的状态:
[root@test ~]# vim /etc/selinux/config
SELINUX=disabled ##将enforcing更改为disabled
SELINUXTYPE=targeted
临时关闭:
[root@test ~]# setenforce 0 临时关闭
[root@test ~]# setenforce 1 临时打开
[root@test ~]# getenforce
Disabled
iptables防火墙。
[root@test ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
IPTABLES防火墙共有4个表。
:filter 数据包过滤包的表。
:nat 地址转换的表。
:mangle 数据包处理的表
:raw 制定的规则的表
在每一个表中都有相应的链:
INPUT 输入的链,数据通过网卡进入系统。
FORWARD 转发的链
OUTPUT 输出的链,数据通过网卡出系统。
PREROUTING DNAT地址转换的链。
POSTROUTING SNAT地址转换的链。
所有规则都必须设置在指定的链上。
允许172.16.4.100主机访问本地的21端口。
iptables -t filter -A INPUT -s 172.16.4.100 -p tcp --dport 21
-j ACCEPT
拒绝172.16.4.47主机访问本机的22号端口。
iptables -t filter -A INPUT -s 172.16.4.47 -p tcp --dport 22
-j DROP|REJECT
配置iptables防火墙的规则。
方法一:setup 向导式配置。
方法二:通过shell脚本配置。 sh iptables.sh
方法三:通过iptables命令配置。
[root@test ~]# setup
[root@test ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0
state NEW tcp dpt:22
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0
state NEW tcp dpt:80
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0
state NEW tcp dpt:21
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0
state NEW tcp dpt:2049
REJECT all -- 0.0.0.0/0 0.0.0.0/0
reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
REJECT all -- 0.0.0.0/0 0.0.0.0/0
reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[root@test ~]#
关闭iptables防火墙:
[root@test ~]# service iptables stop #关闭iptables防火墙
iptables:清除防火墙规则: [确
定]
iptables:将链设置为政策 ACCEPT:filter nat [确
定]
iptables:正在卸载模块: [确
定]
[root@test ~]#
[root@test ~]# chkconfig iptables off #设置防火墙开机不自动运
行
NAS:网络附加存储;传统的一个文件服务器
支持nfs,cifs,iscsi协议
支持ftp,http,rsync协议
SAN:FC-SAN,FC协议。
nfs协议的配置,nfs服务器的配置。
[root@test ~]# rpm -qa |grep nfs
nfs-utils-1.2.3-26.el6.x86_64
nfs4-acl-tools-0.3.3-6.el6.x86_64
nfs-utils-lib-1.1.5-4.el6.x86_64
nfs服务器的配置文件。
[root@test ~]# vim /etc/exports
共享目录 允许访问此共享目录的主机或网段(选项) 主机(选项)
eg:(以空格做为分隔符)
/tmp 192.168.10.100(rw,sync) 192.168.10.0/24(ro)
选项:
ro 只读
rw 读写
sync 同步
async 异步
root_squash 将远程客户端的root用户降级为匿名用户
no_root_squash 不将远程客户端root用户降级
all_squash 将远程客户端的普通用户降级为匿名用户
no_all_squash 不将远程客户端普通用户降级。
实例:将/var/ftp目录共享,允许172.16.4.0/24网段以只读的方式访问,允许172.16.4.48主机可读写,root权限不降级。
[root@test ~]# cat /etc/exports
/var/ftp 172.16.4.0/24(ro) 172.16.4.48(rw,sync,no_root_squash)
[root@test ~]# service rpcbind restart
停止 rpcbind: [确定]
正在启动 rpcbind: [确定]
[root@test ~]# service nfs restart
关闭 NFS 守护进程: [确定]
关闭 NFS mountd: [确定]
关闭 NFS quotas: [确定]
关掉 NFS 配额: [确定]
启动 NFS mountd: [确定]
启动 NFS 守护进程: [确定]
[root@test ~]# cat /etc/exports
[root@test ~]# showmount -e 172.16.4.49
Export list for 172.16.4.49:
/var/ftp 172.16.4.48,172.16.4.0/24
在172.16.4.43主机上操作。
[root@rhel65 ~]# mount 172.16.4.49:/var/ftp /data
[root@rhel65 ~]# cd /data/
[root@rhel65 data]# ls
10.27.txt 10.29.txt pub webmin-1.680.tar.gz
10.28.txt proftpd-1.3.5.tar.gz putty.exe winscp554setup.exe
[root@rhel65 data]# cp *.txt /root/
[root@rhel65 data]# ls /root/
10.27.txt foremann puppett
10.28.txt foreman-new
rubygem-multi_json-1.7.7-2.fc20.noarch.rpm
10.29.txt install.log rubygem-rabl-0.8.0-2.fc20.noarch.rpm
anaconda-ks.cfg install.log.syslog ruby-libs-2.0.0.247-15.fc20.x86_64.rpm
[root@rhel65 data]# cp /root/install.log* .
cp: cannot create regular file `./install.log': Read-only file system
cp: cannot create regular file `./install.log.syslog': Read-only file system
在172.16.4.48主机上操作。
[root@server2 /]# mount 172.16.4.49:/var/ftp /data
[root@server2 /]# cd /data
[root@server2 data]# ls
10.27.txt 10.29.txt proftpd-1.3.5.tar.gz putty.exe webmin-1.680.tar.gz
10.28.txt 777 pub test winscp554setup.exe
[root@server2 data]# cd test/
[root@server2 test]# ls
[root@server2 test]# touch aa
[root@server2 test]#
nfs服务器
[root@test ~]# cat /etc/exports
/var/ftp 172.16.4.0/24(ro) 172.16.4.48(rw,sync,no_root_squash)
/tmp *(rw)
[root@test ~]# service rpcbind restart
[root@test ~]# service nfs restart
nfs客户端:
[root@test ~]# mount /data
[root@test ~]# mount 172.16.4.49:/tmp /data
[root@test ~]# df -Ph
cifs服务器:
1、windows和Linux之间的共享。
2、linux和linux之间的共享。
安装cifs服务器(samba服务器)
[root@test ~]# yum install samba.x86_64 -y
[root@test ~]# rpm -qa |grep samba
samba-common-3.5.10-125.el6.x86_64
samba-client-3.5.10-125.el6.x86_64
samba-3.5.10-125.el6.x86_64
samba-winbind-clients-3.5.10-125.el6.x86_64
samba服务器的配置文件
/etc/samba/smb.conf
配置匿名共享。
[root@test ftp]# vim /etc/samba/smb.conf
101 security = share (将原来的user更改为share)
[public]
comment = Public Stuff
path = /var/ftp
public = yes
writable = yes
用户级的共享。
/data 允许work1组和abc用户访问,work1组中的用户只读,abc可读写。
[root@test ftp]# mkdir /data
[root@test ftp]# chmod 777 /data
[root@test ftp]# ls -ld /data
drwxrwxrwx 2 root root 4096 10月 29 17:05 /data
[root@test ftp]# groupadd work1
[root@test ftp]# useradd user1
[root@test ftp]# useradd -s /sbin/nologin user2
[root@test ftp]# cat /etc/group|grep work1
work1:x:0:user1,user2
[root@test ftp]# useradd -s /sbin/nologin abc
[root@test ftp]# passwd abc
更改用户 abc 的密码 。
新的 密码:
无效的密码: 过短
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[root@test ftp]# usermod -s /sbin/nologin user1
[root@test ftp]# passwd user1
更改用户 user1 的密码 。
新的 密码:
无效的密码: 过短
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[root@test ftp]#
[root@test samba]# vim /etc/samba/smb.conf
102 passdb backend = smbpasswd
103 smb passwd file =/etc/samba/smbpasswd
104
297 [doc]
298 path = /data
299 public = no
300 write list = abc
301 read list = +work1
302 valid users = +work1,abc
[root@test samba]# service smb restart
[root@test samba]# smbpasswd -a user1
[root@test samba]# smbpasswd -a user2
[root@test samba]# smbpasswd -a abc
在windows上测试。
postfix邮件服务器:(实现25端口,smtp协议) pop3 110
安装postfix邮件服务器
[root@test samba]# rpm -qa |grep postfix
postfix-2.6.6-2.2.el6_1.x86_64
[root@test samba]# cd /etc/postfix/
[root@test postfix]# ls
access generic main.cf relocated virtual
canonical header_checks master.cf transport
[root@test postfix]#
[root@test mail]# vim /etc/hosts
172.16.4.49 mail.abc.com abc.com
[root@test mail]# vim /etc/postfix/main.cf
75 myhostname = mail.abc.com
83 mydomain = abc.com
99 myorigin = $mydomain
113 inet_interfaces = all (打开all)
116 #inet_interfaces = localhost (关闭localhost)
164 mydestination = $mydomain, $myhostname, localhost.$mydomain, localhost
(添加$mydomain)
264 mynetworks = 172.16.4.0/24, 127.0.0.0/8
[root@test postfix]# service postfix restart
[root@test postfix]# netstat -atnup|grep :25
[root@test postfix]# mail user1@abc.com
Subject: test mail
this is test mail..
.
EOT
[root@test postfix]# cd /var/spool/mail/
[root@test mail]# ls
abc admin jake root rpc test user user1 user2
[root@test mail]# ll
总用量 12
-rw-rw---- 1 abc mail 0 10月 29 17:06 abc
-rw-rw----. 1 root mail 0 10月 27 22:12 admin
-rw-rw---- 1 jake mail 0 10月 28 22:09 jake
-rw-------. 1 root mail 6215 10月 29 16:01 root
-rw-rw----. 1 rpc mail 0 10月 27 18:17 rpc
-rw-rw----. 1 test mail 0 10月 27 22:52 test
-rw-rw----. 1 user mail 0 10月 27 22:05 user
-rw-rw----. 1 user1 mail 543 10月 29 17:52 user1
-rw-rw----. 1 user2 mail 0 10月 27 22:37 user2
[root@test mail]# cat user1
From root@abc.com Wed Oct 29 17:52:43 2014
Return-Path: <root@abc.com>
X-Original-To: user1@abc.com
Delivered-To: user1@abc.com
Received: by mail.abc.com (Postfix, from userid 0)
id 89286C2C1F; Wed, 29 Oct 2014 17:52:43 +0800 (CST)
Date: Wed, 29 Oct 2014 17:52:43 +0800
To: user1@abc.com
Subject: test mail
User-Agent: Heirloom mailx 12.4 7/29/08
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <20141029095243.89286C2C1F@mail.abc.com>
From: root@abc.com (root)
this is test mail..
pop3服务器的安装和配置。
[root@test mail]# yum install dovecot -y
[root@test mail]# /etc/init.d/dovecot restart
停止 Dovecot Imap: [失败]
正在启动 Dovecot Imap: [确定]
[root@test mail]# netstat -atnup|grep -i dov
tcp 0 0 0.0.0.0:110 0.0.0.0:*
LISTEN 9110/dovecot
tcp 0 0 0.0.0.0:143 0.0.0.0:*
LISTEN 9110/dovecot
tcp 0 0 0.0.0.0:993 0.0.0.0:*
LISTEN 9110/dovecot
tcp 0 0 0.0.0.0:995 0.0.0.0:*
LISTEN 9110/dovecot
tcp 0 0 :::110 :::*
LISTEN 9110/dovecot
tcp 0 0 :::143 :::*
LISTEN 9110/dovecot
tcp 0 0 :::993 :::*
LISTEN 9110/dovecot
tcp 0 0 :::995 :::*
LISTEN 9110/dovecot
[root@test mail]#
检查综合性能:
top -->z--b--k--r--q
cpu性能:
sar 1 1 (cpu,diskio)
mpstat -P ALL (查看CPU各核的信息)。
cat /proc/cpuinfo
vmstat 1 1
内存性能:
top
vmstat
free -m
cat /proc/meminfo (真正使用的内存=cache+buffer)
io性能:
sar -d 1 100 每隔1秒检查一次,共检查100次
iostat 1
vmstat 1
进程:
ps -aux
ps -ef
pstree
kill [-9] <pid>
killall <进程名称>
开机时间:
uptime
cat /proc/uptime
操作系统的版本
[root@test ~]# lsb_release -a (推荐)
LSB Version:
:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 6.3 (Santiago)
Release: 6.3
Codename: Santiago
[root@test ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.3 (Santiago)
[root@test ~]# cat /etc/issue
Red Hat Enterprise Linux Server release 6.3 (Santiago)
Kernel \r on an \m
[root@test ~]# cat /etc/issue.net
Red Hat Enterprise Linux Server release 6.3 (Santiago)
Kernel \r on an \m
[root@test ~]#
密码不正确或丢失:
grub密码 root密码 处理办法
nok ok 进入/boot/grub/grub.conf文件,直接修改。
ok nok 通过单用户登录,修改密码。
nok nok
通过光盘,进入救援模式,删除grub.conf文件中的password行,再通过单用户模式登录更改root密码。
通过光盘进入到救援模式,一路回车--进入bash---chroot /mnt/sysimage---cd
/boot/grub---vim grub.conf(删除password行),保存退出,重启系统。
系统进入grub菜单,按e编辑--选择第二行(带kernel的行),输入空格1|single|S--回车---按b引导---passwd
root更改root密码---exit重启引导系统。
MBR故障处理:
1、模拟故障
[root@test ~]# dd if=/dev/zero of=/dev/sda bs=46 count=1
记录了1+0 的读入
记录了1+0 的写出
46字节(46 B)已复制,0.000196035 秒,235 kB/秒
[root@test ~]# reboot
2、解决故障;
通过光盘进入到救援模式,一路回车--进入bash---chroot
/mnt/sysimage--grub-install /dev/sda--重启。
文件被误删除。
1、通过rlinux工具。找回误删的信息。
2、ext4undelete命令,恢复误删的信息。
[root@test ~]# chattr +i install.sh
[root@test ~]# lsattr install.sh
----i--------e- install.sh
[root@test ~]# rm install.sh
rm:是否删除普通文件 "install.sh"?y
rm: 无法删除"install.sh": 不允许的操作
[root@test ~]# whoami
root
[root@test ~]# chattr -i install.sh
[root@test ~]# lsattr install.sh
-------------e- install.sh
[root@test ~]# rm install.sh
rm:是否删除普通文件 "install.sh"?y
[root@test iet]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
[root@test ~]# cat 1.sh
#!/bin/bash
date
[root@test ~]# chmod +x 1.sh
[root@test ~]# ll 1.sh
-rwxr-xr-x 1 root root 17 10月 29 21:26 1.sh
[root@test ~]# sh 1.sh
2014年 10月 29日 星期三 21:26:57 CST
[root@test ~]# bash 1.sh
2014年 10月 29日 星期三 21:27:04 CST
[root@test ~]# source 1.sh
2014年 10月 29日 星期三 21:27:07 CST
[root@test ~]# ./1.sh
2014年 10月 29日 星期三 21:27:12 CST
[root@test ~]# . /root/1.sh ###直接在此终端执行,不产生中断。
2014年 10月 29日 星期三 21:27:21 CST
输入输出重定向
> 正确输出重定向
2> 错误输出重定向
2>&1 正确和错误重定向
[root@test ~]# ls > 1.txt
[root@test ~]# cat 1.txt
1.sh
1.txt
anaconda-ks.cfg
Desktop
install.log.bak
install.log.syslog
sar.txt
[root@test ~]# ls 2> 1.txt
1.sh 1.txt anaconda-ks.cfg Desktop install.log.bak install.log.syslog
sar.txt
[root@test ~]# cat 1.txt
[root@test ~]# ls > 1.txt 2>&1 > /dev/null
[root@test ~]# cat 1.txt
[root@test ~]# ls > 1.txt 2>&1
[root@test ~]# cat 1.txt
1.sh
1.txt
anaconda-ks.cfg
Desktop
install.log.bak
install.log.syslog
sar.txt
[root@test ~]# lsadsfadsf > 1.txt 2>&1
[root@test ~]# cat 1.txt
-bash: lsadsfadsf: command not found
管道: | 前一个命令的输出作为后一个命令的输入。
ls -l |grep ^- 只显示文件。
前后台
[root@test ~]# pwd;date;time
/root
2014年 10月 29日 星期三 21:35:43 CST
real 0m0.000s
user 0m0.000s
sys 0m0.000s
[root@test ~]# ls &
[1] 3683
[root@test ~]# 1.sh 1.txt anaconda-ks.cfg Desktop install.log.bak
install.log.syslog sar.txt
[1]+ Done ls --color=auto
[root@test ~]# fg
-bash: fg: current: no such job
[root@test ~]# vim &
[1] 3684
[root@test ~]# fg
vim
[1]+ Stopped vim
[root@test ~]# jobs
[1]+ Stopped vim
[root@test ~]#
shell的变量
1、环境变量,set,env,export
2、预定义变量,用户不能直接修改。 $0,$1,$2..$$,$?,$#
3、自定义变量(局部和全局)
[root@test ~]# var=hello
[root@test ~]# echo $var
hello
[root@test ~]# bash
[root@test ~]# echo $var
[root@test ~]# exit
exit
[root@test ~]# export var1=hello
[root@test ~]# echo $var1
hello
[root@test ~]# bash
[root@test ~]# echo $var1
hello
正则表达式:
是一个表达式,由一个或多个元字符组成的表达式。
元字符:
不能再分隔的字符。
元字符:
* 匹配0个及0个以上。 ab*(a,a1,a2,ab,abc,abccd)
? 匹配0个或1个。 ab?(a,ab,abb,abc)
+ 匹配1个或1个以上。 ab+(ab,abc,abb)
. 匹配任意一个字符 a.(a1,aa,az,a#,a@)
[0-9] 匹配任意一个数字 1,2,3,4,5,6,7,8,9,0
[^0-9] 匹配非数字的任意一个字符 a,A,#,*,Z...
^[0-9] 匹配任意一个数字开头的 1a,0b,9c
[0-9a-zA-Z] 匹配任意一个数字,小写字母,大写字母
[abc] 匹配a或b或c
^a 匹配a开头
a$ 匹配a结尾
*==={0,}
?==={0,1}
+==={1,}
a\{2,9\} 匹配2个~9个a字符。
流程控制语句:
条件
if 条件;then
xxx
else
xxx
fi
[root@test ~]# vim if.sh
#!/bin/bash
echo "pls input yes or no"
read yn
if [ "$yn" = "yes" ];then
echo "input yes"
else
echo "input no"
fi
[root@test ~]# sh if.sh
pls input yes or no
yes
input yes
[root@test ~]# sh if.sh
pls input yes or no
no
input no
case语句:
case "变量" in
值1)
xxx
;;
值2)
xxx
;;
*)
xxx
;;
esac
[root@test ~]# vim case.sh
#!/bin/bash
echo "pls input yes or no"
read yn
case "$yn" in
[yY][eE][sS]|[yY])
echo "input yes"
;;
[nN][oO]|[Nn])
echo "input no"
;;
*)
echo "pls input yes or no"
;;
esac
[root@test ~]# chmod +x case.sh
[root@test ~]# sh case.sh
pls input yes or no
Yes
input yes
[root@test ~]# sh case.sh
pls input yes or no
N
input no
[root@test ~]# sh case.sh
pls input yes or no
Yees
pls input yes or no
for语句:
方法一:
for((i=0;i<=100;i++))
do
xxxx
done
方法二:
for 变量 in 值1 值2 ...
do
xxxx
done
[root@test ~]# vim for.sh
[root@test ~]# cat for.sh
#!/bin/bash
sum=0
for ((i=0;i<=100;i++))
do
let sum=sum+i
done
echo $sum
sum1=0
for i in `seq 1 100`
do
let sum1=sum1+i
done
echo $sum1
[root@test ~]# chmod +x for.sh
[root@test ~]# sh for.sh
5050
5050
[root@test ~]#
传统权限:以人为单位,chmod,chown;对用户做授权。
selinux权限:以对象为单位,(服务,文件,人),安全性更加细,到
达文件级别;至今还没有一套很好的管理工具。
ls -Z 查看文件或目录的selinux的信息。
ps -Z
ps -ef -Z 查看进程的selinux的信息。
getenforce 查看selinux的状态。
状态:
enforcing:强制,主动进行权限审核。
permissive:被动的进行权限审核。会记录权限的信息。
disabled:关闭。
设置selinux的状态:
[root@test ~]# vim /etc/selinux/config
SELINUX=disabled ##将enforcing更改为disabled
SELINUXTYPE=targeted
临时关闭:
[root@test ~]# setenforce 0 临时关闭
[root@test ~]# setenforce 1 临时打开
[root@test ~]# getenforce
Disabled
iptables防火墙。
[root@test ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
IPTABLES防火墙共有4个表。
:filter 数据包过滤包的表。
:nat 地址转换的表。
:mangle 数据包处理的表
:raw 制定的规则的表
在每一个表中都有相应的链:
INPUT 输入的链,数据通过网卡进入系统。
FORWARD 转发的链
OUTPUT 输出的链,数据通过网卡出系统。
PREROUTING DNAT地址转换的链。
POSTROUTING SNAT地址转换的链。
所有规则都必须设置在指定的链上。
允许172.16.4.100主机访问本地的21端口。
iptables -t filter -A INPUT -s 172.16.4.100 -p tcp --dport 21
-j ACCEPT
拒绝172.16.4.47主机访问本机的22号端口。
iptables -t filter -A INPUT -s 172.16.4.47 -p tcp --dport 22
-j DROP|REJECT
配置iptables防火墙的规则。
方法一:setup 向导式配置。
方法二:通过shell脚本配置。 sh iptables.sh
方法三:通过iptables命令配置。
[root@test ~]# setup
[root@test ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0
state NEW tcp dpt:22
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0
state NEW tcp dpt:80
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0
state NEW tcp dpt:21
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0
state NEW tcp dpt:2049
REJECT all -- 0.0.0.0/0 0.0.0.0/0
reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
REJECT all -- 0.0.0.0/0 0.0.0.0/0
reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[root@test ~]#
关闭iptables防火墙:
[root@test ~]# service iptables stop #关闭iptables防火墙
iptables:清除防火墙规则: [确
定]
iptables:将链设置为政策 ACCEPT:filter nat [确
定]
iptables:正在卸载模块: [确
定]
[root@test ~]#
[root@test ~]# chkconfig iptables off #设置防火墙开机不自动运
行
NAS:网络附加存储;传统的一个文件服务器
支持nfs,cifs,iscsi协议
支持ftp,http,rsync协议
SAN:FC-SAN,FC协议。
nfs协议的配置,nfs服务器的配置。
[root@test ~]# rpm -qa |grep nfs
nfs-utils-1.2.3-26.el6.x86_64
nfs4-acl-tools-0.3.3-6.el6.x86_64
nfs-utils-lib-1.1.5-4.el6.x86_64
nfs服务器的配置文件。
[root@test ~]# vim /etc/exports
共享目录 允许访问此共享目录的主机或网段(选项) 主机(选项)
eg:(以空格做为分隔符)
/tmp 192.168.10.100(rw,sync) 192.168.10.0/24(ro)
选项:
ro 只读
rw 读写
sync 同步
async 异步
root_squash 将远程客户端的root用户降级为匿名用户
no_root_squash 不将远程客户端root用户降级
all_squash 将远程客户端的普通用户降级为匿名用户
no_all_squash 不将远程客户端普通用户降级。
实例:将/var/ftp目录共享,允许172.16.4.0/24网段以只读的方式访问,允许172.16.4.48主机可读写,root权限不降级。
[root@test ~]# cat /etc/exports
/var/ftp 172.16.4.0/24(ro) 172.16.4.48(rw,sync,no_root_squash)
[root@test ~]# service rpcbind restart
停止 rpcbind: [确定]
正在启动 rpcbind: [确定]
[root@test ~]# service nfs restart
关闭 NFS 守护进程: [确定]
关闭 NFS mountd: [确定]
关闭 NFS quotas: [确定]
关掉 NFS 配额: [确定]
启动 NFS mountd: [确定]
启动 NFS 守护进程: [确定]
[root@test ~]# cat /etc/exports
[root@test ~]# showmount -e 172.16.4.49
Export list for 172.16.4.49:
/var/ftp 172.16.4.48,172.16.4.0/24
在172.16.4.43主机上操作。
[root@rhel65 ~]# mount 172.16.4.49:/var/ftp /data
[root@rhel65 ~]# cd /data/
[root@rhel65 data]# ls
10.27.txt 10.29.txt pub webmin-1.680.tar.gz
10.28.txt proftpd-1.3.5.tar.gz putty.exe winscp554setup.exe
[root@rhel65 data]# cp *.txt /root/
[root@rhel65 data]# ls /root/
10.27.txt foremann puppett
10.28.txt foreman-new
rubygem-multi_json-1.7.7-2.fc20.noarch.rpm
10.29.txt install.log rubygem-rabl-0.8.0-2.fc20.noarch.rpm
anaconda-ks.cfg install.log.syslog ruby-libs-2.0.0.247-15.fc20.x86_64.rpm
[root@rhel65 data]# cp /root/install.log* .
cp: cannot create regular file `./install.log': Read-only file system
cp: cannot create regular file `./install.log.syslog': Read-only file system
在172.16.4.48主机上操作。
[root@server2 /]# mount 172.16.4.49:/var/ftp /data
[root@server2 /]# cd /data
[root@server2 data]# ls
10.27.txt 10.29.txt proftpd-1.3.5.tar.gz putty.exe webmin-1.680.tar.gz
10.28.txt 777 pub test winscp554setup.exe
[root@server2 data]# cd test/
[root@server2 test]# ls
[root@server2 test]# touch aa
[root@server2 test]#
nfs服务器
[root@test ~]# cat /etc/exports
/var/ftp 172.16.4.0/24(ro) 172.16.4.48(rw,sync,no_root_squash)
/tmp *(rw)
[root@test ~]# service rpcbind restart
[root@test ~]# service nfs restart
nfs客户端:
[root@test ~]# mount /data
[root@test ~]# mount 172.16.4.49:/tmp /data
[root@test ~]# df -Ph
cifs服务器:
1、windows和Linux之间的共享。
2、linux和linux之间的共享。
安装cifs服务器(samba服务器)
[root@test ~]# yum install samba.x86_64 -y
[root@test ~]# rpm -qa |grep samba
samba-common-3.5.10-125.el6.x86_64
samba-client-3.5.10-125.el6.x86_64
samba-3.5.10-125.el6.x86_64
samba-winbind-clients-3.5.10-125.el6.x86_64
samba服务器的配置文件
/etc/samba/smb.conf
配置匿名共享。
[root@test ftp]# vim /etc/samba/smb.conf
101 security = share (将原来的user更改为share)
[public]
comment = Public Stuff
path = /var/ftp
public = yes
writable = yes
用户级的共享。
/data 允许work1组和abc用户访问,work1组中的用户只读,abc可读写。
[root@test ftp]# mkdir /data
[root@test ftp]# chmod 777 /data
[root@test ftp]# ls -ld /data
drwxrwxrwx 2 root root 4096 10月 29 17:05 /data
[root@test ftp]# groupadd work1
[root@test ftp]# useradd user1
[root@test ftp]# useradd -s /sbin/nologin user2
[root@test ftp]# cat /etc/group|grep work1
work1:x:0:user1,user2
[root@test ftp]# useradd -s /sbin/nologin abc
[root@test ftp]# passwd abc
更改用户 abc 的密码 。
新的 密码:
无效的密码: 过短
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[root@test ftp]# usermod -s /sbin/nologin user1
[root@test ftp]# passwd user1
更改用户 user1 的密码 。
新的 密码:
无效的密码: 过短
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[root@test ftp]#
[root@test samba]# vim /etc/samba/smb.conf
102 passdb backend = smbpasswd
103 smb passwd file =/etc/samba/smbpasswd
104
297 [doc]
298 path = /data
299 public = no
300 write list = abc
301 read list = +work1
302 valid users = +work1,abc
[root@test samba]# service smb restart
[root@test samba]# smbpasswd -a user1
[root@test samba]# smbpasswd -a user2
[root@test samba]# smbpasswd -a abc
在windows上测试。
postfix邮件服务器:(实现25端口,smtp协议) pop3 110
安装postfix邮件服务器
[root@test samba]# rpm -qa |grep postfix
postfix-2.6.6-2.2.el6_1.x86_64
[root@test samba]# cd /etc/postfix/
[root@test postfix]# ls
access generic main.cf relocated virtual
canonical header_checks master.cf transport
[root@test postfix]#
[root@test mail]# vim /etc/hosts
172.16.4.49 mail.abc.com abc.com
[root@test mail]# vim /etc/postfix/main.cf
75 myhostname = mail.abc.com
83 mydomain = abc.com
99 myorigin = $mydomain
113 inet_interfaces = all (打开all)
116 #inet_interfaces = localhost (关闭localhost)
164 mydestination = $mydomain, $myhostname, localhost.$mydomain, localhost
(添加$mydomain)
264 mynetworks = 172.16.4.0/24, 127.0.0.0/8
[root@test postfix]# service postfix restart
[root@test postfix]# netstat -atnup|grep :25
[root@test postfix]# mail user1@abc.com
Subject: test mail
this is test mail..
.
EOT
[root@test postfix]# cd /var/spool/mail/
[root@test mail]# ls
abc admin jake root rpc test user user1 user2
[root@test mail]# ll
总用量 12
-rw-rw---- 1 abc mail 0 10月 29 17:06 abc
-rw-rw----. 1 root mail 0 10月 27 22:12 admin
-rw-rw---- 1 jake mail 0 10月 28 22:09 jake
-rw-------. 1 root mail 6215 10月 29 16:01 root
-rw-rw----. 1 rpc mail 0 10月 27 18:17 rpc
-rw-rw----. 1 test mail 0 10月 27 22:52 test
-rw-rw----. 1 user mail 0 10月 27 22:05 user
-rw-rw----. 1 user1 mail 543 10月 29 17:52 user1
-rw-rw----. 1 user2 mail 0 10月 27 22:37 user2
[root@test mail]# cat user1
From root@abc.com Wed Oct 29 17:52:43 2014
Return-Path: <root@abc.com>
X-Original-To: user1@abc.com
Delivered-To: user1@abc.com
Received: by mail.abc.com (Postfix, from userid 0)
id 89286C2C1F; Wed, 29 Oct 2014 17:52:43 +0800 (CST)
Date: Wed, 29 Oct 2014 17:52:43 +0800
To: user1@abc.com
Subject: test mail
User-Agent: Heirloom mailx 12.4 7/29/08
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <20141029095243.89286C2C1F@mail.abc.com>
From: root@abc.com (root)
this is test mail..
pop3服务器的安装和配置。
[root@test mail]# yum install dovecot -y
[root@test mail]# /etc/init.d/dovecot restart
停止 Dovecot Imap: [失败]
正在启动 Dovecot Imap: [确定]
[root@test mail]# netstat -atnup|grep -i dov
tcp 0 0 0.0.0.0:110 0.0.0.0:*
LISTEN 9110/dovecot
tcp 0 0 0.0.0.0:143 0.0.0.0:*
LISTEN 9110/dovecot
tcp 0 0 0.0.0.0:993 0.0.0.0:*
LISTEN 9110/dovecot
tcp 0 0 0.0.0.0:995 0.0.0.0:*
LISTEN 9110/dovecot
tcp 0 0 :::110 :::*
LISTEN 9110/dovecot
tcp 0 0 :::143 :::*
LISTEN 9110/dovecot
tcp 0 0 :::993 :::*
LISTEN 9110/dovecot
tcp 0 0 :::995 :::*
LISTEN 9110/dovecot
[root@test mail]#
检查综合性能:
top -->z--b--k--r--q
cpu性能:
sar 1 1 (cpu,diskio)
mpstat -P ALL (查看CPU各核的信息)。
cat /proc/cpuinfo
vmstat 1 1
内存性能:
top
vmstat
free -m
cat /proc/meminfo (真正使用的内存=cache+buffer)
io性能:
sar -d 1 100 每隔1秒检查一次,共检查100次
iostat 1
vmstat 1
进程:
ps -aux
ps -ef
pstree
kill [-9] <pid>
killall <进程名称>
开机时间:
uptime
cat /proc/uptime
操作系统的版本
[root@test ~]# lsb_release -a (推荐)
LSB Version:
:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 6.3 (Santiago)
Release: 6.3
Codename: Santiago
[root@test ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.3 (Santiago)
[root@test ~]# cat /etc/issue
Red Hat Enterprise Linux Server release 6.3 (Santiago)
Kernel \r on an \m
[root@test ~]# cat /etc/issue.net
Red Hat Enterprise Linux Server release 6.3 (Santiago)
Kernel \r on an \m
[root@test ~]#
密码不正确或丢失:
grub密码 root密码 处理办法
nok ok 进入/boot/grub/grub.conf文件,直接修改。
ok nok 通过单用户登录,修改密码。
nok nok
通过光盘,进入救援模式,删除grub.conf文件中的password行,再通过单用户模式登录更改root密码。
通过光盘进入到救援模式,一路回车--进入bash---chroot /mnt/sysimage---cd
/boot/grub---vim grub.conf(删除password行),保存退出,重启系统。
系统进入grub菜单,按e编辑--选择第二行(带kernel的行),输入空格1|single|S--回车---按b引导---passwd
root更改root密码---exit重启引导系统。
MBR故障处理:
1、模拟故障
[root@test ~]# dd if=/dev/zero of=/dev/sda bs=46 count=1
记录了1+0 的读入
记录了1+0 的写出
46字节(46 B)已复制,0.000196035 秒,235 kB/秒
[root@test ~]# reboot
2、解决故障;
通过光盘进入到救援模式,一路回车--进入bash---chroot
/mnt/sysimage--grub-install /dev/sda--重启。
文件被误删除。
1、通过rlinux工具。找回误删的信息。
2、ext4undelete命令,恢复误删的信息。
[root@test ~]# chattr +i install.sh
[root@test ~]# lsattr install.sh
----i--------e- install.sh
[root@test ~]# rm install.sh
rm:是否删除普通文件 "install.sh"?y
rm: 无法删除"install.sh": 不允许的操作
[root@test ~]# whoami
root
[root@test ~]# chattr -i install.sh
[root@test ~]# lsattr install.sh
-------------e- install.sh
[root@test ~]# rm install.sh
rm:是否删除普通文件 "install.sh"?y
[root@test iet]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
[root@test ~]# cat 1.sh
#!/bin/bash
date
[root@test ~]# chmod +x 1.sh
[root@test ~]# ll 1.sh
-rwxr-xr-x 1 root root 17 10月 29 21:26 1.sh
[root@test ~]# sh 1.sh
2014年 10月 29日 星期三 21:26:57 CST
[root@test ~]# bash 1.sh
2014年 10月 29日 星期三 21:27:04 CST
[root@test ~]# source 1.sh
2014年 10月 29日 星期三 21:27:07 CST
[root@test ~]# ./1.sh
2014年 10月 29日 星期三 21:27:12 CST
[root@test ~]# . /root/1.sh ###直接在此终端执行,不产生中断。
2014年 10月 29日 星期三 21:27:21 CST
输入输出重定向
> 正确输出重定向
2> 错误输出重定向
2>&1 正确和错误重定向
[root@test ~]# ls > 1.txt
[root@test ~]# cat 1.txt
1.sh
1.txt
anaconda-ks.cfg
Desktop
install.log.bak
install.log.syslog
sar.txt
[root@test ~]# ls 2> 1.txt
1.sh 1.txt anaconda-ks.cfg Desktop install.log.bak install.log.syslog
sar.txt
[root@test ~]# cat 1.txt
[root@test ~]# ls > 1.txt 2>&1 > /dev/null
[root@test ~]# cat 1.txt
[root@test ~]# ls > 1.txt 2>&1
[root@test ~]# cat 1.txt
1.sh
1.txt
anaconda-ks.cfg
Desktop
install.log.bak
install.log.syslog
sar.txt
[root@test ~]# lsadsfadsf > 1.txt 2>&1
[root@test ~]# cat 1.txt
-bash: lsadsfadsf: command not found
管道: | 前一个命令的输出作为后一个命令的输入。
ls -l |grep ^- 只显示文件。
前后台
[root@test ~]# pwd;date;time
/root
2014年 10月 29日 星期三 21:35:43 CST
real 0m0.000s
user 0m0.000s
sys 0m0.000s
[root@test ~]# ls &
[1] 3683
[root@test ~]# 1.sh 1.txt anaconda-ks.cfg Desktop install.log.bak
install.log.syslog sar.txt
[1]+ Done ls --color=auto
[root@test ~]# fg
-bash: fg: current: no such job
[root@test ~]# vim &
[1] 3684
[root@test ~]# fg
vim
[1]+ Stopped vim
[root@test ~]# jobs
[1]+ Stopped vim
[root@test ~]#
shell的变量
1、环境变量,set,env,export
2、预定义变量,用户不能直接修改。 $0,$1,$2..$$,$?,$#
3、自定义变量(局部和全局)
[root@test ~]# var=hello
[root@test ~]# echo $var
hello
[root@test ~]# bash
[root@test ~]# echo $var
[root@test ~]# exit
exit
[root@test ~]# export var1=hello
[root@test ~]# echo $var1
hello
[root@test ~]# bash
[root@test ~]# echo $var1
hello
正则表达式:
是一个表达式,由一个或多个元字符组成的表达式。
元字符:
不能再分隔的字符。
元字符:
* 匹配0个及0个以上。 ab*(a,a1,a2,ab,abc,abccd)
? 匹配0个或1个。 ab?(a,ab,abb,abc)
+ 匹配1个或1个以上。 ab+(ab,abc,abb)
. 匹配任意一个字符 a.(a1,aa,az,a#,a@)
[0-9] 匹配任意一个数字 1,2,3,4,5,6,7,8,9,0
[^0-9] 匹配非数字的任意一个字符 a,A,#,*,Z...
^[0-9] 匹配任意一个数字开头的 1a,0b,9c
[0-9a-zA-Z] 匹配任意一个数字,小写字母,大写字母
[abc] 匹配a或b或c
^a 匹配a开头
a$ 匹配a结尾
*==={0,}
?==={0,1}
+==={1,}
a\{2,9\} 匹配2个~9个a字符。
流程控制语句:
条件
if 条件;then
xxx
else
xxx
fi
[root@test ~]# vim if.sh
#!/bin/bash
echo "pls input yes or no"
read yn
if [ "$yn" = "yes" ];then
echo "input yes"
else
echo "input no"
fi
[root@test ~]# sh if.sh
pls input yes or no
yes
input yes
[root@test ~]# sh if.sh
pls input yes or no
no
input no
case语句:
case "变量" in
值1)
xxx
;;
值2)
xxx
;;
*)
xxx
;;
esac
[root@test ~]# vim case.sh
#!/bin/bash
echo "pls input yes or no"
read yn
case "$yn" in
[yY][eE][sS]|[yY])
echo "input yes"
;;
[nN][oO]|[Nn])
echo "input no"
;;
*)
echo "pls input yes or no"
;;
esac
[root@test ~]# chmod +x case.sh
[root@test ~]# sh case.sh
pls input yes or no
Yes
input yes
[root@test ~]# sh case.sh
pls input yes or no
N
input no
[root@test ~]# sh case.sh
pls input yes or no
Yees
pls input yes or no
for语句:
方法一:
for((i=0;i<=100;i++))
do
xxxx
done
方法二:
for 变量 in 值1 值2 ...
do
xxxx
done
[root@test ~]# vim for.sh
[root@test ~]# cat for.sh
#!/bin/bash
sum=0
for ((i=0;i<=100;i++))
do
let sum=sum+i
done
echo $sum
sum1=0
for i in `seq 1 100`
do
let sum1=sum1+i
done
echo $sum1
[root@test ~]# chmod +x for.sh
[root@test ~]# sh for.sh
5050
5050
[root@test ~]#
发表评论
-
linux yum 下载至本地及使用本地缓存安装包
2018-12-29 08:04 30911.搭建yum服务器 2.使用yum下载缓存进行封装,然后使用 ... -
linux grep命令
2014-12-08 10:06 5411.作用 Linux系统中grep命令是一种强大的文本搜索工具 ... -
Linux中Samba详细安装
2014-12-08 09:05 534为了实现Windows主机与Linux服务器之间的资源共享,L ... -
linux挂载光驱以及yum配置与安装
2014-12-01 10:12 11501,使用命令ll /dev/* |gr ... -
linux培训笔记2
2014-10-28 16:47 854linux的编辑器: 1、gedit & (必须在图形 ... -
linux 培训笔记
2014-10-27 11:33 780何世晓 server raid lsi 内存大于等于1G,带锂 ... -
linux培训笔记
2014-10-27 11:32 578/boot分区单独划分,大小为200M,其他采用LVM逻辑卷划 ... -
Linux: 字体安装
2014-04-14 11:58 703本实验以安装宋体( simsun.ttf ) 为例, 记录下安 ... -
make报错:"/usr/bin/ld: cannot find -lXXX"
2014-04-12 18:16 771在编译php时报错如下: # make 。。。 /usr/bi ... -
linux--apache的ab命令
2014-03-09 19:24 5281. 最基本的关心两个选项 -c -n 例: ./ab -c ... -
/bin/sh^M: bad interpreter:没有那个文件或目录解决
2014-03-09 18:55 911/bin/sh^M: bad interpreter:没有那个 ... -
linux定时任务的设置
2014-01-03 11:47 556为当前用户创建cron服务 ... -
Centos和RHEL的区别
2013-10-19 20:19 771CentOS简介关于CentOS CentOS是Comm ... -
Linux 查看CPU信息、机器型号等硬件信息
2013-10-11 14:20 530测试机器的硬件信息: 查看CPU信息(型号) # cat ... -
Linux 查看CPU,内存,硬盘
2013-06-08 10:59 7331 查看CPU 1.1 查看CPU个数 # cat /pr ... -
常见命令
2013-06-08 10:53 5431,打开开机启动项(win7):在菜单搜索框中输入msconf ... -
Linux init.d
2013-06-08 10:05 611本文包括3部分内容 1、 Linux的引导过程 2 ... -
Linux下which、whereis、locate、find 命令的区别
2013-06-04 17:40 651我们经常在linux要查找 ...
相关推荐
Linux 培训笔记 Linux 培训笔记是对 Linux 操作系统的基本概念和常用命令的总结。以下是笔记的要点总结: 目录结构 * /bin: 系统可执行文件存放目录 * /lib: 系统库文件存放目录,动态链接库以.so 结尾 * /usr: ...
北京培训机构资料,整理linux基础所有常用指令,快速入门必备
- **标题**:"Linux培训教程:从实践中学习Linux-学习笔记.pdf" 明确指出了这是一份针对Linux操作系统的培训资料,强调了通过实践来学习的重要性。 #### 描述解析 - **描述**:"Linux培训教程:从实践中学习Linux-...
黑马程序员 Linux 从入门到精通配套笔记 本资源汇总了 Linux 操作系统的发展史、安装方法、特点和分支等内容。下面是从文件中提取的知识点: 一、Linux 发展史 1. Linux 的前身是 Unix,于 1968 年由 Multics ...
### Linux培训笔记精要 #### 一、Linux系统概述与基础命令 1. **BusyBox在小型系统中的应用**:BusyBox是一个集成了上百个最常用Linux命令和工具的软件,它体积小巧,功能强大,特别适合嵌入式设备或资源受限的...
这篇"Linux培训学习笔记"主要涵盖了Linux的基础知识,包括登录、密码管理、文件编辑以及vi编辑器的使用。 首先,Linux的登录过程非常简单,用户通过指定的用户名和密码进入系统。例如,如果用户名是`linux`,密码是...
培训笔记Linux系统入门
这篇笔记涵盖了C语言和Linux基础,适合初学者和自学者。笔记主要分为以下几个知识点: 1. **Linux硬盘分区**: - 主分区和扩展分区的总数不超过4个,其中扩展分区最多1个。 - 逻辑分区从5开始,理论上没有数量...
这份“Linux培训笔记”很可能是对Linux操作系统深入学习的记录,包含了丰富的知识和实践经验。以下是对Linux系统的一些核心概念和常用命令的概述,旨在帮助初学者或需要进一步提升技能的IT从业者。 1. **Linux基础*...
Linux LAMP培训内部笔记 绝对正品
这份"公司Linux培训.rar"压缩包显然包含了一些与企业级Linux使用和管理相关的资源,可能是教程、笔记或者是培训材料。以下是根据标题和描述可能涵盖的一些关键知识点: 1. **Linux基础知识**:这部分可能介绍了...
Linux驱动程序是操作系统与硬件设备之间的桥梁,...通过这份达内培训资料,学习者可以从实际代码和讲解中获得丰富的实践经验,逐步掌握Linux驱动开发的核心技能。无论你是初学者还是有一定经验的开发者,都能从中受益。
【尚观培训Linux许巍关于C++的笔记和讲义】是针对嵌入式Linux驱动开发的学习资料,其中包含了丰富的C++编程知识。C++是一种强大的、通用的面向对象编程语言,广泛应用于系统软件、应用软件、游戏开发、驱动程序等...
本人参加linux培训时的内部学习笔记,绝对是不可多得的学习资料!
这本培训笔记由Andrew McGill编写,属于Leading Edge Business Solutions公司的Linux培训计划的一部分。该文档受到版权保护,但可以在GNU自由文档许可证条款下重新分发。 LPI 101课程涵盖了LPI考核的知识点,从基础...
【尚观培训Linux许巍老师关于C语言的课程笔记与讲义】是针对想学习或深化C语言理解的IT从业者及爱好者的一份宝贵资源。尚观是一家知名的IT培训机构,其提供的课程涵盖了广泛的IT领域,包括嵌入式Linux驱动开发。这份...
LINUX培训笔记,从基础到复杂,讲得比较详细,有兴趣的可以看看。
尚观 linux内核驱动开发 笔记 网络编程部分 绝对值得研究!