㈠ sun solaris 的常用操作命令
(一)基本命令
1.ls 顯示文件名,等同於dos下dir命令
命令格式:ls [option] file
option:
-l 顯示詳細列表
域1 :文件類型和文件許可權
域2 :文件連接數
域3 :文件所有者名字
域4 :文件用戶組名字
域5 :文件長度
域6-8 :最近修改日期
域9 :文件名
-a 顯示所有文件,包含隱藏文件(以. 起頭的文件名)
-R 顯示文件及所有子目錄
-F 顯示文件(後跟*)和目錄(後跟/)
-d 與l選項合用,顯示目錄名而非其內容 2.cd 目錄轉換,等同於dos下cd命令
注意目錄分隔符為「/」,與dos相反
命令格式:cd dirname 3.pwd 顯示當前路徑 4.cat 顯示文件內容,等同於dos下type命令
命令格式:cat filename 5.more 以分頁方式查看文件內容.
命令格式:more filename 6.rm 刪除文件
命令格式: rm [-r] filename (filename 可為檔名,或檔名縮寫符號.)
例子 :
rm file1 刪除檔名為 file1 之文檔.
rm file? 刪除檔名中有五個字元,前四個字元為file 之所有文檔.
rm f* 刪除檔名中,以 f 為字首的所有文檔.
rm -r dir1 刪除目錄 dir1,及其下所有文檔及子目錄. 7.mkdir 創建目錄
命令格式: mkdir [-p] directory-name
例子:
mkdir dir1 建立一新目錄 dir1.
mkdir -p dir/subdir 直接創建多級目錄 8.rmdir 刪除目錄
目錄必須首先為空
命令格式: rmdir directory 9.cp 文檔復制
命令格式: cp [-r] source destination
例子:
cp file1 file2 將文檔 file1 復製成 file2
cp file1 dir1 將文檔 file1 復制到目錄 dir1 下,文件名仍為 file1.
cp /tmp/file1 . 將目錄 /tmp 下的文檔 file1復制到現行目錄下,
檔名仍為 file1.
cp /tmp/file1 file2 將目錄 /tmp 下的文檔 file1現行目錄下,檔名
為file2
cp -r dir1 dir2 (recursive ) 復制整個目錄.
若目錄 dir2 存在,則將目錄dir1,及其所有文檔和子目錄,
復制到目錄 dir2 下,新目錄名稱為dir1.若目錄dir2不存在,
則將dir1,及其所有文檔和子目錄,復制為目錄 dir2. 10.mv 文件移動
命令格式: mv source destination
例子:
mv file1 file2 將文檔 file1,更改檔名為 file2.
mv file1 dir1 將文檔 file1,移到目錄 dir1 下,檔名仍為 file1.
mv dir1 dir2 若目錄 dir2 存在,則將目錄 dir1,及其所有檔
案和子目錄,移到目錄 dir2 下,新目錄名稱為 dir1.
若目錄 dir2 不存在,則將dir1,及其所有文檔和子
目錄,更改為目錄 dir2. 11. 查看目錄所佔磁碟容量
命令格式: [-sk] directory
例子 :
dir1 顯示目錄 dir1 的總容量及其次目錄的容量
-sk dir1 顯示目錄 dir1 的總容量,以k bytes為計量 12.find 文件查找
命令格式: find dir -name filename command
例子:
find . -name hello -print 尋找目前目錄及所有的子目錄內叫
hello的文檔.
find . -ctime +7 -print 找出七天內未被更動的文檔
find . -size +2000m -print 找出大小超過2000 bytes的文檔
find /tmp -user b1234567 -print 在/tmp下屬於b1234567的文檔
find . -name '*.c' -exec rm {} 刪除所有的.c檔
find . -name test\* -print 顯示當前目錄及其子目錄文件名前4
位為test的文件名 13.man 隨機文檔
例子:
man ls | col -b >ls.txt 生成文本文檔
catman -w -M /usr/man 生成索引關鍵字
man -k keyword 關鍵字查找
man -s number word 不同系統類別
example: man -s 3s printf
14.vi 編輯器
命令狀態:
j,k,h,l:上下左右
0: 行首
$: 行尾
i,I :插入命令,i 在當前游標處插入 I 行首插入
a,A:追加命令,a 在當前游標後追加,A 在行末追加
o,O:打開命令,o 在當前行下打開一行,O在當前行上插入一行
r,R :替換命令,r 替換當前游標處字元,R從游標處開始替換
數字s: 替換指定數量字元
x: 刪除游標處字元
dd: 刪除當前行
d0: 刪除游標前半行
d$: 刪除游標後半行
ctrl+f :後翻頁
ctrl+b:前翻頁
G : 文件尾
數字G: 數字所指定行
/string 查找字元串
n 繼續查找
N 反向繼續查找
% 查找對應括弧
u 取消上次操作
ex命令狀態
:set number 顯示行號
:set smd 顯示顯示狀態
:0 文件首
:1,5 7 塊拷貝
:1,5 del 塊刪除
:1,5 move 7 塊移動
:1,$s/string1/string2/g 全文件查找string1並替換為string2
:wq! 存檔退出 (二) 增強命令
1.ln 文檔連結
命令格式:ln [-s] oldname newname
同一文檔,可擁有一個以上之名稱,可將文檔做數個連結.
一個符號鏈是指向系統另一個文件的特殊文件,當訪問這種文件時,它裡面存放著
一個路徑名,該路徑名用來引導用戶到卡符號鏈所指的文件或目錄
例子 :
ln -s file1 file2 將名稱 file2,連結至文檔 file1. 2.grep 搜索字元串
命令格式:
grep string filename
尋找字串的方法很多,比如說我想找所有以M開頭的行.此時必須引進pattern的觀
念.以下是一些簡單的□例,以及說明:
^M 以M開頭的行,^表示開始的意思
M$ 以M結尾的行,$表示結束的意思
^[0-9] 以數字開始的行,[]內可列舉字母
^[124ab] 以1,2,4,a,或b開頭的行
^b.503 句點表示任一字母
* 星號表示0個以上的字母(可以沒有)
+ 加號表示1個以上的字母
\. 斜線可以去掉特殊意義
<eg> cat passwd | grep ^b 列出大學部有申請帳號者名單
cat passwd | grep ^s 列出交換學生申請帳號者名單
cat passwd | grep '^b.503' 列出電機系各年級...
grep '^\.' myfile.txt 列出所有以句點開頭的行 3.fgrep 搜索字元串
命令格式:fgrep string file 4.file 顯示文件類型
命令格式:file fileall
文件類型為shell script,ELF 32bit,ASCII text,data or tar file 5.diff 比較文檔或目錄之不同內容
命令格式:diff [-r] name1 name2 ( name1 name2 可同時為檔名,或目錄名稱.)
例子 :
%diff file1 file2
比較文檔 file1 與 file2 內,各行之不同處.
%diff -r dir1 dir2
比較目錄 dir1 與 dir2 內,各文檔之不同處. 6.cmp 比較文檔相同部分
命令格式:cmp file1 file2 7.ftp 遠程文件傳輸
命令格式: ftp [hostname|IP address]
在進入 ftp 之後,如果與 remote host 連接上了,它將會詢問你 username
與密碼,如果輸入對了就可以開始進行文檔傳輸.
注意:如用戶無密碼,無法注冊
(1) ftp 命令
ascii 將傳輸模式設為 ascii 模式.通常用於傳送文字檔.
binary 將傳輸模式設為 binary 模式,通常用於傳送執行檔,壓縮檔與影像
cd remote-directory 將遠程主機上的工作目錄改變.
lcd [ directory ] 更改本地主機的工作目錄.
ls 列出遠程主機上的文檔.
get remote [ local-file ] 取得遠方的文檔.
mget remote-files 可使用通用字元一次取得多個文檔.
put local[ remote-file] 將本地主機的文檔送到遠程主機.
mput local-files 可使用通用字元一次將多個文檔放到遠程主機上.
help [ command ] 線上輔助指令.
mkdir directory-name 在遠程主機創建一個目錄.
prompt 更改交談模式,若為 on 則在 mput 與 mget 時每作一個文檔之傳輸時均會詢問.
quit/bye 離開ftp .
(2) 後台執行ftp
1.首先,將過程所用到的指令依順序放入文檔中,如下:
%cat ftp_command
!mkdir test
lcd test
cd test
prompt
binary
mget *.*
bye
2.其次,建一個.netrc檔,屬性為400,讓ftp 自動到此讀取Username
與Password,方可順利login 到的主機,如下:
%cat .netrc
machine remote login anonymous password guest
3.最後再執行下面指令即可.
%nohup ftp remote < ftp_command > message & 8.telnet 遠程終端訪問
命令格式:
telnet [hostname|IP address]
*註:如使用root用戶登錄,其許可權請參見11.3.4 9.IO 重新導向
UNIX所有的程式執行時,均需要資料的輸入以及輸出資料.一般而言,資料是
從鍵盤輸入,並將資料輸出到螢幕上,這就叫做標准輸入及標准輸出,而我們
可以更改標准出輸出入.
A. 更改標准輸入 -- 在命令後方加"< <filename>" ,即可從<filename>這
個文檔輸入資料.
B. 更改標准輸出 -- 在命令後方加"> <filename>" ,即可將螢幕輸出的資
料導向到<filename>這個文檔上.
C. 更改標准輸出 -- 在命令後方加">> <filename>",功能與B.相似,只不
過這會將資料加在文檔後方.
D. 管道 -- 在兩個命令中間加上'|',即可將前方指令的輸出當成後方指令
的輸入.
例:
cd /tmp
ls -l > /tmp/ls.out
cat /tmp/ls.out
more /tmp/ls.out
rm /tmp/ls.out
ls | more
ls | wc -l (word count, count line number,算出文檔數目)軟體包管理
1.pkginfo 顯示軟體包信息
命令格式: pkginfo -d[ device|pathname] -l pkg_name
例子:
這三個域為:
pkg_category 軟體包種類,可為application,graphics 或system.
pkg_name 軟體包名字,如為SUN產品則機SUNW 起 頭.
Description 軟體產品的簡單說明.
例子:
# pkginfo -d /cdrom/solaris_2_2/s0/Solaris_2.2 |more
利用pkginfo -l 命令顯示關於軟體包的詳細信息,包括軟體包的大小(按硬碟塊大小
計算).
# pkginfo -d /cdrom/solaris_2_2/s0/Solaris_2.2 -l SUNWaudio
上面輸出的最後一行指示軟體包的大小. 利用此信息和df -k命令來確定你是否擁有足
夠硬碟空間來安裝此軟體包. 2.pkgadd 增加軟體包
利用pkgadd 命令增加軟體包,當軟體包被成功地安裝以後,向root發送一個郵件.
命令格式:
pkgadd -d [device | pathname] pkg_name
例子:
# pkgadd -d /cdrom/solaris_2_2/s0/Solaris_2.2 SUNWaudio 3.pkgchk 校驗軟體包的安裝
pkgchk命令通過將軟體包的屬性及路徑名內容與系統記錄文件中的值進行對比來校驗.
命令格式:
pkgchk [-p path1 [path2...]]
此命令可以檢查整個軟體包或通過指定-p選項對一特殊路徑名進行檢查,無輸出則意味
著沒有問題被檢查出.
由於/etc/group 文件大小已被改變,所以文件內容的checksum就不對.
考察軟體包信息
pkgadd命令更新文件/var/sadm/install/contents、 此文件為系統中所有已安裝軟體包
的記錄文件.
沒有簡單的方法來確定某軟體包具有某一特殊文件(或命令).
對於已安裝的軟體包,從/var/sadm/install/contents 記錄文件中查找此軟體包的路徑
名. 4.pkgrm 刪除軟體包
命令格式: pkgrm pkgname1 pkgname2 …
在調用pkgrm 命令後,將向你警告有依賴關系的軟體包信息,並提供放棄此操作的提示.
當軟體包被成功地刪除後,向root發送一個郵件.
pkgrm命令通過文件/var/sadm/install/contents 來確定軟體包的地址,並且當軟體包
被刪除以後,更新此文件.
假如此軟體包被兩個或更多的包共享,則一定得將這些依賴於此包的所有軟體包刪除以
後才刪除此軟體包.
5.spooling 軟體包轉儲
一個軟體包可以由安裝CD-ROM中拷貝過來存放在系統中,但並沒有安裝此軟體包.
例如,一個伺服器可以拷貝存儲一個軟體包,一個沒有CD-ROM設備的系統可以從伺服器
上掛接此軟體包,用以安裝. 伺服器
下面兩個pkgadd命令用以說明如何spool一個軟體包到/var/spool/pkg目錄下或到一個指
定的目錄下.pkgadd命令的-s spool選項會預設地將軟體包拷貝到/var/spool/pkg目錄下.
你可以指定一個目錄作為-s選項的參數.
客戶
假如伺服器共享了/export/pkgs目錄,則客戶系統可以掛接目錄/export/pkgs並安裝
軟體包.
# mkdir /export/pkgs
# mount venus:/export/pkgs /export/pkgs
# pkgadd -d /export/pkgs SUNWaudio
刪除Spooled軟體包
在伺服器上可以利用-s選項從spooling目錄中刪除一個軟體包.
# pkgrm -s /export/pkgs SUNWaudio
與軟體包管理有關的文件和目錄
/var/sadm 包含系統記錄文件和管理文件的目錄
/opt/pkgname 安裝未隨操作系統一起提供的、名為pkgname的軟體包的推薦目錄.
/opt/pkgname/bin
/opt/bin 未隨操作系統一起提供的、名為pkgname的執行文件的推薦目錄.
var/opt/pkgname
/etc/opt/pkgname 未隨操作系統一起提供的、名為pkgname的記錄文件的推薦目錄.
/var/sadm/install/contents 整個系統的軟體包映象.數據備份和傳輸工具
(一) 數據設備名
1.磁帶 類型 設備名 容量 持續速率 突發速率 機器類型
8mm D8112 5G-10G 8205
8mm D8160 7G-14G 8505-8705
8mm D8170 20G 1MB/s 5MB/s 8900
4mm DDS1(60m) 1.3G
4mm DDS2(120m) 4G-8G
4mm DDS3(125m) 12G-24G 1MB/s 10MB/s 設備名: /dev/rmt/0,/dev/rmt/0n(不倒帶) 2.軟盤
設備名:
/dev/fd0或/dev/rdiskette 未運行卷標管理
/vol/dev/aliases/floppy0 運行卷標管理 3.文件
(二) 數據備份命令
Solaris 2.x計算環境提供了幾個命令用於備份和恢復文件和文件系統.
多卷備份 連接 系統跨接
ufsmp
ufsrestore Yes No No
tar No Yes Yes
cpio Yes Yes Yes 1.ufsmp命令
對系統管理員而言,ufsmp命令很有用,可對整個文件系統做完全或增量轉儲.
完全轉儲是對整個文件系統做備份.在較長的間隔做一次,如一星期或一月.
增量轉儲是對新創建或修改的文件進行備份.增量轉儲更頻繁一些,可能一天一次.
ufsmp命令提供了不同等級的轉儲,從0至9.轉儲等級用來確定對哪些文件備份.0級指定
完全轉儲,1至9指定不同等級的增量轉儲.例如,增量轉儲(1等級)將對在上一次低等級
(0級)轉儲後修改或創建的文件進行備份.對文件系統作備份時,應將系統轉至運行等級S.
如系統在運行等級3時,文件可能正在使用,於是可能造成無效備份. 例子:
# ufsmp 0uf /dev/rmt/0 /export/home
選項及參數:
0 指定0級(完全)轉儲.
u 更新文件/etc/mpdates,以記錄成功的轉儲.
f 與下面的/dev/rmt/0參數一起確定轉儲的磁帶設備.
/dev/rmt/0 轉儲的磁帶設備.
/export/home 指定要轉儲的文件系統.
2.ufsrestore命令
ufsrestore命令從備份磁帶上拷貝文件至當前目錄下.
ufsrestore命令可用於重載轉儲好的整個文件系統或備份帶上的單個或多個文件.
ufsrestore命令的選項用來指定磁帶設備名和被恢復文件的路徑名.
恢復過程
用ufsrestore命令按以下步驟恢復一個文件:
# cd /newdir
# ufsrestore tuf /dev/rmt/0
文件系統拷貝
#mount /dev/dsk/c0t1d0s0 /mnt
#ufsmp 0f - /dev/rdsk/c0t0d0s0|(cd /mnt; ufsresotre rf -)
#installboot /usr/platform/`uname -I`/lib/fs/ufs/bookblk raw-device 3.tar命令
tar命令是用戶級的備份命令,用於備份和恢復文件或目錄.
命令格式: tar options tape_device_name [filename]
option c-建立新文檔 v-顯示路徑
t-顯示文件列表 f-指定設備
x-抽取文件 i-互動式
例子:
(1)備份過程:
$ tar cvf /dev/rmt/0 *
(2)恢復過程:
$ tar xvf /dev/rmt/0
(3)目錄復制
$ tar cvf - mydir|(cd newdir;tar xvf -)
(4) 異地拷貝(必須為可信任用戶,參見11.3)
$ tar cvf - mydir|rsh remote tar xvf - ;拷貝mydir目錄至遠程主機
$ rsh remote tar cvf - mydir|tar xvf - ;拷貝遠程主機mydir目錄至本機 4.cpio命令
cpio( in/out)命令是能產生多卷備份的用戶級命令.
命令格式:
cpio -ov >tape_device_name
cpio -i [vt] <tape_device_name
一旦它識別出介質的尾部,它就提示你插入另一磁帶.
cpio命令利用ls或find命令的輸出進行文件列表,將這些文件輸出到一個文件,
如磁帶設備.它在文件之間插入標題以便於恢復,所以比tar命令慢.
cpio命令可用通配符作為參數,然而,cpio反著用通配符,即除滿足匹配條件的
文件以外,它將備份所有文件.
備份過程
$ find . -depth -print | cpio -ov > /dev/rmt/0
find命令給cpio命令提供文件和目錄名的列表.
-o選項表示從標准輸出讀.
/dev/rmt/0參數確定磁帶設備.
例子:
用find和cpio命令將主目錄備份到磁帶上:
恢復過程
用cpio命令按以下步驟從磁帶上檢索文件和目錄.
1.將磁帶插入磁帶設備.
2.改變目錄至/tmp目錄.
3.用以下cpio目錄確定要恢復的文件的路徑名.
$ cpio -iv < /dev/rmt/0
-i選項抽取文件,v(verbose)選項與t選項合用則按ls -l格式列出文件,
使用此復合選項只顯示文件信息,不抽取文件.
4.用以下cpio命令恢復文件至/tmp目錄.
$ cpio -iv < dev/rmt/0 test.file
選項i抽取文件,v表示恢復時顯示文件名.
5.從目錄/tmp拷貝文件至所需目錄.
6.取出磁帶.
下面的例子說明如何用cpio命令恢復一個文件. 5.compress,uncompress,zcat 命令
compress命令利用一特殊格式來壓縮文件,以減少文件大小.壓縮比從20%至80%.
例如,用-v選項對名為bin.file的文件進行壓縮:
此文件被壓縮後,加上後綴.Z.
用戶管理
(一) 用戶基本知識
1.文件信息
ls -l
drwxrwxrwx filename
(1)訪問許可權
mode : rwx rwx rwx r:read w:write x:execute
user group other
縮寫 : (u) (g) (o)
(2) 文件類型
- : 普通文件
b : 塊特殊文件,如硬碟和CDROM設備
c : 字元文件設備或稱「raw」設備文件
l : 符號連接
p : 管道或流,用於進程通訊
d : 目錄
2.預設許可權
創建文件和目錄時,系統自動設置一定的許可權.預設許可權由用戶mask碼控制
$umask 顯示用戶umask碼
umask 設置 文件 目錄
022 新文件屬主有讀權和修改權 用戶組和其他用戶有讀權和修改權
用戶組和其他用戶只有讀權
可用umask maskvalue 改變預設許可權
3.系統安全文件
/etc/passwd 用戶注冊表
/etc/shadow 加密口令
/etc/group 用戶組
/etc/default/login 訪問控制
說明:
passwd文件是為系統中的用戶授予和認證訪問許可權的第一個文件,其項目使用』:』 分割.
login_name:passwd_field:UID:GID:comment:home_directory:default_shell
login_name 用戶唯一登錄名 comment 注釋(finger使用)
passwd_field 加密口令安全標記 home_directory 用戶注冊家目錄
UID 用戶號 default_shell 命令解釋器
GID 用戶預設唯一組號 默認:sh,csh,ksh
shadow 文件管理用戶加密口令,該文件只對超級用戶有讀許可權
login_name:encrypted_pass:last_change:min:max:warn:inactive:expire:reserved
login_name 用戶名(同passwd) max 口令有效最大天數
encrypted_pass 13字元長加密口令 warn 口令到期前多少天警告
last_change 上次更改日期(from1970.1.1) inactive 被禁止登錄前,帳號不活躍天數
min 最小間隔天數 expire 用戶禁止登錄絕對日期(通常空白)
group文件用於將計算機系統的用戶分組
groupname:passwd:gid:user-list
groupname 唯一組名 gid 為操作系統提供的代表組名的唯一標識號
passwd 組加密後的口令 user-list 用逗號分割的所有可訪問該組的用戶清單
理解UID和GID
系統中的每一個用戶名都被賦予了一個UID(User Identification Number 用戶標識號),這些
號在0-60000之間,系統使用UID將一個用戶名和操作系統對該用戶的標識等同起來,
建立用戶時,必須保證UID唯一。
GID(Group Identification Number,組標識號)遵循與UID一樣的格式,范圍0-60000,
每個用戶至少屬於一組,並且可以屬於多組。
(二)相關命令
1.chmod 改變文檔或目錄之屬性
命令格式:chmod [-R] mode name
( name 可為檔名或目錄名;mode可為 3 個 8 位元之數字,或利用ls -l命令,列出
文檔或目錄之讀、寫、執行允許權之文字縮寫.)
例子 :
%chmod 755 dir1 將目錄dir1,設定成任何使用者,皆有讀取及執行之權利,
但只有擁有者可做修改.
%chmod 700 file1
將文檔file1,設定只有擁有者可以讀、寫和執行.
%chmod u+x file2
將文檔file2,增加擁有者可以執行之權利.
%chmod g+x file3
將文檔file3,增加群組使用者可執行之權利.
%chmod o-r file4
將文檔file4,除去其它使用者可讀取之權利.
%chmod a-r file4
將文檔file4,除去所有使用者可讀取之權利.
2.chown 改變文檔或目錄之擁有權
命令格式:chown [-R] username name ( name 可為檔名或目錄名.)
例子 :
%chown user file1 將文檔 file1 之擁有權,改為使用者 user 所有.
%chown -R user dir1 將目錄 dir1,及其下所有文檔和子目錄之擁有權,
改為使用者 user 所有.
3.chgrp 改變文檔或目錄之群組擁有權
命令格式:chgrp [-R] groupname name ( name 可為檔名或目錄名 )
例子 :
%chgrp vlsi file1
將文檔 file1 之群組擁有權,改為 vlsi 群組.
%chgrp -R image dir1
將目錄dir1,及其下所有文檔和子目錄,改為 image 群組.
4.touch 改變文檔或目錄之最後修改時間
命令格式:touch name ( name 可為文檔或目錄名稱.)
5.who 查看系統注冊用戶
6.id 查看當前用戶用戶號和組號
7.passwd 修改用戶口令
命令格式:passwd username
無用戶參數修改本用戶口令,用戶口令必須至少6個字元長,最大8個字元,口令中
至少兩個字母字元及一個數字字元
8.su 轉換用戶
命令格式: su [-] username
無用戶參數為轉換到超級用戶
- :執行新用戶環境設置
su –c root dbshut
(三)shell特點
1. solaris三類shell
- Bourne(預設shell)
- C
- Korn
Shell 基本特點
特點 Bourne C Korn
別名機制 No Yes Yes
增強的cd(CDPATH)功能 Yes Yes Yes
歷史列表 No Yes Yes
作業控制 No Yes Yes
防止文件被覆蓋 No Yes Yes
忽略Control_D No Yes Yes
2. B shell
(1) 變數設置
實例: 終端類型:TERM=vt100;export TERM
語言環境:LANG=C;export LANG
執行路徑:PATH=$PATH:/usr/bin:. ; export PATH
顯示終端:DISPLAY=host:0.0;export DISPLAY
(2) 環境文件
.profile
3. C shell
(1) 變數設置
set 定義變數
setenv 定義環境變數(環境變數與變數不同之處在於環境變數可以影響子進程)
例子: 終端類型:setenv TERM=vt100
提示符: set prompt=」I love unix>」
路徑變數:set path=($path /usr/bin .)
顯示終端:setenv DISPLAY host:0.0
共享庫: setenv LD_LIBRARAY_PATH /usr/dt/lib:/usr/openwin/lib
(2) 環境文件
.login .cshrc
(3) 腳本語言
事例1: 更換後綴
foreach file (*.ab)
set base=`basename $file .ab`
mv $file $base.cd
end
事例2:簡單循環
@ cnt = 1
echo I will count from 1 to 100
echo and pause at every ten numbers for confiumation to continue
echo -n Press an key to start: #顯示數據後不回車
set key = $< #接受輸入字元
while ($cnt < 101)
echo This is $cnt
if (`exp $cnt % 10` == 0 ) then
echo –n 「continue or not(Y/N)」
set key = $<
if ($key == 『n』) exit
endif
@ cnt += 1 # 變數cnt 加 1
end
echo DONE
4. dtterm
.dtprofile 通用桌面環境設置選項
(四) 創建,刪除用戶帳戶
1. 圖形化管理工具
admintool
2. 字元型用戶管理
useradd(創建) ,usermod(修改)
㈡ 如何給solaris上的虛擬機vm增加硬碟空間 命令
1.備份了/tmp目錄
sudo
cp
/tmp
./tmp.old
2.刪除/tmp目錄做一個新的軟連接
sudo
rm
/tmp
sudo
ln
-s
用戶主目錄
/tmp
經過第二步,/tmp依然存在,但是這個時候數據到/tmp目錄時,並不是存放在/tmp下,而是放在用戶主目錄下。由於用戶主目錄的空間很大,這樣就解決了/tmp空間不足的問題,最終達到了他想要的結果。只要想辦法,問題總是可以解決的。
現在來看看,怎樣給已裝好的linux系統增加磁碟空間
退出LINUX系統,在vmware啟動界面中選擇VM菜單下的Settings來增加磁碟,然後選擇add,選擇hard
disk,點擊Next。
選中create
a
new
virtual
disk,點擊下一步,選擇scsi,繼續下一步。選擇好你要新增磁碟的大小,勾選Allocate
all
disk
space
now立即分配空間,下一步,在你的硬碟上選擇一個目錄來創建,點擊完成結束。這樣,一個新增的空間就創建好了。
輸入新增這塊硬碟的名字,它會默認放置在虛擬機所在的位置。
接著就能看到分好的硬碟了
進入Linux系統,使用fdisk
-l可以看到如下效果sudo
fdisk
-l
這里可以看到/dev/sdb就是我們新添加的硬碟,需要給新的硬碟分區。
1.
在終端輸入:sudo
fdisk
/dev/sdb
之後鍵入:m,可以看到幫助信息
鍵入:n,添加新分區
鍵入:p,選擇添加主分區
鍵入:1,選擇主分區號為1,這樣創建後的主分區為sdb1
之後,fdsik會讓你選擇該分區的開始值和結束值,直接回車
2.格式化磁碟
在終端輸入:mkfs
-t
ext4
/dev/sdb1
用ext3格式對/dev/sdb1進行格式化
最後鍵入:w,保存所有並退出,完成新硬碟的分區
3.在用戶主目錄下新建一個文件,
如/home/linux/newdisk。以後就把新增的分區mount到這個目錄下。
4.用root許可權打開/etc/fstab文件。新增加一個選項。具體fstab的操作在這里不解釋了。新增加如下:/dev/sdb1
/home/linux/newdisk
ext4
defaults
0
0
5.重新啟動系統,就能看到你載入的硬碟了
注意:這個時候進入/home/linux/newdisk新建文件的時候,可能提示許可權不夠,
解決辦法:sudo
chmod
777
/home/linux/newdisk。
㈢ 在solaris系統裡面怎麼創建純文本
在 SUN 工作站裡面的 Solaris 操作系統中,可以使用系統自帶的 vi 全屏幕編輯程序創建一個純文本文件。
vi 全屏幕編輯程序分為三種狀態:命令狀態、插入狀態、最後一行狀態。
關於具體的 vi 全部命令的熟練使用,可以參考 vi 的相關參考資料。
例如:按 ESC 鍵可以進入命令狀態,然後再按冒號(即:「:」),此時進入最後一行狀態,再按:wq,即可保存文件並退出;如果只是按:w,即可保存文件繼續編輯;
按:q!,強制退出 vi 編輯程序,不保存所有任何編輯的內容(該命令要謹慎使用);
在命令狀態下,按:i(Insert)進入插入狀態,此時可以進行任何文本內容的編輯。
等等,等等。
㈣ solaris操作系統下,下面哪個命令可以修改/n2kuser/.profile文件的屬性為所有用戶
影子遷移使您能將數據從舊文件系統遷移到 ZFS 文件系統,同時在此過程中允許訪問和修改數據。您可以使用影子遷移將本地或遠程文件系統遷移到本地文件系統。具體而言,可以從 Oracle Solaris 11 主機上直接掛載的任意文件系統(UFS、ZFS、VxFS 等)遷移數據,也可以從可設為「只讀」並能通過 NFS 掛載到 Oracle Solaris 11 主機上的任意遠程文件系統遷移數據。這可延伸到 NetApp 等文件管理系統以及 AIX、HP-UX 和 Linux 等操作系統。 影子遷移的使用案例不僅僅是將數據移至 Oracle Solaris 11。當您要啟用 ZFS 服務 — 如壓縮、重復數據刪除和加密 — 而需要進行數據轉換時,在伺服器的現有文件系統與新文件系統(隨後重新命名)之間進行影子遷移可能是實現數據轉換的最佳方法。 以下是影子遷移的主要設計要求: 必須能夠根據標准數據協議 (NFS) 從任意數據源進行遷移,源系統無需運行特殊軟體。 在完成整個遷移過程之前,遷移數據必須可用,並能提供原生的訪問性能。 要遷移文件系統的所有數據必須存儲在該文件系統本身內,且不依賴於外部資料庫,以確保一致性。(有關設計和實施詳情,請參見「另請參見」部分中的參考內容。) 示例 下面快速演示影子遷移,您可以自行嘗試。本示例從本地文件系統遷移數據。但是,原理同樣適用於掛載在 NFS 上的遠程文件系統。管理手冊中提供了遠程文件系統的語法(請參見「另請參見」部分)。 首先,創建要遷移的文件系統 root@solaris:~# zpool create oldstuff c3t4d0 root@solaris:~# zfs create oldstuff/forgotten 然後,填充一些文件: root@solaris:~# cd /var/adm root@solaris:/var/adm# find . -print cpio -pdv /oldstuff/forgotten 需要安裝 shadow-migration 軟體包,如清單 1 所示: root@solaris:~# pkg install shadow-migration Packages to install: 1 Create boot environment: No Create backup boot environment: No Services to change: 1 DOWNLOAD PKGS FILES XFER (MB) Completed 1/1 14/14 0.2/0.2 PHASE ACTIONS Install Phase 39/39 PHASE ITEMS Package State Update Phase 1/1 Image State Update Phase 2/2 清單 1. 安裝 shadow-migration 軟體包 然後,啟用 shadowd 服務: root@solaris:~# svcadm enable shadowd root@solaris:~# svcs shadowd STATE STIME FMRI online 7:16:09 svc:/system/filesystem/shadowd:default 將要遷移的文件系統設為只讀: root@solaris:~# zfs set readonly=on oldstuff/forgotten 創建一個新的 ZFS 文件系統,將 shadow 屬性設為要遷移的文件系統: root@solaris:~# zfs create -o shadow=file:///oldstuff/forgotten mypool/remembered 用 shadowstat (1M) 命令查看遷移進度,如清單 2 所示: root@solaris:~# shadowstat EST BYTES BYTES ELAPSED DATASET XFRD LEFT ERRORS TIME mypool/remembered 92.5M - - 00:00:59 mypool/remembered 99.1M 302M - 00:01:09 mypool/remembered 109M 260M - 00:01:19 mypool/remembered 133M 304M - 00:01:29 mypool/remembered 149M 339M - 00:01:39 mypool/remembered 156M 86.4M - 00:01:49 mypool/remembered 156M 8E - (completed) 清單 2. 查看遷移進度 如上所述,如果您已創建 /mypool/remembered 並加密,這將是對現有數據進行加密的首選方法。現有數據的壓縮或重復數據刪除也是如此。 測試和注意事項 生產數據的遷移需要在實時遷移之前進行備份和全面的測試。特別要注意以下事項: 客戶端將通過不同的物理位置訪問數據。完善名稱服務和網路地址,這樣客戶端不會因為嘗試修改設為只讀的「舊」數據而返回錯誤。 需要遷移用於身份驗證的名稱服務條目(控制所有權等的用戶和組名稱),數據也需要遷移。 當「舊」數據集和「新」數據集可能需要備份時,將會有一個過渡階段。 需要特別注意元數據和設置,尤其是在從非 ZFS 遷移到 ZFS 的時候。尤其需要測試訪問控制列表 (ACL)、擴展屬性和類似設置。 影子遷移以一對一的方式將數據從一個文件系統移至另一個文件系統。將多個文件系統整合到較少文件系統應作為遷移過程中的一個獨立階段來完成。 性能 影子遷移特性的性能取決於以下各項: 數據性質(小文件天生比大文件慢) 客戶端訪問新數據的模式 源系統和目標系統的相關磁碟配置 網路媒體的吞吐量和延遲情況 影子遷移的設計目標是弱化轉換性能對客戶端的重要性,重要的是客戶端能繼續快速訪問所需的數據。但是,如果舊媒體和新媒體之間的轉換的原始性能本身很重要,您可能不想使用影子遷移,因為它被設計為無縫且「不可見」,但本身不快。 另請參見 Eric Schrock 在博客中介紹了影子遷移的動機和設計以及工程內部機制。影子遷移的正規處理方法包含在 Oracle Solaris 管理:ZFS 文件系統 手冊中。
㈤ 在solaris中 用什麼命令來創建文件
mkdir <文件名>
㈥ solaris 10 為什麼沒法再/home 下創建目錄
以下是步驟
(1)切換到新建文件夾許可權的賬戶或是root賬戶
(2)進入到/home目錄
(3)mkdir gabriel
其中,Mkdir 是一個用來在 Linux 系統下創建目錄的命令。此命令屬於內建命令。
運行 mkdir 命令
你可以在你的控制台直接鍵入 mkdir 來使用它。
$ mkdir
默認情況下,不帶任何參數運行 mkdir 命令會在當前目錄下創建目錄。
1.命令格式:
mkdir [選項] 目錄...
2.命令功能:
通過 mkdir 命令可以實現在指定位置創建以 DirName(指定的文件名)命名的文件夾或目錄。要創建文件夾或目錄的用戶必須對所創建的文件夾的父文件夾具有寫許可權。並且,所創建的文件夾(目錄)不能與其父目錄(即父文件夾)中的文件名重名,即同一個目錄下不能有同名的(區分大小寫)。
3.命令參數:
-m, --mode=模式,設定許可權<模式> (類似 chmod),而不是 rwxrwxrwx 減 umask
-p, --parents 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選項後,系統將自動建立好那些尚不存在的目錄,即一次可以建立多個目錄;
-v, --verbose 每次創建新目錄都顯示信息
--help 顯示此幫助信息並退出
--version 輸出版本信息並退出
4.命令實例:
實例1:創建一個空目錄
命令:
mkdir test1
輸出:
[root@localhost soft]# cd test
[root@localhost test]# mkdir test1
[root@localhost test]# ll
總計 4drwxr-xr-x 2 root root 4096 10-25 17:42 test1
[root@localhost test]#
實例2:遞歸創建多個目錄
命令:
mkdir -p test2/test22
輸出:
[root@localhost test]# mkdir -p test2/test22
[root@localhost test]# ll
總計 8drwxr-xr-x 2 root root 4096 10-25 17:42 test1
drwxr-xr-x 3 root root 4096 10-25 17:44 test2
[root@localhost test]# cd test2/
[root@localhost test2]# ll
總計 4drwxr-xr-x 2 root root 4096 10-25 17:44 test22
[root@localhost test2]#
實例3:創建許可權為777的目錄
命令:
mkdir -m 777 test3
輸出:
[root@localhost test]# mkdir -m 777 test3
[root@localhost test]# ll
總計 12drwxr-xr-x 2 root root 4096 10-25 17:42 test1
drwxr-xr-x 3 root root 4096 10-25 17:44 test2
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
[root@localhost test]#
說明:
test3 的許可權為rwxrwxrwx
實例4:創建新目錄都顯示信息
命令:
mkdir -v test4
輸出:
[root@localhost test]# mkdir -v test4
mkdir: 已創建目錄 「test4」
[root@localhost test]# mkdir -vp test5/test5-1
mkdir: 已創建目錄 「test5」
mkdir: 已創建目錄 「test5/test5-1」
[root@localhost test]#
㈦ 在solaris中 用什麼命令來創建文件
mkdir
創建文件夾vi
命令可以直接創建一個文件,保存後即可,或者touch一下文件。就可以了這些都是linux通用命令。solaris系統也是一樣的。
如果你對此還有疑問可以進入
http://bbs.shenzh.cn技術論壇提交問題,我會盡量解答你的問題。
㈧ solaris10下mkswap: command not found;創建交換分區時提示命令找不到
solairs10上應該是沒有mkswap這個命令的,Linux上才有,其他命令找不到看看echo $PATH的結果,是否是你的環境變數設置不全。
Solaris10可以用如下方法實現:
1)建立swap文件mkfile 48G /var/swapfile
2)加入到系統swap里swap -a /var/swapfile
3)查看swapswap -l
root@localhost:~ # swap -l
swapfile dev swaplo blocks free
/dev/md/dsk/d20 85,20 16 16586864 16586864
/var/swapfile - 16 71303152 71303152
swap -s root@localhost:~ # swap -s
total: 11537920k bytes allocated + 7256976k reserved = 18794896k used, 74469472k available
4)加到vfstab,重啟之後不會丟失vi /etc/vfstab
/var/swapfile - - swap - no -
本篇文章來源於 Linux公社網站(www.linuxidc.com) 原文鏈接:http://www.linuxidc.com/Linux/2012-07/64253.htm