2-8 无人值守安装服务器搭建 日志

无人值守安装服务器搭建
PXE + DHCP+TFTP+ Kickstart+ FTP
dhcp PXE tftp vsftpd system-config-kickstart

#####################################################
#####################################################
#####################################################
#####################################################
1. 查询系统安装环境
查询光驱挂载情况
[[email protected] ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 10190136 1602468 8063380 17% /
tmpfs 502068 0 502068 0% /dev/shm
/dev/sda1 487652 31507 430545 7% /boot
/dev/sda5 7619708 488740 6737240 7% /var
/dev/sr0 6036800 6036800 0 100% /mnt
[[email protected] ~]# ls /mnt
CentOS_BuildTag isolinux RPM-GPG-KEY-CentOS-Debug-6
EFI Packages RPM-GPG-KEY-CentOS-Security-6
EULA RELEASE-NOTES-en-US.html RPM-GPG-KEY-CentOS-Testing-6
GPL repodata TRANS.TBL
images RPM-GPG-KEY-CentOS-6
[[email protected] ~]#

查询网络状态
[[email protected] ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:A1:20:66
inet addr:192.168.171.120 Bcast:192.168.171.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fea1:2066/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:621 errors:0 dropped:0 overruns:0 frame:0
TX packets:553 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:71067 (69.4 KiB) TX bytes:70929 (69.2 KiB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

[[email protected] ~]# ping www.baidu.com
PING www.a.shifen.com (111.13.100.91) 56(84) bytes of data.
64 bytes from 111.13.100.91: icmp_seq=1 ttl=54 time=21.3 ms
64 bytes from 111.13.100.91: icmp_seq=2 ttl=54 time=15.4 ms
^C
--- www.a.shifen.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1538ms
rtt min/avg/max/mdev = 15.435/18.404/21.373/2.969 ms
[[email protected] ~]#

查询yum源配置情况
[[email protected] ~]# ls /etc/yum.repos.d/
centos6.repo CentOS-Debuginfo.repo CentOS-Media.repo Epel-6.repo
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo
[[email protected] ~]# cat /etc/yum.repos.d/centos6.repo
[CentOS6-SERVER]
name = CentOS 6.8 server
baseurl = file:///mnt
enable = 1
gpgcheck = 0
[[email protected] ~]# yum clean all && yum list && yum makecache

查询软件包
[[email protected] ~]# rpm -qa | grep tftp
[[email protected] ~]# rpm -qa | grep vsftp
[[email protected] ~]# rpm -qa | grep system-config-kickstart
[[email protected] ~]# rpm -qa | grep dhcp
dhcp-common-4.1.1-51.P1.el6.centos.x86_64
[[email protected] ~]# rpm -qa | grep dhcpd
[[email protected] ~]# yum list | grep system-config-kickstart
system-config-kickstart.noarch 2.8.6.6-1.el6 CentOS6-SERVER
[[email protected] ~]# yum list | grep vsftp
vsftpd.x86_64 2.2.2-21.el6 CentOS6-SERVER
[[email protected] ~]# yum list | grep tftp
syslinux-tftpboot.noarch 4.04-3.el6 CentOS6-SERVER
tftp.x86_64 0.49-8.el6 CentOS6-SERVER
tftp-server.x86_64 0.49-8.el6 CentOS6-SERVER
[[email protected] ~]# yum list | grep dhcp
dhcp-common.x86_64 12:4.1.1-51.P1.el6.centos @anaconda-CentOS-201605220104.x86_64/6.8
dhcp.x86_64 12:4.1.1-51.P1.el6.centos CentOS6-SERVER
dhcp-devel.i686 12:4.1.1-51.P1.el6.centos CentOS6-SERVER
dhcp-devel.x86_64 12:4.1.1-51.P1.el6.centos CentOS6-SERVER
dhcping.x86_64 1.2-13.el6 epel
nagios-plugins-dhcp.x86_64 2.0.3-3.el6 epel
sblim-cmpi-dhcp.i686 1.0-1.el6 CentOS6-SERVER
sblim-cmpi-dhcp.x86_64 1.0-1.el6 CentOS6-SERVER
sblim-cmpi-dhcp-devel.i686 1.0-1.el6 CentOS6-SERVER
sblim-cmpi-dhcp-devel.x86_64 1.0-1.el6 CentOS6-SERVER
sblim-cmpi-dhcp-test.x86_64 1.0-1.el6 CentOS6-SERVER
wide-dhcpv6.x86_64 20080615-13.1.el6 epel
[[email protected] ~]#

#####################################################
#####################################################
#####################################################
2. 安装system-config-kickstart 并生成ks.cfg
配置ks.cfg

安装system-config-kickstart
yum -y install system-config-kickstart

# 在xshell中:
#文件-->属性-->连接-->ssh-->隧道-->转发x11连接到--> Xmanager
# 设置中文图形界面:
#LANG=zh_CN.UTF-8

system-config-kickstart #启动配置程序
配置如下:
1. 基本配置

2. 安装方法

3. 引导装载程序选项

4. 分区信息

5. 网络配置

6. 验证

7. 防火墙配置

8. 显示配置

9. 软件包选择

10. 预安装脚本(跳过)
11. 安装后台脚本

文件-->保存-->/root/ks.cfg

[[email protected] ~]# system-config-kickstart
/usr/share/system-config-kickstart/kickstartGui.py:103: GtkWarning: GtkSpinButton: setting an adjustment with non-zero page size is deprecated
xml = gtk.glade.XML ("/usr/share/system-config-kickstart/system-config-kickstart.glade", domain="system-config-kickstart")
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
/usr/share/system-config-kickstart/kickstartGui.py:220: GtkWarning: Attempting to store changes into `/root/.local/share/recently-used.xbel‘, but failed: Failed to create file ‘/root/.local/share/recently-used.xbel.4AXLNY‘: No such file or directory
gtk.main()
/usr/share/system-config-kickstart/kickstartGui.py:220: GtkWarning: Attempting to set the permissionsof `/root/.local/share/recently-used.xbel‘, but failed: No such file or directory
gtk.main()
/tmp/tmpmzpklH/var/lib/rpm: No such file or directory
[[email protected] ~]# echo $LANG
en_US.UTF-8
[[email protected] ~]# LANG=zh_CN.UTF-8
[[email protected] ~]# system-config-kickstart
/usr/share/system-config-kickstart/kickstartGui.py:103: GtkWarning: GtkSpinButton: setting an adjustment with non-zero page size is deprecated
xml = gtk.glade.XML ("/usr/share/system-config-kickstart/system-config-kickstart.glade", domain="system-config-kickstart")
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Antarctica/Troll
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: America/Kralendijk
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: America/Creston
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: America/Fort Nelson
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Europe/Busingen
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Pacific/Chuuk
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Pacific/Pohnpei
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: America/Bahia Banderas
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Pacific/Bougainville
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Asia/Hebron
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Europe/Astrakhan
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Europe/Ulyanovsk
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Asia/Barnaul
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Asia/Chita
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Asia/Khandyga
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Asia/Ust-Nera
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Asia/Srednekolymsk
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: Africa/Juba
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: America/Lower Princes
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: America/North Dakota/Beulah
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: America/Sitka
entry = ZoneTabEntry (code, lat, long, tz, comments)
/usr/lib/python2.6/site-packages/scdate/core/zonetab.py:227: RuntimeWarning: Untranslated time zone: America/Metlakatla
entry = ZoneTabEntry (code, lat, long, tz, comments)
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Package ibus-table-cangjie is obsoleted by ibus-table-chinese-cangjie, trying to install ibus-table-chinese-cangjie-1.4.6-1.el6.noarch instead
Package ibus-table-erbi is obsoleted by ibus-table-chinese-erbi, trying to install ibus-table-chinese-erbi-1.4.6-1.el6.noarch instead
Package ibus-table-wubi is obsoleted by ibus-table-chinese-wubi-jidian, trying to install ibus-table-chinese-wubi-jidian-1.4.6-1.el6.noarch instead
/usr/share/system-config-kickstart/kickstartGui.py:220: GtkWarning: Attempting to store changes into `/root/.local/share/recently-used.xbel‘, but failed: 创建文件“/root/.local/share/recently-used.xbel.QX5TNY”失败:没有那个文件或目录
gtk.main()
/usr/share/system-config-kickstart/kickstartGui.py:220: GtkWarning: Attempting to set the permissionsof `/root/.local/share/recently-used.xbel‘, but failed: 没有那个文件或目录
gtk.main()
/usr/share/system-config-kickstart/kickstartGui.py:220: GtkWarning: Attempting to store changes into `/root/.local/share/recently-used.xbel‘, but failed: 创建文件“/root/.local/share/recently-used.xbel.AKEMNY”失败:没有那个文件或目录
gtk.main()
/tmp/tmpxEPXnu/var/lib/rpm: 没有那个文件或目录

#####################################################
#####################################################
#####################################################
3. 安装vsftp 并配置安装环境
拷贝ks.cfg
挂载光盘镜像到/var/ftp/pub目录下,并设置开机自动挂在

安装vsftpd服务
yum -y install vsftpd

cp ks.cfg /var/ftp/.
echo "/dev/sr0 /var/ftp/pub iso9660 defaults 0 0" >> /etc/fstab
mount /var/ftp/pub

[[email protected] ~]# chkconfig vsftpd on
[[email protected] ~]# chkconfig --list vsftpd
[[email protected] ~]# service vsftpd start

#####################################################
#####################################################
#####################################################
4. 安装tftp 并配置安装环境
拷贝光盘启动PXE引导文件
pxelinux.cfg/

yum -y install tftp tftp-server # xinetd 依赖安装

配置TFTP服务,tftp依赖xinetd管理
[[email protected] ~]# vim /etc/xinetd.d/tftp

service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot # 修改共享目录/tftpboot
disable = no # 原为yes,默认不启动,改为no
per_source = 11
cps = 100 2
flags = IPv4
}

mkdir -p /tftpboot/pxelinux.cfg

cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
cp /mnt/images/pxeboot/initrd.img /tftpboot/
cp /mnt/images/pxeboot/vmlinuz /tftpboot/
cp /usr/share/syslinux/pxelinux.0 /tftpboot/
# 安装system-config-kickstart后,才会生成pxelinux-0文件
# rpm -qf /usr/share/syslinux/pxelinux.0
# ---> syslinux-nonlinux-4.04-3.el6.noarch

ls -lR /tftpboot/
/tftpboot/:
total 43936
-r--r--r-- 1 root root 40688737 Sep 14 08:17 initrd.img
-rw-r--r-- 1 root root 26759 Sep 14 08:17 pxelinux.0
drwxr-xr-x 2 root root 4096 Sep 14 08:17 pxelinux.cfg
-r-xr-xr-x 1 root root 4264528 Sep 14 08:17 vmlinuz
/tftpboot/pxelinux.cfg:
total 4
-r--r--r-- 1 root root 923 Sep 14 08:17 default

chmod 644 /tftpboot/pxelinux.cfg/default
vim /tftpboot/pxelinux.cfg/default
修改Line 1 如下:
default linux
修改line 22 如下:
append initrd=initrd.img ks=ftp://192.168.120.1/ks.cfg

chkconfig xinetd on
chkconfig --list xinetd
chkconfig --list tftp
/etc/init.d/xinetd start
service xinetd start

#####################################################
#####################################################
#####################################################
5. 安装dhcp 并配置安装环境
配置dhcpd服务器,本机网卡IP地址与上设置相符192.168.120.1
并设置下一跳 192.168.120.1 pxelinux.0

yum -y install dhcp

mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.bak
cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
最终配置文件修改如下:
# dhcpd.conf
# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;

# A slightly different configuration for an internal subnet.
subnet 192.168.120.0 netmask 255.255.255.0 {
range 192.168.120.100 192.168.120.200;
option domain-name-servers 192.168.120.1;
option domain-name "xiaogan.org";
option routers 192.168.120.1;
option broadcast-address 192.168.120.255;
default-lease-time 600;
max-lease-time 7200;
next-server 192.168.120.1;
filename "pxelinux.0";
}

添加网卡,使用网络vmnet6,并配置网卡IP=192.168.120.1
vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1
TYPE=Ethernet
NM_CONTROLLED=yes
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.120.1
NETMASK=255.255.255.0
GATEWAY=192.168.120.1
DNS1=8.8.8.8

/etc/init.d/network restart

chkconfig dhcpd on
chkconfig --list dhcpd
/etc/init.d/dhcpd start

#####################################################
#####################################################
#####################################################
6. 检查
网络环境测试:
ifconfig

服务运行状态及端口监听情况:
/etc/init.d/dhcpd status
/etc/init.d/xinetd status
/etc/init.d/vsftpd status

netstat -anlput | grep dhcpd
netstat -anlput | grep xinetd
netstat -anlput | grep vsftpd
lsof -i :69

# yum -y install lsof
# rpm -ivh /mnt/Packages/lsof-4.82-5.el6.x86_64.rpm

服务开机启动状态:
chkconfig --list dhcpd
chkconfig --list tftp
chkconfig --list xinetd
chkconfig --list vsftpd

下一跳地址及文件名称:
cat /etc/dhcp/dhcpd.conf

启动文件状态:
ls -lR /tftpboot

检查启动文件启动信息
cat /tftpboot/pxelinux.cfg/default
line 1 和 line 22

安装文件及应答文件状态:
cat /etc/fstab
df -lhT | grep pub
ls -l /var/ftp

检查应答文件中ftp地址
cat /var/ftp/ks.cfg

尝试使用tftp连接获取文件
chmod 777 /tftpboot
#####################################################
#####################################################
#####################################################
7. 配置新的虚拟机,并设置网络环境vmnet6,设置网络启动
# 在真实环境中,使用快速启动菜单选择启动项,即可!!!
# 由于使用虚拟机,设置BIOS 网络启动,所以在安装完成后,要及时停止,修改启动项为硬盘启动不然会无休止的重装系统!!!

时间: 2024-11-05 14:57:19

2-8 无人值守安装服务器搭建 日志的相关文章

搭建无人值守安装服务器

方法:FTP+TFTP+DHCP+Kickstart+PXE 一.原理和概念 1.PXE PXE并不是一种安装方式,而是一种引导方式.进行PXE安装的必要条件是要安装的计算机中包含一个PXE支持的网卡(NIC),即网卡中必须要有PXE Client.PXE(Pre-boot ExecutionEnvironment)协议使计算机可以通过网络启动. 前提:网卡中必须有PXE芯片 协议分为client和server端,PXE client在网卡的ROM中,当计算机引导时,BIOS把PXE clent

iOS 企业证书签名包ipa无线安装服务器搭建注意事项

0. 因为iOS 7.1以后要求链接地址为https(itms-services://?action=download-manifest&url=https://10.208.99.199/ota/ios/plist/8239),所以apache服务器要开启https,具体步骤参见:http://www.cnblogs.com/y500/p/3596473.html 在以上步骤需要注意的是,生成SSL证书时,输入的common name要以服务器地址名称一致,如10.208.99.199或者域名

Linux基础(三)—yum软件安装&服务器搭建

Yum工作机制 基于红帽RPM封装包构建的软件更新机制 基于C/S架构 自动解决软件依赖关系 所有软件包集中在yum软件仓库提供 默认在/etc/yum.repos.d/CentoS*.repop记录软件来源 软件仓库 包含大量软件包+配套的档案数据 Packages (软件包)+repodate (仓库档案) 默认由CentoS官方提供 软件管理命令 Yum list 软件名 列出某个软件的安装信息 Yum info 软件名 Yum provides 程序或文件 Yum list instal

百晓生带你玩转linux系统服务搭建系列----pxe远程安装服务器的搭建及无人值守安装

实验环境系统环境:centos6.5:程安装服务器WIN7:客户端一.pxe远程安装服务器的搭建 安装并开启需要的服务,tftp,ftp,dhcp.1) yum -y install tftp-server,安装tftp环境软件包(如没有安装yum仓库,请参考http://blog.51cto.com/13842738/2135806)2) 编辑tftp配置文件vim /etc/xinetd.d/tftp 将"disable = yes"改为"disable = no&quo

Linux下搭建无人执守安装服务器

Linux下搭建无人执守安装服务器 实验概述 原理和概念: 1:什么是PXE ? 严格来说,PXE 并不是一种安装方式,而是一种引导的方式.进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client.PXE (Pre-bootExecution Environment)协议使计算机可以通过网络启动. 网卡中必须有PXE芯片 协议分为client 和 server 端,PXE client 在网卡的 ROM 中,当计算机引导时,BI

rsyslog+mysql+loganalyzer 环境搭建日志服务器

环境:CentOS6.6 rsyslog+mysql+loganalyzer 环境搭建日志服务器 Client端:    192.168.2.10 MySQL服务器:  192.168.2.11 # Client端安装必备的软件包 yum install rsyslog-mysql -y 生成了2个文件: /lib64/rsyslog/ommysql.so           #rsyslog支持数据库的模块文件 /usr/share/doc/rsyslog-mysql-5.8.10/creat

linux日志服务器搭建

1.日志服务器简介 日志服务器的主要作用是为了收集网络环境中的各种主机.服务器.交换机.路由器等设备的日志.对于一个大型的公司来说,其网络环境中的服务器.主机等各种设备会分散在各处,而为了维护好网络,管理员必需及时了解到什么时候什么设备出了什么样的问题,并及时解决,才能保证网络的整体运行,那么日志服务器就给管理员提供了一个这样的管理平台,它可以收集到管理员需要了解的日志信息,并以web页面的方式使管理员能够便捷的管理各种设备. 2.实验环境: 1).操作系统:CentOS-6.5-i386 2)

rsyslog+loganalyzer搭建日志服务器

日志简介: 日志:即历史事件,按时间序列将发生的事件予以记录:日志记录了事件发生的时间,时间内容,事件的关键性程度:运维人员可通过检查这些记录的信息,发现错误发生的原因,或寻找受到攻击时,攻击者留下的痕迹. syslog是CentOS6之前的默认日志系统: syslogd:系统进程的相关日志 kloged:内核事件相关日志 rsyslog是CentOS6的默认日志系统: 支持多线程 支持tcp,ssl,tls,relp等协议 支持MySQL,PGSQL,Oracle等多种关系型数据中 强大的过滤

rsyslog+loganalyzer+mysql+apache+php的lamp架构搭建日志服务器

当服务器遇到问题时,运维工程师都会根据日志分析问题,当黑客入侵服务器时,基本都会删除日志,以免留下蛛丝马迹,由此可见日志对服务器来说多么重要,为此很多公司都会有自己的日志服务器,下面我们来一起学习如何搭建日志服务器和日志分析工具. 1.首先必须得客户机与服务器都安装rsyslog这个软件: [[email protected] ~]# yum -y install rsyslog 2.客户机修改配置文件(1.4为日志服务器) [[email protected] ~]# grep -v "^$&