存档
--gcc安装---
1 查看sun os版本
uname -a的命令查看系统版本。得知是SunOS 5.8。
SunOS 5.8 叫做Solaris 8
SunOS 5.9 叫做Solaris 9,以后就没有5.x的说法了,到Solaris 10了。。。
2 安装gcc
1. 到www.sunfreeware.com下载gcc-3.4.6-sol8-sparc-local.gz
2. gunzip gcc-3.4.6-sol8-sparc-local.gz
3. pkgadd -d gunzip gcc-3.4.6-sol8-sparc-local
4. 手工设置root环境变量,添加PATH 、LD_LIBRARY_PAT
export PATH=$PATH: /usr/local/bin
export LD_LIBRARY_PATH=$ LD_LIBRARY_PATH: /usr/local/lib
完毕后发现gcc -v报错:ld.so.1: gcc: fatal: libintl.so.3: open failed: No such file or directory,那么要安装libintl库
3 安装libintl库
1. 从www.sunfreeware.com下载libintl-3.4.0-sol8-sparc-local.gz
2. gunzip libintl-3.4.0-sol8-sparc-local.gz
3. pkgadd -d libintl-3.4.0-sol8-sparc-local
完毕后发现gcc -v报错:ld.so.1: gcc: fatal: libiconv.so.2: open failed: No such file or directory,那么要安装libiconv库
1、编辑/etc/ssh/sshd_config;把 PermitRootLogin no改成 PermitRootLogin yes
2、svcadm restart network/ssh
请参考:
aix与solaris中mount一个iso文件的方法
Linux系统在使用光盘、软盘或U盘时,必须先执行挂载(mount)命令。挂载命令会将这些存储介质指定成系统中的某个目录,以后直接访问相应目录即可读写存储介质上的数据。
1.挂载光盘
挂载光盘的命令如下:
# mount -t is09660 /dev/cdrom /mnt/cdrom
该命令将光盘挂载到/mnt/cdrom目录,使用“ls /mnt/cdrom”命令即可显示光盘中数据和文件。
卸载光盘的命令如下:
# umount /mnt/cdrom
2.挂载软盘
将软盘挂载到/mnt/floppy目录的命令如下:
# mount /dev/fd0 /mnt/floppy
卸载软盘的命令如下:
#umount /mnt/floppy
3.挂载U盘挂载U盘相对复杂一些。
首先使用“fdisk -l”命令查看外挂闪存的设备号,一般为/dev/sda1。然后用“mkdir /mnt/usb”命令建立一个挂载U盘用的目录。之后使用如下命令挂载FAT格式的U盘:
# mount -t msdos /dev/sda1 /mnt/usb
使用如下命令挂载FAT32格式的U盘:
# mount -t vfat /dev/sda1 /mnt/usb
4.挂载外挂硬盘分区
挂载外挂硬盘分区(FAT32格式)同样需要先用“fdisk -1”查看外挂的硬盘分区设备号,假设为/dev/hda1。建立/mnt/vfat挂载目录后,使用如下命令进行挂载:
# mount -t vfat /dev/hda1 /mnt/vfat
注意,默认情况下Linux只允许root用户执行mount命令。如果想让一般用户也能挂载,并且希望在系统启动时自动挂载光盘或软盘,需要修改/etc/fstab配置文件,加入以下内容:
LABEL=/ / ext3 defaults 11
/dev/cdrom/mnt/cdrom iSo9660 auto,owner,kudzu,ro,user 00
/dev/fdo /mnt/floppy auto auto,owner,kudzu,ro,user 00
其中,“user”表示将mount命令赋予一般用户使用。
/etc/fstab文件在Linux的帮助手册中讲得很详细,读者不妨看一看。
光盘的使用方法
mount命令用于物理设备中的文件系统挂在到linux文件系统的某个目录中,mount命令不使用任何选项和参数时将显示当前linux系统中已经挂载的文件系统信息。
#ls -l /media/cdrom/(/media/cdrom/是linux系统默认的挂载点,只有当默认挂载点为total 0,时才能进行挂载。)
#mount -t iso9660 /dev/cdrom /media/cdrom/(光盘挂载)
#ls /media/cdrom/(读取光盘内容)
#cp /dev/cdrom backup.iso(制作光盘镜像)
#umount /media/cdrom/(卸载光盘)
#eject(光盘驱动托盘弹出)
#eject -t(收回)
#mount -o loop -t iso9660 backup.iso /media/cdrom/(光盘镜像的挂载;backup.iso为光盘的镜像文件。)
#umount /media/cdrom/(镜像的卸载)
--------------------------------------------------------------------------
在虚拟机上redhat 5.4 64bit上面,光驱的设备名为:./dev/hdc
挂载用:
mkdir -p /mnt/cdrom
mount /dev/hdc /mnt/cdrom 或者: mount -t iso9660 /dev/hdc /mnt/cdrom
卸载用:
unmount /mnt/cdrom
以下操作均由sybase用户来做:
新建一个脚本文件,譬如/sybase/script/dump.sh
类容如下
$ cat dump.sh
/sybase/OCS-12_5/bin/isql -Usa -P******* -S******* -i /sybase/script/dump.sql -o /sybse/script/dump.log
mv /caiwubackup/backup/cwbase1.bak /caiwubackup/backup/cwbase1_`date +%Y%m%d`.bak
mv /caiwubackup/backup/cwbase2.bak /caiwubackup/backup/cwbase2_`date +%Y%m%d`.bak
mv /caiwubackup/backup/cwbase3.bak /caiwubackup/backup/cwbase3_`date +%Y%m%d`.bak
mv /caiwubackup/backup/cwmaster.bak /caiwubackup/backup/cwmaster_`date +%Y%m%d`.bak
mv /caiwubackup/backup/master.bak /caiwubackup/backup/master_`date +%Y%m%d`.bak
(注意:`号是在键盘左上角和波浪线在一起的那个键上,不是单引号)
在同一个目录下新建脚本dump.sql
类容如下
$ cat dump.sql
dump database cwbase1 to "/caiwubackup/backup/cwbase1.bak"
go
dump database cwbase2 to "/caiwubackup/backup/cwbase2.bak"
go
dump database cwbase3 to "/caiwubackup/backup/cwbase3.bak"
go
dump database cwmaster to "/caiwubackup/backup/cwmaster.bak"
go
dump database master to "/caiwubackup/backup/master.bak"
go
制定一个定时计划,每天晚上23点30开始备份数据库
$crontab -e
30 23 * * * /sybase/script/dump.sh
根据你本机的实际情况,修改相关数据库名称和路径。
AIX下mount一个iso文件的步骤:
mklv -y cdaix -s n -L /dev/cdaix rootvg 384M hdisk0
dd if=/sybase/sybaseAIX64BIT.iso of=/dev/cdaix bs=10m
mkdir /mnt/cdaix
mount -v cdrfs -o ro /dev/cdaix /mnt/cdaix
完成,加载点/mnt/aix内即为iso的内容。
Solaris下mount一个iso文件的步骤:
lofiadm (显示已用的设备名)
lofiadm -a /db/sybdata/rs1520solx64zhja.ISO /dev/lofi/2
lofiadm /dev/lofi/2 (查看刚才创建的附属的块设备)
mount -F hsfs -o ro /dev/lofi/2 /mnt (用mount命令mount映像文件)
完成,加载点/mnt内即为iso的内容。
Linux下mount一个iso文件的步骤:
mount -t iso9660 -o loop ./wary-5.1.4.iso /mnt/remove/
————————————————————————————————-
—- 本文为andkylee个人原创,请在尊重作者劳动成果的前提下进行转载;
—- 转载务必注明原始出处 : http://www.dbainfo.net
—- 关键字: aix solaris mount iso mklv dd lofiadm
————————————————————————————————-
此篇为对以前的问题的整理。
在solaris 10 64-bit上安装Sybase15.0.3 ESD#1,程序安装好了后用资源文件 resource-files来创建服务 。但是老是报不能创建共享内存 的错误。
Solaris环境为:
Sun OS 5.10 Generic_127111-11 sun4v sparc SUNW,SPARC-Enterprise-T5120
16G内存,64核CPU
共享内存已经配置为如下,故没有调整。
root@SERVER # more /etc/system | grep shm
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=10
set shmsys:shminfo_shmmax=4294967295
* exclude: sys/shmsys
set shmsys:shminfo_shmmax=10294967295
set shmsys:shminfo_shmmin=1
* set shmsys:shminfo_shmmni=100
* set shmsys:shminfo_shmseg=10
* set shmsys:shminfo_shmmax = 268435456
* set shmsys:shminfo_shmseg = 1024
* set shmsys:shminfo_shmmni = 1024
set shmsys:shminfo_shmmni = 4096
其中曾经重启过一次服务器 。
但是用资源文件创建服务时,srvbuildres -I /app/sybase/interfaces -r /app/sybase/srvbuild-adaptiveserver.res
一直下面的报错。
-bash-3.00$ more srvbuild0111.017
Mon Jan 11 22:55:57 2010: srvbuild/15.0.3 ESD #1/P/Sun_svr4/SunOS 5.8/EBF 16556/OPT/Mon Ma
r 9 02:14:53 PDT 2009
Mon Jan 11 22:55:57 2010: Getting attribute values from sybinit resource file `/app/sybase
/srvbuild.adaptive_server.rs'.
Mon Jan 11 22:55:57 2010:
Mon Jan 11 22:55:57 2010:
Mon Jan 11 22:55:57 2010:
Mon Jan 11 22:55:57 2010:
type = 1
application_type = MIXED
server_page_size = 4k
master_device_physical_name = /app/sybdata/master.dat
master_device_size = 200
master_database_size = 160
sybsystemprocs_device_physical_name = /app/sybdata/rsystemprocs.dat
sybsystemprocs_device_size = 200
sybsystemprocs_database_size = 200
errorlog = /app/sybase/ASE-15_0/install/SYBASE.log
configfile = /app/sybase/ASE-15_0/SYB_XXXX_TEST.cfg
sybsystemdb_device_physical_name = /app/sybdata/rsystemdb.dat
sybsystemdb_device_size = 20
sybsystemdb_database_size = 20
tempdb_device_physical_name = /app/sybdata/tempdbdev.dat
tempdb_device_size = 100
tempdb_database_size = 100
shmem = /app/sybase/ASE-15_0
default_backup_server = SYB_XXXX_TEST_BS
ifiledir = /app/sybase
addl_cmdline_parameters =
do_configure_pci = no
sybpcidb_device_physical_name = PUT_THE_PATH_OF_YOUR_SYBPCIDB_DATA_DEVICE_HERE
sybpcidb_device_size = 48
sybpcidb_database_size = 48
server_name = SYB_XXXX_TEST
force_buildmaster = no
do_optimize_config = no
Mon Jan 11 22:55:57 2010: (Shell command) /app/sybase/ASE-15_0/bin/dataserver -d/app/sybda
ta/master.dat -b200M -z4k -sSYB_XXXX_TEST -e/app/sybase/ASE-15_0/install/SYBASE.log -T1623
> /tmp/sbAAAjCaGrf 2>&1
dataserver: master device size for this server: 200.0 Mb
dataserver: master database size for this server: 26.0 Mb
dataserver: model database size for this server: 6.0 Mb
00:00000:00000:2010/01/11 22:55:57.87 kernel SySAM: Using licenses from: /app/sybase/SYSA
M-2_0/licenses
00:00000:00000:2010/01/11 22:55:57.96 kernel SySAM: Checked out license for 1 ASE_CORE (2
009.1231/permanent/19B3 47BC 0B7E 8DC3).
00:00000:00000:2010/01/11 22:55:57.96 kernel This product is licensed to: ASE Developer E
dition - For Development and Test use only
00:00000:00000:2010/01/11 22:55:57.96 kernel Checked out license ASE_CORE
00:00000:00000:2010/01/11 22:55:57.96 kernel Adaptive Server Enterprise (Developer Editio
n)
00:00000:00000:2010/01/11 22:55:57.97 kernel Initializing device /app/sybdata/master.dat
from offset 0 with zeros.
00:00000:00000:2010/01/11 22:56:00.46 kernel Finished initialization.
00:00000:00000:2010/01/11 22:56:00.47 kernel Using config area from primary master device
.
00:00000:00000:2010/01/11 22:56:00.47 server Configuration Error: Configuration file, '/a
pp/sybase/SYB_XXXX_TEST.cfg', does not exist.
00:00000:00000:2010/01/11 22:56:00.66 kernel Warning: A configuration file was not specif
ied and the default file '/app/sybase/SYB_XXXX_TEST.cfg' does not exist. ASE creates the d
efault file with the default configuration.
00:00000:00000:2010/01/11 22:56:00.68 kernel Warning: Using default file '/app/sybase/SYB
_XXXX_TEST.cfg' since a configuration file was not specified. Specify a configuration file
name in the RUNSERVER file to avoid this message.
00:00000:00000:2010/01/11 22:56:00.69 kernel os_create_region: can't allocate 70795264 by
tes
00:00000:00000:2010/01/11 22:56:00.69 kernel kbcreate: couldn't create kernel region.
00:00000:00000:2010/01/11 22:56:00.69 kernel kistartup: could not create shared memory
Mon Jan 11 22:56:00 2010: Buildmaster return code: 0.
sybdata/master.dat -e/app/sybase/ASE-15_0/install/SYBASE.log -c/app/sybase/ASE-15_0/SYB_XXXX_TEST.cfg -M/app/sybase/ASE-15_0 -i/app/sybase -sSYB_XXXX_TEST -T1623 > /dev/null 2>&1
-bash-3.00$
是共享内存的问题吗?我不是已经按照安装文档上的说明修改了solaris的共享内存了吗?
后来,经过咨询solaris工程师,原来是solaris10和以前的solaris9在共享内存上有些不同。solaris10修改了共享内存方式,针对用户级别可以设置用户所能共享的内存段。
为sybase用户在项目数据库中添加一条记录,命令如下:
projadd -U sybase -p 1233 -c "sybase parameters" user.sybase
projmod -sK "project.max-shm-memory=(priv,6G,deny)" user.sybase
projmod -sK "project.max-sem-ids=(priv,100,deny)" user.sybase
projmod -sK "process.max-sem-nsems =(priv,256,deny)" user.sybase
另外,可以查看文件/etc/project来检查上面的配置是否生效。
修改完之后,再次执行srvbuildres命令创建sybase主服务,成功!
————————————————————————————————-
—- 本文为andkylee个人原创,请在尊重作者劳动成果的前提下进行转载;
—- 转载务必注明原始出处 : http://www.dbainfo.net
—- 关键字:ASE solaris 10 shared memory projadd 共享内存 couldn't create kernel region
————————————————————————————————-
在ibm-aix5.3下用tar打包一个文件夹时报错:tar: 0511-194 Reached end-of-file before expected.
用的命令是:tar -cvf /tmp/sybase12503.tar /sybase/sybase12x
解决方法:
执行ulimit -f 返回结果为:2097151,说明系统对用户所能用的文件大小限制为:2097151*512=1G
此时查看没有成功打包完成的/tmp/sybase12503.tar文件,发现其大小正好是:1073741312 (bytes).
可通过改 /etc/security/limits 文件中的fsize来设置为无限制:
default:
fsize = -1
-bash-3.2$ ls -al /tmp/sybase12503.tar
-rw-r--r-- 1 root system 1142118400 May 12 11:17 /tmp/sybase12503.tar
-bash-3.2$ lsfs -q /tmp
Name Nodename Mount Pt VFS Size Options Auto Accounting
/dev/hd3 -- /tmp jfs2 20971520 -- yes no
—- 本文为andkylee个人原创,请在尊重作者劳动成果的前提下进行转载;
—- 转载务必注明原始出处 : http://www.dbainfo.net
—- 关键字:tar aix ulimit jfs2 打包 压缩 解压
————————————————————————————————-
前些日子在ibm-aix下安装sybase15.0.3时遇到了一个su切换用户时不能加载该用户环境变量的问题。现在问题情况及解决方法整理一下。
在aix下用sybase用户安装并配置完服务后,要设定成开机自动启动。
startsybase.sh的脚本为:
su - sybase -c "startserver -f RUN_servername -f RUN_servername_BS "
这句脚本的意思是:从当前用户(root)切换到sybase用户下,并以sybase用户的身份执行startserver -f RUN_servername -f RUN_servername_BS。
遗憾的是:执行该脚本的时候,提示找不到找不到SYBASE环境变量。 导致不能启动sybase主服务和备份服务器。
上面的语句在Linux运行没有任何问题,但在AIX环境就会报错。
然而,用su - sybase手动切换到sybase用户下,再执行env却能够看到所有SYBAE,SYBAE_ASE,SYBASE_OCS等相关的环境变量。
也就是说用su手动切换到sybase用户时,自动加载了sybase的环境变量。在脚本中执行su - sybase -c ..... 不会自动加载环境变量。
经过苦苦的搜索和自己的实验,最后问题解决了。如果想要加载sybase用户的环境变量,需加一个参数:-l
su - sybase -l -c "startserver -f RUN_servername -f RUN_servername_BS "
但是很奇怪的是: -l这个参数在AIX下的man su 中根本就没有提到。
这么一个小小的问题的确苦恼了我很长时间。最后终于解决了。
参考:http://linux.chinaunix.net/bbs/viewthread.php?tid=1059910&extra=&page=1