Залил: http://slil.ru/26558530
SysInfo for Linux (вот пишу такую...)
Модератор: /dev/random
-
t.t
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: SysInfo for Linux
Собственно, никто от Вас и не требовал реакции на такое обсуждение. Но уж выводы об авторе, который позволяет себе такие вещи, позвольте каждому делать самостоятельно:
1. отказывается отвечать на любые вопросы по функционалу без установки закрытой программы (я, например, принципиально не устанавливаю закрытые программы прежде чем получу всю необходимую мне информацию по их функционалу);
2. отказывается развеять обоснованные подозрения в собственной некомпетентности в базовых для Unix-систем вопросах, не стесняясь при этом многократно публично именовать себя "Linux-программистом с 10-летним стажем" и "программистом с 20-летним стажем";
3. не подтверждает этот (мнимый) стаж никакими упоминаниями реального опыта и реальных проектов;
4. пытаясь так самоутвердиться за счёт (мнимого) опыта программирования, одновременно высказывается о программистах как о недочеловеках по сравнению с менеджерами;
5. говоря о столь длительном стаже Linux-программирования, использует для написания единственной программы, о которой известно участникам форума, наиболее чуждые для Linux/Unix язык программирования и среду разработки.
Я свои выводы уже сделал. Если Вы действительно проигнорируете последние мои слова, я вероятнее всего больше не появлюсь в этой теме.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
Господа!
Вот - новый билд: http://slil.ru/26563512
В нем множество изменений. Основные
- корректное определение и правильное отображение наименования процессоров фирмы AMD
- корректное отображение партиций EXT2/EXT3/EXT4
- возможность работы с партициями NTFS, смонтированными с помощью драйвера ntfs-3g. Они должны отображаться как файловая система типа fuseblk.
- новый механизм динамической загрузки библиотек *.so, который позволит полноценно работать на тех дистрибутивах, где нет симлинкофф *.so на нужные мне библиотеки.
- первоначальное заполнение страницы Printers.
Все это сделано с вашей помощью. Конкретные персоналии, принимавшие участие в тестировании и помогшие найти и исправить перечисленные выше баги и недостатки, будут упомянуты в Change Log.
Стоит заметить, что класс, собирающий информацию о принтерах еще "мало-мало стабилен". Может слегка, гм, глючить... Остальное все работает. ИМХО. :wink:
С уважением.
PS: Ув. t.t, я постараюсь ответить вам позже. Убегаю.
Вот - новый билд: http://slil.ru/26563512
В нем множество изменений. Основные
- корректное определение и правильное отображение наименования процессоров фирмы AMD
- корректное отображение партиций EXT2/EXT3/EXT4
- возможность работы с партициями NTFS, смонтированными с помощью драйвера ntfs-3g. Они должны отображаться как файловая система типа fuseblk.
- новый механизм динамической загрузки библиотек *.so, который позволит полноценно работать на тех дистрибутивах, где нет симлинкофф *.so на нужные мне библиотеки.
- первоначальное заполнение страницы Printers.
Все это сделано с вашей помощью. Конкретные персоналии, принимавшие участие в тестировании и помогшие найти и исправить перечисленные выше баги и недостатки, будут упомянуты в Change Log.
Стоит заметить, что класс, собирающий информацию о принтерах еще "мало-мало стабилен". Может слегка, гм, глючить... Остальное все работает. ИМХО. :wink:
С уважением.
PS: Ув. t.t, я постараюсь ответить вам позже. Убегаю.
-
petyanamlt
- Сообщения: 1773
- ОС: Kubuntu 16.04(x86-64)KDE 5.8.7
Re: SysInfo for Linux
Вот - новый билд: http://slil.ru/26563512
Что-то не получаеться архив расспаковать, может битый?
MSI 990FXA-GD80 SocketAM3+ / FX 8350 / Geforce gtx670 4GB / 4xHDD - 2000 -2х500 (Velociraptor) - 240ssd под Kubuntu / 16Gb RAM DDR3 1600 / TV TBS 6281. Ну и разгон естественно, жить без этого не могу.
(mail agent) petyanamlt собака маил.ру
(mail agent) petyanamlt собака маил.ру
-
Goodvin
- Ведущий рубрики
- Сообщения: 4333
- Статус: ⚝⚠⚒⚑⚖☭☞☣☤&
Re: SysInfo for Linux
В очередной раз указываю на очередную некомпетентность, неприкрыто торчащую изо всех возможных дыр.
Имею стойкое убеждение, что все потенциальные пользователи данной программы должны быть об этом осведомлены.
Ибо это важно.
Все перечисленные сущности из ряда EXT2/EXT3/EXT4,NTFS - это никакие НЕ партиции.
Это файловые системы.
И никакими "партициями" они не являются.
Файловая система может находится в файле, в оперативной памяти, на сменном носителе и факт нахождения её на какой-то партиции есть лишь частный случай.
Непонимание этого простого момента, известного всем мало-мальски технически грамотным компьютерщикам, скорее всего тянется из винды, где сущности "файловая система" и "партиция" практически прибиты друг к другу большими ржавыми гвоздями и место их сопряжения от неискушенного пользователя тщательно скрывается системой и её разработчиками.
Ну, и, собственно неспособность автора программы определить тип файловой системы NTFS и стыдливое её скрывание за ничего не значащим "передничком" fuseblk, тоже говорит о многом.
Какой смысл декларировать некую "работу" с NTFS, если вместо этого там болтаются буковки fuseblk, за которыми может быть вообще все что угодно, начиная от соляровской ZFS и заканчивая ZIP-архивом ?
Это выше моего понимания.
При том, что определение типа файловой системы, в том числе и NTFS, не составляет большого труда.
Вот такие вот пирожки с котятами.
Ждём новых релизов программы с новыми интересными возможностями.
Не переключайтесь.
-
FlySnake
- Сообщения: 992
- ОС: openSUSE
Re: SysInfo for Linux
petyanamlt писал(а): ↑20.01.2009 19:14Вот - новый билд: http://slil.ru/26563512
Что-то не получаеться архив расспаковать, может битый?
+1 только у меня распаковалась, но запускатся отказывается "Отказано в доступе", причем даже от рута
-
KMS
- Сообщения: 231
- ОС: Leap 42.1
-
FlySnake
- Сообщения: 992
- ОС: openSUSE
-
FlySnake
- Сообщения: 992
- ОС: openSUSE
Re: SysInfo for Linux
Вылетает окошко с предупреждением о возможном повреждении данных. Нажать "ОК" ссыкотно 
И вот что программа говорит:
И вот что программа говорит:
Код:
Gathering System CPU Info...
.Cache Added: Size: 64, 2-way set associative, 1 line per tag, 64 bit line size
.Cache Added: Size: 64, 2-way set associative, 1 line per tag, 64 bit line size
.Cache Added: Size: 512, 16-way set associative, 1 line per tag, 64 bit line size
Gathering System Memory Info...
Gathering DMI BIOS Info...
..Unable to open /dev/mem for reading. No enough rights?
Gathering System Bus Info...
Gathering System BIOS Info...
Gathering System Version Info...
Gathering Processes Info...
Gathering Block Devices Info...
Gathering File Systems Info...
Gathering X11 Info...
.TVideoInfoRec.Create
..dlsym: /usr/X11R6/lib/libGL.so: undefined symbol: XF86DRICloseConnection
.TOpenGLInfoRec.Create
.TX11MonitorInfoRec.Create
..Composite, MajorOpcode: 159libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 0.4
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..DAMAGE, MajorOpcode: 160libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..DOUBLE-BUFFER, MajorOpcode: 128libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..DPMS, MajorOpcode: 139libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..Extended-Visual-Information, MajorOpcode: 141libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..GLX, MajorOpcode: 129libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.4
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..MIT-SCREEN-SAVER, MajorOpcode: 134libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..MIT-SHM, MajorOpcode: 147libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..RANDR, MajorOpcode: 157libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.2
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..RECORD, MajorOpcode: 144libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.13
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..RENDER, MajorOpcode: 156libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 0.10
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..SECURITY, MajorOpcode: 153libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..SHAPE, MajorOpcode: 130libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..SYNC, MajorOpcode: 133libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 3.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..TOG-CUP, MajorOpcode: 140libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..X-Resource, MajorOpcode: 143libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XC-APPGROUP, MajorOpcode: 151libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XC-MISC, MajorOpcode: 135libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XFIXES, MajorOpcode: 154libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 4.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XFree86-Bigfont, MajorOpcode: 155libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XFree86-DGA, MajorOpcode: 138libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 2.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XFree86-Misc, MajorOpcode: 137libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 0.9
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XFree86-VidModeExtension, MajorOpcode: 136libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 2.2
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XINERAMA, MajorOpcode: 158libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.1
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XInputExtension, MajorOpcode: 148libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.4
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XKEYBOARD, MajorOpcode: 150libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 1.0
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XTEST, MajorOpcode: 149libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 2.2
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
..XVideo, MajorOpcode: 142libxcb: WARNING! Program tries to unlock a connection without having acquired
a lock first, which indicates a programming error.
There will be no further warnings about this issue.
, Ver. 2.2
libxcb: WARNING! Program tries to lock an already locked connection,
which indicates a programming error.
There will be no further warnings about this issue.
.TX11ScrInfoRec.Create
Gathering Printers Info...
[FORMS.PP] ExceptionOccurred
Sender=EAccessViolation
Exception=Access violation
Stack trace:
$080687B3
$080573ED
TApplication.HandleException Access violation
Stack trace:
$080687B3
$080573ED
[TGtkWidgetSet.Destroy] WARNING: There are 2 unreleased DCs, a detailed dump follows:
[TGtkWidgetSet.Destroy] DCs: B6FA6690 B6FA61B0
[TGtkWidgetSet.Destroy] WARNING: There are 4 unreleased GDIObjects, a detailed dump follows:
[TGtkWidgetSet.Destroy] GDIOs: B6F9ECD0 B6F9ED30 B6F9E790 B6F9E7F0
[TGtkWidgetSet.Destroy] gdiBitmap: 2
[TGtkWidgetSet.Destroy] gdiFont: 1
[TGtkWidgetSet.Destroy] gdiRegion: 1У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
KMS
- Сообщения: 231
- ОС: Leap 42.1
Re: SysInfo for Linux
FlySnake, а что ссыкотного, жми, мало нас в винде подобным пужали 
PS: Потихоньку приходим к тому, от чего так убегали.
PS: Потихоньку приходим к тому, от чего так убегали.
-
nonstop
- Сообщения: 132
- ОС: Slackware
Re: SysInfo for Linux
непонятное проприетарное нечто, которое непонятно что делает
большой минус
закрытый код и нежелание его открывать всегда подозрительны
наиболее чуждые для Linux/Unix язык программирования и среду разработки
еще больший минус
C/C++/Python/Perl/Tcl - неужели не подошли?
уже есть hwreport, который выдает очень подробный отчет о "железе"
хватило бы конвертера отчета (например от hwreport) в HTML
впрочем это мое глубокое ИМХО
PS
все как в Windows - это тупичок, но про это последнее время как-то говорить не принято
PS2
вырос из коротких штанишек программиста
-1
slackware - linux for human brains
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
Спасибо, FlySnake.
1. Вылетает принтерный класс. Буду дописывать его. Он очень сырой. Именно по-этому билд и не пошел на страничку программы - нестабильный.
2. По поводу "Program tries to unlock a connection/Program tries to lock an already locked connection" Грустно все это. На самом деле там написано следующее:
Код: Выделить всё
//Открываем новый FPDisplay
FPDisplay := XOpenDisplay(Nil);
//Получаем major_opcode для расширения
Write('..'+cBuffer);
if Not XQueryExtension(FPDisplay,@cBuffer[1],@FMajorOpcode,@F1stEvent,@F1srError) then Begin XCloseDisplay(FPDisplay); Continue; End;
Write(', MajorOpcode: '+IntToStr(FMajorOpcode));
//Блокируем дисплей
XLockDisplay(FPDisplay);
//Отправляем запрос _XSend
FPReq.FReqType := FMajorOpcode;
FPReq.FExtReqType := VerAvailExtArr[i].ReqType;
FPReq.FLength := Word(VerAvailExtArr[i].ReqLength) SHR 2;
_XSend (FPDisplay,@FPReq,LongWord(VerAvailExtArr[i].ReqLength));
//Получаем ответ от X11 сервера
bRes := _XReply (FPDisplay,@FReply,0,True);
//Обрабатываем результат
--------------------Bla-bla-bla------------------------------------------------
//Разбокируем дисплей
XUnLockDisplay (FPDisplay);
//Освобождаем дисплей
XCloseDisplay(FPDisplay);Буду думать, как убрать это дурацкое сообщение. ИМХО, стоит проверять, заблокирован/разблокирован ли FPDisplay к моменту вызова фукций XLockDisplay/XUnlockDisplay.
В общем - типичная рабочая ситуация. Ничего особенного.
-
Ali1
- Сообщения: 2250
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
Уважаемый t.t. Отвечаю вам по порядку.
На данном этапе вся функциональность программы детально описана на страничках проекта и представлена в скриншотах. Там же указано - программа является КЛОНОМ SysInfo/2 и будет дублировать дизайн и функциональность последней.
Я считаю такой способ общения с пользователями наиболее оптимальным. И взаимовыгодным. ИМХО - принимать участие в тестировании и ловить баги - интересно. Мне, например - интересно. Сам неоднократно тестировал чужие программы и писал очень подробные баг-репорты. Не вижу в этом ничего криминального, как и не наблюдаю "эксплуатацию человека человеком".
1. Коли я "некомпетентен в базовых вопросах Unix-систем" - как же тогда SysInfo for Linux умудряется работать и показывать правильные сведения? Сие загадка великая есть!
Хочу заметить, что претензии, которые прозвучали в данной ветке относились в основном к внешнему виду программы и интерфейсу, а так же - к ИСПРАВЛЯЕМЫМ багам программы. Многие из которых, мною, неумёхой, уже исправлены.
Вы, ув. t.t, допускает наличие багов в программе, номер версии которой весьма и весьма далек от единицы?
Например. Magic Number для файловых систем EXT2, EXT3 и EXT4 одинаков. И составляет $EF53. Для того, чтобы однозначно выяснить что мы имеем в наличии - EXT2, EXT3 или EXT4 - нужно анализировать флаги суперблока. А это можно сделать только из-под Root. Именно по-этому я пошел по более сложному (и менее, гм, логически выверенному) пути и определяю тип файловой системы по совокупности признаков. Зато из-под юзера. И так по многим, выявленным здесь и исправленным багам.
2. Вторая нестыковка!!! Если я - криворукий неумёха, то как же я планирую продавать свою программу???? Да еще - за 10-20 тыс. долларов? Давайте уж определимся. Или я некомпетентен, или я пишу коммерческий софт задорого. Иного не дано. Я понимаю, конечно, что сейчас на рынке можно продать все что угодно (шутка). Но в данном случае речь идет о системном софте, софте-репортере и некомпетентный человек, ИМХО, его написать не может.
Гм... С моей точки зрения программист развивается по следующей схеме:
Junior Coder -> Coder -> Senior Coder -> System Architect/Team Leader -> Project Manager -> Project Director и так далее, вплоть до CEO/President. Поправьте меня, если я ошибаюсь. И скажите, что вы видите обидного в такой схеме развития.
У него есть ряд недостатков. Которые теперь мне известны. Одним из них (очень существенным!) является кривая работа со шрифтами. Вторым - значительный объем генерируемого кода. Например, SysInfo for Linux компилиться в 4 МБайта. Или в 2.6МБайт со включённой опцией Link Smart ("по возможности, выбрасывать из кода все лишнее").
Ну и, разумеется, есть целая куча других багов и недостатков реализации - Lazarus - это тоже бета, с версией 0.8.26.
В случае, если я переведу свой проект на чистый GTK+, объем исполняемого файла составит не более 1 МБайта. А я получу новый экспириенс.
Еще раз - проект SysInfo - развлекаловка и хобби. Которая ни меня, ни вас ни к чему СЕРЬЕЗНОМУ не обязывает.
Смотрите, я уже писал. Топик задумывался как интерфейс между автором программы и пользователями. Заранее заявлялось, что программа - глубокая БЕТА. Т.е. сырой полуфабрикат. И работает от силы на 10-20% от полного функционала. Это понятно или требует дополнительных объяснений? Версия программы - текущая публичная 0.2.6.1 говорит, ИМХО, сама за себя.
На данном этапе вся функциональность программы детально описана на страничках проекта и представлена в скриншотах. Там же указано - программа является КЛОНОМ SysInfo/2 и будет дублировать дизайн и функциональность последней.
Я считаю такой способ общения с пользователями наиболее оптимальным. И взаимовыгодным. ИМХО - принимать участие в тестировании и ловить баги - интересно. Мне, например - интересно. Сам неоднократно тестировал чужие программы и писал очень подробные баг-репорты. Не вижу в этом ничего криминального, как и не наблюдаю "эксплуатацию человека человеком".
Помогите мне понять следующие логические нестыковки:t.t писал(а): ↑20.01.2009 15:112. отказывается развеять обоснованные подозрения в собственной некомпетентности в базовых для Unix-систем вопросах, не стесняясь при этом многократно публично именовать себя "Linux-программистом с 10-летним стажем" и "программистом с 20-летним стажем";
3. не подтверждает этот (мнимый) стаж никакими упоминаниями реального опыта и реальных проектов;
1. Коли я "некомпетентен в базовых вопросах Unix-систем" - как же тогда SysInfo for Linux умудряется работать и показывать правильные сведения? Сие загадка великая есть!
Хочу заметить, что претензии, которые прозвучали в данной ветке относились в основном к внешнему виду программы и интерфейсу, а так же - к ИСПРАВЛЯЕМЫМ багам программы. Многие из которых, мною, неумёхой, уже исправлены.
Например. Magic Number для файловых систем EXT2, EXT3 и EXT4 одинаков. И составляет $EF53. Для того, чтобы однозначно выяснить что мы имеем в наличии - EXT2, EXT3 или EXT4 - нужно анализировать флаги суперблока. А это можно сделать только из-под Root. Именно по-этому я пошел по более сложному (и менее, гм, логически выверенному) пути и определяю тип файловой системы по совокупности признаков. Зато из-под юзера. И так по многим, выявленным здесь и исправленным багам.
2. Вторая нестыковка!!! Если я - криворукий неумёха, то как же я планирую продавать свою программу???? Да еще - за 10-20 тыс. долларов? Давайте уж определимся. Или я некомпетентен, или я пишу коммерческий софт задорого. Иного не дано. Я понимаю, конечно, что сейчас на рынке можно продать все что угодно (шутка). Но в данном случае речь идет о системном софте, софте-репортере и некомпетентный человек, ИМХО, его написать не может.
Гм... С моей точки зрения программист развивается по следующей схеме:
Junior Coder -> Coder -> Senior Coder -> System Architect/Team Leader -> Project Manager -> Project Director и так далее, вплоть до CEO/President. Поправьте меня, если я ошибаюсь. И скажите, что вы видите обидного в такой схеме развития.
Снова удивительный вопрос. Я же писал - Lazarus - среда ВИЗУАЛЬНОЙ РАЗРАБОТКИ. RAD типа Borland Delphi. Причем, непривязанный к системным вызовам код ОДИНАКОВО компилится в Linux GTK1/GTK2/QT и в Windows. И результат выглядит почти одинаково. Другого такого инструмента НЕТ. Именно по-этому я его и выбрал.
У него есть ряд недостатков. Которые теперь мне известны. Одним из них (очень существенным!) является кривая работа со шрифтами. Вторым - значительный объем генерируемого кода. Например, SysInfo for Linux компилиться в 4 МБайта. Или в 2.6МБайт со включённой опцией Link Smart ("по возможности, выбрасывать из кода все лишнее").
Ну и, разумеется, есть целая куча других багов и недостатков реализации - Lazarus - это тоже бета, с версией 0.8.26.
В случае, если я переведу свой проект на чистый GTK+, объем исполняемого файла составит не более 1 МБайта. А я получу новый экспириенс.
Еще раз - проект SysInfo - развлекаловка и хобби. Которая ни меня, ни вас ни к чему СЕРЬЕЗНОМУ не обязывает.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: SysInfo for Linux
fuseblk - это то что думает о ntfs-3g ядро? Дело в том, что мну, как пользователю, абсолютно параллельно что думает о моей ntfs ядро.Тут, на форуме есть дофига обсуждений типа "у меня не монтируется ntfs", так вот: многие пользователи узнают о том что такое ntfs-3g только после того как оно начинает глючить, а про то что такое fuse, а тем более fuseblk они могут не знать совсем. То есть стандартные ответ программиста, из которых Вы выросли: вроде бы факт сам по себе абсолютно правильный, и возможно даже правильно изложен(хотя в данном случае не повредит прочитать комментарии Гудвина, и какую-нить книжку по операционным системам), но абсолютно бесполезен (:
вчера смог запустить програмку на виртуалке... присоединяюсь к тем кто высказал непонимание того зачем оно надо: зачем нужна Сандра,как ее там под виндой понятно - показывает в одном месте все те штуки, которые из винды самой по себе вытащить трудно, или нельзя. Ваша программа показывает штуки:
1. которые я и так знаю: не ну я честно знаю какой у меня принтер, особенно если его нет, и про модель монитора я в курсе
2. которые можно посмотреть в выводе стандартных утилит, более того, стандартные утилиты мне могут показать больше
3. которые можно посмотреть стандартными ГУИ-утилитами, или не-стандартными ГУИ-утилитами в гораздо более пристойном виде.
Что есть "target group" для этой программы?
1. Новички - не подходит, новичкам ее никто советовать не будет, будут советовать посмотреть в ГУИ-мониторы Гнома или КДЕ.
2. Продвинутые новички - им будут советовать посмотреть на вывод команд в консоли
3. Опытные пользователи - ну тут вам много опытных пользователей отписалось уже.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: SysInfo for Linux
о том что это можно сделать только из-под рута расскажите команде mount
а я толком не знаю ни одного языка программирования, в тоже время умудряюсь писать полезные мне штуки на двух, и править код еще на пяти-шести. Правда, я не заявляю что мое мнение - истина конечной инстанции.
YUKLA писал(а): ↑21.01.2009 12:27
Гм... С моей точки зрения программист развивается по следующей схеме:
Junior Coder -> Coder -> Senior Coder -> System Architect/Team Leader -> Project Manager -> Project Director и так далее, вплоть до CEO/President. Поправьте меня, если я ошибаюсь. И скажите, что вы видите обидного в такой схеме развития.
обидного в схеме нет ничего - схема кривая, и никакого отношения к программированию не имеет, но это детали. А вот "вырос из коротких штанишек" - обидно, да. возможно, эту часть дискуссии стоит продолжить в отдельной теме, если есть желание...
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
diesel писал(а): ↑21.01.2009 12:31fuseblk - это то что думает о ntfs-3g ядро? Дело в том, что мну, как пользователю, абсолютно параллельно что думает о моей ntfs ядро.Тут, на форуме есть дофига обсуждений типа "у меня не монтируется ntfs", так вот: многие пользователи узнают о том что такое ntfs-3g только после того как оно начинает глючить, а про то что такое fuse, а тем более fuseblk они могут не знать совсем.
Еще раз:
1. Версия программы - 0.2.6.1 (публичная бета) и 0.3.0.4 - unstable buid.
2. Пишу программу для своего удовольствия. Таргет груп - на данном этапе - те, кто хочет принять участия в тестировании. ИБО ПРОГРАММА ЕЩЕ НЕ ЯВЛЯЕТСЯ ГОТОВЫМ ПРОДУКТОМ.
Ну не уж то не понятно?
Ну а про fuseblk - Москва не сразу строилась. Что-нибудь придумаю. У меня на ноутбуке Windows и NTFS нету - голая Linux Gentoo. Ставить ntfs-3g нету необходимости. Потихоньку, с помощью пользователей и Google оптимальное решение будет найдено.
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
Причем тут команда mount?
Для того, что бы корректно отображать дерево директорий и не считать объем виртуальных файловых систем (/dev или /sys и т.д.), а так же корректно обходить символьные и жесткие symlink'и, может потребоваться проверка типа файловой системы каждой директории через StatFS. Понимаете? А вовсе не только тех, что описаны в fstab с пометкой user и users.
Опять же, может быть, это и не совсем оптимальный алгоритм. Но он работает.
-
Juliette
- Сообщения: 5058
- Статус: ROSA Lab
- ОС: Ubuntu LTS, Mandriva 2011
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: SysInfo for Linux
YUKLA писал(а): ↑21.01.2009 13:10Для того, что бы корректно отображать дерево директорий и не считать объем виртуальных файловых систем (/dev или /sys и т.д.), а так же корректно обходить символьные и жесткие symlink'и, может потребоваться проверка типа файловой системы каждой директории через StatFS. Понимаете? А вовсе не только тех, что описаны в fstab с пометкой user и users.
не, не понимаю.
Код: Выделить всё
diesel@gfl-1150:~$ whoami
diesel
diesel@gfl-1150:~$ mount
/dev/hda2 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
/dev/hda3 on /mnt/suse type ext3 (rw)
/dev/hda6 on /home type ext3 (rw)
diesel@gfl-1150:~$ cat /etc/mt
mtab mtab.fuselock mtools.conf
diesel@gfl-1150:~$ cat /etc/mtab
/dev/hda2 / ext3 rw,errors=remount-ro 0 0
tmpfs /lib/init/rw tmpfs rw,nosuid,mode=0755 0 0
proc /proc proc rw,noexec,nosuid,nodev 0 0
sysfs /sys sysfs rw,noexec,nosuid,nodev 0 0
procbususb /proc/bus/usb usbfs rw 0 0
udev /dev tmpfs rw,mode=0755 0 0
devpts /dev/pts devpts rw,noexec,nosuid,gid=5,mode=620 0 0
fusectl /sys/fs/fuse/connections fusectl rw 0 0
/dev/hda3 /mnt/suse ext3 rw 0 0
/dev/hda6 /home ext3 rw 0 0
diesel@gfl-1150:~$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/hda2 / ext3 defaults,errors=remount-ro 0 1
/dev/hda3 /mnt/suse ext3 defaults 0 2
/dev/hda6 /home ext3 defaults 0 2
/dev/hda5 none swap sw 0 0
/dev/hda7 /data vfat defaults,utf8,uid=1000,gid=100 0 2
#/dev/hda1 /mnt/win ntfs defaults,utf8 0 2
diesel@gfl-1150:~$Поскольку если верить вот этому statfs выдает инфу о mounted file system, то чем принципиально отличается то что я вижу в выводе mount и в том что может выдать ваша команда - не могу понять, ну разве что mount знает о том что ext3 - это не ext2.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: SysInfo for Linux
YUKLA писал(а): ↑21.01.2009 13:47diesel писал(а): ↑21.01.2009 13:44YUKLA писал(а): ↑21.01.2009 13:10Для того, что бы корректно отображать дерево директорий и не считать объем виртуальных файловых систем (/dev или /sys и т.д.), а так же корректно обходить символьные и жесткие symlink'и, может потребоваться проверка типа файловой системы каждой директории через StatFS. Понимаете? А вовсе не только тех, что описаны в fstab с пометкой user и users.
не, не понимаю.
Что вы конкретно не понимаете?
mount'у не нужен рут для того чтобы сказать мне что у меня ext3, Вам нужен...
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
diesel писал(а): ↑21.01.2009 13:44YUKLA писал(а): ↑21.01.2009 13:10Для того, что бы корректно отображать дерево директорий и не считать объем виртуальных файловых систем (/dev или /sys и т.д.), а так же корректно обходить символьные и жесткие symlink'и, может потребоваться проверка типа файловой системы каждой директории через StatFS. Понимаете? А вовсе не только тех, что описаны в fstab с пометкой user и users.
не, не понимаю.
Что вы конкретно не понимаете?
1. Вы допускаете тот факт, что разделы могут быть вручную или иным образом быть смотнированы после запуска SysInfo? Кстати, /etc/mtab - обычный текстовый файл. И его можно редактировать руками.
2. Вы допускаете факт наличия симлинков, ведущих откуда угодно куда угодно?
И еще - что вы мне пытаетесь доказать? Что в Линукс есть некие инструменты/утилиты, которые по совокупности своей могут дать всю необходимую информацию? Ну так это я и так знаю.
И прошу вас - не надо больше про "SysInfo можно заменить таким-то набором утилит". К чему это? Если вам лично продукт не нужен - вы хотите его унизить в глазах других пользователей?
Простите великодушно, но ИМХО это называется "ср.а.ть в комментах". Без обид.
А что будет, если я сейчас открою исходники mount и окажется, что проверка прав доступа там идет РАНЬШЕ, чем проверка типа FS?
Возьмете обратно свои слова, уважаемый?
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: SysInfo for Linux
YUKLA писал(а): ↑21.01.2009 13:58diesel писал(а): ↑21.01.2009 13:44YUKLA писал(а): ↑21.01.2009 13:10Для того, что бы корректно отображать дерево директорий и не считать объем виртуальных файловых систем (/dev или /sys и т.д.), а так же корректно обходить символьные и жесткие symlink'и, может потребоваться проверка типа файловой системы каждой директории через StatFS. Понимаете? А вовсе не только тех, что описаны в fstab с пометкой user и users.
не, не понимаю.
Что вы конкретно не понимаете?![]()
1. Вы допускаете тот факт, что разделы могут быть вручную или иным образом быть смотнированы после запуска SysInfo?
2. Вы допускаете факт наличия симлинков, ведущих откуда угодно куда угодно?
да. как это мешает определить что там ext3?
в данном случае я пытаюсь понять почему для того чтобы узнать что у меня смонтирована ext3 команде mount root-права не нужны, а Вашей программе нужны. Вопрос чисто технический. То что я думаю о том что я запустил у себя в VrirtualBox написано выше, не хотите продолжать дискуссию в этом направлении - Ваше право. Сейчас я не пытаюсь доказать что SysInfo можно заменить mount'ом, это просто две программы у которых часть функций пересекается.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: SysInfo for Linux
слова о чем? что этой команде не нужен рут? как я могу взять назад то что я скопировал из терминала - я под пользователем выполнил данную команду и узнал что корень у меня на ext3(посмотрите в лог, я ж его не просто так привел). Более того, я сделал cat /etc/mtab и узнал тоже самое. Это факт, я его не могу взять назад, оно не перестанет быть фактом.
Да, теоритически, ЕМНИП, возможны случаи когда ФС монтируется и не попадает в mtab, вот их как раз можно было бы пропустить, и подумать на очень далеком досуге, потому как это редкость, которая иногда имеет смысл на серверах.
ЗЫ: ах, да, еще один cat, не требующий рута, и показывающий что корень у мну на ext3: cat /proc/mounts.
ЗЫЫ: еще одна странная штука. если вы посмотрите в исходники mount, скорее всего окажется что она вообще не проверяет права доступа - скорее всего она просто интерпретирует ошибки, в т.ч. связанные с правами доступа, которые при выполнении тех или иных операций выдают системные вызовы(Постойте, кто из нас системный программист?).
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
diesel писал(а): ↑21.01.2009 14:10слова о чем? что этой команде не нужен рут? как я могу взять назад то что я скопировал из терминала - я под пользователем выполнил данную команду и узнал что корень у меня на ext3. Более того, я сделал cat /etc/mtab и узнал тоже самое. Это факт, я его не могу взять назад, оно не перестанет быть фактом.
Да, теоритически, ЕМНИП, возможны случаи когда ФС монтируется и не попадает в mtab, вот их как раз можно было бы пропустить, и подумать на очень далеком досуге, потому как это редкость, которая иногда имеет смысл на серверах.
ЗЫ: ах, да, еще один cat, не требующий рута, и показывающий что корень у мну на ext3: cat /proc/mounts.
Простите, но ИМХО, мы с вами говорим на разных языках.
Я вам говорю - для чтения суперблока через API нужны права Root, а вы мне говорите cat /proc/mounts. Давайте серьезно беседовать, договорились?
На данном этапе моя программа анализирует все перечисленные вами файлы. Но я считаю этот путь неправильным. Потому, что хочу работать не через парсинг файлов, а через API. Я уже тут писал об этом и не раз. Поверьте, структура API в Linux ГОРАЗДО более стандартизована, чем структура файлов в /etc и /proc
Я, собственно, говорил о парсинге строк /etc/fstab программой mount. Помните - user и users? А вы о чем?diesel писал(а): ↑21.01.2009 14:10ЗЫЫ: еще одна странная штука. если вы посмотрите в исходники mount, скорее всего окажется что она вообще не проверяет права доступа - скорее всего она просто интерпретирует ошибки, в т.ч. связанные с правами доступа, которые при выполнении тех или иных операций выдают системные вызовы(Постойте, кто из нас системный программист?).
-
petyanamlt
- Сообщения: 1773
- ОС: Kubuntu 16.04(x86-64)KDE 5.8.7
Re: SysInfo for Linux
Так, с архивом разобрался, но не понял, bz2 у меня стоит но ark не хочет расспаковывать, ну да ладно, расспаковал 7zip под wine, лучше архиватора не видел в линукс.
SysInfo вылетает при попытке перейти на вкладу принтера, ну да ладно автор уже отписался по теме.
А вот определение ntfs хотелось бы нормальное без всяких fuseblk.
Паранойа?
Ну тогда берите пример с Р. Столмана.
Вообще мне кажеться пора заканчивать флудить в топике и обсуждать программу, а не автора.
Еще раз, не нравиться прога, не пользуйтесь и не надо гадить в топике про исхдники и.т.д.
Вопрос автору, а почему gtk, а не qt?
SysInfo вылетает при попытке перейти на вкладу принтера, ну да ладно автор уже отписался по теме.
А вот определение ntfs хотелось бы нормальное без всяких fuseblk.
большой минус
закрытый код и нежелание его открывать всегда подозрительны
Паранойа?
Ну тогда берите пример с Р. Столмана.
Вообще мне кажеться пора заканчивать флудить в топике и обсуждать программу, а не автора.
Еще раз, не нравиться прога, не пользуйтесь и не надо гадить в топике про исхдники и.т.д.
Вопрос автору, а почему gtk, а не qt?
MSI 990FXA-GD80 SocketAM3+ / FX 8350 / Geforce gtx670 4GB / 4xHDD - 2000 -2х500 (Velociraptor) - 240ssd под Kubuntu / 16Gb RAM DDR3 1600 / TV TBS 6281. Ну и разгон естественно, жить без этого не могу.
(mail agent) petyanamlt собака маил.ру
(mail agent) petyanamlt собака маил.ру
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
Отвечаю.
1. Есть книжка "GNOME/GTK+ Programming".
2. Интерфейс Lazarus под QT еще не достаточно стабилен (а пока что я все еще работаю в Lazarus)
3. Банально - у меня нету QT, а есть GTK+. Моя рабочая среда XFCE. Памяти жрет немного. И работает быстро. Настроил я его так, как мне нравиться.
4. ИМХО, GTK+ более распространён, чем QT. По крайней мере, он (GTK+) есть везде, где есть GIMP.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: SysInfo for Linux
не, Вы мне говорите что:
Для того, чтобы однозначно выяснить что мы имеем в наличии - EXT2, EXT3 или EXT4 - нужно анализировать флаги суперблока. А это можно сделать только из-под Root.
то есть или мы требуем рута, или будем врать пользователю по поводу того что у него ext2, а не ext3?
если оно_рут
анализируем_файлы_суперблока
иначе
предупреждаем_юзера_что_он_не_рут_поэтому_все_плохо
[ -f /proc/mounts ] && cat /proc/mounts | awk ...
конец_если
если Ваша программа анализирует все перечисленные файлы, то она знает что он на ext3 .... или не знает?
что из перечисленного поменялось за последние два года?
YUKLA писал(а): ↑21.01.2009 14:16Я, собственно, говорил о парсинге строк /etc/fstab программой mount. Помните - user и users? А вы о чем?diesel писал(а): ↑21.01.2009 14:10ЗЫЫ: еще одна странная штука. если вы посмотрите в исходники mount, скорее всего окажется что она вообще не проверяет права доступа - скорее всего она просто интерпретирует ошибки, в т.ч. связанные с правами доступа, которые при выполнении тех или иных операций выдают системные вызовы(Постойте, кто из нас системный программист?).
о запуске mount'а без параметров, посмотрите наконец-то вот в этот пост - в то что в тэгах code. Потом можно еще man mount посмотреть - там написано что эта команда делает без параметров.
-
YUKLA
- Сообщения: 342
- ОС: Gentoo Linux, XFCE 4.6.1
Re: SysInfo for Linux
Блин!
Да различается уже EXT2...EXT4. Баг исправлен. Именно по вашей схеме. Я НЕ СТАЛ работать с суперблоками. Пока не стал. Анализирую /proc/mounts
ЗЫ: Ув. diesel! Чего вы хотите добиться от дискуссии? Заставить меня RTFM?
ЗЗЫ: Что касается изменений. Сравните структуру /proc и /sys на ядрах 2.6.10 и 2.6.28. И содержимое /etc/mtab и /proc/mounts на системах с и без hal и udev.
Да различается уже EXT2...EXT4. Баг исправлен. Именно по вашей схеме. Я НЕ СТАЛ работать с суперблоками. Пока не стал. Анализирую /proc/mounts
ЗЫ: Ув. diesel! Чего вы хотите добиться от дискуссии? Заставить меня RTFM?
ЗЗЫ: Что касается изменений. Сравните структуру /proc и /sys на ядрах 2.6.10 и 2.6.28. И содержимое /etc/mtab и /proc/mounts на системах с и без hal и udev.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: SysInfo for Linux
Код: Выделить всё
diesel@servername:~> cat /proc/mounts
rootfs / rootfs rw 0 0
/dev/root / reiserfs rw 0 0
proc /proc proc rw 0 0
devpts /dev/pts devpts rw 0 0
/dev/hda6 /home ext2 rw 0 0
/dev/hda7 /services reiserfs rw 0 0
/dev/hda3 /temp reiserfs rw 0 0
/dev/hda2 /var reiserfs rw 0 0
tmpfs /dev/shm tmpfs rw 0 0
usbdevfs /proc/bus/usb usbdevfs rw 0 0
diesel@servername:~> uname -a
Linux servername 2.4.29-rc1 #2 SMP Wed Jan 12 11:49:44 EEST 2005 i686 i686 i386 GNU/Linuxчто_смонтировано куда_смонтировано файловая_система опции остальная фигня
искать еще страше?