Signal 31 Itu Karena Kena Batasan Besar File

Published Date October 11, 2006 by maseko

Masih terkait dengan permasalahan yang saya tulis sebelumnya yaitu ketika menyalin isi tape DDS ke dalam hardisk ternyata ketika file mencapai besar sekitar 2 GB proses berhenti dan memberikan pesan “signal 31: core dumped”. Belum menemukan solusinya, datang lagi satu buah tape DDS untuk keperluan yang sama dan kebetulan mengalami permasalahan yang sama.

Hal yang sama dari proses penyalinan yang gagal:

  • permasalahan menimpa hanya pada tape DDS yang diperkirakan mempunyai data besar.
  • sesaat setelah proses penyalinan berhenti, file hasil yang terbentuk besarnya sama yaitu 2.147.483.136 byte

Tiba-tiba saja terpikir, kalau semua itu karena masalah besar file maksimum yang dimungkinkan oleh sistem, dalam hal ini SCO Open Server. Karena belum paham mengenai mesin unix ini, yang terpikir dan saya lakukan kemarin adalah memecah apa yang dibaca dari tape DDS ke file dengan maksimal 1 GB per bagiannya. Perintah yang saya ketikkan
split -b 1024m /dev/rct0 /tujuan/nama_file

Hasilnya file-file salinan di hardisk terpecah menjadi nama_fileaa, nama_fileab dan nama_fileac. Kalau filenya lebih besarlagi tentu akan menjadi nama_filead, nama_fileae dan seterusnya. Setelahnya saya download ke PC Windows yang akan memanfaatkan file yang merupakan dump Oracle tersebut. Sempat bingung bagaimana menggabungkannya. Bertanya ke teman, tidak tahu juga bagaimana enaknya. Teringat ada perintah type di Comand Promt-nya Windows (sama dengan DOS?), langsung dicoba:

type nama_fileaa >> namafile.dmp
Setelah proses selesai dilanjutkan ke file berikutnya
type nama_fileab >> namafile.dmp
dan
type nama_fileac >> namafile.dmp

Akhirnya ketiganya tergabung dalam file namafile.dmp. File ini yang diimport ke Oracle di Windows dan hasilnya sukses.

Tadi, sebelum menulis ini sempat googling mengenai batasan besar file maksimum di SCO Open Server, dan menemukan adanya command ulimit yang dapat digunakan. Perintah ini digunakan untuk melihat dan mengeset batasan besar file yang dapat dituliskan. Langsung dicoba:
# ulimit
Hasilnya: 4194303
Lho? Ternyata baca man ulimit belum teliti. Itu menunjukan besar file dalam blok 512-byte. Jadi besar file adalah 4194303*512=2147483136. Cocok dengan besar file ketika proses penyalinan berhenti sebelumnya.

Untuk mengeset, dapat menggunakan option -f
# ulimit -f 8388606
Kira-kira itu yang dapat saya ketikkan jika misalnya akan mengubah batasan besar file yang mungkin dituliskan menjadi dua kai lipatnya. Tapi tidak saya lakukan, takut yang punya server kenapa-kenapa.



7 Responses to “Signal 31 Itu Karena Kena Batasan Besar File”

iway - Gravatar

disiniadaiway.blogspot.com iway said on October 12, 2006, 7:27 am:

dah dicoba ulimit -f -1 ,(mungkin) artinya unlimited

Ady Wicaksono - Gravatar

Ady Wicaksono said on October 12, 2006, 3:26 pm:

coba ketik man 7 signal
ada informasi apa arti nomor signal
example signal 31

SIGXFSZ 25,25,31 Core File size limit exceeded (4.2 BSD)

maseko - Gravatar

maseko.com maseko said on October 12, 2006, 5:32 pm:

iway dan Ady, terima kasih atas infonya.

Antoni Pribadi - Gravatar

abiice Antoni Pribadi said on January 10, 2007, 10:14 am:

Aq berterima kasih pada situs maseko.
tapi masih ada yang saya butuhkan tidak ada di situs ini,atau mungkin tidak saya temukan barang kali.
ada ga’ software tentang elektronika.misalnya PCB desain,Traxmaker,EWB,Proteus dan yang lainnya karena hal itu sangat saya butuhkan.

maseko - Gravatar

maseko.com maseko said on January 10, 2007, 9:34 pm:

Saya baru mendengar nama-nama software tersebut. Apakah sudah dicari pada websitenya?

bambang - Gravatar

bambang said on September 3, 2008, 1:52 pm:

mas Eko, untuk melihat hasil, bahwa command ulimit -f 8388606
tersebut sdh berjalan, Bagaimana ?
Terima kasih.

Bambang

muhammad zarqoni - Gravatar

muhammad zarqoni said on May 4, 2009, 1:37 pm:

mas cari software ewb kok kagak ada ya.mbok yo di posting

Leave A Comment

All fields marked with "*" are required.